From 95c40f97038a71f397d7eabcfcbab395c6dcde5f Mon Sep 17 00:00:00 2001 From: Vincent Guillemot <vincent.guillemot@pasteur.fr> Date: Fri, 9 Dec 2022 16:01:42 +0100 Subject: [PATCH] first commit --- .gitignore | 7 + README.md | 92 - _quarto.yml | 20 + data-integration-with-kernels.Rproj | 13 + index.qmd | 33 + public/index.html | 323 ++++ public/search.json | 93 + .../site_libs/bootstrap/bootstrap-icons.css | 1704 +++++++++++++++++ .../site_libs/bootstrap/bootstrap-icons.woff | Bin 0 -> 137124 bytes public/site_libs/bootstrap/bootstrap.min.css | 10 + public/site_libs/bootstrap/bootstrap.min.js | 7 + public/site_libs/clipboard/clipboard.min.js | 7 + .../site_libs/countdown-0.4.0/countdown.css | 144 ++ public/site_libs/countdown-0.4.0/countdown.js | 478 +++++ .../countdown-0.4.0/smb_stage_clear.mp3 | Bin 0 -> 38758 bytes public/site_libs/quarto-html/anchor.min.js | 9 + public/site_libs/quarto-html/popper.min.js | 6 + .../site_libs/quarto-html/quarto-html.min.css | 1 + .../quarto-syntax-highlighting.css | 171 ++ public/site_libs/quarto-html/quarto.js | 760 ++++++++ public/site_libs/quarto-html/tabby.min.js | 418 ++++ public/site_libs/quarto-html/tippy.css | 1 + public/site_libs/quarto-html/tippy.umd.min.js | 2 + public/site_libs/quarto-nav/headroom.min.js | 7 + public/site_libs/quarto-nav/quarto-nav.js | 221 +++ .../quarto-search/autocomplete.umd.js | 3 + public/site_libs/quarto-search/fuse.min.js | 9 + .../site_libs/quarto-search/quarto-search.js | 1123 +++++++++++ public/site_libs/revealjs/dist/reset.css | 30 + public/site_libs/revealjs/dist/reveal.css | 8 + public/site_libs/revealjs/dist/reveal.esm.js | 9 + .../site_libs/revealjs/dist/reveal.esm.js.map | 1 + public/site_libs/revealjs/dist/reveal.js | 9 + public/site_libs/revealjs/dist/reveal.js.map | 1 + .../dist/theme/fonts/league-gothic/LICENSE | 2 + .../fonts/league-gothic/league-gothic.css | 10 + .../fonts/league-gothic/league-gothic.eot | Bin 0 -> 25696 bytes .../fonts/league-gothic/league-gothic.ttf | Bin 0 -> 64256 bytes .../fonts/league-gothic/league-gothic.woff | Bin 0 -> 30764 bytes .../dist/theme/fonts/source-sans-pro/LICENSE | 45 + .../source-sans-pro-italic.eot | Bin 0 -> 75720 bytes .../source-sans-pro-italic.ttf | Bin 0 -> 238084 bytes .../source-sans-pro-italic.woff | Bin 0 -> 98556 bytes .../source-sans-pro-regular.eot | Bin 0 -> 88070 bytes .../source-sans-pro-regular.ttf | Bin 0 -> 288008 bytes .../source-sans-pro-regular.woff | Bin 0 -> 114324 bytes .../source-sans-pro-semibold.eot | Bin 0 -> 89897 bytes .../source-sans-pro-semibold.ttf | Bin 0 -> 284640 bytes .../source-sans-pro-semibold.woff | Bin 0 -> 115648 bytes .../source-sans-pro-semibolditalic.eot | Bin 0 -> 75706 bytes .../source-sans-pro-semibolditalic.ttf | Bin 0 -> 240944 bytes .../source-sans-pro-semibolditalic.woff | Bin 0 -> 98816 bytes .../fonts/source-sans-pro/source-sans-pro.css | 39 + .../site_libs/revealjs/dist/theme/quarto.css | 5 + .../plugin/highlight/highlight.esm.js | 5 + .../revealjs/plugin/highlight/highlight.js | 5 + .../revealjs/plugin/highlight/monokai.css | 71 + .../revealjs/plugin/highlight/plugin.js | 439 +++++ .../revealjs/plugin/highlight/zenburn.css | 80 + .../revealjs/plugin/markdown/markdown.esm.js | 1 + .../revealjs/plugin/markdown/markdown.js | 1 + .../revealjs/plugin/markdown/plugin.js | 475 +++++ .../site_libs/revealjs/plugin/math/katex.js | 96 + .../revealjs/plugin/math/math.esm.js | 1 + public/site_libs/revealjs/plugin/math/math.js | 1 + .../revealjs/plugin/math/mathjax2.js | 89 + .../revealjs/plugin/math/mathjax3.js | 77 + .../site_libs/revealjs/plugin/math/plugin.js | 15 + .../revealjs/plugin/notes/notes.esm.js | 1 + .../site_libs/revealjs/plugin/notes/notes.js | 1 + .../site_libs/revealjs/plugin/notes/plugin.js | 184 ++ .../revealjs/plugin/notes/speaker-view.html | 852 +++++++++ .../revealjs/plugin/pdf-export/pdfexport.js | 108 ++ .../revealjs/plugin/pdf-export/plugin.yml | 2 + .../quarto-line-highlight/line-highlight.css | 31 + .../quarto-line-highlight/line-highlight.js | 351 ++++ .../plugin/quarto-line-highlight/plugin.yml | 4 + .../revealjs/plugin/quarto-support/footer.css | 109 ++ .../revealjs/plugin/quarto-support/plugin.yml | 5 + .../revealjs/plugin/quarto-support/support.js | 243 +++ .../revealjs/plugin/reveal-menu/menu.css | 346 ++++ .../revealjs/plugin/reveal-menu/menu.js | 1 + .../revealjs/plugin/reveal-menu/plugin.yml | 9 + .../plugin/reveal-menu/quarto-menu.css | 68 + .../plugin/reveal-menu/quarto-menu.js | 40 + .../revealjs/plugin/search/plugin.js | 243 +++ .../revealjs/plugin/search/search.esm.js | 7 + .../revealjs/plugin/search/search.js | 7 + .../site_libs/revealjs/plugin/zoom/plugin.js | 279 +++ .../revealjs/plugin/zoom/zoom.esm.js | 4 + public/site_libs/revealjs/plugin/zoom/zoom.js | 4 + public/slides/slides.html | 1077 +++++++++++ .../figure-revealjs/unnamed-chunk-5-1.svg | 670 +++++++ public/styles.css | 1 + slides/setup.R | 29 + slides/slides.qmd | 168 ++ slides/tidymodels.scss | 25 + styles.css | 1 + 98 files changed, 11955 insertions(+), 92 deletions(-) create mode 100644 .gitignore delete mode 100644 README.md create mode 100644 _quarto.yml create mode 100644 data-integration-with-kernels.Rproj create mode 100644 index.qmd create mode 100644 public/index.html create mode 100644 public/search.json create mode 100644 public/site_libs/bootstrap/bootstrap-icons.css create mode 100644 public/site_libs/bootstrap/bootstrap-icons.woff create mode 100644 public/site_libs/bootstrap/bootstrap.min.css create mode 100644 public/site_libs/bootstrap/bootstrap.min.js create mode 100644 public/site_libs/clipboard/clipboard.min.js create mode 100644 public/site_libs/countdown-0.4.0/countdown.css create mode 100644 public/site_libs/countdown-0.4.0/countdown.js create mode 100644 public/site_libs/countdown-0.4.0/smb_stage_clear.mp3 create mode 100644 public/site_libs/quarto-html/anchor.min.js create mode 100644 public/site_libs/quarto-html/popper.min.js create mode 100644 public/site_libs/quarto-html/quarto-html.min.css create mode 100644 public/site_libs/quarto-html/quarto-syntax-highlighting.css create mode 100644 public/site_libs/quarto-html/quarto.js create mode 100644 public/site_libs/quarto-html/tabby.min.js create mode 100644 public/site_libs/quarto-html/tippy.css create mode 100644 public/site_libs/quarto-html/tippy.umd.min.js create mode 100644 public/site_libs/quarto-nav/headroom.min.js create mode 100644 public/site_libs/quarto-nav/quarto-nav.js create mode 100644 public/site_libs/quarto-search/autocomplete.umd.js create mode 100644 public/site_libs/quarto-search/fuse.min.js create mode 100644 public/site_libs/quarto-search/quarto-search.js create mode 100644 public/site_libs/revealjs/dist/reset.css create mode 100644 public/site_libs/revealjs/dist/reveal.css create mode 100644 public/site_libs/revealjs/dist/reveal.esm.js create mode 100644 public/site_libs/revealjs/dist/reveal.esm.js.map create mode 100644 public/site_libs/revealjs/dist/reveal.js create mode 100644 public/site_libs/revealjs/dist/reveal.js.map create mode 100644 public/site_libs/revealjs/dist/theme/fonts/league-gothic/LICENSE create mode 100644 public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.css create mode 100755 public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.eot create mode 100755 public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.ttf create mode 100755 public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.woff create mode 100644 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/LICENSE create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf create mode 100755 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff create mode 100644 public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro.css create mode 100644 public/site_libs/revealjs/dist/theme/quarto.css create mode 100644 public/site_libs/revealjs/plugin/highlight/highlight.esm.js create mode 100644 public/site_libs/revealjs/plugin/highlight/highlight.js create mode 100644 public/site_libs/revealjs/plugin/highlight/monokai.css create mode 100644 public/site_libs/revealjs/plugin/highlight/plugin.js create mode 100644 public/site_libs/revealjs/plugin/highlight/zenburn.css create mode 100644 public/site_libs/revealjs/plugin/markdown/markdown.esm.js create mode 100644 public/site_libs/revealjs/plugin/markdown/markdown.js create mode 100755 public/site_libs/revealjs/plugin/markdown/plugin.js create mode 100755 public/site_libs/revealjs/plugin/math/katex.js create mode 100644 public/site_libs/revealjs/plugin/math/math.esm.js create mode 100644 public/site_libs/revealjs/plugin/math/math.js create mode 100644 public/site_libs/revealjs/plugin/math/mathjax2.js create mode 100644 public/site_libs/revealjs/plugin/math/mathjax3.js create mode 100644 public/site_libs/revealjs/plugin/math/plugin.js create mode 100644 public/site_libs/revealjs/plugin/notes/notes.esm.js create mode 100644 public/site_libs/revealjs/plugin/notes/notes.js create mode 100644 public/site_libs/revealjs/plugin/notes/plugin.js create mode 100644 public/site_libs/revealjs/plugin/notes/speaker-view.html create mode 100644 public/site_libs/revealjs/plugin/pdf-export/pdfexport.js create mode 100644 public/site_libs/revealjs/plugin/pdf-export/plugin.yml create mode 100644 public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css create mode 100644 public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.js create mode 100644 public/site_libs/revealjs/plugin/quarto-line-highlight/plugin.yml create mode 100644 public/site_libs/revealjs/plugin/quarto-support/footer.css create mode 100644 public/site_libs/revealjs/plugin/quarto-support/plugin.yml create mode 100644 public/site_libs/revealjs/plugin/quarto-support/support.js create mode 100644 public/site_libs/revealjs/plugin/reveal-menu/menu.css create mode 100644 public/site_libs/revealjs/plugin/reveal-menu/menu.js create mode 100644 public/site_libs/revealjs/plugin/reveal-menu/plugin.yml create mode 100644 public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.css create mode 100644 public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.js create mode 100644 public/site_libs/revealjs/plugin/search/plugin.js create mode 100644 public/site_libs/revealjs/plugin/search/search.esm.js create mode 100644 public/site_libs/revealjs/plugin/search/search.js create mode 100644 public/site_libs/revealjs/plugin/zoom/plugin.js create mode 100644 public/site_libs/revealjs/plugin/zoom/zoom.esm.js create mode 100644 public/site_libs/revealjs/plugin/zoom/zoom.js create mode 100644 public/slides/slides.html create mode 100644 public/slides/slides_files/figure-revealjs/unnamed-chunk-5-1.svg create mode 100644 public/styles.css create mode 100644 slides/setup.R create mode 100644 slides/slides.qmd create mode 100644 slides/tidymodels.scss create mode 100644 styles.css diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..71cac2a --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.Rproj.user +.Rhistory +.RData +.Ruserdata + +/.quarto/ +.DS_Store \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index e762766..0000000 --- a/README.md +++ /dev/null @@ -1,92 +0,0 @@ -# Data Integration With Kernels - - - -## Getting started - -To make it easy for you to get started with GitLab, here's a list of recommended next steps. - -Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! - -## Add your files - -- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files -- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: - -``` -cd existing_repo -git remote add origin https://gitlab.pasteur.fr/vguillem/data-integration-with-kernels.git -git branch -M main -git push -uf origin main -``` - -## Integrate with your tools - -- [ ] [Set up project integrations](https://gitlab.pasteur.fr/vguillem/data-integration-with-kernels/-/settings/integrations) - -## Collaborate with your team - -- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) -- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) -- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) -- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) -- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) - -## Test and Deploy - -Use the built-in continuous integration in GitLab. - -- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) -- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) -- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) -- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) -- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) - -*** - -# Editing this README - -When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. - -## Suggestions for a good README -Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. - -## Name -Choose a self-explaining name for your project. - -## Description -Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. - -## Badges -On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. - -## Visuals -Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. - -## Installation -Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. - -## Usage -Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. - -## Support -Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. - -## Roadmap -If you have ideas for releases in the future, it is a good idea to list them in the README. - -## Contributing -State if you are open to contributions and what your requirements are for accepting them. - -For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. - -You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. - -## Authors and acknowledgment -Show your appreciation to those who have contributed to the project. - -## License -For open source projects, say how it is licensed. - -## Project status -If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. diff --git a/_quarto.yml b/_quarto.yml new file mode 100644 index 0000000..859d58e --- /dev/null +++ b/_quarto.yml @@ -0,0 +1,20 @@ +project: + type: website + render: + - "*.qmd" + output-dir: public + +website: + title: "Intégration de Données avec des Méthodes à Noyaux" + navbar: + left: + - href: index.qmd + text: Accueil + +format: + html: + theme: pulse + css: styles.css + toc: true + +fig-format: svg diff --git a/data-integration-with-kernels.Rproj b/data-integration-with-kernels.Rproj new file mode 100644 index 0000000..8e3c2eb --- /dev/null +++ b/data-integration-with-kernels.Rproj @@ -0,0 +1,13 @@ +Version: 1.0 + +RestoreWorkspace: Default +SaveWorkspace: Default +AlwaysSaveHistory: Default + +EnableCodeIndexing: Yes +UseSpacesForTab: Yes +NumSpacesForTab: 2 +Encoding: UTF-8 + +RnwWeave: Sweave +LaTeX: pdfLaTeX diff --git a/index.qmd b/index.qmd new file mode 100644 index 0000000..cfa789c --- /dev/null +++ b/index.qmd @@ -0,0 +1,33 @@ +--- +title: "Intégration de Données avec des Méthodes à Noyaux" +--- + +## Installation + +Avant toute chose, vous devez avoir installé : + +- une version récente de R <https://cran.r-project.org/> +- une version récente de Rstudio <https://posit.co/download/rstudio-desktop/> +- les packages suivants, avec la commande ci-dessous + +```{r, eval = FALSE} +install.packages(c("mixKernel")) +``` + + +## Planches + +Les planches se trouvent ici : [Planches](slides/slides.html) + +## Links + +- Le site de Nathalie Vialaneix <https://www.nathalievialaneix.eu/> + + +## Remerciements + +Nathalie Vialaneix, pour ton excellente présentation. + +Émeline Perthame et Elise Jacquemet pour leur travail pendant le séminaire et + +Hannah Frick pour son [excellente présentation](https://github.com/hfrick/2022-AI-and-health) sur les `tidymodels`, dont je me suis fortement inspiré pour fabriquer mes planches (et merci Émeline de les avoir partagées avec moi). \ No newline at end of file diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..958d606 --- /dev/null +++ b/public/index.html @@ -0,0 +1,323 @@ +<!DOCTYPE html> +<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head> + +<meta charset="utf-8"> +<meta name="generator" content="quarto-1.1.189"> + +<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> + + +<title>Intégration de Données avec des Méthodes à Noyaux</title> +<style> +code{white-space: pre-wrap;} +span.smallcaps{font-variant: small-caps;} +div.columns{display: flex; gap: min(4vw, 1.5em);} +div.column{flex: auto; overflow-x: auto;} +div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} +ul.task-list{list-style: none;} +ul.task-list li input[type="checkbox"] { + width: 0.8em; + margin: 0 0.8em 0.2em -1.6em; + vertical-align: middle; +} +pre > code.sourceCode { white-space: pre; position: relative; } +pre > code.sourceCode > span { display: inline-block; line-height: 1.25; } +pre > code.sourceCode > span:empty { height: 1.2em; } +.sourceCode { overflow: visible; } +code.sourceCode > span { color: inherit; text-decoration: inherit; } +div.sourceCode { margin: 1em 0; } +pre.sourceCode { margin: 0; } +@media screen { +div.sourceCode { overflow: auto; } +} +@media print { +pre > code.sourceCode { white-space: pre-wrap; } +pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; } +} +pre.numberSource code + { counter-reset: source-line 0; } +pre.numberSource code > span + { position: relative; left: -4em; counter-increment: source-line; } +pre.numberSource code > span > a:first-child::before + { content: counter(source-line); + position: relative; left: -1em; text-align: right; vertical-align: baseline; + border: none; display: inline-block; + -webkit-touch-callout: none; -webkit-user-select: none; + -khtml-user-select: none; -moz-user-select: none; + -ms-user-select: none; user-select: none; + padding: 0 4px; width: 4em; + color: #aaaaaa; + } +pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; } +div.sourceCode + { } +@media screen { +pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; } +} +code span.al { color: #ff0000; font-weight: bold; } /* Alert */ +code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */ +code span.at { color: #7d9029; } /* Attribute */ +code span.bn { color: #40a070; } /* BaseN */ +code span.bu { color: #008000; } /* BuiltIn */ +code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */ +code span.ch { color: #4070a0; } /* Char */ +code span.cn { color: #880000; } /* Constant */ +code span.co { color: #60a0b0; font-style: italic; } /* Comment */ +code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */ +code span.do { color: #ba2121; font-style: italic; } /* Documentation */ +code span.dt { color: #902000; } /* DataType */ +code span.dv { color: #40a070; } /* DecVal */ +code span.er { color: #ff0000; font-weight: bold; } /* Error */ +code span.ex { } /* Extension */ +code span.fl { color: #40a070; } /* Float */ +code span.fu { color: #06287e; } /* Function */ +code span.im { color: #008000; font-weight: bold; } /* Import */ +code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */ +code span.kw { color: #007020; font-weight: bold; } /* Keyword */ +code span.op { color: #666666; } /* Operator */ +code span.ot { color: #007020; } /* Other */ +code span.pp { color: #bc7a00; } /* Preprocessor */ +code span.sc { color: #4070a0; } /* SpecialChar */ +code span.ss { color: #bb6688; } /* SpecialString */ +code span.st { color: #4070a0; } /* String */ +code span.va { color: #19177c; } /* Variable */ +code span.vs { color: #4070a0; } /* VerbatimString */ +code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */ +</style> + + +<script src="site_libs/quarto-nav/quarto-nav.js"></script> +<script src="site_libs/quarto-nav/headroom.min.js"></script> +<script src="site_libs/clipboard/clipboard.min.js"></script> +<script src="site_libs/quarto-search/autocomplete.umd.js"></script> +<script src="site_libs/quarto-search/fuse.min.js"></script> +<script src="site_libs/quarto-search/quarto-search.js"></script> +<meta name="quarto:offset" content="./"> +<script src="site_libs/quarto-html/quarto.js"></script> +<script src="site_libs/quarto-html/popper.min.js"></script> +<script src="site_libs/quarto-html/tippy.umd.min.js"></script> +<script src="site_libs/quarto-html/anchor.min.js"></script> +<link href="site_libs/quarto-html/tippy.css" rel="stylesheet"> +<link href="site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles"> +<script src="site_libs/bootstrap/bootstrap.min.js"></script> +<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet"> +<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light"> +<script id="quarto-search-options" type="application/json">{ + "location": "navbar", + "copy-button": false, + "collapse-after": 3, + "panel-placement": "end", + "type": "overlay", + "limit": 20, + "language": { + "search-no-results-text": "No results", + "search-matching-documents-text": "matching documents", + "search-copy-link-title": "Copy link to search", + "search-hide-matches-text": "Hide additional matches", + "search-more-match-text": "more match in this document", + "search-more-matches-text": "more matches in this document", + "search-clear-button-title": "Clear", + "search-detached-cancel-button-title": "Cancel", + "search-submit-button-title": "Submit" + } +}</script> + + +<link rel="stylesheet" href="styles.css"> +</head> + +<body class="nav-fixed"> + +<div id="quarto-search-results"></div> + <header id="quarto-header" class="headroom fixed-top"> + <nav class="navbar navbar-expand-lg navbar-dark "> + <div class="navbar-container container-fluid"> + <div class="navbar-brand-container"> + <a class="navbar-brand" href="./index.html"> + <span class="navbar-title">Intégration de Données avec des Méthodes à Noyaux</span> + </a> + </div> + <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }"> + <span class="navbar-toggler-icon"></span> +</button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav navbar-nav-scroll me-auto"> + <li class="nav-item"> + <a class="nav-link active" href="./index.html" aria-current="page">Accueil</a> + </li> +</ul> + <div id="quarto-search" class="" title="Search"></div> + </div> <!-- /navcollapse --> + </div> <!-- /container-fluid --> + </nav> +</header> +<!-- content --> +<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar"> +<!-- sidebar --> +<!-- margin-sidebar --> + <div id="quarto-margin-sidebar" class="sidebar margin-sidebar"> + <nav id="TOC" role="doc-toc" class="toc-active"> + <h2 id="toc-title">On this page</h2> + + <ul> + <li><a href="#installation" id="toc-installation" class="nav-link active" data-scroll-target="#installation">Installation</a></li> + <li><a href="#planches" id="toc-planches" class="nav-link" data-scroll-target="#planches">Planches</a></li> + <li><a href="#links" id="toc-links" class="nav-link" data-scroll-target="#links">Links</a></li> + <li><a href="#remerciements" id="toc-remerciements" class="nav-link" data-scroll-target="#remerciements">Remerciements</a></li> + </ul> +</nav> + </div> +<!-- main --> +<main class="content" id="quarto-document-content"> + +<header id="title-block-header" class="quarto-title-block default"> +<div class="quarto-title"> +<h1 class="title">Intégration de Données avec des Méthodes à Noyaux</h1> +</div> + + + +<div class="quarto-title-meta"> + + + + </div> + + +</header> + +<section id="installation" class="level2"> +<h2 class="anchored" data-anchor-id="installation">Installation</h2> +<p>Avant toute chose, vous devez avoir installé :</p> +<ul> +<li>une version récente de R <a href="https://cran.r-project.org/" class="uri">https://cran.r-project.org/</a></li> +<li>une version récente de Rstudio <a href="https://posit.co/download/rstudio-desktop/" class="uri">https://posit.co/download/rstudio-desktop/</a></li> +<li>les packages suivants, avec la commande ci-dessous</li> +</ul> +<div class="cell"> +<div class="sourceCode cell-code" id="cb1"><pre class="sourceCode r code-with-copy"><code class="sourceCode r"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">install.packages</span>(<span class="fu">c</span>(<span class="st">"mixKernel"</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div> +</div> +</section> +<section id="planches" class="level2"> +<h2 class="anchored" data-anchor-id="planches">Planches</h2> +<p>Les planches se trouvent ici : <a href="slides/slides.html">Planches</a></p> +</section> +<section id="links" class="level2"> +<h2 class="anchored" data-anchor-id="links">Links</h2> +<ul> +<li>Le site de Nathalie Vialaneix <a href="https://www.nathalievialaneix.eu/" class="uri">https://www.nathalievialaneix.eu/</a></li> +</ul> +</section> +<section id="remerciements" class="level2"> +<h2 class="anchored" data-anchor-id="remerciements">Remerciements</h2> +<p>Nathalie Vialaneix, pour ton excellente présentation.</p> +<p>Émeline Perthame et Elise Jacquemet pour leur travail pendant le séminaire et</p> +<p>Hannah Frick pour son <a href="https://github.com/hfrick/2022-AI-and-health">excellente présentation</a> sur les <code>tidymodels</code>, dont je me suis fortement inspiré pour fabriquer mes planches (et merci Émeline de les avoir partagées avec moi).</p> + + +</section> + +</main> <!-- /main --> +<script id="quarto-html-after-body" type="application/javascript"> +window.document.addEventListener("DOMContentLoaded", function (event) { + const toggleBodyColorMode = (bsSheetEl) => { + const mode = bsSheetEl.getAttribute("data-mode"); + const bodyEl = window.document.querySelector("body"); + if (mode === "dark") { + bodyEl.classList.add("quarto-dark"); + bodyEl.classList.remove("quarto-light"); + } else { + bodyEl.classList.add("quarto-light"); + bodyEl.classList.remove("quarto-dark"); + } + } + const toggleBodyColorPrimary = () => { + const bsSheetEl = window.document.querySelector("link#quarto-bootstrap"); + if (bsSheetEl) { + toggleBodyColorMode(bsSheetEl); + } + } + toggleBodyColorPrimary(); + const icon = ""; + const anchorJS = new window.AnchorJS(); + anchorJS.options = { + placement: 'right', + icon: icon + }; + anchorJS.add('.anchored'); + const clipboard = new window.ClipboardJS('.code-copy-button', { + target: function(trigger) { + return trigger.previousElementSibling; + } + }); + clipboard.on('success', function(e) { + // button target + const button = e.trigger; + // don't keep focus + button.blur(); + // flash "checked" + button.classList.add('code-copy-button-checked'); + var currentTitle = button.getAttribute("title"); + button.setAttribute("title", "Copied!"); + setTimeout(function() { + button.setAttribute("title", currentTitle); + button.classList.remove('code-copy-button-checked'); + }, 1000); + // clear code selection + e.clearSelection(); + }); + function tippyHover(el, contentFn) { + const config = { + allowHTML: true, + content: contentFn, + maxWidth: 500, + delay: 100, + arrow: false, + appendTo: function(el) { + return el.parentElement; + }, + interactive: true, + interactiveBorder: 10, + theme: 'quarto', + placement: 'bottom-start' + }; + window.tippy(el, config); + } + const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]'); + for (var i=0; i<noterefs.length; i++) { + const ref = noterefs[i]; + tippyHover(ref, function() { + // use id or data attribute instead here + let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href'); + try { href = new URL(href).hash; } catch {} + const id = href.replace(/^#\/?/, ""); + const note = window.document.getElementById(id); + return note.innerHTML; + }); + } + var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]'); + for (var i=0; i<bibliorefs.length; i++) { + const ref = bibliorefs[i]; + const cites = ref.parentNode.getAttribute('data-cites').split(' '); + tippyHover(ref, function() { + var popup = window.document.createElement('div'); + cites.forEach(function(cite) { + var citeDiv = window.document.createElement('div'); + citeDiv.classList.add('hanging-indent'); + citeDiv.classList.add('csl-entry'); + var biblioDiv = window.document.getElementById('ref-' + cite); + if (biblioDiv) { + citeDiv.innerHTML = biblioDiv.innerHTML; + } + popup.appendChild(citeDiv); + }); + return popup.innerHTML; + }); + } +}); +</script> +</div> <!-- /content --> + + + +</body></html> \ No newline at end of file diff --git a/public/search.json b/public/search.json new file mode 100644 index 0000000..ec1cf31 --- /dev/null +++ b/public/search.json @@ -0,0 +1,93 @@ +[ + { + "objectID": "slides/slides.html#our-goals-for-this-workshop", + "href": "slides/slides.html#our-goals-for-this-workshop", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Our goals for this workshop", + "text": "Our goals for this workshop\n\nIntroduce tidymodels and its general philosophy on modeling.\nHelp you become proficient with the core packages for modeling.\nPoint you to places to learn more and get help." + }, + { + "objectID": "slides/slides.html#why-tidymodels", + "href": "slides/slides.html#why-tidymodels", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Why tidymodels?", + "text": "Why tidymodels?\nThere are several other modeling frameworks in R that try to:\n\ncreate a uniform, cohesive, and unsurprising set of modeling APIs\n\nExamples are caret, mlr3, and others.\n\ncaret is more favorable for people who prefer base R/traditional interfaces.\nmlr3 is more pythonic and also has many features.\ntidymodels would probably be preferable to those who place importance on a tidy R interface, a large number of features, and the idea that the interfaces should enable the “pit of success”." + }, + { + "objectID": "slides/slides.html#the-tidymodels-package", + "href": "slides/slides.html#the-tidymodels-package", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "The tidymodels package", + "text": "The tidymodels package\nThere are a lot of tidymodels packages but about 90% of the work is done by 5 packages. (rsample, recipes, parsnip, tune, and yardstick)\nThe best way to get started with tidymodels is to use the tidymodels meta-package. It loads the core packages plus some tidyverse packages.\nSome helpful links:\n\nList of all tidymodels functions\nList of all parsnip models\nList of all recipe steps\n\n\nclick on the search button on tidymodels.org for all those lists" + }, + { + "objectID": "slides/slides.html#the-tidymodels-package-1", + "href": "slides/slides.html#the-tidymodels-package-1", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "The tidymodels package", + "text": "The tidymodels package\n\nlibrary(tidymodels)\n#> ── Attaching packages ──────────────────────────── tidymodels 1.0.0 ──\n#> ✔ broom 1.0.1 ✔ rsample 1.1.0 \n#> ✔ dials 1.1.0 ✔ tibble 3.1.8 \n#> ✔ dplyr 1.0.10 ✔ tidyr 1.2.1 \n#> ✔ infer 1.0.3 ✔ tune 1.0.1 \n#> ✔ modeldata 1.0.1 ✔ workflows 1.1.2 \n#> ✔ parsnip 1.0.3 ✔ workflowsets 1.0.0 \n#> ✔ purrr 0.3.5 ✔ yardstick 1.1.0 \n#> ✔ recipes 1.0.3\n#> ── Conflicts ─────────────────────────────── tidymodels_conflicts() ──\n#> ✖ purrr::discard() masks scales::discard()\n#> ✖ dplyr::filter() masks stats::filter()\n#> ✖ dplyr::lag() masks stats::lag()\n#> ✖ recipes::step() masks stats::step()\n#> • Dig deeper into tidy modeling with R at https://www.tmwr.org" + }, + { + "objectID": "slides/slides.html#managing-name-conflicts", + "href": "slides/slides.html#managing-name-conflicts", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Managing name conflicts", + "text": "Managing name conflicts\n\ntidymodels_prefer(quiet = FALSE)\n#> [conflicted] Will prefer dplyr::filter over any other package\n#> [conflicted] Will prefer dplyr::select over any other package\n#> [conflicted] Will prefer dplyr::slice over any other package\n#> [conflicted] Will prefer dplyr::rename over any other package\n#> [conflicted] Will prefer dials::neighbors over any other package\n#> [conflicted] Will prefer parsnip::fit over any other package\n#> [conflicted] Will prefer parsnip::bart over any other package\n#> [conflicted] Will prefer parsnip::pls over any other package\n#> [conflicted] Will prefer purrr::map over any other package\n#> [conflicted] Will prefer recipes::step over any other package\n#> [conflicted] Will prefer themis::step_downsample over any other package\n#> [conflicted] Will prefer themis::step_upsample over any other package\n#> [conflicted] Will prefer tune::tune over any other package\n#> [conflicted] Will prefer yardstick::precision over any other package\n#> [conflicted] Will prefer yardstick::recall over any other package\n#> [conflicted] Will prefer yardstick::spec over any other package\n#> ── Conflicts ────────────────────────────────── tidymodels_prefer() ──" + }, + { + "objectID": "slides/slides.html#alzheimers-disease-data", + "href": "slides/slides.html#alzheimers-disease-data", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Alzheimer’s disease data", + "text": "Alzheimer’s disease data\nData from a clinical trial of individuals with well-characterized cognitive impairment, and age-matched control participants.\n\n# install.packages(\"modeldata\")\nlibrary(modeldata)\ndata(\"ad_data\")\nalz <- ad_data\n\nglimpse(alz)\n#> Rows: 333\n#> Columns: 131\n#> $ ACE_CD143_Angiotensin_Converti <dbl> 2.0031003, 1.5618560, 1.5206598, 1.68…\n#> $ ACTH_Adrenocorticotropic_Hormon <dbl> -1.3862944, -1.3862944, -1.7147984, -…\n#> $ AXL <dbl> 1.09838668, 0.68328157, -0.14527630, …\n#> $ Adiponectin <dbl> -5.360193, -5.020686, -5.809143, -5.1…\n#> $ Alpha_1_Antichymotrypsin <dbl> 1.7404662, 1.4586150, 1.1939225, 1.28…\n#> $ Alpha_1_Antitrypsin <dbl> -12.631361, -11.909882, -13.642963, -…\n#> $ Alpha_1_Microglobulin <dbl> -2.577022, -3.244194, -2.882404, -3.1…\n#> $ Alpha_2_Macroglobulin <dbl> -72.65029, -154.61228, -136.52918, -9…\n#> $ Angiopoietin_2_ANG_2 <dbl> 1.06471074, 0.74193734, 0.83290912, 0…\n#> $ Angiotensinogen <dbl> 2.510547, 2.457283, 1.976365, 2.37608…\n#> $ Apolipoprotein_A_IV <dbl> -1.427116, -1.660731, -1.660731, -2.1…\n#> $ Apolipoprotein_A1 <dbl> -7.402052, -7.047017, -7.684284, -8.0…\n#> $ Apolipoprotein_A2 <dbl> -0.26136476, -0.86750057, -0.65392647…\n#> $ Apolipoprotein_B <dbl> -4.624044, -6.747507, -3.976069, -6.5…\n#> $ Apolipoprotein_CI <dbl> -1.2729657, -1.2729657, -1.7147984, -…\n#> $ Apolipoprotein_CIII <dbl> -2.312635, -2.343407, -2.748872, -2.9…\n#> $ Apolipoprotein_D <dbl> 2.0794415, 1.3350011, 1.3350011, 1.43…\n#> $ Apolipoprotein_E <dbl> 3.7545215, 3.0971187, 2.7530556, 2.37…\n#> $ Apolipoprotein_H <dbl> -0.15734908, -0.57539617, -0.34483937…\n#> $ B_Lymphocyte_Chemoattractant_BL <dbl> 2.2969819, 1.6731213, 1.6731213, 1.98…\n#> $ BMP_6 <dbl> -2.200744, -1.728053, -2.062421, -1.9…\n#> $ Beta_2_Microglobulin <dbl> 0.69314718, 0.47000363, 0.33647224, 0…\n#> $ Betacellulin <int> 34, 53, 49, 52, 67, 51, 41, 42, 58, 5…\n#> $ C_Reactive_Protein <dbl> -4.074542, -6.645391, -8.047190, -6.2…\n#> $ CD40 <dbl> -0.7964147, -1.2733760, -1.2415199, -…\n#> $ CD5L <dbl> 0.09531018, -0.67334455, 0.09531018, …\n#> $ Calbindin <dbl> 33.21363, 25.27636, 22.16609, 23.4558…\n#> $ Calcitonin <dbl> 1.3862944, 3.6109179, 2.1162555, -0.1…\n#> $ CgA <dbl> 397.6536, 465.6759, 347.8639, 334.234…\n#> $ Clusterin_Apo_J <dbl> 3.555348, 3.044522, 2.772589, 2.83321…\n#> $ Complement_3 <dbl> -10.36305, -16.10824, -16.10824, -13.…\n#> $ Complement_Factor_H <dbl> 3.5737252, 3.6000471, 4.4745686, 3.09…\n#> $ Connective_Tissue_Growth_Factor <dbl> 0.5306283, 0.5877867, 0.6418539, 0.53…\n#> $ Cortisol <dbl> 10.0, 12.0, 10.0, 14.0, 11.0, 13.0, 4…\n#> $ Creatine_Kinase_MB <dbl> -1.710172, -1.751002, -1.383559, -1.6…\n#> $ Cystatin_C <dbl> 9.041922, 9.067624, 8.954157, 9.58190…\n#> $ EGF_R <dbl> -0.1354543, -0.3700474, -0.7329871, -…\n#> $ EN_RAGE <dbl> -3.688879, -3.816713, -4.755993, -2.9…\n#> $ ENA_78 <dbl> -1.349543, -1.356595, -1.390672, -1.3…\n#> $ Eotaxin_3 <int> 53, 62, 62, 44, 64, 57, 64, 64, 64, 7…\n#> $ FAS <dbl> -0.08338161, -0.52763274, -0.63487827…\n#> $ FSH_Follicle_Stimulation_Hormon <dbl> -0.6516715, -1.6272839, -1.5630004, -…\n#> $ Fas_Ligand <dbl> 3.1014922, 2.9788133, 1.3600098, 2.53…\n#> $ Fatty_Acid_Binding_Protein <dbl> 2.5208712, 2.2477966, 0.9063009, 0.62…\n#> $ Ferritin <dbl> 3.329165, 3.932959, 3.176872, 3.13809…\n#> $ Fetuin_A <dbl> 1.2809338, 1.1939225, 1.4109870, 0.74…\n#> $ Fibrinogen <dbl> -7.035589, -8.047190, -7.195437, -7.7…\n#> $ GRO_alpha <dbl> 1.381830, 1.372438, 1.412679, 1.37243…\n#> $ Gamma_Interferon_induced_Monokin <dbl> 2.949822, 2.721793, 2.762231, 2.88547…\n#> $ Glutathione_S_Transferase_alpha <dbl> 1.0641271, 0.8670202, 0.8890150, 0.70…\n#> $ HB_EGF <dbl> 6.559746, 8.754531, 7.745463, 5.94943…\n#> $ HCC_4 <dbl> -3.036554, -4.074542, -3.649659, -3.8…\n#> $ Hepatocyte_Growth_Factor_HGF <dbl> 0.58778666, 0.53062825, 0.09531018, 0…\n#> $ I_309 <dbl> 3.433987, 3.135494, 2.397895, 3.36729…\n#> $ ICAM_1 <dbl> -0.1907787, -0.4620172, -0.4620172, -…\n#> $ IGF_BP_2 <dbl> 5.609472, 5.347108, 5.181784, 5.42495…\n#> $ IL_11 <dbl> 5.121987, 4.936704, 4.665910, 6.22393…\n#> $ IL_13 <dbl> 1.282549, 1.269463, 1.274133, 1.30754…\n#> $ IL_16 <dbl> 4.192081, 2.876338, 2.616102, 2.44105…\n#> $ IL_17E <dbl> 5.731246, 6.705891, 4.149327, 4.69584…\n#> $ IL_1alpha <dbl> -6.571283, -8.047190, -8.180721, -7.6…\n#> $ IL_3 <dbl> -3.244194, -3.912023, -4.645992, -4.2…\n#> $ IL_4 <dbl> 2.484907, 2.397895, 1.824549, 1.48160…\n#> $ IL_5 <dbl> 1.09861229, 0.69314718, -0.24846136, …\n#> $ IL_6 <dbl> 0.26936976, 0.09622438, 0.18568645, -…\n#> $ IL_6_Receptor <dbl> 0.64279595, 0.43115645, 0.09668586, 0…\n#> $ IL_7 <dbl> 4.8050453, 3.7055056, 1.0056222, 2.33…\n#> $ IL_8 <dbl> 1.711325, 1.675557, 1.691393, 1.71994…\n#> $ IP_10_Inducible_Protein_10 <dbl> 6.242223, 5.686975, 5.049856, 5.60211…\n#> $ IgA <dbl> -6.812445, -6.377127, -6.319969, -7.6…\n#> $ Insulin <dbl> -0.6258253, -0.9431406, -1.4466191, -…\n#> $ Kidney_Injury_Molecule_1_KIM_1 <dbl> -1.204295, -1.197703, -1.191191, -1.2…\n#> $ LOX_1 <dbl> 1.7047481, 1.5260563, 1.1631508, 1.22…\n#> $ Leptin <dbl> -1.5290628, -1.4660558, -1.6622675, -…\n#> $ Lipoprotein_a <dbl> -4.268698, -4.933674, -5.843045, -4.9…\n#> $ MCP_1 <dbl> 6.740519, 6.849066, 6.767343, 6.78105…\n#> $ MCP_2 <dbl> 1.9805094, 1.8088944, 0.4005958, 1.98…\n#> $ MIF <dbl> -1.237874, -1.897120, -2.302585, -1.6…\n#> $ MIP_1alpha <dbl> 4.968453, 3.690160, 4.049508, 4.92856…\n#> $ MIP_1beta <dbl> 3.258097, 3.135494, 2.397895, 3.21887…\n#> $ MMP_2 <dbl> 4.478566, 3.781473, 2.866631, 2.96851…\n#> $ MMP_3 <dbl> -2.207275, -2.465104, -2.302585, -1.7…\n#> $ MMP10 <dbl> -3.270169, -3.649659, -2.733368, -4.0…\n#> $ MMP7 <dbl> -3.7735027, -5.9681907, -4.0302269, -…\n#> $ Myoglobin <dbl> -1.89711998, -0.75502258, -1.38629436…\n#> $ NT_proBNP <dbl> 4.553877, 4.219508, 4.248495, 4.11087…\n#> $ NrCAM <dbl> 5.003946, 5.209486, 4.744932, 4.96981…\n#> $ Osteopontin <dbl> 5.356586, 6.003887, 5.017280, 5.76832…\n#> $ PAI_1 <dbl> 1.00350156, -0.03059880, 0.43837211, …\n#> $ PAPP_A <dbl> -2.902226, -2.813276, -2.935541, -2.7…\n#> $ PLGF <dbl> 4.442651, 4.025352, 4.510860, 3.43398…\n#> $ PYY <dbl> 3.218876, 3.135494, 2.890372, 2.83321…\n#> $ Pancreatic_polypeptide <dbl> 0.57878085, 0.33647224, -0.89159812, …\n#> $ Prolactin <dbl> 0.00000000, -0.51082562, -0.13926207,…\n#> $ Prostatic_Acid_Phosphatase <dbl> -1.620527, -1.739232, -1.636682, -1.7…\n#> $ Protein_S <dbl> -1.784998, -2.463991, -2.259135, -2.7…\n#> $ Pulmonary_and_Activation_Regulat <dbl> -0.8439701, -2.3025851, -1.6607312, -…\n#> $ RANTES <dbl> -6.214608, -6.938214, -6.645391, -5.9…\n#> $ Resistin <dbl> -16.475315, -16.025283, -16.475315, -…\n#> $ S100b <dbl> 1.5618560, 1.7566212, 1.4357282, 1.25…\n#> $ SGOT <dbl> -0.94160854, -0.65392647, 0.33647224,…\n#> $ SHBG <dbl> -1.897120, -1.560648, -2.207275, -3.1…\n#> $ SOD <dbl> 5.609472, 5.814131, 5.723585, 5.77144…\n#> $ Serum_Amyloid_P <dbl> -5.599422, -6.119298, -5.381699, -6.6…\n#> $ Sortilin <dbl> 4.908629, 5.478731, 3.810182, 3.40217…\n#> $ Stem_Cell_Factor <dbl> 4.174387, 3.713572, 3.433987, 3.95124…\n#> $ TGF_alpha <dbl> 8.649098, 11.331619, 10.858497, 9.454…\n#> $ TIMP_1 <dbl> 15.204651, 11.266499, 12.282857, 11.1…\n#> $ TNF_RII <dbl> -0.06187540, -0.32850407, -0.41551544…\n#> $ TRAIL_R3 <dbl> -0.1829004, -0.5007471, -0.9240345, -…\n#> $ TTR_prealbumin <dbl> 2.944439, 2.833213, 2.944439, 2.94443…\n#> $ Tamm_Horsfall_Protein_THP <dbl> -3.095810, -3.111190, -3.166721, -3.1…\n#> $ Thrombomodulin <dbl> -1.340566, -1.675252, -1.534276, -1.9…\n#> $ Thrombopoietin <dbl> -0.1026334, -0.6733501, -0.9229670, -…\n#> $ Thymus_Expressed_Chemokine_TECK <dbl> 4.149327, 3.810182, 2.791992, 4.03728…\n#> $ Thyroid_Stimulating_Hormone <dbl> -3.863233, -4.828314, -4.990833, -4.8…\n#> $ Thyroxine_Binding_Globulin <dbl> -1.4271164, -1.6094379, -1.8971200, -…\n#> $ Tissue_Factor <dbl> 2.04122033, 2.02814825, 1.43508453, 2…\n#> $ Transferrin <dbl> 3.332205, 2.890372, 2.890372, 2.89037…\n#> $ Trefoil_Factor_3_TFF3 <dbl> -3.381395, -3.912023, -3.729701, -3.8…\n#> $ VCAM_1 <dbl> 3.258097, 2.708050, 2.639057, 2.77258…\n#> $ VEGF <dbl> 22.03456, 18.60184, 17.47619, 17.5456…\n#> $ Vitronectin <dbl> -0.04082199, -0.38566248, -0.22314355…\n#> $ von_Willebrand_Factor <dbl> -3.146555, -3.863233, -3.540459, -3.8…\n#> $ age <dbl> 0.9876238, 0.9861496, 0.9866667, 0.98…\n#> $ tau <dbl> 6.297754, 6.659294, 6.270988, 6.15273…\n#> $ p_tau <dbl> 4.348108, 4.859967, 4.400247, 4.49488…\n#> $ Ab_42 <dbl> 12.019678, 11.015759, 12.302271, 12.3…\n#> $ male <dbl> 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1…\n#> $ Genotype <fct> E3E3, E3E4, E3E4, E3E4, E3E3, E4E4, E…\n#> $ Class <fct> Control, Control, Control, Control, C…" + }, + { + "objectID": "slides/slides.html#alzheimers-disease-data-1", + "href": "slides/slides.html#alzheimers-disease-data-1", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Alzheimer’s disease data", + "text": "Alzheimer’s disease data\n\n\n\n1 categorical outcome: Class\n130 predictors\n126 protein measurements\nalso: age, male, Genotype" + }, + { + "objectID": "slides/slides.html#your-turn", + "href": "slides/slides.html#your-turn", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Your turn", + "text": "Your turn\n\n\n\n\nExplore the data.\n\nlibrary(tidymodels)\ntidymodels_prefer()\n\ndata(\"ad_data\", package = \"modeldata\")\nalz <- ad_data\n\n\n\n\n\n\n−+\n10:00" + }, + { + "objectID": "slides/slides.html#schedule-for-today", + "href": "slides/slides.html#schedule-for-today", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Schedule for today", + "text": "Schedule for today\n\nA minimal model\nA better workflow\nA tuned model\n\n\n\nget through the fundamentals\nmake our model better\nlet the computer make our model better" + }, + { + "objectID": "index.html", + "href": "index.html", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "", + "text": "Avant toute chose, vous devez avoir installé :\n\nune version récente de R https://cran.r-project.org/\nune version récente de Rstudio https://posit.co/download/rstudio-desktop/\nles packages suivants, avec la commande ci-dessous\n\n\ninstall.packages(c(\"mixKernel\"))" + }, + { + "objectID": "index.html#planches", + "href": "index.html#planches", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Planches", + "text": "Planches\nLes planches se trouvent ici : Planches" + }, + { + "objectID": "index.html#links", + "href": "index.html#links", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Links", + "text": "Links\n\nLe site de Nathalie Vialaneix https://www.nathalievialaneix.eu/" + }, + { + "objectID": "index.html#remerciements", + "href": "index.html#remerciements", + "title": "Intégration de Données avec des Méthodes à Noyaux", + "section": "Remerciements", + "text": "Remerciements\nNathalie Vialaneix, pour ton excellente présentation.\nÉmeline Perthame et Elise Jacquemet pour leur travail pendant le séminaire et\nHannah Frick pour son excellente présentation sur les tidymodels, dont je me suis fortement inspiré pour fabriquer mes planches (et merci Émeline de les avoir partagées avec moi)." + } +] \ No newline at end of file diff --git a/public/site_libs/bootstrap/bootstrap-icons.css b/public/site_libs/bootstrap/bootstrap-icons.css new file mode 100644 index 0000000..f51d04b --- /dev/null +++ b/public/site_libs/bootstrap/bootstrap-icons.css @@ -0,0 +1,1704 @@ +@font-face { + font-family: "bootstrap-icons"; + src: +url("./bootstrap-icons.woff?524846017b983fc8ded9325d94ed40f3") format("woff"); +} + +.bi::before, +[class^="bi-"]::before, +[class*=" bi-"]::before { + display: inline-block; + font-family: bootstrap-icons !important; + font-style: normal; + font-weight: normal !important; + font-variant: normal; + text-transform: none; + line-height: 1; + vertical-align: -.125em; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.bi-123::before { content: "\f67f"; } +.bi-alarm-fill::before { content: "\f101"; } +.bi-alarm::before { content: "\f102"; } +.bi-align-bottom::before { content: "\f103"; } +.bi-align-center::before { content: "\f104"; } +.bi-align-end::before { content: "\f105"; } +.bi-align-middle::before { content: "\f106"; } +.bi-align-start::before { content: "\f107"; } +.bi-align-top::before { content: "\f108"; } +.bi-alt::before { content: "\f109"; } +.bi-app-indicator::before { content: "\f10a"; } +.bi-app::before { content: "\f10b"; } +.bi-archive-fill::before { content: "\f10c"; } +.bi-archive::before { content: "\f10d"; } +.bi-arrow-90deg-down::before { content: "\f10e"; } +.bi-arrow-90deg-left::before { content: "\f10f"; } +.bi-arrow-90deg-right::before { content: "\f110"; } +.bi-arrow-90deg-up::before { content: "\f111"; } +.bi-arrow-bar-down::before { content: "\f112"; } +.bi-arrow-bar-left::before { content: "\f113"; } +.bi-arrow-bar-right::before { content: "\f114"; } +.bi-arrow-bar-up::before { content: "\f115"; } +.bi-arrow-clockwise::before { content: "\f116"; } +.bi-arrow-counterclockwise::before { content: "\f117"; } +.bi-arrow-down-circle-fill::before { content: "\f118"; } +.bi-arrow-down-circle::before { content: "\f119"; } +.bi-arrow-down-left-circle-fill::before { content: "\f11a"; } +.bi-arrow-down-left-circle::before { content: "\f11b"; } +.bi-arrow-down-left-square-fill::before { content: "\f11c"; } +.bi-arrow-down-left-square::before { content: "\f11d"; } +.bi-arrow-down-left::before { content: "\f11e"; } +.bi-arrow-down-right-circle-fill::before { content: "\f11f"; } +.bi-arrow-down-right-circle::before { content: "\f120"; } +.bi-arrow-down-right-square-fill::before { content: "\f121"; } +.bi-arrow-down-right-square::before { content: "\f122"; } +.bi-arrow-down-right::before { content: "\f123"; } +.bi-arrow-down-short::before { content: "\f124"; } +.bi-arrow-down-square-fill::before { content: "\f125"; } +.bi-arrow-down-square::before { content: "\f126"; } +.bi-arrow-down-up::before { content: "\f127"; } +.bi-arrow-down::before { content: "\f128"; } +.bi-arrow-left-circle-fill::before { content: "\f129"; } +.bi-arrow-left-circle::before { content: "\f12a"; } +.bi-arrow-left-right::before { content: "\f12b"; } +.bi-arrow-left-short::before { content: "\f12c"; } +.bi-arrow-left-square-fill::before { content: "\f12d"; } +.bi-arrow-left-square::before { content: "\f12e"; } +.bi-arrow-left::before { content: "\f12f"; } +.bi-arrow-repeat::before { content: "\f130"; } +.bi-arrow-return-left::before { content: "\f131"; } +.bi-arrow-return-right::before { content: "\f132"; } +.bi-arrow-right-circle-fill::before { content: "\f133"; } +.bi-arrow-right-circle::before { content: "\f134"; } +.bi-arrow-right-short::before { content: "\f135"; } +.bi-arrow-right-square-fill::before { content: "\f136"; } +.bi-arrow-right-square::before { content: "\f137"; } +.bi-arrow-right::before { content: "\f138"; } +.bi-arrow-up-circle-fill::before { content: "\f139"; } +.bi-arrow-up-circle::before { content: "\f13a"; } +.bi-arrow-up-left-circle-fill::before { content: "\f13b"; } +.bi-arrow-up-left-circle::before { content: "\f13c"; } +.bi-arrow-up-left-square-fill::before { content: "\f13d"; } +.bi-arrow-up-left-square::before { content: "\f13e"; } +.bi-arrow-up-left::before { content: "\f13f"; } +.bi-arrow-up-right-circle-fill::before { content: "\f140"; } +.bi-arrow-up-right-circle::before { content: "\f141"; } +.bi-arrow-up-right-square-fill::before { content: "\f142"; } +.bi-arrow-up-right-square::before { content: "\f143"; } +.bi-arrow-up-right::before { content: "\f144"; } +.bi-arrow-up-short::before { content: "\f145"; } +.bi-arrow-up-square-fill::before { content: "\f146"; } +.bi-arrow-up-square::before { content: "\f147"; } +.bi-arrow-up::before { content: "\f148"; } +.bi-arrows-angle-contract::before { content: "\f149"; } +.bi-arrows-angle-expand::before { content: "\f14a"; } +.bi-arrows-collapse::before { content: "\f14b"; } +.bi-arrows-expand::before { content: "\f14c"; } +.bi-arrows-fullscreen::before { content: "\f14d"; } +.bi-arrows-move::before { content: "\f14e"; } +.bi-aspect-ratio-fill::before { content: "\f14f"; } +.bi-aspect-ratio::before { content: "\f150"; } +.bi-asterisk::before { content: "\f151"; } +.bi-at::before { content: "\f152"; } +.bi-award-fill::before { content: "\f153"; } +.bi-award::before { content: "\f154"; } +.bi-back::before { content: "\f155"; } +.bi-backspace-fill::before { content: "\f156"; } +.bi-backspace-reverse-fill::before { content: "\f157"; } +.bi-backspace-reverse::before { content: "\f158"; } +.bi-backspace::before { content: "\f159"; } +.bi-badge-3d-fill::before { content: "\f15a"; } +.bi-badge-3d::before { content: "\f15b"; } +.bi-badge-4k-fill::before { content: "\f15c"; } +.bi-badge-4k::before { content: "\f15d"; } +.bi-badge-8k-fill::before { content: "\f15e"; } +.bi-badge-8k::before { content: "\f15f"; } +.bi-badge-ad-fill::before { content: "\f160"; } +.bi-badge-ad::before { content: "\f161"; } +.bi-badge-ar-fill::before { content: "\f162"; } +.bi-badge-ar::before { content: "\f163"; } +.bi-badge-cc-fill::before { content: "\f164"; } +.bi-badge-cc::before { content: "\f165"; } +.bi-badge-hd-fill::before { content: "\f166"; } +.bi-badge-hd::before { content: "\f167"; } +.bi-badge-tm-fill::before { content: "\f168"; } +.bi-badge-tm::before { content: "\f169"; } +.bi-badge-vo-fill::before { content: "\f16a"; } +.bi-badge-vo::before { content: "\f16b"; } +.bi-badge-vr-fill::before { content: "\f16c"; } +.bi-badge-vr::before { content: "\f16d"; } +.bi-badge-wc-fill::before { content: "\f16e"; } +.bi-badge-wc::before { content: "\f16f"; } +.bi-bag-check-fill::before { content: "\f170"; } +.bi-bag-check::before { content: "\f171"; } +.bi-bag-dash-fill::before { content: "\f172"; } +.bi-bag-dash::before { content: "\f173"; } +.bi-bag-fill::before { content: "\f174"; } +.bi-bag-plus-fill::before { content: "\f175"; } +.bi-bag-plus::before { content: "\f176"; } +.bi-bag-x-fill::before { content: "\f177"; } +.bi-bag-x::before { content: "\f178"; } +.bi-bag::before { content: "\f179"; } +.bi-bar-chart-fill::before { content: "\f17a"; } +.bi-bar-chart-line-fill::before { content: "\f17b"; } +.bi-bar-chart-line::before { content: "\f17c"; } +.bi-bar-chart-steps::before { content: "\f17d"; } +.bi-bar-chart::before { content: "\f17e"; } +.bi-basket-fill::before { content: "\f17f"; } +.bi-basket::before { content: "\f180"; } +.bi-basket2-fill::before { content: "\f181"; } +.bi-basket2::before { content: "\f182"; } +.bi-basket3-fill::before { content: "\f183"; } +.bi-basket3::before { content: "\f184"; } +.bi-battery-charging::before { content: "\f185"; } +.bi-battery-full::before { content: "\f186"; } +.bi-battery-half::before { content: "\f187"; } +.bi-battery::before { content: "\f188"; } +.bi-bell-fill::before { content: "\f189"; } +.bi-bell::before { content: "\f18a"; } +.bi-bezier::before { content: "\f18b"; } +.bi-bezier2::before { content: "\f18c"; } +.bi-bicycle::before { content: "\f18d"; } +.bi-binoculars-fill::before { content: "\f18e"; } +.bi-binoculars::before { content: "\f18f"; } +.bi-blockquote-left::before { content: "\f190"; } +.bi-blockquote-right::before { content: "\f191"; } +.bi-book-fill::before { content: "\f192"; } +.bi-book-half::before { content: "\f193"; } +.bi-book::before { content: "\f194"; } +.bi-bookmark-check-fill::before { content: "\f195"; } +.bi-bookmark-check::before { content: "\f196"; } +.bi-bookmark-dash-fill::before { content: "\f197"; } +.bi-bookmark-dash::before { content: "\f198"; } +.bi-bookmark-fill::before { content: "\f199"; } +.bi-bookmark-heart-fill::before { content: "\f19a"; } +.bi-bookmark-heart::before { content: "\f19b"; } +.bi-bookmark-plus-fill::before { content: "\f19c"; } +.bi-bookmark-plus::before { content: "\f19d"; } +.bi-bookmark-star-fill::before { content: "\f19e"; } +.bi-bookmark-star::before { content: "\f19f"; } +.bi-bookmark-x-fill::before { content: "\f1a0"; } +.bi-bookmark-x::before { content: "\f1a1"; } +.bi-bookmark::before { content: "\f1a2"; } +.bi-bookmarks-fill::before { content: "\f1a3"; } +.bi-bookmarks::before { content: "\f1a4"; } +.bi-bookshelf::before { content: "\f1a5"; } +.bi-bootstrap-fill::before { content: "\f1a6"; } +.bi-bootstrap-reboot::before { content: "\f1a7"; } +.bi-bootstrap::before { content: "\f1a8"; } +.bi-border-all::before { content: "\f1a9"; } +.bi-border-bottom::before { content: "\f1aa"; } +.bi-border-center::before { content: "\f1ab"; } +.bi-border-inner::before { content: "\f1ac"; } +.bi-border-left::before { content: "\f1ad"; } +.bi-border-middle::before { content: "\f1ae"; } +.bi-border-outer::before { content: "\f1af"; } +.bi-border-right::before { content: "\f1b0"; } +.bi-border-style::before { content: "\f1b1"; } +.bi-border-top::before { content: "\f1b2"; } +.bi-border-width::before { content: "\f1b3"; } +.bi-border::before { content: "\f1b4"; } +.bi-bounding-box-circles::before { content: "\f1b5"; } +.bi-bounding-box::before { content: "\f1b6"; } +.bi-box-arrow-down-left::before { content: "\f1b7"; } +.bi-box-arrow-down-right::before { content: "\f1b8"; } +.bi-box-arrow-down::before { content: "\f1b9"; } +.bi-box-arrow-in-down-left::before { content: "\f1ba"; } +.bi-box-arrow-in-down-right::before { content: "\f1bb"; } +.bi-box-arrow-in-down::before { content: "\f1bc"; } +.bi-box-arrow-in-left::before { content: "\f1bd"; } +.bi-box-arrow-in-right::before { content: "\f1be"; } +.bi-box-arrow-in-up-left::before { content: "\f1bf"; } +.bi-box-arrow-in-up-right::before { content: "\f1c0"; } +.bi-box-arrow-in-up::before { content: "\f1c1"; } +.bi-box-arrow-left::before { content: "\f1c2"; } +.bi-box-arrow-right::before { content: "\f1c3"; } +.bi-box-arrow-up-left::before { content: "\f1c4"; } +.bi-box-arrow-up-right::before { content: "\f1c5"; } +.bi-box-arrow-up::before { content: "\f1c6"; } +.bi-box-seam::before { content: "\f1c7"; } +.bi-box::before { content: "\f1c8"; } +.bi-braces::before { content: "\f1c9"; } +.bi-bricks::before { content: "\f1ca"; } +.bi-briefcase-fill::before { content: "\f1cb"; } +.bi-briefcase::before { content: "\f1cc"; } +.bi-brightness-alt-high-fill::before { content: "\f1cd"; } +.bi-brightness-alt-high::before { content: "\f1ce"; } +.bi-brightness-alt-low-fill::before { content: "\f1cf"; } +.bi-brightness-alt-low::before { content: "\f1d0"; } +.bi-brightness-high-fill::before { content: "\f1d1"; } +.bi-brightness-high::before { content: "\f1d2"; } +.bi-brightness-low-fill::before { content: "\f1d3"; } +.bi-brightness-low::before { content: "\f1d4"; } +.bi-broadcast-pin::before { content: "\f1d5"; } +.bi-broadcast::before { content: "\f1d6"; } +.bi-brush-fill::before { content: "\f1d7"; } +.bi-brush::before { content: "\f1d8"; } +.bi-bucket-fill::before { content: "\f1d9"; } +.bi-bucket::before { content: "\f1da"; } +.bi-bug-fill::before { content: "\f1db"; } +.bi-bug::before { content: "\f1dc"; } +.bi-building::before { content: "\f1dd"; } +.bi-bullseye::before { content: "\f1de"; } +.bi-calculator-fill::before { content: "\f1df"; } +.bi-calculator::before { content: "\f1e0"; } +.bi-calendar-check-fill::before { content: "\f1e1"; } +.bi-calendar-check::before { content: "\f1e2"; } +.bi-calendar-date-fill::before { content: "\f1e3"; } +.bi-calendar-date::before { content: "\f1e4"; } +.bi-calendar-day-fill::before { content: "\f1e5"; } +.bi-calendar-day::before { content: "\f1e6"; } +.bi-calendar-event-fill::before { content: "\f1e7"; } +.bi-calendar-event::before { content: "\f1e8"; } +.bi-calendar-fill::before { content: "\f1e9"; } +.bi-calendar-minus-fill::before { content: "\f1ea"; } +.bi-calendar-minus::before { content: "\f1eb"; } +.bi-calendar-month-fill::before { content: "\f1ec"; } +.bi-calendar-month::before { content: "\f1ed"; } +.bi-calendar-plus-fill::before { content: "\f1ee"; } +.bi-calendar-plus::before { content: "\f1ef"; } +.bi-calendar-range-fill::before { content: "\f1f0"; } +.bi-calendar-range::before { content: "\f1f1"; } +.bi-calendar-week-fill::before { content: "\f1f2"; } +.bi-calendar-week::before { content: "\f1f3"; } +.bi-calendar-x-fill::before { content: "\f1f4"; } +.bi-calendar-x::before { content: "\f1f5"; } +.bi-calendar::before { content: "\f1f6"; } +.bi-calendar2-check-fill::before { content: "\f1f7"; } +.bi-calendar2-check::before { content: "\f1f8"; } +.bi-calendar2-date-fill::before { content: "\f1f9"; } +.bi-calendar2-date::before { content: "\f1fa"; } +.bi-calendar2-day-fill::before { content: "\f1fb"; } +.bi-calendar2-day::before { content: "\f1fc"; } +.bi-calendar2-event-fill::before { content: "\f1fd"; } +.bi-calendar2-event::before { content: "\f1fe"; } +.bi-calendar2-fill::before { content: "\f1ff"; } +.bi-calendar2-minus-fill::before { content: "\f200"; } +.bi-calendar2-minus::before { content: "\f201"; } +.bi-calendar2-month-fill::before { content: "\f202"; } +.bi-calendar2-month::before { content: "\f203"; } +.bi-calendar2-plus-fill::before { content: "\f204"; } +.bi-calendar2-plus::before { content: "\f205"; } +.bi-calendar2-range-fill::before { content: "\f206"; } +.bi-calendar2-range::before { content: "\f207"; } +.bi-calendar2-week-fill::before { content: "\f208"; } +.bi-calendar2-week::before { content: "\f209"; } +.bi-calendar2-x-fill::before { content: "\f20a"; } +.bi-calendar2-x::before { content: "\f20b"; } +.bi-calendar2::before { content: "\f20c"; } +.bi-calendar3-event-fill::before { content: "\f20d"; } +.bi-calendar3-event::before { content: "\f20e"; } +.bi-calendar3-fill::before { content: "\f20f"; } +.bi-calendar3-range-fill::before { content: "\f210"; } +.bi-calendar3-range::before { content: "\f211"; } +.bi-calendar3-week-fill::before { content: "\f212"; } +.bi-calendar3-week::before { content: "\f213"; } +.bi-calendar3::before { content: "\f214"; } +.bi-calendar4-event::before { content: "\f215"; } +.bi-calendar4-range::before { content: "\f216"; } +.bi-calendar4-week::before { content: "\f217"; } +.bi-calendar4::before { content: "\f218"; } +.bi-camera-fill::before { content: "\f219"; } +.bi-camera-reels-fill::before { content: "\f21a"; } +.bi-camera-reels::before { content: "\f21b"; } +.bi-camera-video-fill::before { content: "\f21c"; } +.bi-camera-video-off-fill::before { content: "\f21d"; } +.bi-camera-video-off::before { content: "\f21e"; } +.bi-camera-video::before { content: "\f21f"; } +.bi-camera::before { content: "\f220"; } +.bi-camera2::before { content: "\f221"; } +.bi-capslock-fill::before { content: "\f222"; } +.bi-capslock::before { content: "\f223"; } +.bi-card-checklist::before { content: "\f224"; } +.bi-card-heading::before { content: "\f225"; } +.bi-card-image::before { content: "\f226"; } +.bi-card-list::before { content: "\f227"; } +.bi-card-text::before { content: "\f228"; } +.bi-caret-down-fill::before { content: "\f229"; } +.bi-caret-down-square-fill::before { content: "\f22a"; } +.bi-caret-down-square::before { content: "\f22b"; } +.bi-caret-down::before { content: "\f22c"; } +.bi-caret-left-fill::before { content: "\f22d"; } +.bi-caret-left-square-fill::before { content: "\f22e"; } +.bi-caret-left-square::before { content: "\f22f"; } +.bi-caret-left::before { content: "\f230"; } +.bi-caret-right-fill::before { content: "\f231"; } +.bi-caret-right-square-fill::before { content: "\f232"; } +.bi-caret-right-square::before { content: "\f233"; } +.bi-caret-right::before { content: "\f234"; } +.bi-caret-up-fill::before { content: "\f235"; } +.bi-caret-up-square-fill::before { content: "\f236"; } +.bi-caret-up-square::before { content: "\f237"; } +.bi-caret-up::before { content: "\f238"; } +.bi-cart-check-fill::before { content: "\f239"; } +.bi-cart-check::before { content: "\f23a"; } +.bi-cart-dash-fill::before { content: "\f23b"; } +.bi-cart-dash::before { content: "\f23c"; } +.bi-cart-fill::before { content: "\f23d"; } +.bi-cart-plus-fill::before { content: "\f23e"; } +.bi-cart-plus::before { content: "\f23f"; } +.bi-cart-x-fill::before { content: "\f240"; } +.bi-cart-x::before { content: "\f241"; } +.bi-cart::before { content: "\f242"; } +.bi-cart2::before { content: "\f243"; } +.bi-cart3::before { content: "\f244"; } +.bi-cart4::before { content: "\f245"; } +.bi-cash-stack::before { content: "\f246"; } +.bi-cash::before { content: "\f247"; } +.bi-cast::before { content: "\f248"; } +.bi-chat-dots-fill::before { content: "\f249"; } +.bi-chat-dots::before { content: "\f24a"; } +.bi-chat-fill::before { content: "\f24b"; } +.bi-chat-left-dots-fill::before { content: "\f24c"; } +.bi-chat-left-dots::before { content: "\f24d"; } +.bi-chat-left-fill::before { content: "\f24e"; } +.bi-chat-left-quote-fill::before { content: "\f24f"; } +.bi-chat-left-quote::before { content: "\f250"; } +.bi-chat-left-text-fill::before { content: "\f251"; } +.bi-chat-left-text::before { content: "\f252"; } +.bi-chat-left::before { content: "\f253"; } +.bi-chat-quote-fill::before { content: "\f254"; } +.bi-chat-quote::before { content: "\f255"; } +.bi-chat-right-dots-fill::before { content: "\f256"; } +.bi-chat-right-dots::before { content: "\f257"; } +.bi-chat-right-fill::before { content: "\f258"; } +.bi-chat-right-quote-fill::before { content: "\f259"; } +.bi-chat-right-quote::before { content: "\f25a"; } +.bi-chat-right-text-fill::before { content: "\f25b"; } +.bi-chat-right-text::before { content: "\f25c"; } +.bi-chat-right::before { content: "\f25d"; } +.bi-chat-square-dots-fill::before { content: "\f25e"; } +.bi-chat-square-dots::before { content: "\f25f"; } +.bi-chat-square-fill::before { content: "\f260"; } +.bi-chat-square-quote-fill::before { content: "\f261"; } +.bi-chat-square-quote::before { content: "\f262"; } +.bi-chat-square-text-fill::before { content: "\f263"; } +.bi-chat-square-text::before { content: "\f264"; } +.bi-chat-square::before { content: "\f265"; } +.bi-chat-text-fill::before { content: "\f266"; } +.bi-chat-text::before { content: "\f267"; } +.bi-chat::before { content: "\f268"; } +.bi-check-all::before { content: "\f269"; } +.bi-check-circle-fill::before { content: "\f26a"; } +.bi-check-circle::before { content: "\f26b"; } +.bi-check-square-fill::before { content: "\f26c"; } +.bi-check-square::before { content: "\f26d"; } +.bi-check::before { content: "\f26e"; } +.bi-check2-all::before { content: "\f26f"; } +.bi-check2-circle::before { content: "\f270"; } +.bi-check2-square::before { content: "\f271"; } +.bi-check2::before { content: "\f272"; } +.bi-chevron-bar-contract::before { content: "\f273"; } +.bi-chevron-bar-down::before { content: "\f274"; } +.bi-chevron-bar-expand::before { content: "\f275"; } +.bi-chevron-bar-left::before { content: "\f276"; } +.bi-chevron-bar-right::before { content: "\f277"; } +.bi-chevron-bar-up::before { content: "\f278"; } +.bi-chevron-compact-down::before { content: "\f279"; } +.bi-chevron-compact-left::before { content: "\f27a"; } +.bi-chevron-compact-right::before { content: "\f27b"; } +.bi-chevron-compact-up::before { content: "\f27c"; } +.bi-chevron-contract::before { content: "\f27d"; } +.bi-chevron-double-down::before { content: "\f27e"; } +.bi-chevron-double-left::before { content: "\f27f"; } +.bi-chevron-double-right::before { content: "\f280"; } +.bi-chevron-double-up::before { content: "\f281"; } +.bi-chevron-down::before { content: "\f282"; } +.bi-chevron-expand::before { content: "\f283"; } +.bi-chevron-left::before { content: "\f284"; } +.bi-chevron-right::before { content: "\f285"; } +.bi-chevron-up::before { content: "\f286"; } +.bi-circle-fill::before { content: "\f287"; } +.bi-circle-half::before { content: "\f288"; } +.bi-circle-square::before { content: "\f289"; } +.bi-circle::before { content: "\f28a"; } +.bi-clipboard-check::before { content: "\f28b"; } +.bi-clipboard-data::before { content: "\f28c"; } +.bi-clipboard-minus::before { content: "\f28d"; } +.bi-clipboard-plus::before { content: "\f28e"; } +.bi-clipboard-x::before { content: "\f28f"; } +.bi-clipboard::before { content: "\f290"; } +.bi-clock-fill::before { content: "\f291"; } +.bi-clock-history::before { content: "\f292"; } +.bi-clock::before { content: "\f293"; } +.bi-cloud-arrow-down-fill::before { content: "\f294"; } +.bi-cloud-arrow-down::before { content: "\f295"; } +.bi-cloud-arrow-up-fill::before { content: "\f296"; } +.bi-cloud-arrow-up::before { content: "\f297"; } +.bi-cloud-check-fill::before { content: "\f298"; } +.bi-cloud-check::before { content: "\f299"; } +.bi-cloud-download-fill::before { content: "\f29a"; } +.bi-cloud-download::before { content: "\f29b"; } +.bi-cloud-drizzle-fill::before { content: "\f29c"; } +.bi-cloud-drizzle::before { content: "\f29d"; } +.bi-cloud-fill::before { content: "\f29e"; } +.bi-cloud-fog-fill::before { content: "\f29f"; } +.bi-cloud-fog::before { content: "\f2a0"; } +.bi-cloud-fog2-fill::before { content: "\f2a1"; } +.bi-cloud-fog2::before { content: "\f2a2"; } +.bi-cloud-hail-fill::before { content: "\f2a3"; } +.bi-cloud-hail::before { content: "\f2a4"; } +.bi-cloud-haze-1::before { content: "\f2a5"; } +.bi-cloud-haze-fill::before { content: "\f2a6"; } +.bi-cloud-haze::before { content: "\f2a7"; } +.bi-cloud-haze2-fill::before { content: "\f2a8"; } +.bi-cloud-lightning-fill::before { content: "\f2a9"; } +.bi-cloud-lightning-rain-fill::before { content: "\f2aa"; } +.bi-cloud-lightning-rain::before { content: "\f2ab"; } +.bi-cloud-lightning::before { content: "\f2ac"; } +.bi-cloud-minus-fill::before { content: "\f2ad"; } +.bi-cloud-minus::before { content: "\f2ae"; } +.bi-cloud-moon-fill::before { content: "\f2af"; } +.bi-cloud-moon::before { content: "\f2b0"; } +.bi-cloud-plus-fill::before { content: "\f2b1"; } +.bi-cloud-plus::before { content: "\f2b2"; } +.bi-cloud-rain-fill::before { content: "\f2b3"; } +.bi-cloud-rain-heavy-fill::before { content: "\f2b4"; } +.bi-cloud-rain-heavy::before { content: "\f2b5"; } +.bi-cloud-rain::before { content: "\f2b6"; } +.bi-cloud-slash-fill::before { content: "\f2b7"; } +.bi-cloud-slash::before { content: "\f2b8"; } +.bi-cloud-sleet-fill::before { content: "\f2b9"; } +.bi-cloud-sleet::before { content: "\f2ba"; } +.bi-cloud-snow-fill::before { content: "\f2bb"; } +.bi-cloud-snow::before { content: "\f2bc"; } +.bi-cloud-sun-fill::before { content: "\f2bd"; } +.bi-cloud-sun::before { content: "\f2be"; } +.bi-cloud-upload-fill::before { content: "\f2bf"; } +.bi-cloud-upload::before { content: "\f2c0"; } +.bi-cloud::before { content: "\f2c1"; } +.bi-clouds-fill::before { content: "\f2c2"; } +.bi-clouds::before { content: "\f2c3"; } +.bi-cloudy-fill::before { content: "\f2c4"; } +.bi-cloudy::before { content: "\f2c5"; } +.bi-code-slash::before { content: "\f2c6"; } +.bi-code-square::before { content: "\f2c7"; } +.bi-code::before { content: "\f2c8"; } +.bi-collection-fill::before { content: "\f2c9"; } +.bi-collection-play-fill::before { content: "\f2ca"; } +.bi-collection-play::before { content: "\f2cb"; } +.bi-collection::before { content: "\f2cc"; } +.bi-columns-gap::before { content: "\f2cd"; } +.bi-columns::before { content: "\f2ce"; } +.bi-command::before { content: "\f2cf"; } +.bi-compass-fill::before { content: "\f2d0"; } +.bi-compass::before { content: "\f2d1"; } +.bi-cone-striped::before { content: "\f2d2"; } +.bi-cone::before { content: "\f2d3"; } +.bi-controller::before { content: "\f2d4"; } +.bi-cpu-fill::before { content: "\f2d5"; } +.bi-cpu::before { content: "\f2d6"; } +.bi-credit-card-2-back-fill::before { content: "\f2d7"; } +.bi-credit-card-2-back::before { content: "\f2d8"; } +.bi-credit-card-2-front-fill::before { content: "\f2d9"; } +.bi-credit-card-2-front::before { content: "\f2da"; } +.bi-credit-card-fill::before { content: "\f2db"; } +.bi-credit-card::before { content: "\f2dc"; } +.bi-crop::before { content: "\f2dd"; } +.bi-cup-fill::before { content: "\f2de"; } +.bi-cup-straw::before { content: "\f2df"; } +.bi-cup::before { content: "\f2e0"; } +.bi-cursor-fill::before { content: "\f2e1"; } +.bi-cursor-text::before { content: "\f2e2"; } +.bi-cursor::before { content: "\f2e3"; } +.bi-dash-circle-dotted::before { content: "\f2e4"; } +.bi-dash-circle-fill::before { content: "\f2e5"; } +.bi-dash-circle::before { content: "\f2e6"; } +.bi-dash-square-dotted::before { content: "\f2e7"; } +.bi-dash-square-fill::before { content: "\f2e8"; } +.bi-dash-square::before { content: "\f2e9"; } +.bi-dash::before { content: "\f2ea"; } +.bi-diagram-2-fill::before { content: "\f2eb"; } +.bi-diagram-2::before { content: "\f2ec"; } +.bi-diagram-3-fill::before { content: "\f2ed"; } +.bi-diagram-3::before { content: "\f2ee"; } +.bi-diamond-fill::before { content: "\f2ef"; } +.bi-diamond-half::before { content: "\f2f0"; } +.bi-diamond::before { content: "\f2f1"; } +.bi-dice-1-fill::before { content: "\f2f2"; } +.bi-dice-1::before { content: "\f2f3"; } +.bi-dice-2-fill::before { content: "\f2f4"; } +.bi-dice-2::before { content: "\f2f5"; } +.bi-dice-3-fill::before { content: "\f2f6"; } +.bi-dice-3::before { content: "\f2f7"; } +.bi-dice-4-fill::before { content: "\f2f8"; } +.bi-dice-4::before { content: "\f2f9"; } +.bi-dice-5-fill::before { content: "\f2fa"; } +.bi-dice-5::before { content: "\f2fb"; } +.bi-dice-6-fill::before { content: "\f2fc"; } +.bi-dice-6::before { content: "\f2fd"; } +.bi-disc-fill::before { content: "\f2fe"; } +.bi-disc::before { content: "\f2ff"; } +.bi-discord::before { content: "\f300"; } +.bi-display-fill::before { content: "\f301"; } +.bi-display::before { content: "\f302"; } +.bi-distribute-horizontal::before { content: "\f303"; } +.bi-distribute-vertical::before { content: "\f304"; } +.bi-door-closed-fill::before { content: "\f305"; } +.bi-door-closed::before { content: "\f306"; } +.bi-door-open-fill::before { content: "\f307"; } +.bi-door-open::before { content: "\f308"; } +.bi-dot::before { content: "\f309"; } +.bi-download::before { content: "\f30a"; } +.bi-droplet-fill::before { content: "\f30b"; } +.bi-droplet-half::before { content: "\f30c"; } +.bi-droplet::before { content: "\f30d"; } +.bi-earbuds::before { content: "\f30e"; } +.bi-easel-fill::before { content: "\f30f"; } +.bi-easel::before { content: "\f310"; } +.bi-egg-fill::before { content: "\f311"; } +.bi-egg-fried::before { content: "\f312"; } +.bi-egg::before { content: "\f313"; } +.bi-eject-fill::before { content: "\f314"; } +.bi-eject::before { content: "\f315"; } +.bi-emoji-angry-fill::before { content: "\f316"; } +.bi-emoji-angry::before { content: "\f317"; } +.bi-emoji-dizzy-fill::before { content: "\f318"; } +.bi-emoji-dizzy::before { content: "\f319"; } +.bi-emoji-expressionless-fill::before { content: "\f31a"; } +.bi-emoji-expressionless::before { content: "\f31b"; } +.bi-emoji-frown-fill::before { content: "\f31c"; } +.bi-emoji-frown::before { content: "\f31d"; } +.bi-emoji-heart-eyes-fill::before { content: "\f31e"; } +.bi-emoji-heart-eyes::before { content: "\f31f"; } +.bi-emoji-laughing-fill::before { content: "\f320"; } +.bi-emoji-laughing::before { content: "\f321"; } +.bi-emoji-neutral-fill::before { content: "\f322"; } +.bi-emoji-neutral::before { content: "\f323"; } +.bi-emoji-smile-fill::before { content: "\f324"; } +.bi-emoji-smile-upside-down-fill::before { content: "\f325"; } +.bi-emoji-smile-upside-down::before { content: "\f326"; } +.bi-emoji-smile::before { content: "\f327"; } +.bi-emoji-sunglasses-fill::before { content: "\f328"; } +.bi-emoji-sunglasses::before { content: "\f329"; } +.bi-emoji-wink-fill::before { content: "\f32a"; } +.bi-emoji-wink::before { content: "\f32b"; } +.bi-envelope-fill::before { content: "\f32c"; } +.bi-envelope-open-fill::before { content: "\f32d"; } +.bi-envelope-open::before { content: "\f32e"; } +.bi-envelope::before { content: "\f32f"; } +.bi-eraser-fill::before { content: "\f330"; } +.bi-eraser::before { content: "\f331"; } +.bi-exclamation-circle-fill::before { content: "\f332"; } +.bi-exclamation-circle::before { content: "\f333"; } +.bi-exclamation-diamond-fill::before { content: "\f334"; } +.bi-exclamation-diamond::before { content: "\f335"; } +.bi-exclamation-octagon-fill::before { content: "\f336"; } +.bi-exclamation-octagon::before { content: "\f337"; } +.bi-exclamation-square-fill::before { content: "\f338"; } +.bi-exclamation-square::before { content: "\f339"; } +.bi-exclamation-triangle-fill::before { content: "\f33a"; } +.bi-exclamation-triangle::before { content: "\f33b"; } +.bi-exclamation::before { content: "\f33c"; } +.bi-exclude::before { content: "\f33d"; } +.bi-eye-fill::before { content: "\f33e"; } +.bi-eye-slash-fill::before { content: "\f33f"; } +.bi-eye-slash::before { content: "\f340"; } +.bi-eye::before { content: "\f341"; } +.bi-eyedropper::before { content: "\f342"; } +.bi-eyeglasses::before { content: "\f343"; } +.bi-facebook::before { content: "\f344"; } +.bi-file-arrow-down-fill::before { content: "\f345"; } +.bi-file-arrow-down::before { content: "\f346"; } +.bi-file-arrow-up-fill::before { content: "\f347"; } +.bi-file-arrow-up::before { content: "\f348"; } +.bi-file-bar-graph-fill::before { content: "\f349"; } +.bi-file-bar-graph::before { content: "\f34a"; } +.bi-file-binary-fill::before { content: "\f34b"; } +.bi-file-binary::before { content: "\f34c"; } +.bi-file-break-fill::before { content: "\f34d"; } +.bi-file-break::before { content: "\f34e"; } +.bi-file-check-fill::before { content: "\f34f"; } +.bi-file-check::before { content: "\f350"; } +.bi-file-code-fill::before { content: "\f351"; } +.bi-file-code::before { content: "\f352"; } +.bi-file-diff-fill::before { content: "\f353"; } +.bi-file-diff::before { content: "\f354"; } +.bi-file-earmark-arrow-down-fill::before { content: "\f355"; } +.bi-file-earmark-arrow-down::before { content: "\f356"; } +.bi-file-earmark-arrow-up-fill::before { content: "\f357"; } +.bi-file-earmark-arrow-up::before { content: "\f358"; } +.bi-file-earmark-bar-graph-fill::before { content: "\f359"; } +.bi-file-earmark-bar-graph::before { content: "\f35a"; } +.bi-file-earmark-binary-fill::before { content: "\f35b"; } +.bi-file-earmark-binary::before { content: "\f35c"; } +.bi-file-earmark-break-fill::before { content: "\f35d"; } +.bi-file-earmark-break::before { content: "\f35e"; } +.bi-file-earmark-check-fill::before { content: "\f35f"; } +.bi-file-earmark-check::before { content: "\f360"; } +.bi-file-earmark-code-fill::before { content: "\f361"; } +.bi-file-earmark-code::before { content: "\f362"; } +.bi-file-earmark-diff-fill::before { content: "\f363"; } +.bi-file-earmark-diff::before { content: "\f364"; } +.bi-file-earmark-easel-fill::before { content: "\f365"; } +.bi-file-earmark-easel::before { content: "\f366"; } +.bi-file-earmark-excel-fill::before { content: "\f367"; } +.bi-file-earmark-excel::before { content: "\f368"; } +.bi-file-earmark-fill::before { content: "\f369"; } +.bi-file-earmark-font-fill::before { content: "\f36a"; } +.bi-file-earmark-font::before { content: "\f36b"; } +.bi-file-earmark-image-fill::before { content: "\f36c"; } +.bi-file-earmark-image::before { content: "\f36d"; } +.bi-file-earmark-lock-fill::before { content: "\f36e"; } +.bi-file-earmark-lock::before { content: "\f36f"; } +.bi-file-earmark-lock2-fill::before { content: "\f370"; } +.bi-file-earmark-lock2::before { content: "\f371"; } +.bi-file-earmark-medical-fill::before { content: "\f372"; } +.bi-file-earmark-medical::before { content: "\f373"; } +.bi-file-earmark-minus-fill::before { content: "\f374"; } +.bi-file-earmark-minus::before { content: "\f375"; } +.bi-file-earmark-music-fill::before { content: "\f376"; } +.bi-file-earmark-music::before { content: "\f377"; } +.bi-file-earmark-person-fill::before { content: "\f378"; } +.bi-file-earmark-person::before { content: "\f379"; } +.bi-file-earmark-play-fill::before { content: "\f37a"; } +.bi-file-earmark-play::before { content: "\f37b"; } +.bi-file-earmark-plus-fill::before { content: "\f37c"; } +.bi-file-earmark-plus::before { content: "\f37d"; } +.bi-file-earmark-post-fill::before { content: "\f37e"; } +.bi-file-earmark-post::before { content: "\f37f"; } +.bi-file-earmark-ppt-fill::before { content: "\f380"; } +.bi-file-earmark-ppt::before { content: "\f381"; } +.bi-file-earmark-richtext-fill::before { content: "\f382"; } +.bi-file-earmark-richtext::before { content: "\f383"; } +.bi-file-earmark-ruled-fill::before { content: "\f384"; } +.bi-file-earmark-ruled::before { content: "\f385"; } +.bi-file-earmark-slides-fill::before { content: "\f386"; } +.bi-file-earmark-slides::before { content: "\f387"; } +.bi-file-earmark-spreadsheet-fill::before { content: "\f388"; } +.bi-file-earmark-spreadsheet::before { content: "\f389"; } +.bi-file-earmark-text-fill::before { content: "\f38a"; } +.bi-file-earmark-text::before { content: "\f38b"; } +.bi-file-earmark-word-fill::before { content: "\f38c"; } +.bi-file-earmark-word::before { content: "\f38d"; } +.bi-file-earmark-x-fill::before { content: "\f38e"; } +.bi-file-earmark-x::before { content: "\f38f"; } +.bi-file-earmark-zip-fill::before { content: "\f390"; } +.bi-file-earmark-zip::before { content: "\f391"; } +.bi-file-earmark::before { content: "\f392"; } +.bi-file-easel-fill::before { content: "\f393"; } +.bi-file-easel::before { content: "\f394"; } +.bi-file-excel-fill::before { content: "\f395"; } +.bi-file-excel::before { content: "\f396"; } +.bi-file-fill::before { content: "\f397"; } +.bi-file-font-fill::before { content: "\f398"; } +.bi-file-font::before { content: "\f399"; } +.bi-file-image-fill::before { content: "\f39a"; } +.bi-file-image::before { content: "\f39b"; } +.bi-file-lock-fill::before { content: "\f39c"; } +.bi-file-lock::before { content: "\f39d"; } +.bi-file-lock2-fill::before { content: "\f39e"; } +.bi-file-lock2::before { content: "\f39f"; } +.bi-file-medical-fill::before { content: "\f3a0"; } +.bi-file-medical::before { content: "\f3a1"; } +.bi-file-minus-fill::before { content: "\f3a2"; } +.bi-file-minus::before { content: "\f3a3"; } +.bi-file-music-fill::before { content: "\f3a4"; } +.bi-file-music::before { content: "\f3a5"; } +.bi-file-person-fill::before { content: "\f3a6"; } +.bi-file-person::before { content: "\f3a7"; } +.bi-file-play-fill::before { content: "\f3a8"; } +.bi-file-play::before { content: "\f3a9"; } +.bi-file-plus-fill::before { content: "\f3aa"; } +.bi-file-plus::before { content: "\f3ab"; } +.bi-file-post-fill::before { content: "\f3ac"; } +.bi-file-post::before { content: "\f3ad"; } +.bi-file-ppt-fill::before { content: "\f3ae"; } +.bi-file-ppt::before { content: "\f3af"; } +.bi-file-richtext-fill::before { content: "\f3b0"; } +.bi-file-richtext::before { content: "\f3b1"; } +.bi-file-ruled-fill::before { content: "\f3b2"; } +.bi-file-ruled::before { content: "\f3b3"; } +.bi-file-slides-fill::before { content: "\f3b4"; } +.bi-file-slides::before { content: "\f3b5"; } +.bi-file-spreadsheet-fill::before { content: "\f3b6"; } +.bi-file-spreadsheet::before { content: "\f3b7"; } +.bi-file-text-fill::before { content: "\f3b8"; } +.bi-file-text::before { content: "\f3b9"; } +.bi-file-word-fill::before { content: "\f3ba"; } +.bi-file-word::before { content: "\f3bb"; } +.bi-file-x-fill::before { content: "\f3bc"; } +.bi-file-x::before { content: "\f3bd"; } +.bi-file-zip-fill::before { content: "\f3be"; } +.bi-file-zip::before { content: "\f3bf"; } +.bi-file::before { content: "\f3c0"; } +.bi-files-alt::before { content: "\f3c1"; } +.bi-files::before { content: "\f3c2"; } +.bi-film::before { content: "\f3c3"; } +.bi-filter-circle-fill::before { content: "\f3c4"; } +.bi-filter-circle::before { content: "\f3c5"; } +.bi-filter-left::before { content: "\f3c6"; } +.bi-filter-right::before { content: "\f3c7"; } +.bi-filter-square-fill::before { content: "\f3c8"; } +.bi-filter-square::before { content: "\f3c9"; } +.bi-filter::before { content: "\f3ca"; } +.bi-flag-fill::before { content: "\f3cb"; } +.bi-flag::before { content: "\f3cc"; } +.bi-flower1::before { content: "\f3cd"; } +.bi-flower2::before { content: "\f3ce"; } +.bi-flower3::before { content: "\f3cf"; } +.bi-folder-check::before { content: "\f3d0"; } +.bi-folder-fill::before { content: "\f3d1"; } +.bi-folder-minus::before { content: "\f3d2"; } +.bi-folder-plus::before { content: "\f3d3"; } +.bi-folder-symlink-fill::before { content: "\f3d4"; } +.bi-folder-symlink::before { content: "\f3d5"; } +.bi-folder-x::before { content: "\f3d6"; } +.bi-folder::before { content: "\f3d7"; } +.bi-folder2-open::before { content: "\f3d8"; } +.bi-folder2::before { content: "\f3d9"; } +.bi-fonts::before { content: "\f3da"; } +.bi-forward-fill::before { content: "\f3db"; } +.bi-forward::before { content: "\f3dc"; } +.bi-front::before { content: "\f3dd"; } +.bi-fullscreen-exit::before { content: "\f3de"; } +.bi-fullscreen::before { content: "\f3df"; } +.bi-funnel-fill::before { content: "\f3e0"; } +.bi-funnel::before { content: "\f3e1"; } +.bi-gear-fill::before { content: "\f3e2"; } +.bi-gear-wide-connected::before { content: "\f3e3"; } +.bi-gear-wide::before { content: "\f3e4"; } +.bi-gear::before { content: "\f3e5"; } +.bi-gem::before { content: "\f3e6"; } +.bi-geo-alt-fill::before { content: "\f3e7"; } +.bi-geo-alt::before { content: "\f3e8"; } +.bi-geo-fill::before { content: "\f3e9"; } +.bi-geo::before { content: "\f3ea"; } +.bi-gift-fill::before { content: "\f3eb"; } +.bi-gift::before { content: "\f3ec"; } +.bi-github::before { content: "\f3ed"; } +.bi-globe::before { content: "\f3ee"; } +.bi-globe2::before { content: "\f3ef"; } +.bi-google::before { content: "\f3f0"; } +.bi-graph-down::before { content: "\f3f1"; } +.bi-graph-up::before { content: "\f3f2"; } +.bi-grid-1x2-fill::before { content: "\f3f3"; } +.bi-grid-1x2::before { content: "\f3f4"; } +.bi-grid-3x2-gap-fill::before { content: "\f3f5"; } +.bi-grid-3x2-gap::before { content: "\f3f6"; } +.bi-grid-3x2::before { content: "\f3f7"; } +.bi-grid-3x3-gap-fill::before { content: "\f3f8"; } +.bi-grid-3x3-gap::before { content: "\f3f9"; } +.bi-grid-3x3::before { content: "\f3fa"; } +.bi-grid-fill::before { content: "\f3fb"; } +.bi-grid::before { content: "\f3fc"; } +.bi-grip-horizontal::before { content: "\f3fd"; } +.bi-grip-vertical::before { content: "\f3fe"; } +.bi-hammer::before { content: "\f3ff"; } +.bi-hand-index-fill::before { content: "\f400"; } +.bi-hand-index-thumb-fill::before { content: "\f401"; } +.bi-hand-index-thumb::before { content: "\f402"; } +.bi-hand-index::before { content: "\f403"; } +.bi-hand-thumbs-down-fill::before { content: "\f404"; } +.bi-hand-thumbs-down::before { content: "\f405"; } +.bi-hand-thumbs-up-fill::before { content: "\f406"; } +.bi-hand-thumbs-up::before { content: "\f407"; } +.bi-handbag-fill::before { content: "\f408"; } +.bi-handbag::before { content: "\f409"; } +.bi-hash::before { content: "\f40a"; } +.bi-hdd-fill::before { content: "\f40b"; } +.bi-hdd-network-fill::before { content: "\f40c"; } +.bi-hdd-network::before { content: "\f40d"; } +.bi-hdd-rack-fill::before { content: "\f40e"; } +.bi-hdd-rack::before { content: "\f40f"; } +.bi-hdd-stack-fill::before { content: "\f410"; } +.bi-hdd-stack::before { content: "\f411"; } +.bi-hdd::before { content: "\f412"; } +.bi-headphones::before { content: "\f413"; } +.bi-headset::before { content: "\f414"; } +.bi-heart-fill::before { content: "\f415"; } +.bi-heart-half::before { content: "\f416"; } +.bi-heart::before { content: "\f417"; } +.bi-heptagon-fill::before { content: "\f418"; } +.bi-heptagon-half::before { content: "\f419"; } +.bi-heptagon::before { content: "\f41a"; } +.bi-hexagon-fill::before { content: "\f41b"; } +.bi-hexagon-half::before { content: "\f41c"; } +.bi-hexagon::before { content: "\f41d"; } +.bi-hourglass-bottom::before { content: "\f41e"; } +.bi-hourglass-split::before { content: "\f41f"; } +.bi-hourglass-top::before { content: "\f420"; } +.bi-hourglass::before { content: "\f421"; } +.bi-house-door-fill::before { content: "\f422"; } +.bi-house-door::before { content: "\f423"; } +.bi-house-fill::before { content: "\f424"; } +.bi-house::before { content: "\f425"; } +.bi-hr::before { content: "\f426"; } +.bi-hurricane::before { content: "\f427"; } +.bi-image-alt::before { content: "\f428"; } +.bi-image-fill::before { content: "\f429"; } +.bi-image::before { content: "\f42a"; } +.bi-images::before { content: "\f42b"; } +.bi-inbox-fill::before { content: "\f42c"; } +.bi-inbox::before { content: "\f42d"; } +.bi-inboxes-fill::before { content: "\f42e"; } +.bi-inboxes::before { content: "\f42f"; } +.bi-info-circle-fill::before { content: "\f430"; } +.bi-info-circle::before { content: "\f431"; } +.bi-info-square-fill::before { content: "\f432"; } +.bi-info-square::before { content: "\f433"; } +.bi-info::before { content: "\f434"; } +.bi-input-cursor-text::before { content: "\f435"; } +.bi-input-cursor::before { content: "\f436"; } +.bi-instagram::before { content: "\f437"; } +.bi-intersect::before { content: "\f438"; } +.bi-journal-album::before { content: "\f439"; } +.bi-journal-arrow-down::before { content: "\f43a"; } +.bi-journal-arrow-up::before { content: "\f43b"; } +.bi-journal-bookmark-fill::before { content: "\f43c"; } +.bi-journal-bookmark::before { content: "\f43d"; } +.bi-journal-check::before { content: "\f43e"; } +.bi-journal-code::before { content: "\f43f"; } +.bi-journal-medical::before { content: "\f440"; } +.bi-journal-minus::before { content: "\f441"; } +.bi-journal-plus::before { content: "\f442"; } +.bi-journal-richtext::before { content: "\f443"; } +.bi-journal-text::before { content: "\f444"; } +.bi-journal-x::before { content: "\f445"; } +.bi-journal::before { content: "\f446"; } +.bi-journals::before { content: "\f447"; } +.bi-joystick::before { content: "\f448"; } +.bi-justify-left::before { content: "\f449"; } +.bi-justify-right::before { content: "\f44a"; } +.bi-justify::before { content: "\f44b"; } +.bi-kanban-fill::before { content: "\f44c"; } +.bi-kanban::before { content: "\f44d"; } +.bi-key-fill::before { content: "\f44e"; } +.bi-key::before { content: "\f44f"; } +.bi-keyboard-fill::before { content: "\f450"; } +.bi-keyboard::before { content: "\f451"; } +.bi-ladder::before { content: "\f452"; } +.bi-lamp-fill::before { content: "\f453"; } +.bi-lamp::before { content: "\f454"; } +.bi-laptop-fill::before { content: "\f455"; } +.bi-laptop::before { content: "\f456"; } +.bi-layer-backward::before { content: "\f457"; } +.bi-layer-forward::before { content: "\f458"; } +.bi-layers-fill::before { content: "\f459"; } +.bi-layers-half::before { content: "\f45a"; } +.bi-layers::before { content: "\f45b"; } +.bi-layout-sidebar-inset-reverse::before { content: "\f45c"; } +.bi-layout-sidebar-inset::before { content: "\f45d"; } +.bi-layout-sidebar-reverse::before { content: "\f45e"; } +.bi-layout-sidebar::before { content: "\f45f"; } +.bi-layout-split::before { content: "\f460"; } +.bi-layout-text-sidebar-reverse::before { content: "\f461"; } +.bi-layout-text-sidebar::before { content: "\f462"; } +.bi-layout-text-window-reverse::before { content: "\f463"; } +.bi-layout-text-window::before { content: "\f464"; } +.bi-layout-three-columns::before { content: "\f465"; } +.bi-layout-wtf::before { content: "\f466"; } +.bi-life-preserver::before { content: "\f467"; } +.bi-lightbulb-fill::before { content: "\f468"; } +.bi-lightbulb-off-fill::before { content: "\f469"; } +.bi-lightbulb-off::before { content: "\f46a"; } +.bi-lightbulb::before { content: "\f46b"; } +.bi-lightning-charge-fill::before { content: "\f46c"; } +.bi-lightning-charge::before { content: "\f46d"; } +.bi-lightning-fill::before { content: "\f46e"; } +.bi-lightning::before { content: "\f46f"; } +.bi-link-45deg::before { content: "\f470"; } +.bi-link::before { content: "\f471"; } +.bi-linkedin::before { content: "\f472"; } +.bi-list-check::before { content: "\f473"; } +.bi-list-nested::before { content: "\f474"; } +.bi-list-ol::before { content: "\f475"; } +.bi-list-stars::before { content: "\f476"; } +.bi-list-task::before { content: "\f477"; } +.bi-list-ul::before { content: "\f478"; } +.bi-list::before { content: "\f479"; } +.bi-lock-fill::before { content: "\f47a"; } +.bi-lock::before { content: "\f47b"; } +.bi-mailbox::before { content: "\f47c"; } +.bi-mailbox2::before { content: "\f47d"; } +.bi-map-fill::before { content: "\f47e"; } +.bi-map::before { content: "\f47f"; } +.bi-markdown-fill::before { content: "\f480"; } +.bi-markdown::before { content: "\f481"; } +.bi-mask::before { content: "\f482"; } +.bi-megaphone-fill::before { content: "\f483"; } +.bi-megaphone::before { content: "\f484"; } +.bi-menu-app-fill::before { content: "\f485"; } +.bi-menu-app::before { content: "\f486"; } +.bi-menu-button-fill::before { content: "\f487"; } +.bi-menu-button-wide-fill::before { content: "\f488"; } +.bi-menu-button-wide::before { content: "\f489"; } +.bi-menu-button::before { content: "\f48a"; } +.bi-menu-down::before { content: "\f48b"; } +.bi-menu-up::before { content: "\f48c"; } +.bi-mic-fill::before { content: "\f48d"; } +.bi-mic-mute-fill::before { content: "\f48e"; } +.bi-mic-mute::before { content: "\f48f"; } +.bi-mic::before { content: "\f490"; } +.bi-minecart-loaded::before { content: "\f491"; } +.bi-minecart::before { content: "\f492"; } +.bi-moisture::before { content: "\f493"; } +.bi-moon-fill::before { content: "\f494"; } +.bi-moon-stars-fill::before { content: "\f495"; } +.bi-moon-stars::before { content: "\f496"; } +.bi-moon::before { content: "\f497"; } +.bi-mouse-fill::before { content: "\f498"; } +.bi-mouse::before { content: "\f499"; } +.bi-mouse2-fill::before { content: "\f49a"; } +.bi-mouse2::before { content: "\f49b"; } +.bi-mouse3-fill::before { content: "\f49c"; } +.bi-mouse3::before { content: "\f49d"; } +.bi-music-note-beamed::before { content: "\f49e"; } +.bi-music-note-list::before { content: "\f49f"; } +.bi-music-note::before { content: "\f4a0"; } +.bi-music-player-fill::before { content: "\f4a1"; } +.bi-music-player::before { content: "\f4a2"; } +.bi-newspaper::before { content: "\f4a3"; } +.bi-node-minus-fill::before { content: "\f4a4"; } +.bi-node-minus::before { content: "\f4a5"; } +.bi-node-plus-fill::before { content: "\f4a6"; } +.bi-node-plus::before { content: "\f4a7"; } +.bi-nut-fill::before { content: "\f4a8"; } +.bi-nut::before { content: "\f4a9"; } +.bi-octagon-fill::before { content: "\f4aa"; } +.bi-octagon-half::before { content: "\f4ab"; } +.bi-octagon::before { content: "\f4ac"; } +.bi-option::before { content: "\f4ad"; } +.bi-outlet::before { content: "\f4ae"; } +.bi-paint-bucket::before { content: "\f4af"; } +.bi-palette-fill::before { content: "\f4b0"; } +.bi-palette::before { content: "\f4b1"; } +.bi-palette2::before { content: "\f4b2"; } +.bi-paperclip::before { content: "\f4b3"; } +.bi-paragraph::before { content: "\f4b4"; } +.bi-patch-check-fill::before { content: "\f4b5"; } +.bi-patch-check::before { content: "\f4b6"; } +.bi-patch-exclamation-fill::before { content: "\f4b7"; } +.bi-patch-exclamation::before { content: "\f4b8"; } +.bi-patch-minus-fill::before { content: "\f4b9"; } +.bi-patch-minus::before { content: "\f4ba"; } +.bi-patch-plus-fill::before { content: "\f4bb"; } +.bi-patch-plus::before { content: "\f4bc"; } +.bi-patch-question-fill::before { content: "\f4bd"; } +.bi-patch-question::before { content: "\f4be"; } +.bi-pause-btn-fill::before { content: "\f4bf"; } +.bi-pause-btn::before { content: "\f4c0"; } +.bi-pause-circle-fill::before { content: "\f4c1"; } +.bi-pause-circle::before { content: "\f4c2"; } +.bi-pause-fill::before { content: "\f4c3"; } +.bi-pause::before { content: "\f4c4"; } +.bi-peace-fill::before { content: "\f4c5"; } +.bi-peace::before { content: "\f4c6"; } +.bi-pen-fill::before { content: "\f4c7"; } +.bi-pen::before { content: "\f4c8"; } +.bi-pencil-fill::before { content: "\f4c9"; } +.bi-pencil-square::before { content: "\f4ca"; } +.bi-pencil::before { content: "\f4cb"; } +.bi-pentagon-fill::before { content: "\f4cc"; } +.bi-pentagon-half::before { content: "\f4cd"; } +.bi-pentagon::before { content: "\f4ce"; } +.bi-people-fill::before { content: "\f4cf"; } +.bi-people::before { content: "\f4d0"; } +.bi-percent::before { content: "\f4d1"; } +.bi-person-badge-fill::before { content: "\f4d2"; } +.bi-person-badge::before { content: "\f4d3"; } +.bi-person-bounding-box::before { content: "\f4d4"; } +.bi-person-check-fill::before { content: "\f4d5"; } +.bi-person-check::before { content: "\f4d6"; } +.bi-person-circle::before { content: "\f4d7"; } +.bi-person-dash-fill::before { content: "\f4d8"; } +.bi-person-dash::before { content: "\f4d9"; } +.bi-person-fill::before { content: "\f4da"; } +.bi-person-lines-fill::before { content: "\f4db"; } +.bi-person-plus-fill::before { content: "\f4dc"; } +.bi-person-plus::before { content: "\f4dd"; } +.bi-person-square::before { content: "\f4de"; } +.bi-person-x-fill::before { content: "\f4df"; } +.bi-person-x::before { content: "\f4e0"; } +.bi-person::before { content: "\f4e1"; } +.bi-phone-fill::before { content: "\f4e2"; } +.bi-phone-landscape-fill::before { content: "\f4e3"; } +.bi-phone-landscape::before { content: "\f4e4"; } +.bi-phone-vibrate-fill::before { content: "\f4e5"; } +.bi-phone-vibrate::before { content: "\f4e6"; } +.bi-phone::before { content: "\f4e7"; } +.bi-pie-chart-fill::before { content: "\f4e8"; } +.bi-pie-chart::before { content: "\f4e9"; } +.bi-pin-angle-fill::before { content: "\f4ea"; } +.bi-pin-angle::before { content: "\f4eb"; } +.bi-pin-fill::before { content: "\f4ec"; } +.bi-pin::before { content: "\f4ed"; } +.bi-pip-fill::before { content: "\f4ee"; } +.bi-pip::before { content: "\f4ef"; } +.bi-play-btn-fill::before { content: "\f4f0"; } +.bi-play-btn::before { content: "\f4f1"; } +.bi-play-circle-fill::before { content: "\f4f2"; } +.bi-play-circle::before { content: "\f4f3"; } +.bi-play-fill::before { content: "\f4f4"; } +.bi-play::before { content: "\f4f5"; } +.bi-plug-fill::before { content: "\f4f6"; } +.bi-plug::before { content: "\f4f7"; } +.bi-plus-circle-dotted::before { content: "\f4f8"; } +.bi-plus-circle-fill::before { content: "\f4f9"; } +.bi-plus-circle::before { content: "\f4fa"; } +.bi-plus-square-dotted::before { content: "\f4fb"; } +.bi-plus-square-fill::before { content: "\f4fc"; } +.bi-plus-square::before { content: "\f4fd"; } +.bi-plus::before { content: "\f4fe"; } +.bi-power::before { content: "\f4ff"; } +.bi-printer-fill::before { content: "\f500"; } +.bi-printer::before { content: "\f501"; } +.bi-puzzle-fill::before { content: "\f502"; } +.bi-puzzle::before { content: "\f503"; } +.bi-question-circle-fill::before { content: "\f504"; } +.bi-question-circle::before { content: "\f505"; } +.bi-question-diamond-fill::before { content: "\f506"; } +.bi-question-diamond::before { content: "\f507"; } +.bi-question-octagon-fill::before { content: "\f508"; } +.bi-question-octagon::before { content: "\f509"; } +.bi-question-square-fill::before { content: "\f50a"; } +.bi-question-square::before { content: "\f50b"; } +.bi-question::before { content: "\f50c"; } +.bi-rainbow::before { content: "\f50d"; } +.bi-receipt-cutoff::before { content: "\f50e"; } +.bi-receipt::before { content: "\f50f"; } +.bi-reception-0::before { content: "\f510"; } +.bi-reception-1::before { content: "\f511"; } +.bi-reception-2::before { content: "\f512"; } +.bi-reception-3::before { content: "\f513"; } +.bi-reception-4::before { content: "\f514"; } +.bi-record-btn-fill::before { content: "\f515"; } +.bi-record-btn::before { content: "\f516"; } +.bi-record-circle-fill::before { content: "\f517"; } +.bi-record-circle::before { content: "\f518"; } +.bi-record-fill::before { content: "\f519"; } +.bi-record::before { content: "\f51a"; } +.bi-record2-fill::before { content: "\f51b"; } +.bi-record2::before { content: "\f51c"; } +.bi-reply-all-fill::before { content: "\f51d"; } +.bi-reply-all::before { content: "\f51e"; } +.bi-reply-fill::before { content: "\f51f"; } +.bi-reply::before { content: "\f520"; } +.bi-rss-fill::before { content: "\f521"; } +.bi-rss::before { content: "\f522"; } +.bi-rulers::before { content: "\f523"; } +.bi-save-fill::before { content: "\f524"; } +.bi-save::before { content: "\f525"; } +.bi-save2-fill::before { content: "\f526"; } +.bi-save2::before { content: "\f527"; } +.bi-scissors::before { content: "\f528"; } +.bi-screwdriver::before { content: "\f529"; } +.bi-search::before { content: "\f52a"; } +.bi-segmented-nav::before { content: "\f52b"; } +.bi-server::before { content: "\f52c"; } +.bi-share-fill::before { content: "\f52d"; } +.bi-share::before { content: "\f52e"; } +.bi-shield-check::before { content: "\f52f"; } +.bi-shield-exclamation::before { content: "\f530"; } +.bi-shield-fill-check::before { content: "\f531"; } +.bi-shield-fill-exclamation::before { content: "\f532"; } +.bi-shield-fill-minus::before { content: "\f533"; } +.bi-shield-fill-plus::before { content: "\f534"; } +.bi-shield-fill-x::before { content: "\f535"; } +.bi-shield-fill::before { content: "\f536"; } +.bi-shield-lock-fill::before { content: "\f537"; } +.bi-shield-lock::before { content: "\f538"; } +.bi-shield-minus::before { content: "\f539"; } +.bi-shield-plus::before { content: "\f53a"; } +.bi-shield-shaded::before { content: "\f53b"; } +.bi-shield-slash-fill::before { content: "\f53c"; } +.bi-shield-slash::before { content: "\f53d"; } +.bi-shield-x::before { content: "\f53e"; } +.bi-shield::before { content: "\f53f"; } +.bi-shift-fill::before { content: "\f540"; } +.bi-shift::before { content: "\f541"; } +.bi-shop-window::before { content: "\f542"; } +.bi-shop::before { content: "\f543"; } +.bi-shuffle::before { content: "\f544"; } +.bi-signpost-2-fill::before { content: "\f545"; } +.bi-signpost-2::before { content: "\f546"; } +.bi-signpost-fill::before { content: "\f547"; } +.bi-signpost-split-fill::before { content: "\f548"; } +.bi-signpost-split::before { content: "\f549"; } +.bi-signpost::before { content: "\f54a"; } +.bi-sim-fill::before { content: "\f54b"; } +.bi-sim::before { content: "\f54c"; } +.bi-skip-backward-btn-fill::before { content: "\f54d"; } +.bi-skip-backward-btn::before { content: "\f54e"; } +.bi-skip-backward-circle-fill::before { content: "\f54f"; } +.bi-skip-backward-circle::before { content: "\f550"; } +.bi-skip-backward-fill::before { content: "\f551"; } +.bi-skip-backward::before { content: "\f552"; } +.bi-skip-end-btn-fill::before { content: "\f553"; } +.bi-skip-end-btn::before { content: "\f554"; } +.bi-skip-end-circle-fill::before { content: "\f555"; } +.bi-skip-end-circle::before { content: "\f556"; } +.bi-skip-end-fill::before { content: "\f557"; } +.bi-skip-end::before { content: "\f558"; } +.bi-skip-forward-btn-fill::before { content: "\f559"; } +.bi-skip-forward-btn::before { content: "\f55a"; } +.bi-skip-forward-circle-fill::before { content: "\f55b"; } +.bi-skip-forward-circle::before { content: "\f55c"; } +.bi-skip-forward-fill::before { content: "\f55d"; } +.bi-skip-forward::before { content: "\f55e"; } +.bi-skip-start-btn-fill::before { content: "\f55f"; } +.bi-skip-start-btn::before { content: "\f560"; } +.bi-skip-start-circle-fill::before { content: "\f561"; } +.bi-skip-start-circle::before { content: "\f562"; } +.bi-skip-start-fill::before { content: "\f563"; } +.bi-skip-start::before { content: "\f564"; } +.bi-slack::before { content: "\f565"; } +.bi-slash-circle-fill::before { content: "\f566"; } +.bi-slash-circle::before { content: "\f567"; } +.bi-slash-square-fill::before { content: "\f568"; } +.bi-slash-square::before { content: "\f569"; } +.bi-slash::before { content: "\f56a"; } +.bi-sliders::before { content: "\f56b"; } +.bi-smartwatch::before { content: "\f56c"; } +.bi-snow::before { content: "\f56d"; } +.bi-snow2::before { content: "\f56e"; } +.bi-snow3::before { content: "\f56f"; } +.bi-sort-alpha-down-alt::before { content: "\f570"; } +.bi-sort-alpha-down::before { content: "\f571"; } +.bi-sort-alpha-up-alt::before { content: "\f572"; } +.bi-sort-alpha-up::before { content: "\f573"; } +.bi-sort-down-alt::before { content: "\f574"; } +.bi-sort-down::before { content: "\f575"; } +.bi-sort-numeric-down-alt::before { content: "\f576"; } +.bi-sort-numeric-down::before { content: "\f577"; } +.bi-sort-numeric-up-alt::before { content: "\f578"; } +.bi-sort-numeric-up::before { content: "\f579"; } +.bi-sort-up-alt::before { content: "\f57a"; } +.bi-sort-up::before { content: "\f57b"; } +.bi-soundwave::before { content: "\f57c"; } +.bi-speaker-fill::before { content: "\f57d"; } +.bi-speaker::before { content: "\f57e"; } +.bi-speedometer::before { content: "\f57f"; } +.bi-speedometer2::before { content: "\f580"; } +.bi-spellcheck::before { content: "\f581"; } +.bi-square-fill::before { content: "\f582"; } +.bi-square-half::before { content: "\f583"; } +.bi-square::before { content: "\f584"; } +.bi-stack::before { content: "\f585"; } +.bi-star-fill::before { content: "\f586"; } +.bi-star-half::before { content: "\f587"; } +.bi-star::before { content: "\f588"; } +.bi-stars::before { content: "\f589"; } +.bi-stickies-fill::before { content: "\f58a"; } +.bi-stickies::before { content: "\f58b"; } +.bi-sticky-fill::before { content: "\f58c"; } +.bi-sticky::before { content: "\f58d"; } +.bi-stop-btn-fill::before { content: "\f58e"; } +.bi-stop-btn::before { content: "\f58f"; } +.bi-stop-circle-fill::before { content: "\f590"; } +.bi-stop-circle::before { content: "\f591"; } +.bi-stop-fill::before { content: "\f592"; } +.bi-stop::before { content: "\f593"; } +.bi-stoplights-fill::before { content: "\f594"; } +.bi-stoplights::before { content: "\f595"; } +.bi-stopwatch-fill::before { content: "\f596"; } +.bi-stopwatch::before { content: "\f597"; } +.bi-subtract::before { content: "\f598"; } +.bi-suit-club-fill::before { content: "\f599"; } +.bi-suit-club::before { content: "\f59a"; } +.bi-suit-diamond-fill::before { content: "\f59b"; } +.bi-suit-diamond::before { content: "\f59c"; } +.bi-suit-heart-fill::before { content: "\f59d"; } +.bi-suit-heart::before { content: "\f59e"; } +.bi-suit-spade-fill::before { content: "\f59f"; } +.bi-suit-spade::before { content: "\f5a0"; } +.bi-sun-fill::before { content: "\f5a1"; } +.bi-sun::before { content: "\f5a2"; } +.bi-sunglasses::before { content: "\f5a3"; } +.bi-sunrise-fill::before { content: "\f5a4"; } +.bi-sunrise::before { content: "\f5a5"; } +.bi-sunset-fill::before { content: "\f5a6"; } +.bi-sunset::before { content: "\f5a7"; } +.bi-symmetry-horizontal::before { content: "\f5a8"; } +.bi-symmetry-vertical::before { content: "\f5a9"; } +.bi-table::before { content: "\f5aa"; } +.bi-tablet-fill::before { content: "\f5ab"; } +.bi-tablet-landscape-fill::before { content: "\f5ac"; } +.bi-tablet-landscape::before { content: "\f5ad"; } +.bi-tablet::before { content: "\f5ae"; } +.bi-tag-fill::before { content: "\f5af"; } +.bi-tag::before { content: "\f5b0"; } +.bi-tags-fill::before { content: "\f5b1"; } +.bi-tags::before { content: "\f5b2"; } +.bi-telegram::before { content: "\f5b3"; } +.bi-telephone-fill::before { content: "\f5b4"; } +.bi-telephone-forward-fill::before { content: "\f5b5"; } +.bi-telephone-forward::before { content: "\f5b6"; } +.bi-telephone-inbound-fill::before { content: "\f5b7"; } +.bi-telephone-inbound::before { content: "\f5b8"; } +.bi-telephone-minus-fill::before { content: "\f5b9"; } +.bi-telephone-minus::before { content: "\f5ba"; } +.bi-telephone-outbound-fill::before { content: "\f5bb"; } +.bi-telephone-outbound::before { content: "\f5bc"; } +.bi-telephone-plus-fill::before { content: "\f5bd"; } +.bi-telephone-plus::before { content: "\f5be"; } +.bi-telephone-x-fill::before { content: "\f5bf"; } +.bi-telephone-x::before { content: "\f5c0"; } +.bi-telephone::before { content: "\f5c1"; } +.bi-terminal-fill::before { content: "\f5c2"; } +.bi-terminal::before { content: "\f5c3"; } +.bi-text-center::before { content: "\f5c4"; } +.bi-text-indent-left::before { content: "\f5c5"; } +.bi-text-indent-right::before { content: "\f5c6"; } +.bi-text-left::before { content: "\f5c7"; } +.bi-text-paragraph::before { content: "\f5c8"; } +.bi-text-right::before { content: "\f5c9"; } +.bi-textarea-resize::before { content: "\f5ca"; } +.bi-textarea-t::before { content: "\f5cb"; } +.bi-textarea::before { content: "\f5cc"; } +.bi-thermometer-half::before { content: "\f5cd"; } +.bi-thermometer-high::before { content: "\f5ce"; } +.bi-thermometer-low::before { content: "\f5cf"; } +.bi-thermometer-snow::before { content: "\f5d0"; } +.bi-thermometer-sun::before { content: "\f5d1"; } +.bi-thermometer::before { content: "\f5d2"; } +.bi-three-dots-vertical::before { content: "\f5d3"; } +.bi-three-dots::before { content: "\f5d4"; } +.bi-toggle-off::before { content: "\f5d5"; } +.bi-toggle-on::before { content: "\f5d6"; } +.bi-toggle2-off::before { content: "\f5d7"; } +.bi-toggle2-on::before { content: "\f5d8"; } +.bi-toggles::before { content: "\f5d9"; } +.bi-toggles2::before { content: "\f5da"; } +.bi-tools::before { content: "\f5db"; } +.bi-tornado::before { content: "\f5dc"; } +.bi-trash-fill::before { content: "\f5dd"; } +.bi-trash::before { content: "\f5de"; } +.bi-trash2-fill::before { content: "\f5df"; } +.bi-trash2::before { content: "\f5e0"; } +.bi-tree-fill::before { content: "\f5e1"; } +.bi-tree::before { content: "\f5e2"; } +.bi-triangle-fill::before { content: "\f5e3"; } +.bi-triangle-half::before { content: "\f5e4"; } +.bi-triangle::before { content: "\f5e5"; } +.bi-trophy-fill::before { content: "\f5e6"; } +.bi-trophy::before { content: "\f5e7"; } +.bi-tropical-storm::before { content: "\f5e8"; } +.bi-truck-flatbed::before { content: "\f5e9"; } +.bi-truck::before { content: "\f5ea"; } +.bi-tsunami::before { content: "\f5eb"; } +.bi-tv-fill::before { content: "\f5ec"; } +.bi-tv::before { content: "\f5ed"; } +.bi-twitch::before { content: "\f5ee"; } +.bi-twitter::before { content: "\f5ef"; } +.bi-type-bold::before { content: "\f5f0"; } +.bi-type-h1::before { content: "\f5f1"; } +.bi-type-h2::before { content: "\f5f2"; } +.bi-type-h3::before { content: "\f5f3"; } +.bi-type-italic::before { content: "\f5f4"; } +.bi-type-strikethrough::before { content: "\f5f5"; } +.bi-type-underline::before { content: "\f5f6"; } +.bi-type::before { content: "\f5f7"; } +.bi-ui-checks-grid::before { content: "\f5f8"; } +.bi-ui-checks::before { content: "\f5f9"; } +.bi-ui-radios-grid::before { content: "\f5fa"; } +.bi-ui-radios::before { content: "\f5fb"; } +.bi-umbrella-fill::before { content: "\f5fc"; } +.bi-umbrella::before { content: "\f5fd"; } +.bi-union::before { content: "\f5fe"; } +.bi-unlock-fill::before { content: "\f5ff"; } +.bi-unlock::before { content: "\f600"; } +.bi-upc-scan::before { content: "\f601"; } +.bi-upc::before { content: "\f602"; } +.bi-upload::before { content: "\f603"; } +.bi-vector-pen::before { content: "\f604"; } +.bi-view-list::before { content: "\f605"; } +.bi-view-stacked::before { content: "\f606"; } +.bi-vinyl-fill::before { content: "\f607"; } +.bi-vinyl::before { content: "\f608"; } +.bi-voicemail::before { content: "\f609"; } +.bi-volume-down-fill::before { content: "\f60a"; } +.bi-volume-down::before { content: "\f60b"; } +.bi-volume-mute-fill::before { content: "\f60c"; } +.bi-volume-mute::before { content: "\f60d"; } +.bi-volume-off-fill::before { content: "\f60e"; } +.bi-volume-off::before { content: "\f60f"; } +.bi-volume-up-fill::before { content: "\f610"; } +.bi-volume-up::before { content: "\f611"; } +.bi-vr::before { content: "\f612"; } +.bi-wallet-fill::before { content: "\f613"; } +.bi-wallet::before { content: "\f614"; } +.bi-wallet2::before { content: "\f615"; } +.bi-watch::before { content: "\f616"; } +.bi-water::before { content: "\f617"; } +.bi-whatsapp::before { content: "\f618"; } +.bi-wifi-1::before { content: "\f619"; } +.bi-wifi-2::before { content: "\f61a"; } +.bi-wifi-off::before { content: "\f61b"; } +.bi-wifi::before { content: "\f61c"; } +.bi-wind::before { content: "\f61d"; } +.bi-window-dock::before { content: "\f61e"; } +.bi-window-sidebar::before { content: "\f61f"; } +.bi-window::before { content: "\f620"; } +.bi-wrench::before { content: "\f621"; } +.bi-x-circle-fill::before { content: "\f622"; } +.bi-x-circle::before { content: "\f623"; } +.bi-x-diamond-fill::before { content: "\f624"; } +.bi-x-diamond::before { content: "\f625"; } +.bi-x-octagon-fill::before { content: "\f626"; } +.bi-x-octagon::before { content: "\f627"; } +.bi-x-square-fill::before { content: "\f628"; } +.bi-x-square::before { content: "\f629"; } +.bi-x::before { content: "\f62a"; } +.bi-youtube::before { content: "\f62b"; } +.bi-zoom-in::before { content: "\f62c"; } +.bi-zoom-out::before { content: "\f62d"; } +.bi-bank::before { content: "\f62e"; } +.bi-bank2::before { content: "\f62f"; } +.bi-bell-slash-fill::before { content: "\f630"; } +.bi-bell-slash::before { content: "\f631"; } +.bi-cash-coin::before { content: "\f632"; } +.bi-check-lg::before { content: "\f633"; } +.bi-coin::before { content: "\f634"; } +.bi-currency-bitcoin::before { content: "\f635"; } +.bi-currency-dollar::before { content: "\f636"; } +.bi-currency-euro::before { content: "\f637"; } +.bi-currency-exchange::before { content: "\f638"; } +.bi-currency-pound::before { content: "\f639"; } +.bi-currency-yen::before { content: "\f63a"; } +.bi-dash-lg::before { content: "\f63b"; } +.bi-exclamation-lg::before { content: "\f63c"; } +.bi-file-earmark-pdf-fill::before { content: "\f63d"; } +.bi-file-earmark-pdf::before { content: "\f63e"; } +.bi-file-pdf-fill::before { content: "\f63f"; } +.bi-file-pdf::before { content: "\f640"; } +.bi-gender-ambiguous::before { content: "\f641"; } +.bi-gender-female::before { content: "\f642"; } +.bi-gender-male::before { content: "\f643"; } +.bi-gender-trans::before { content: "\f644"; } +.bi-headset-vr::before { content: "\f645"; } +.bi-info-lg::before { content: "\f646"; } +.bi-mastodon::before { content: "\f647"; } +.bi-messenger::before { content: "\f648"; } +.bi-piggy-bank-fill::before { content: "\f649"; } +.bi-piggy-bank::before { content: "\f64a"; } +.bi-pin-map-fill::before { content: "\f64b"; } +.bi-pin-map::before { content: "\f64c"; } +.bi-plus-lg::before { content: "\f64d"; } +.bi-question-lg::before { content: "\f64e"; } +.bi-recycle::before { content: "\f64f"; } +.bi-reddit::before { content: "\f650"; } +.bi-safe-fill::before { content: "\f651"; } +.bi-safe2-fill::before { content: "\f652"; } +.bi-safe2::before { content: "\f653"; } +.bi-sd-card-fill::before { content: "\f654"; } +.bi-sd-card::before { content: "\f655"; } +.bi-skype::before { content: "\f656"; } +.bi-slash-lg::before { content: "\f657"; } +.bi-translate::before { content: "\f658"; } +.bi-x-lg::before { content: "\f659"; } +.bi-safe::before { content: "\f65a"; } +.bi-apple::before { content: "\f65b"; } +.bi-microsoft::before { content: "\f65d"; } +.bi-windows::before { content: "\f65e"; } +.bi-behance::before { content: "\f65c"; } +.bi-dribbble::before { content: "\f65f"; } +.bi-line::before { content: "\f660"; } +.bi-medium::before { content: "\f661"; } +.bi-paypal::before { content: "\f662"; } +.bi-pinterest::before { content: "\f663"; } +.bi-signal::before { content: "\f664"; } +.bi-snapchat::before { content: "\f665"; } +.bi-spotify::before { content: "\f666"; } +.bi-stack-overflow::before { content: "\f667"; } +.bi-strava::before { content: "\f668"; } +.bi-wordpress::before { content: "\f669"; } +.bi-vimeo::before { content: "\f66a"; } +.bi-activity::before { content: "\f66b"; } +.bi-easel2-fill::before { content: "\f66c"; } +.bi-easel2::before { content: "\f66d"; } +.bi-easel3-fill::before { content: "\f66e"; } +.bi-easel3::before { content: "\f66f"; } +.bi-fan::before { content: "\f670"; } +.bi-fingerprint::before { content: "\f671"; } +.bi-graph-down-arrow::before { content: "\f672"; } +.bi-graph-up-arrow::before { content: "\f673"; } +.bi-hypnotize::before { content: "\f674"; } +.bi-magic::before { content: "\f675"; } +.bi-person-rolodex::before { content: "\f676"; } +.bi-person-video::before { content: "\f677"; } +.bi-person-video2::before { content: "\f678"; } +.bi-person-video3::before { content: "\f679"; } +.bi-person-workspace::before { content: "\f67a"; } +.bi-radioactive::before { content: "\f67b"; } +.bi-webcam-fill::before { content: "\f67c"; } +.bi-webcam::before { content: "\f67d"; } +.bi-yin-yang::before { content: "\f67e"; } +.bi-bandaid-fill::before { content: "\f680"; } +.bi-bandaid::before { content: "\f681"; } +.bi-bluetooth::before { content: "\f682"; } +.bi-body-text::before { content: "\f683"; } +.bi-boombox::before { content: "\f684"; } +.bi-boxes::before { content: "\f685"; } +.bi-dpad-fill::before { content: "\f686"; } +.bi-dpad::before { content: "\f687"; } +.bi-ear-fill::before { content: "\f688"; } +.bi-ear::before { content: "\f689"; } +.bi-envelope-check-1::before { content: "\f68a"; } +.bi-envelope-check-fill::before { content: "\f68b"; } +.bi-envelope-check::before { content: "\f68c"; } +.bi-envelope-dash-1::before { content: "\f68d"; } +.bi-envelope-dash-fill::before { content: "\f68e"; } +.bi-envelope-dash::before { content: "\f68f"; } +.bi-envelope-exclamation-1::before { content: "\f690"; } +.bi-envelope-exclamation-fill::before { content: "\f691"; } +.bi-envelope-exclamation::before { content: "\f692"; } +.bi-envelope-plus-fill::before { content: "\f693"; } +.bi-envelope-plus::before { content: "\f694"; } +.bi-envelope-slash-1::before { content: "\f695"; } +.bi-envelope-slash-fill::before { content: "\f696"; } +.bi-envelope-slash::before { content: "\f697"; } +.bi-envelope-x-1::before { content: "\f698"; } +.bi-envelope-x-fill::before { content: "\f699"; } +.bi-envelope-x::before { content: "\f69a"; } +.bi-explicit-fill::before { content: "\f69b"; } +.bi-explicit::before { content: "\f69c"; } +.bi-git::before { content: "\f69d"; } +.bi-infinity::before { content: "\f69e"; } +.bi-list-columns-reverse::before { content: "\f69f"; } +.bi-list-columns::before { content: "\f6a0"; } +.bi-meta::before { content: "\f6a1"; } +.bi-mortorboard-fill::before { content: "\f6a2"; } +.bi-mortorboard::before { content: "\f6a3"; } +.bi-nintendo-switch::before { content: "\f6a4"; } +.bi-pc-display-horizontal::before { content: "\f6a5"; } +.bi-pc-display::before { content: "\f6a6"; } +.bi-pc-horizontal::before { content: "\f6a7"; } +.bi-pc::before { content: "\f6a8"; } +.bi-playstation::before { content: "\f6a9"; } +.bi-plus-slash-minus::before { content: "\f6aa"; } +.bi-projector-fill::before { content: "\f6ab"; } +.bi-projector::before { content: "\f6ac"; } +.bi-qr-code-scan::before { content: "\f6ad"; } +.bi-qr-code::before { content: "\f6ae"; } +.bi-quora::before { content: "\f6af"; } +.bi-quote::before { content: "\f6b0"; } +.bi-robot::before { content: "\f6b1"; } +.bi-send-check-fill::before { content: "\f6b2"; } +.bi-send-check::before { content: "\f6b3"; } +.bi-send-dash-fill::before { content: "\f6b4"; } +.bi-send-dash::before { content: "\f6b5"; } +.bi-send-exclamation-1::before { content: "\f6b6"; } +.bi-send-exclamation-fill::before { content: "\f6b7"; } +.bi-send-exclamation::before { content: "\f6b8"; } +.bi-send-fill::before { content: "\f6b9"; } +.bi-send-plus-fill::before { content: "\f6ba"; } +.bi-send-plus::before { content: "\f6bb"; } +.bi-send-slash-fill::before { content: "\f6bc"; } +.bi-send-slash::before { content: "\f6bd"; } +.bi-send-x-fill::before { content: "\f6be"; } +.bi-send-x::before { content: "\f6bf"; } +.bi-send::before { content: "\f6c0"; } +.bi-steam::before { content: "\f6c1"; } +.bi-terminal-dash-1::before { content: "\f6c2"; } +.bi-terminal-dash::before { content: "\f6c3"; } +.bi-terminal-plus::before { content: "\f6c4"; } +.bi-terminal-split::before { content: "\f6c5"; } +.bi-ticket-detailed-fill::before { content: "\f6c6"; } +.bi-ticket-detailed::before { content: "\f6c7"; } +.bi-ticket-fill::before { content: "\f6c8"; } +.bi-ticket-perforated-fill::before { content: "\f6c9"; } +.bi-ticket-perforated::before { content: "\f6ca"; } +.bi-ticket::before { content: "\f6cb"; } +.bi-tiktok::before { content: "\f6cc"; } +.bi-window-dash::before { content: "\f6cd"; } +.bi-window-desktop::before { content: "\f6ce"; } +.bi-window-fullscreen::before { content: "\f6cf"; } +.bi-window-plus::before { content: "\f6d0"; } +.bi-window-split::before { content: "\f6d1"; } +.bi-window-stack::before { content: "\f6d2"; } +.bi-window-x::before { content: "\f6d3"; } +.bi-xbox::before { content: "\f6d4"; } +.bi-ethernet::before { content: "\f6d5"; } +.bi-hdmi-fill::before { content: "\f6d6"; } +.bi-hdmi::before { content: "\f6d7"; } +.bi-usb-c-fill::before { content: "\f6d8"; } +.bi-usb-c::before { content: "\f6d9"; } +.bi-usb-fill::before { content: "\f6da"; } +.bi-usb-plug-fill::before { content: "\f6db"; } +.bi-usb-plug::before { content: "\f6dc"; } +.bi-usb-symbol::before { content: "\f6dd"; } +.bi-usb::before { content: "\f6de"; } +.bi-boombox-fill::before { content: "\f6df"; } +.bi-displayport-1::before { content: "\f6e0"; } +.bi-displayport::before { content: "\f6e1"; } +.bi-gpu-card::before { content: "\f6e2"; } +.bi-memory::before { content: "\f6e3"; } +.bi-modem-fill::before { content: "\f6e4"; } +.bi-modem::before { content: "\f6e5"; } +.bi-motherboard-fill::before { content: "\f6e6"; } +.bi-motherboard::before { content: "\f6e7"; } +.bi-optical-audio-fill::before { content: "\f6e8"; } +.bi-optical-audio::before { content: "\f6e9"; } +.bi-pci-card::before { content: "\f6ea"; } +.bi-router-fill::before { content: "\f6eb"; } +.bi-router::before { content: "\f6ec"; } +.bi-ssd-fill::before { content: "\f6ed"; } +.bi-ssd::before { content: "\f6ee"; } +.bi-thunderbolt-fill::before { content: "\f6ef"; } +.bi-thunderbolt::before { content: "\f6f0"; } +.bi-usb-drive-fill::before { content: "\f6f1"; } +.bi-usb-drive::before { content: "\f6f2"; } +.bi-usb-micro-fill::before { content: "\f6f3"; } +.bi-usb-micro::before { content: "\f6f4"; } +.bi-usb-mini-fill::before { content: "\f6f5"; } +.bi-usb-mini::before { content: "\f6f6"; } +.bi-cloud-haze2::before { content: "\f6f7"; } +.bi-device-hdd-fill::before { content: "\f6f8"; } +.bi-device-hdd::before { content: "\f6f9"; } +.bi-device-ssd-fill::before { content: "\f6fa"; } +.bi-device-ssd::before { content: "\f6fb"; } +.bi-displayport-fill::before { content: "\f6fc"; } +.bi-mortarboard-fill::before { content: "\f6fd"; } +.bi-mortarboard::before { content: "\f6fe"; } +.bi-terminal-x::before { content: "\f6ff"; } +.bi-arrow-through-heart-fill::before { content: "\f700"; } +.bi-arrow-through-heart::before { content: "\f701"; } +.bi-badge-sd-fill::before { content: "\f702"; } +.bi-badge-sd::before { content: "\f703"; } +.bi-bag-heart-fill::before { content: "\f704"; } +.bi-bag-heart::before { content: "\f705"; } +.bi-balloon-fill::before { content: "\f706"; } +.bi-balloon-heart-fill::before { content: "\f707"; } +.bi-balloon-heart::before { content: "\f708"; } +.bi-balloon::before { content: "\f709"; } +.bi-box2-fill::before { content: "\f70a"; } +.bi-box2-heart-fill::before { content: "\f70b"; } +.bi-box2-heart::before { content: "\f70c"; } +.bi-box2::before { content: "\f70d"; } +.bi-braces-asterisk::before { content: "\f70e"; } +.bi-calendar-heart-fill::before { content: "\f70f"; } +.bi-calendar-heart::before { content: "\f710"; } +.bi-calendar2-heart-fill::before { content: "\f711"; } +.bi-calendar2-heart::before { content: "\f712"; } +.bi-chat-heart-fill::before { content: "\f713"; } +.bi-chat-heart::before { content: "\f714"; } +.bi-chat-left-heart-fill::before { content: "\f715"; } +.bi-chat-left-heart::before { content: "\f716"; } +.bi-chat-right-heart-fill::before { content: "\f717"; } +.bi-chat-right-heart::before { content: "\f718"; } +.bi-chat-square-heart-fill::before { content: "\f719"; } +.bi-chat-square-heart::before { content: "\f71a"; } +.bi-clipboard-check-fill::before { content: "\f71b"; } +.bi-clipboard-data-fill::before { content: "\f71c"; } +.bi-clipboard-fill::before { content: "\f71d"; } +.bi-clipboard-heart-fill::before { content: "\f71e"; } +.bi-clipboard-heart::before { content: "\f71f"; } +.bi-clipboard-minus-fill::before { content: "\f720"; } +.bi-clipboard-plus-fill::before { content: "\f721"; } +.bi-clipboard-pulse::before { content: "\f722"; } +.bi-clipboard-x-fill::before { content: "\f723"; } +.bi-clipboard2-check-fill::before { content: "\f724"; } +.bi-clipboard2-check::before { content: "\f725"; } +.bi-clipboard2-data-fill::before { content: "\f726"; } +.bi-clipboard2-data::before { content: "\f727"; } +.bi-clipboard2-fill::before { content: "\f728"; } +.bi-clipboard2-heart-fill::before { content: "\f729"; } +.bi-clipboard2-heart::before { content: "\f72a"; } +.bi-clipboard2-minus-fill::before { content: "\f72b"; } +.bi-clipboard2-minus::before { content: "\f72c"; } +.bi-clipboard2-plus-fill::before { content: "\f72d"; } +.bi-clipboard2-plus::before { content: "\f72e"; } +.bi-clipboard2-pulse-fill::before { content: "\f72f"; } +.bi-clipboard2-pulse::before { content: "\f730"; } +.bi-clipboard2-x-fill::before { content: "\f731"; } +.bi-clipboard2-x::before { content: "\f732"; } +.bi-clipboard2::before { content: "\f733"; } +.bi-emoji-kiss-fill::before { content: "\f734"; } +.bi-emoji-kiss::before { content: "\f735"; } +.bi-envelope-heart-fill::before { content: "\f736"; } +.bi-envelope-heart::before { content: "\f737"; } +.bi-envelope-open-heart-fill::before { content: "\f738"; } +.bi-envelope-open-heart::before { content: "\f739"; } +.bi-envelope-paper-fill::before { content: "\f73a"; } +.bi-envelope-paper-heart-fill::before { content: "\f73b"; } +.bi-envelope-paper-heart::before { content: "\f73c"; } +.bi-envelope-paper::before { content: "\f73d"; } +.bi-filetype-aac::before { content: "\f73e"; } +.bi-filetype-ai::before { content: "\f73f"; } +.bi-filetype-bmp::before { content: "\f740"; } +.bi-filetype-cs::before { content: "\f741"; } +.bi-filetype-css::before { content: "\f742"; } +.bi-filetype-csv::before { content: "\f743"; } +.bi-filetype-doc::before { content: "\f744"; } +.bi-filetype-docx::before { content: "\f745"; } +.bi-filetype-exe::before { content: "\f746"; } +.bi-filetype-gif::before { content: "\f747"; } +.bi-filetype-heic::before { content: "\f748"; } +.bi-filetype-html::before { content: "\f749"; } +.bi-filetype-java::before { content: "\f74a"; } +.bi-filetype-jpg::before { content: "\f74b"; } +.bi-filetype-js::before { content: "\f74c"; } +.bi-filetype-jsx::before { content: "\f74d"; } +.bi-filetype-key::before { content: "\f74e"; } +.bi-filetype-m4p::before { content: "\f74f"; } +.bi-filetype-md::before { content: "\f750"; } +.bi-filetype-mdx::before { content: "\f751"; } +.bi-filetype-mov::before { content: "\f752"; } +.bi-filetype-mp3::before { content: "\f753"; } +.bi-filetype-mp4::before { content: "\f754"; } +.bi-filetype-otf::before { content: "\f755"; } +.bi-filetype-pdf::before { content: "\f756"; } +.bi-filetype-php::before { content: "\f757"; } +.bi-filetype-png::before { content: "\f758"; } +.bi-filetype-ppt-1::before { content: "\f759"; } +.bi-filetype-ppt::before { content: "\f75a"; } +.bi-filetype-psd::before { content: "\f75b"; } +.bi-filetype-py::before { content: "\f75c"; } +.bi-filetype-raw::before { content: "\f75d"; } +.bi-filetype-rb::before { content: "\f75e"; } +.bi-filetype-sass::before { content: "\f75f"; } +.bi-filetype-scss::before { content: "\f760"; } +.bi-filetype-sh::before { content: "\f761"; } +.bi-filetype-svg::before { content: "\f762"; } +.bi-filetype-tiff::before { content: "\f763"; } +.bi-filetype-tsx::before { content: "\f764"; } +.bi-filetype-ttf::before { content: "\f765"; } +.bi-filetype-txt::before { content: "\f766"; } +.bi-filetype-wav::before { content: "\f767"; } +.bi-filetype-woff::before { content: "\f768"; } +.bi-filetype-xls-1::before { content: "\f769"; } +.bi-filetype-xls::before { content: "\f76a"; } +.bi-filetype-xml::before { content: "\f76b"; } +.bi-filetype-yml::before { content: "\f76c"; } +.bi-heart-arrow::before { content: "\f76d"; } +.bi-heart-pulse-fill::before { content: "\f76e"; } +.bi-heart-pulse::before { content: "\f76f"; } +.bi-heartbreak-fill::before { content: "\f770"; } +.bi-heartbreak::before { content: "\f771"; } +.bi-hearts::before { content: "\f772"; } +.bi-hospital-fill::before { content: "\f773"; } +.bi-hospital::before { content: "\f774"; } +.bi-house-heart-fill::before { content: "\f775"; } +.bi-house-heart::before { content: "\f776"; } +.bi-incognito::before { content: "\f777"; } +.bi-magnet-fill::before { content: "\f778"; } +.bi-magnet::before { content: "\f779"; } +.bi-person-heart::before { content: "\f77a"; } +.bi-person-hearts::before { content: "\f77b"; } +.bi-phone-flip::before { content: "\f77c"; } +.bi-plugin::before { content: "\f77d"; } +.bi-postage-fill::before { content: "\f77e"; } +.bi-postage-heart-fill::before { content: "\f77f"; } +.bi-postage-heart::before { content: "\f780"; } +.bi-postage::before { content: "\f781"; } +.bi-postcard-fill::before { content: "\f782"; } +.bi-postcard-heart-fill::before { content: "\f783"; } +.bi-postcard-heart::before { content: "\f784"; } +.bi-postcard::before { content: "\f785"; } +.bi-search-heart-fill::before { content: "\f786"; } +.bi-search-heart::before { content: "\f787"; } +.bi-sliders2-vertical::before { content: "\f788"; } +.bi-sliders2::before { content: "\f789"; } +.bi-trash3-fill::before { content: "\f78a"; } +.bi-trash3::before { content: "\f78b"; } +.bi-valentine::before { content: "\f78c"; } +.bi-valentine2::before { content: "\f78d"; } +.bi-wrench-adjustable-circle-fill::before { content: "\f78e"; } +.bi-wrench-adjustable-circle::before { content: "\f78f"; } +.bi-wrench-adjustable::before { content: "\f790"; } +.bi-filetype-json::before { content: "\f791"; } +.bi-filetype-pptx::before { content: "\f792"; } +.bi-filetype-xlsx::before { content: "\f793"; } diff --git a/public/site_libs/bootstrap/bootstrap-icons.woff b/public/site_libs/bootstrap/bootstrap-icons.woff new file mode 100644 index 0000000000000000000000000000000000000000..b26ccd1ac9f9f1fbc980e93531398364f6f03cd2 GIT binary patch literal 137124 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πb=csBF(y(1Byk-G!(_2qz-ISS8G5cFSPQSXZ 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/bootstrap/bootstrap.min.css b/public/site_libs/bootstrap/bootstrap.min.css new file mode 100644 index 0000000..8c05c96 --- /dev/null +++ b/public/site_libs/bootstrap/bootstrap.min.css @@ -0,0 +1,10 @@ +/*! + * Bootstrap v5.1.3 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */:root{--bs-blue: #007bff;--bs-indigo: #6610f2;--bs-purple: #593196;--bs-pink: #e83e8c;--bs-red: #fc3939;--bs-orange: #fd7e14;--bs-yellow: #efa31d;--bs-green: #13b955;--bs-teal: #20c997;--bs-cyan: #009cdc;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #fafafa;--bs-gray-200: #f9f8fc;--bs-gray-300: #dee2e6;--bs-gray-400: #cbc8d0;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #444;--bs-gray-800: #343a40;--bs-gray-900: #17141f;--bs-default: #a991d4;--bs-primary: #593196;--bs-secondary: #a991d4;--bs-success: #13b955;--bs-info: #009cdc;--bs-warning: #efa31d;--bs-danger: #fc3939;--bs-light: #f9f8fc;--bs-dark: #17141f;--bs-default-rgb: 169, 145, 212;--bs-primary-rgb: 89, 49, 150;--bs-secondary-rgb: 169, 145, 212;--bs-success-rgb: 19, 185, 85;--bs-info-rgb: 0, 156, 220;--bs-warning-rgb: 239, 163, 29;--bs-danger-rgb: 252, 57, 57;--bs-light-rgb: 249, 248, 252;--bs-dark-rgb: 23, 20, 31;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-body-color-rgb: 68, 68, 68;--bs-body-bg-rgb: 255, 255, 255;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-root-font-size: 18px;--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size: 1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #444;--bs-body-bg: #fff}*,*::before,*::after{box-sizing:border-box}:root{font-size:var(--bs-root-font-size)}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1,.h1{font-size:calc(1.345rem + 1.14vw)}@media(min-width: 1200px){h1,.h1{font-size:2.2rem}}h2,.h2{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h2,.h2{font-size:1.75rem}}h3,.h3{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h3,.h3{font-size:1.5rem}}h4,.h4{font-size:1.25rem}h5,.h5{font-size:1.1rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-bs-original-title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #f9f8fc}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:#593196;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{color:#593196}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr /* rtl:ignore */;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:0.875em;color:#000;background-color:#f8f8f8;padding:.5rem;border:1px solid #dee2e6}pre code{background-color:transparent;font-size:inherit;color:inherit;word-break:normal}code{font-size:0.875em;color:#9954bb;background-color:#f8f8f8;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.4rem .4rem;font-size:0.875em;color:#fff;background-color:#17141f}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + 0.3vw);line-height:inherit}@media(min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:0.875em;color:#6c757d}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media(min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media(min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media(min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media(min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media(min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.table{--bs-table-bg: transparent;--bs-table-accent-bg: transparent;--bs-table-striped-color: #444;--bs-table-striped-bg: rgba(0, 0, 0, 0.05);--bs-table-active-color: #444;--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: #444;--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#444;vertical-align:top;border-color:rgba(0,0,0,.05)}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:first-child){border-top:2px solid currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg: var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg: var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg: #ded6ea;--bs-table-striped-bg: #d3cbde;--bs-table-striped-color: #000;--bs-table-active-bg: #c8c1d3;--bs-table-active-color: #000;--bs-table-hover-bg: #cdc6d8;--bs-table-hover-color: #000;color:#000;border-color:#c8c1d3}.table-secondary{--bs-table-bg: #eee9f6;--bs-table-striped-bg: #e2ddea;--bs-table-striped-color: #000;--bs-table-active-bg: #d6d2dd;--bs-table-active-color: #000;--bs-table-hover-bg: #dcd8e4;--bs-table-hover-color: #000;color:#000;border-color:#d6d2dd}.table-success{--bs-table-bg: #d0f1dd;--bs-table-striped-bg: #c6e5d2;--bs-table-striped-color: #000;--bs-table-active-bg: #bbd9c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c0dfcc;--bs-table-hover-color: #000;color:#000;border-color:#bbd9c7}.table-info{--bs-table-bg: #ccebf8;--bs-table-striped-bg: #c2dfec;--bs-table-striped-color: #000;--bs-table-active-bg: #b8d4df;--bs-table-active-color: #000;--bs-table-hover-bg: #bdd9e5;--bs-table-hover-color: #000;color:#000;border-color:#b8d4df}.table-warning{--bs-table-bg: #fcedd2;--bs-table-striped-bg: #efe1c8;--bs-table-striped-color: #000;--bs-table-active-bg: #e3d5bd;--bs-table-active-color: #000;--bs-table-hover-bg: #e9dbc2;--bs-table-hover-color: #000;color:#000;border-color:#e3d5bd}.table-danger{--bs-table-bg: #fed7d7;--bs-table-striped-bg: #f1cccc;--bs-table-striped-color: #000;--bs-table-active-bg: #e5c2c2;--bs-table-active-color: #000;--bs-table-hover-bg: #ebc7c7;--bs-table-hover-color: #000;color:#000;border-color:#e5c2c2}.table-light{--bs-table-bg: #f9f8fc;--bs-table-striped-bg: #edecef;--bs-table-striped-color: #000;--bs-table-active-bg: #e0dfe3;--bs-table-active-color: #000;--bs-table-hover-bg: #e6e5e9;--bs-table-hover-color: #000;color:#000;border-color:#e0dfe3}.table-dark{--bs-table-bg: #17141f;--bs-table-striped-bg: #23202a;--bs-table-striped-color: #fff;--bs-table-active-bg: #2e2c35;--bs-table-active-color: #fff;--bs-table-hover-bg: #282630;--bs-table-hover-color: #fff;color:#fff;border-color:#2e2c35}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + 1px);padding-bottom:calc(0.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#444;background-color:#fff;background-clip:padding-box;border:1px solid #cbc8d0;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;border-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#444;background-color:#fff;border-color:#593196;outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#f9f8fc;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#444;background-color:#f9f8fc;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#edecef}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#444;background-color:#f9f8fc;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::-webkit-file-upload-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#edecef}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#444;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px);padding:.25rem .5rem;font-size:0.875rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em}.form-control-color::-webkit-color-swatch{height:1.5em}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#444;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #cbc8d0;border-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#593196;outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#f9f8fc}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #444}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.125rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;color-adjust:exact;-webkit-print-color-adjust:exact}.form-check-input[type=radio],.shiny-input-container .checkbox input[type=radio],.shiny-input-container .checkbox-inline input[type=radio],.shiny-input-container .radio input[type=radio],.shiny-input-container .radio-inline input[type=radio]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#593196;outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#593196;border-color:#593196}.form-check-input:checked[type=checkbox],.shiny-input-container .checkbox input:checked[type=checkbox],.shiny-input-container .checkbox-inline input:checked[type=checkbox],.shiny-input-container .radio input:checked[type=checkbox],.shiny-input-container .radio-inline input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio],.shiny-input-container .checkbox input:checked[type=radio],.shiny-input-container .checkbox-inline input:checked[type=radio],.shiny-input-container .radio input:checked[type=radio],.shiny-input-container .radio-inline input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate,.shiny-input-container .checkbox input[type=checkbox]:indeterminate,.shiny-input-container .checkbox-inline input[type=checkbox]:indeterminate,.shiny-input-container .radio input[type=checkbox]:indeterminate,.shiny-input-container .radio-inline input[type=checkbox]:indeterminate{background-color:#593196;border-color:#593196;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23593196'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-check-inline,.shiny-input-container .checkbox-inline,.shiny-input-container .radio-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(89,49,150,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(89,49,150,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;background-color:#593196;border:0;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#cdc1e0}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#593196;border:0;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#cdc1e0}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control{padding:1rem .75rem}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#444;text-align:center;white-space:nowrap;background-color:#f9f8fc;border:1px solid #cbc8d0}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#13b955}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(19,185,85,.9)}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#13b955;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2313b955' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#13b955;box-shadow:0 0 0 .25rem rgba(19,185,85,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:#13b955}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2313b955' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:#13b955;box-shadow:0 0 0 .25rem rgba(19,185,85,.25)}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:#13b955}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:#13b955}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(19,185,85,.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:#13b955}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group .form-control:valid,.input-group .form-control.is-valid,.was-validated .input-group .form-select:valid,.input-group .form-select.is-valid{z-index:1}.was-validated .input-group .form-control:valid:focus,.input-group .form-control.is-valid:focus,.was-validated .input-group .form-select:valid:focus,.input-group .form-select.is-valid:focus{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#fc3939}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(252,57,57,.9)}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#fc3939;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23fc3939'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23fc3939' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#fc3939;box-shadow:0 0 0 .25rem rgba(252,57,57,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:#fc3939}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23fc3939'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23fc3939' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:#fc3939;box-shadow:0 0 0 .25rem rgba(252,57,57,.25)}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:#fc3939}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:#fc3939}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(252,57,57,.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:#fc3939}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group .form-control:invalid,.input-group .form-control.is-invalid,.was-validated .input-group .form-select:invalid,.input-group .form-select.is-invalid{z-index:2}.was-validated .input-group .form-control:invalid:focus,.input-group .form-control.is-invalid:focus,.was-validated .input-group .form-select:invalid:focus,.input-group .form-select.is-invalid:focus{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#444;text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:#444}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-default{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-default:hover{color:#fff;background-color:#907bb4;border-color:#8774aa}.btn-check:focus+.btn-default,.btn-default:focus{color:#fff;background-color:#907bb4;border-color:#8774aa;box-shadow:0 0 0 .25rem rgba(182,162,218,.5)}.btn-check:checked+.btn-default,.btn-check:active+.btn-default,.btn-default:active,.btn-default.active,.show>.btn-default.dropdown-toggle{color:#fff;background-color:#8774aa;border-color:#7f6d9f}.btn-check:checked+.btn-default:focus,.btn-check:active+.btn-default:focus,.btn-default:active:focus,.btn-default.active:focus,.show>.btn-default.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(182,162,218,.5)}.btn-default:disabled,.btn-default.disabled{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-primary{color:#fff;background-color:#593196;border-color:#593196}.btn-primary:hover{color:#fff;background-color:#4c2a80;border-color:#472778}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#fff;background-color:#4c2a80;border-color:#472778;box-shadow:0 0 0 .25rem rgba(114,80,166,.5)}.btn-check:checked+.btn-primary,.btn-check:active+.btn-primary,.btn-primary:active,.btn-primary.active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#472778;border-color:#432571}.btn-check:checked+.btn-primary:focus,.btn-check:active+.btn-primary:focus,.btn-primary:active:focus,.btn-primary.active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(114,80,166,.5)}.btn-primary:disabled,.btn-primary.disabled{color:#fff;background-color:#593196;border-color:#593196}.btn-secondary{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-secondary:hover{color:#fff;background-color:#907bb4;border-color:#8774aa}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#fff;background-color:#907bb4;border-color:#8774aa;box-shadow:0 0 0 .25rem rgba(182,162,218,.5)}.btn-check:checked+.btn-secondary,.btn-check:active+.btn-secondary,.btn-secondary:active,.btn-secondary.active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#8774aa;border-color:#7f6d9f}.btn-check:checked+.btn-secondary:focus,.btn-check:active+.btn-secondary:focus,.btn-secondary:active:focus,.btn-secondary.active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(182,162,218,.5)}.btn-secondary:disabled,.btn-secondary.disabled{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-success{color:#fff;background-color:#13b955;border-color:#13b955}.btn-success:hover{color:#fff;background-color:#109d48;border-color:#0f9444}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#109d48;border-color:#0f9444;box-shadow:0 0 0 .25rem rgba(54,196,111,.5)}.btn-check:checked+.btn-success,.btn-check:active+.btn-success,.btn-success:active,.btn-success.active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#0f9444;border-color:#0e8b40}.btn-check:checked+.btn-success:focus,.btn-check:active+.btn-success:focus,.btn-success:active:focus,.btn-success.active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(54,196,111,.5)}.btn-success:disabled,.btn-success.disabled{color:#fff;background-color:#13b955;border-color:#13b955}.btn-info{color:#fff;background-color:#009cdc;border-color:#009cdc}.btn-info:hover{color:#fff;background-color:#0085bb;border-color:#007db0}.btn-check:focus+.btn-info,.btn-info:focus{color:#fff;background-color:#0085bb;border-color:#007db0;box-shadow:0 0 0 .25rem rgba(38,171,225,.5)}.btn-check:checked+.btn-info,.btn-check:active+.btn-info,.btn-info:active,.btn-info.active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#007db0;border-color:#0075a5}.btn-check:checked+.btn-info:focus,.btn-check:active+.btn-info:focus,.btn-info:active:focus,.btn-info.active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(38,171,225,.5)}.btn-info:disabled,.btn-info.disabled{color:#fff;background-color:#009cdc;border-color:#009cdc}.btn-warning{color:#fff;background-color:#efa31d;border-color:#efa31d}.btn-warning:hover{color:#fff;background-color:#cb8b19;border-color:#bf8217}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#fff;background-color:#cb8b19;border-color:#bf8217;box-shadow:0 0 0 .25rem rgba(241,177,63,.5)}.btn-check:checked+.btn-warning,.btn-check:active+.btn-warning,.btn-warning:active,.btn-warning.active,.show>.btn-warning.dropdown-toggle{color:#fff;background-color:#bf8217;border-color:#b37a16}.btn-check:checked+.btn-warning:focus,.btn-check:active+.btn-warning:focus,.btn-warning:active:focus,.btn-warning.active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(241,177,63,.5)}.btn-warning:disabled,.btn-warning.disabled{color:#fff;background-color:#efa31d;border-color:#efa31d}.btn-danger{color:#fff;background-color:#fc3939;border-color:#fc3939}.btn-danger:hover{color:#fff;background-color:#d63030;border-color:#ca2e2e}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#d63030;border-color:#ca2e2e;box-shadow:0 0 0 .25rem rgba(252,87,87,.5)}.btn-check:checked+.btn-danger,.btn-check:active+.btn-danger,.btn-danger:active,.btn-danger.active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#ca2e2e;border-color:#bd2b2b}.btn-check:checked+.btn-danger:focus,.btn-check:active+.btn-danger:focus,.btn-danger:active:focus,.btn-danger.active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(252,87,87,.5)}.btn-danger:disabled,.btn-danger.disabled{color:#fff;background-color:#fc3939;border-color:#fc3939}.btn-light{color:#000;background-color:#f9f8fc;border-color:#f9f8fc}.btn-light:hover{color:#000;background-color:#faf9fc;border-color:#faf9fc}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#faf9fc;border-color:#faf9fc;box-shadow:0 0 0 .25rem rgba(212,211,214,.5)}.btn-check:checked+.btn-light,.btn-check:active+.btn-light,.btn-light:active,.btn-light.active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#faf9fd;border-color:#faf9fc}.btn-check:checked+.btn-light:focus,.btn-check:active+.btn-light:focus,.btn-light:active:focus,.btn-light.active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(212,211,214,.5)}.btn-light:disabled,.btn-light.disabled{color:#000;background-color:#f9f8fc;border-color:#f9f8fc}.btn-dark{color:#fff;background-color:#17141f;border-color:#17141f}.btn-dark:hover{color:#fff;background-color:#14111a;border-color:#121019}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#14111a;border-color:#121019;box-shadow:0 0 0 .25rem rgba(58,55,65,.5)}.btn-check:checked+.btn-dark,.btn-check:active+.btn-dark,.btn-dark:active,.btn-dark.active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#121019;border-color:#110f17}.btn-check:checked+.btn-dark:focus,.btn-check:active+.btn-dark:focus,.btn-dark:active:focus,.btn-dark.active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(58,55,65,.5)}.btn-dark:disabled,.btn-dark.disabled{color:#fff;background-color:#17141f;border-color:#17141f}.btn-outline-default{color:#a991d4;border-color:#a991d4;background-color:transparent}.btn-outline-default:hover{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-check:focus+.btn-outline-default,.btn-outline-default:focus{box-shadow:0 0 0 .25rem rgba(169,145,212,.5)}.btn-check:checked+.btn-outline-default,.btn-check:active+.btn-outline-default,.btn-outline-default:active,.btn-outline-default.active,.btn-outline-default.dropdown-toggle.show{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-check:checked+.btn-outline-default:focus,.btn-check:active+.btn-outline-default:focus,.btn-outline-default:active:focus,.btn-outline-default.active:focus,.btn-outline-default.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(169,145,212,.5)}.btn-outline-default:disabled,.btn-outline-default.disabled{color:#a991d4;background-color:transparent}.btn-outline-primary{color:#593196;border-color:#593196;background-color:transparent}.btn-outline-primary:hover{color:#fff;background-color:#593196;border-color:#593196}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(89,49,150,.5)}.btn-check:checked+.btn-outline-primary,.btn-check:active+.btn-outline-primary,.btn-outline-primary:active,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show{color:#fff;background-color:#593196;border-color:#593196}.btn-check:checked+.btn-outline-primary:focus,.btn-check:active+.btn-outline-primary:focus,.btn-outline-primary:active:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(89,49,150,.5)}.btn-outline-primary:disabled,.btn-outline-primary.disabled{color:#593196;background-color:transparent}.btn-outline-secondary{color:#a991d4;border-color:#a991d4;background-color:transparent}.btn-outline-secondary:hover{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(169,145,212,.5)}.btn-check:checked+.btn-outline-secondary,.btn-check:active+.btn-outline-secondary,.btn-outline-secondary:active,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show{color:#fff;background-color:#a991d4;border-color:#a991d4}.btn-check:checked+.btn-outline-secondary:focus,.btn-check:active+.btn-outline-secondary:focus,.btn-outline-secondary:active:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(169,145,212,.5)}.btn-outline-secondary:disabled,.btn-outline-secondary.disabled{color:#a991d4;background-color:transparent}.btn-outline-success{color:#13b955;border-color:#13b955;background-color:transparent}.btn-outline-success:hover{color:#fff;background-color:#13b955;border-color:#13b955}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(19,185,85,.5)}.btn-check:checked+.btn-outline-success,.btn-check:active+.btn-outline-success,.btn-outline-success:active,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show{color:#fff;background-color:#13b955;border-color:#13b955}.btn-check:checked+.btn-outline-success:focus,.btn-check:active+.btn-outline-success:focus,.btn-outline-success:active:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(19,185,85,.5)}.btn-outline-success:disabled,.btn-outline-success.disabled{color:#13b955;background-color:transparent}.btn-outline-info{color:#009cdc;border-color:#009cdc;background-color:transparent}.btn-outline-info:hover{color:#fff;background-color:#009cdc;border-color:#009cdc}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(0,156,220,.5)}.btn-check:checked+.btn-outline-info,.btn-check:active+.btn-outline-info,.btn-outline-info:active,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show{color:#fff;background-color:#009cdc;border-color:#009cdc}.btn-check:checked+.btn-outline-info:focus,.btn-check:active+.btn-outline-info:focus,.btn-outline-info:active:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(0,156,220,.5)}.btn-outline-info:disabled,.btn-outline-info.disabled{color:#009cdc;background-color:transparent}.btn-outline-warning{color:#efa31d;border-color:#efa31d;background-color:transparent}.btn-outline-warning:hover{color:#fff;background-color:#efa31d;border-color:#efa31d}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(239,163,29,.5)}.btn-check:checked+.btn-outline-warning,.btn-check:active+.btn-outline-warning,.btn-outline-warning:active,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show{color:#fff;background-color:#efa31d;border-color:#efa31d}.btn-check:checked+.btn-outline-warning:focus,.btn-check:active+.btn-outline-warning:focus,.btn-outline-warning:active:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(239,163,29,.5)}.btn-outline-warning:disabled,.btn-outline-warning.disabled{color:#efa31d;background-color:transparent}.btn-outline-danger{color:#fc3939;border-color:#fc3939;background-color:transparent}.btn-outline-danger:hover{color:#fff;background-color:#fc3939;border-color:#fc3939}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(252,57,57,.5)}.btn-check:checked+.btn-outline-danger,.btn-check:active+.btn-outline-danger,.btn-outline-danger:active,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show{color:#fff;background-color:#fc3939;border-color:#fc3939}.btn-check:checked+.btn-outline-danger:focus,.btn-check:active+.btn-outline-danger:focus,.btn-outline-danger:active:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(252,57,57,.5)}.btn-outline-danger:disabled,.btn-outline-danger.disabled{color:#fc3939;background-color:transparent}.btn-outline-light{color:#f9f8fc;border-color:#f9f8fc;background-color:transparent}.btn-outline-light:hover{color:#000;background-color:#f9f8fc;border-color:#f9f8fc}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(249,248,252,.5)}.btn-check:checked+.btn-outline-light,.btn-check:active+.btn-outline-light,.btn-outline-light:active,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show{color:#000;background-color:#f9f8fc;border-color:#f9f8fc}.btn-check:checked+.btn-outline-light:focus,.btn-check:active+.btn-outline-light:focus,.btn-outline-light:active:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(249,248,252,.5)}.btn-outline-light:disabled,.btn-outline-light.disabled{color:#f9f8fc;background-color:transparent}.btn-outline-dark{color:#17141f;border-color:#17141f;background-color:transparent}.btn-outline-dark:hover{color:#fff;background-color:#17141f;border-color:#17141f}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(23,20,31,.5)}.btn-check:checked+.btn-outline-dark,.btn-check:active+.btn-outline-dark,.btn-outline-dark:active,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show{color:#fff;background-color:#17141f;border-color:#17141f}.btn-check:checked+.btn-outline-dark:focus,.btn-check:active+.btn-outline-dark:focus,.btn-outline-dark:active:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(23,20,31,.5)}.btn-outline-dark:disabled,.btn-outline-dark.disabled{color:#17141f;background-color:transparent}.btn-link{font-weight:400;color:#593196;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:hover{color:#593196}.btn-link:disabled,.btn-link.disabled{color:#6c757d}.btn-lg,.btn-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:0}.btn-sm,.btn-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:0}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .2s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#444;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#444;text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#fff;background-color:#593196}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#593196}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:0.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#444}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:hover,.dropdown-menu-dark .dropdown-item:focus{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#593196}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.nav{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#593196;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:#593196}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:none;border:1px solid transparent}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:#593196;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#444;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px}.nav-pills .nav-link{background:none;border:0}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#593196}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding-top:1.2rem;padding-bottom:1.2rem}.navbar>.container-xxl,.navbar>.container-xl,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container,.navbar>.container-fluid{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;transition:box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas-header{display:none}.navbar-expand-sm .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-sm .offcanvas-top,.navbar-expand-sm .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas-header{display:none}.navbar-expand-md .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-md .offcanvas-top,.navbar-expand-md .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas-header{display:none}.navbar-expand-lg .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-lg .offcanvas-top,.navbar-expand-lg .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas-header{display:none}.navbar-expand-xl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xl .offcanvas-top,.navbar-expand-xl .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xxl .offcanvas-top,.navbar-expand-xxl .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas-header{display:none}.navbar-expand .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand .offcanvas-top,.navbar-expand .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-light{background-color:#593196}.navbar-light .navbar-brand{color:rgba(255,255,255,.7)}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:#fff}.navbar-light .navbar-nav .nav-link{color:rgba(255,255,255,.7)}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:rgba(255,255,255,.8)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.75)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .nav-link.active{color:#fff}.navbar-light .navbar-toggler{color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.4)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.7%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(255,255,255,.7)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:#fff}.navbar-dark{background-color:#593196}.navbar-dark .navbar-brand{color:rgba(255,255,255,.7)}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.7)}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:rgba(255,255,255,.8)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.4)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.7%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.7)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fff}.card{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0}.card>.list-group:last-child{border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-0.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:#adb5bd;border-bottom:1px solid rgba(0,0,0,.125)}.card-footer{padding:.5rem 1rem;background-color:#adb5bd;border-top:1px solid rgba(0,0,0,.125)}.card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-group>.card{margin-bottom:.75rem}@media(min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}}.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#444;text-align:left;background-color:#fff;border:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#502c87;background-color:#eeeaf5;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23502c87'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:"";background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23444'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#593196;outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:not(:first-of-type){border-top:0}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.breadcrumb{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#593196;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#593196;background-color:#f9f8fc;border-color:#dee2e6}.page-link:focus{z-index:3;color:#593196;background-color:#f9f8fc;outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#593196;border-color:#593196}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:0.875rem}.badge{display:inline-block;padding:.35em .65em;font-size:0.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid transparent}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{color:#65577f;background-color:#eee9f6;border-color:#e5def2}.alert-default .alert-link{color:#514666}.alert-primary{color:#351d5a;background-color:#ded6ea;border-color:#cdc1e0}.alert-primary .alert-link{color:#2a1748}.alert-secondary{color:#65577f;background-color:#eee9f6;border-color:#e5def2}.alert-secondary .alert-link{color:#514666}.alert-success{color:#0b6f33;background-color:#d0f1dd;border-color:#b8eacc}.alert-success .alert-link{color:#095929}.alert-info{color:#005e84;background-color:#ccebf8;border-color:#b3e1f5}.alert-info .alert-link{color:#004b6a}.alert-warning{color:#8f6211;background-color:#fcedd2;border-color:#fae3bb}.alert-warning .alert-link{color:#724e0e}.alert-danger{color:#972222;background-color:#fed7d7;border-color:#fec4c4}.alert-danger .alert-link{color:#791b1b}.alert-light{color:#959597;background-color:#fefefe;border-color:#fdfdfe}.alert-light .alert-link{color:#777779}.alert-dark{color:#0e0c13;background-color:#d1d0d2;border-color:#b9b9bc}.alert-dark .alert-link{color:#0b0a0f}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;display:-webkit-flex;height:1rem;overflow:hidden;font-size:0.75rem;background-color:#dee2e6}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#593196;transition:width .6s ease}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:#444;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#444;text-decoration:none;background-color:#2e283e}.list-group-item-action:active{color:#444;background-color:#f9f8fc}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#17141f;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:#17141f;border:1px solid transparent}.list-group-item.disabled,.list-group-item:disabled{color:#5c507c;pointer-events:none;background-color:#17141f}.list-group-item.active{z-index:2;color:#fff;background-color:#17141f;border-color:#17141f}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{color:#65577f;background-color:#eee9f6}.list-group-item-default.list-group-item-action:hover,.list-group-item-default.list-group-item-action:focus{color:#65577f;background-color:#d6d2dd}.list-group-item-default.list-group-item-action.active{color:#fff;background-color:#65577f;border-color:#65577f}.list-group-item-primary{color:#351d5a;background-color:#ded6ea}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#351d5a;background-color:#c8c1d3}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#351d5a;border-color:#351d5a}.list-group-item-secondary{color:#65577f;background-color:#eee9f6}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#65577f;background-color:#d6d2dd}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#65577f;border-color:#65577f}.list-group-item-success{color:#0b6f33;background-color:#d0f1dd}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#0b6f33;background-color:#bbd9c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0b6f33;border-color:#0b6f33}.list-group-item-info{color:#005e84;background-color:#ccebf8}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#005e84;background-color:#b8d4df}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#005e84;border-color:#005e84}.list-group-item-warning{color:#8f6211;background-color:#fcedd2}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#8f6211;background-color:#e3d5bd}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#8f6211;border-color:#8f6211}.list-group-item-danger{color:#972222;background-color:#fed7d7}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#972222;background-color:#e5c2c2}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#972222;border-color:#972222}.list-group-item-light{color:#959597;background-color:#fefefe}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#959597;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#959597;border-color:#959597}.list-group-item-dark{color:#0e0c13;background-color:#d1d0d2}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#0e0c13;background-color:#bcbbbd}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#0e0c13;border-color:#0e0c13}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(89,49,150,.25);opacity:1}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:0.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-header .btn-close{margin-right:-0.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal{position:fixed;top:0;left:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1050;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6}.modal-header .btn-close{padding:.5rem .5rem;margin:-0.5rem -0.5rem -0.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:1rem}.modal-footer{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6}.modal-footer>*{margin:.25rem}@media(min-width: 576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media(min-width: 992px){.modal-lg,.modal-xl{max-width:800px}}@media(min-width: 1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[data-popper-placement^=top]{padding:.4rem 0}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:0}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-end,.bs-tooltip-auto[data-popper-placement^=right]{padding:0 .4rem}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[data-popper-placement^=bottom]{padding:.4rem 0}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:0}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-start,.bs-tooltip-auto[data-popper-placement^=left]{padding:0 .4rem}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000}.popover{position:absolute;top:0;left:0 /* rtl:ignore */;z-index:1070;display:block;max-width:276px;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2)}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-0.5rem - 1px)}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-0.5rem - 1px)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-0.5rem;content:"";border-bottom:1px solid #f0f0f0}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2)}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#444}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media(prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity .15s ease}@media(prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media(prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;background-color:currentColor;border-radius:50%;opacity:0;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{animation-duration:1.5s;-webkit-animation-duration:1.5s;-moz-animation-duration:1.5s;-ms-animation-duration:1.5s;-o-animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1045;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin-top:-0.5rem;margin-right:-0.5rem;margin-bottom:-0.5rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentColor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.link-default{color:#a991d4}.link-default:hover,.link-default:focus{color:#8774aa}.link-primary{color:#593196}.link-primary:hover,.link-primary:focus{color:#472778}.link-secondary{color:#a991d4}.link-secondary:hover,.link-secondary:focus{color:#8774aa}.link-success{color:#13b955}.link-success:hover,.link-success:focus{color:#0f9444}.link-info{color:#009cdc}.link-info:hover,.link-info:focus{color:#007db0}.link-warning{color:#efa31d}.link-warning:hover,.link-warning:focus{color:#bf8217}.link-danger{color:#fc3939}.link-danger:hover,.link-danger:focus{color:#ca2e2e}.link-light{color:#f9f8fc}.link-light:hover,.link-light:focus{color:#faf9fd}.link-dark{color:#17141f}.link-dark:hover,.link-dark:focus{color:#121019}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: calc(3 / 4 * 100%)}.ratio-16x9{--bs-aspect-ratio: calc(9 / 16 * 100%)}.ratio-21x9{--bs-aspect-ratio: calc(9 / 21 * 100%)}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:1px;min-height:1em;background-color:currentColor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-top-0{border-top:0 !important}.border-end{border-right:1px solid #dee2e6 !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:1px solid #dee2e6 !important}.border-start-0{border-left:0 !important}.border-default{border-color:#a991d4 !important}.border-primary{border-color:#593196 !important}.border-secondary{border-color:#a991d4 !important}.border-success{border-color:#13b955 !important}.border-info{border-color:#009cdc !important}.border-warning{border-color:#efa31d !important}.border-danger{border-color:#fc3939 !important}.border-light{border-color:#f9f8fc !important}.border-dark{border-color:#17141f !important}.border-white{border-color:#fff !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.345rem + 1.14vw) !important}.fs-2{font-size:calc(1.3rem + 0.6vw) !important}.fs-3{font-size:calc(1.275rem + 0.3vw) !important}.fs-4{font-size:1.25rem !important}.fs-5{font-size:1.1rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-light{font-weight:300 !important}.fw-lighter{font-weight:lighter !important}.fw-normal{font-weight:400 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:#6c757d !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:transparent !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:.25rem !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:.2em !important}.rounded-2{border-radius:.25rem !important}.rounded-3{border-radius:.3rem !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-top{border-top-left-radius:.25rem !important;border-top-right-radius:.25rem !important}.rounded-end{border-top-right-radius:.25rem !important;border-bottom-right-radius:.25rem !important}.rounded-bottom{border-bottom-right-radius:.25rem !important;border-bottom-left-radius:.25rem !important}.rounded-start{border-bottom-left-radius:.25rem !important;border-top-left-radius:.25rem !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#fff}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#fff}.bg-warning{color:#fff}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media(min-width: 1200px){.fs-1{font-size:2.2rem !important}.fs-2{font-size:1.75rem !important}.fs-3{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.quarto-container{min-height:calc(100vh - 132px)}footer.footer .nav-footer,#quarto-header nav{padding-left:1em;padding-right:1em}nav[role=doc-toc]{padding-left:.5em}#quarto-content>*{padding-top:14px}@media(max-width: 991.98px){#quarto-content>*{padding-top:0}#quarto-content .subtitle{padding-top:14px}#quarto-content section:first-of-type h2:first-of-type,#quarto-content section:first-of-type .h2:first-of-type{margin-top:1rem}}.headroom-target,header.headroom{will-change:transform;transition:transform 200ms linear;transition:position 200ms linear}header.headroom--pinned{transform:translateY(0%)}header.headroom--unpinned{transform:translateY(-100%)}.navbar-container{width:100%}.navbar-brand{overflow:hidden;text-overflow:ellipsis}.navbar-brand-container{max-width:calc(100% - 85px);min-width:0;display:flex;align-items:center;margin-right:1em}.navbar-brand.navbar-brand-logo{margin-right:4px;display:inline-flex}.navbar-toggler{flex-basis:content;flex-shrink:0}.navbar-logo{max-height:24px;width:auto;padding-right:4px}nav .nav-item:not(.compact){padding-top:1px}nav .nav-link i,nav .dropdown-item i{padding-right:1px}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.6rem;padding-right:.6rem}nav .nav-item.compact .nav-link{padding-left:.5rem;padding-right:.5rem;font-size:1.1rem}.navbar-nav .dropdown-menu{min-width:220px;font-size:.9rem}.navbar .navbar-nav .nav-link.dropdown-toggle::after{opacity:.75;vertical-align:.175em}.navbar ul.dropdown-menu{padding-top:0;padding-bottom:0}.navbar .dropdown-header{text-transform:uppercase;font-size:.8rem;padding:0 .5rem}.navbar .dropdown-item{padding:.4rem .5rem}.navbar .dropdown-item>i.bi{margin-left:.1rem;margin-right:.25em}.sidebar #quarto-search{margin-top:-1px}.sidebar #quarto-search svg.aa-SubmitIcon{width:16px;height:16px}.sidebar-navigation a{color:inherit}.sidebar-title{margin-top:.25rem;padding-bottom:.5rem;font-size:1.3rem;line-height:1.6rem;visibility:visible}.sidebar-title>a{font-size:inherit;text-decoration:none}.sidebar-title .sidebar-tools-main{margin-top:-6px}.sidebar-header-stacked .sidebar-title{margin-top:.6rem}.sidebar-logo{max-width:90%;padding-bottom:.5rem}.sidebar-logo-link{text-decoration:none}.sidebar-navigation li a{text-decoration:none}.sidebar-navigation .sidebar-tool{opacity:.7;font-size:.875rem}#quarto-sidebar>nav>.sidebar-tools-main{margin-left:14px}.sidebar-tools-main{margin-left:0px}.sidebar-tools-main:not(.tools-wide){display:inline-block;vertical-align:middle}.sidebar-tools-main.tools-wide{padding-top:.3em}.sidebar-navigation .sidebar-tool.dropdown-toggle::after{display:none}.sidebar.sidebar-navigation>*{padding-top:1em}.sidebar-item{margin-bottom:.2em}.sidebar-section{margin-top:.2em;padding-left:.5em;padding-bottom:.2em}.sidebar-item .sidebar-item-container{display:flex;justify-content:space-between}.sidebar-item .sidebar-item-toggle .bi{font-size:.7rem;text-align:center}.sidebar-navigation .sidebar-divider{margin-left:0;margin-right:0;margin-top:.5rem;margin-bottom:.5rem}@media(max-width: 767.98px){.quarto-secondary-nav{display:block}}@media(min-width: 992px){.quarto-secondary-nav{display:none}}.quarto-secondary-nav .quarto-btn-toggle{color:#595959;padding-right:0}.quarto-secondary-nav[aria-expanded=false] .quarto-btn-toggle .bi-chevron-right::before{transform:none}.quarto-secondary-nav[aria-expanded=true] .quarto-btn-toggle .bi-chevron-right::before{transform:rotate(90deg)}.quarto-secondary-nav .quarto-btn-toggle .bi-chevron-right::before{transition:transform 200ms ease}.quarto-secondary-nav{cursor:pointer}.quarto-secondary-nav-title{margin-top:.3em;color:#595959;padding-top:4px}div.sidebar-item-container{color:#595959}div.sidebar-item-container:hover,div.sidebar-item-container:focus{color:rgba(89,49,150,.8)}div.sidebar-item-container.disabled{color:rgba(89,89,89,.75)}div.sidebar-item-container .active,div.sidebar-item-container .show>.nav-link,div.sidebar-item-container .sidebar-link>code{color:#593196}div.sidebar.sidebar-navigation.rollup.quarto-sidebar-toggle-contents,nav.sidebar.sidebar-navigation:not(.rollup){background-color:#fff}@media(max-width: 991.98px){.sidebar-navigation .sidebar-item a,.nav-page .nav-page-text,.sidebar-navigation{font-size:1rem}.sidebar-navigation ul.sidebar-section.depth1 .sidebar-section-item{font-size:1.1rem}.sidebar-logo{display:none}.sidebar.sidebar-navigation{position:static;border-bottom:1px solid rgba(0,0,0,.05)}.sidebar.sidebar-navigation.collapsing{position:fixed;z-index:1000}.sidebar.sidebar-navigation.show{position:fixed;z-index:1000}.sidebar.sidebar-navigation{transition:height .15s linear;width:100%}nav.quarto-secondary-nav{background-color:#fff;border-bottom:1px solid rgba(0,0,0,.05)}.sidebar .sidebar-footer{visibility:visible;padding-top:1rem;position:inherit}.sidebar-tools-collapse{display:block}}@media(min-width: 992px){#quarto-sidebar{display:flex;flex-direction:column}.nav-page .nav-page-text,.sidebar-navigation .sidebar-section .sidebar-item{font-size:.875rem}.sidebar-navigation .sidebar-item{font-size:.925rem}.sidebar.sidebar-navigation{display:block;position:sticky}.sidebar-search{width:100%}.sidebar .sidebar-footer{visibility:visible}}.sidebar .sidebar-footer{padding:.5rem 1rem;align-self:flex-end;color:#6c757d;width:100%}#quarto-sidebar{width:100%;padding-right:1em;color:#595959}.quarto-sidebar-footer{font-size:.875em}.sidebar-section .bi-chevron-right{vertical-align:middle}.sidebar-section a .bi-chevron-right::before{transform:rotate(90deg)}.sidebar-section a.collapsed .bi-chevron-right::before{transform:none}.sidebar-section .bi-chevron-right::before{font-size:.9em;transition:transform 200ms ease}.notransition{-webkit-transition:none !important;-moz-transition:none !important;-o-transition:none !important;transition:none !important}.btn:focus:not(:focus-visible){box-shadow:none}.page-navigation{display:flex;justify-content:space-between}.nav-page{padding-bottom:.75em}.nav-page .bi{font-size:1.8rem;vertical-align:middle}.nav-page .nav-page-text{padding-left:.25em;padding-right:.25em}.nav-page a{color:#6c757d;text-decoration:none;display:flex;align-items:center}.nav-page a:hover{color:#593196}.toc-actions{display:flex}.toc-actions p{margin-block-start:0;margin-block-end:0}.toc-actions a{text-decoration:none;color:inherit;font-weight:400}.toc-actions a:hover{color:#593196}.toc-actions .action-links{margin-left:4px}.sidebar nav[role=doc-toc] .toc-actions .bi{margin-left:-4px;font-size:.7rem;color:#6c757d}.sidebar nav[role=doc-toc] .toc-actions .bi:before{padding-top:3px}#quarto-margin-sidebar .toc-actions .bi:before{margin-top:.3rem;font-size:.7rem;color:#6c757d;vertical-align:top}.sidebar nav[role=doc-toc] .toc-actions>div:first-of-type{margin-top:-3px}#quarto-margin-sidebar .toc-actions p,.sidebar nav[role=doc-toc] .toc-actions p{font-size:.875rem}.nav-footer{display:flex;justify-content:center;align-items:center;text-align:center;padding-top:.5rem;padding-bottom:.5rem;background-color:#fff}body.nav-fixed{padding-top:66px}.nav-footer-contents{color:#6c757d;margin-top:.25rem}.nav-footer{min-height:3.5em;color:#757575}.nav-footer a{color:#757575}.nav-footer .nav-footer-left{font-size:.825em}.nav-footer .nav-footer-center{font-size:.825em}.nav-footer .nav-footer-right{font-size:.825em}.nav-footer-left .footer-items,.nav-footer-center .footer-items,.nav-footer-right .footer-items{display:flex;padding-top:.3em;padding-bottom:.3em;margin-bottom:0em}.nav-footer-left .footer-items .nav-link,.nav-footer-center .footer-items .nav-link,.nav-footer-right .footer-items .nav-link{padding-left:.6em;padding-right:.6em}.nav-footer-left{margin-right:auto}.nav-footer-center{min-height:3em;position:absolute;text-align:center}.nav-footer-center .footer-items{justify-content:center}@media(max-width: 767.98px){.nav-footer-center{margin-top:3em}}.nav-footer-right{margin-left:auto}.navbar .quarto-reader-toggle{padding-left:.4em;padding-right:0}.navbar .quarto-reader-toggle.reader .quarto-reader-toggle-btn{background-color:rgba(255,255,255,.7);border-radius:3px}.quarto-reader-toggle.reader.sidebar-tool .quarto-reader-toggle-btn{background-color:#595959;border-radius:3px}.quarto-reader-toggle.sidebar-tool{padding-left:.3em}.quarto-reader-toggle .quarto-reader-toggle-btn{display:inline-flex;padding-left:.1em;padding-right:.3em;text-align:center}.navbar .quarto-reader-toggle:not(.reader) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(255, 255, 255, 0.7)" class="bi bi-justify-left" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/></svg>')}.navbar .quarto-reader-toggle.reader .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(89, 49, 150, 1)" class="bi bi-justify-left" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/></svg>')}.sidebar-navigation .quarto-reader-toggle:not(.reader) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(115, 115, 115, 1)" class="bi bi-justify-left" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/></svg>')}.sidebar-navigation .quarto-reader-toggle.reader .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(230, 230, 230, 1)" class="bi bi-justify-left" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/></svg>')}.aa-DetachedOverlay ul.aa-List,#quarto-search-results ul.aa-List{list-style:none;padding-left:0}.aa-DetachedOverlay .aa-Panel,#quarto-search-results .aa-Panel{background-color:#fff;position:absolute;z-index:2000}#quarto-search-results .aa-Panel{max-width:400px}#quarto-search input{font-size:.925rem}@media(min-width: 992px){.navbar #quarto-search{margin-left:1rem}}#quarto-sidebar .sidebar-search .aa-Autocomplete{width:100%}.navbar .aa-Autocomplete .aa-Form{width:180px}.navbar #quarto-search.type-overlay .aa-Autocomplete{width:40px}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form{background-color:inherit;border:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form:focus-within{box-shadow:none;outline:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-InputWrapper{display:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-InputWrapper:focus-within{display:inherit}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-Label svg,.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-LoadingIndicator svg{width:26px;height:26px;color:rgba(255,255,255,.7);opacity:1}.navbar #quarto-search.type-overlay .aa-Autocomplete svg.aa-SubmitIcon{width:26px;height:26px;color:rgba(255,255,255,.7);opacity:1}.aa-Autocomplete .aa-Form,.aa-DetachedFormContainer .aa-Form{align-items:center;background-color:#fff;border:1px solid #cbc8d0;border-radius:.25rem;color:#444;display:flex;line-height:1em;margin:0;position:relative;width:100%}.aa-Autocomplete .aa-Form:focus-within,.aa-DetachedFormContainer .aa-Form:focus-within{box-shadow:rgba(89,49,150,.6) 0 0 0 1px;outline:currentColor none medium}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix{align-items:center;display:flex;flex-shrink:0;order:1}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-Label,.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-Label,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator{cursor:initial;flex-shrink:0;padding:0;text-align:left}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-Label svg,.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-Label svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator svg{color:#444;opacity:.5}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-SubmitButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-SubmitButton{appearance:none;background:none;border:0;margin:0}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator{align-items:center;display:flex;justify-content:center}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator[hidden]{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapper,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper{order:3;position:relative;width:100%}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input{appearance:none;background:none;border:0;color:#444;font:inherit;height:calc(1.5em + (0.1rem + 2px));padding:0;width:100%}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::placeholder,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::placeholder{color:#444;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input:focus{border-color:none;box-shadow:none;outline:none}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-decoration,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-cancel-button,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-button,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-decoration,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-decoration,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-cancel-button,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-button,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-decoration{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix{align-items:center;display:flex;order:4}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton{align-items:center;background:none;border:0;color:#444;opacity:.8;cursor:pointer;display:flex;margin:0;width:calc(1.5em + (0.1rem + 2px))}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:hover,.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:hover,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:focus{color:#444;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton[hidden]{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton svg{width:calc(1.5em + 0.75rem + 2px)}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton{border:none;align-items:center;background:none;color:#444;opacity:.4;font-size:.7rem;cursor:pointer;display:none;margin:0;width:calc(1em + (0.1rem + 2px))}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:hover,.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:hover,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:focus{color:#444;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton[hidden]{display:none}#quarto-search-results .aa-Panel{border:solid #cbc8d0 1px}#quarto-search-results .aa-SourceNoResults{width:398px}.aa-DetachedOverlay .aa-Panel,#quarto-search-results .aa-Panel{max-height:65vh;overflow-y:auto;font-size:.925rem}.aa-DetachedOverlay .aa-SourceNoResults,#quarto-search-results .aa-SourceNoResults{height:60px;display:flex;justify-content:center;align-items:center}.aa-DetachedOverlay .search-error,#quarto-search-results .search-error{padding-top:10px;padding-left:20px;padding-right:20px;cursor:default}.aa-DetachedOverlay .search-error .search-error-title,#quarto-search-results .search-error .search-error-title{font-size:1.1rem;margin-bottom:.5rem}.aa-DetachedOverlay .search-error .search-error-title .search-error-icon,#quarto-search-results .search-error .search-error-title .search-error-icon{margin-right:8px}.aa-DetachedOverlay .search-error .search-error-text,#quarto-search-results .search-error .search-error-text{font-weight:300}.aa-DetachedOverlay .search-result-text,#quarto-search-results .search-result-text{font-weight:300;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2rem;max-height:2.4rem}.aa-DetachedOverlay .aa-SourceHeader .search-result-header,#quarto-search-results .aa-SourceHeader .search-result-header{font-size:.875rem;background-color:#f2f2f2;padding-left:14px;padding-bottom:4px;padding-top:4px}.aa-DetachedOverlay .aa-SourceHeader .search-result-header-no-results,#quarto-search-results .aa-SourceHeader .search-result-header-no-results{display:none}.aa-DetachedOverlay .aa-SourceFooter .algolia-search-logo,#quarto-search-results .aa-SourceFooter .algolia-search-logo{width:110px;opacity:.85;margin:8px;float:right}.aa-DetachedOverlay .search-result-section,#quarto-search-results .search-result-section{font-size:.925em}.aa-DetachedOverlay a.search-result-link,#quarto-search-results a.search-result-link{color:inherit;text-decoration:none}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item,#quarto-search-results li.aa-Item[aria-selected=true] .search-item{background-color:#593196}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item.search-result-more,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-section,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-text,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-title-container,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-text-container,#quarto-search-results li.aa-Item[aria-selected=true] .search-item.search-result-more,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-section,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-text,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-title-container,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-text-container{color:#fff;background-color:#593196}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item mark.search-match,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-match.mark,#quarto-search-results li.aa-Item[aria-selected=true] .search-item mark.search-match,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-match.mark{color:#fff;background-color:#6b3bb5}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item,#quarto-search-results li.aa-Item[aria-selected=false] .search-item{background-color:#fff}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item.search-result-more,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-section,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-text,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-title-container,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-text-container,#quarto-search-results li.aa-Item[aria-selected=false] .search-item.search-result-more,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-section,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-text,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-title-container,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-text-container{color:#444}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item mark.search-match,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-match.mark,#quarto-search-results li.aa-Item[aria-selected=false] .search-item mark.search-match,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-match.mark{color:inherit;background-color:#c9b6e7}.aa-DetachedOverlay .aa-Item .search-result-doc:not(.document-selectable) .search-result-title-container,#quarto-search-results .aa-Item .search-result-doc:not(.document-selectable) .search-result-title-container{background-color:#fff;color:#444}.aa-DetachedOverlay .aa-Item .search-result-doc:not(.document-selectable) .search-result-text-container,#quarto-search-results .aa-Item .search-result-doc:not(.document-selectable) .search-result-text-container{padding-top:0px}.aa-DetachedOverlay li.aa-Item .search-result-doc.document-selectable .search-result-text-container,#quarto-search-results li.aa-Item .search-result-doc.document-selectable .search-result-text-container{margin-top:-4px}.aa-DetachedOverlay .aa-Item,#quarto-search-results .aa-Item{cursor:pointer}.aa-DetachedOverlay .aa-Item .search-item,#quarto-search-results .aa-Item .search-item{border-left:none;border-right:none;border-top:none;background-color:#fff;border-color:#cbc8d0;color:#444}.aa-DetachedOverlay .aa-Item .search-item p,#quarto-search-results .aa-Item .search-item p{margin-top:0;margin-bottom:0}.aa-DetachedOverlay .aa-Item .search-item i.bi,#quarto-search-results .aa-Item .search-item i.bi{padding-left:8px;padding-right:8px;font-size:1.3em}.aa-DetachedOverlay .aa-Item .search-item .search-result-title,#quarto-search-results .aa-Item .search-item .search-result-title{margin-top:.3em;margin-bottom:.1rem}.aa-DetachedOverlay .aa-Item .search-result-title-container,#quarto-search-results .aa-Item .search-result-title-container{font-size:1em;display:flex;padding:6px 4px 6px 4px}.aa-DetachedOverlay .aa-Item .search-result-text-container,#quarto-search-results .aa-Item .search-result-text-container{padding-bottom:8px;padding-right:8px;margin-left:44px}.aa-DetachedOverlay .aa-Item .search-result-doc-section,.aa-DetachedOverlay .aa-Item .search-result-more,#quarto-search-results .aa-Item .search-result-doc-section,#quarto-search-results .aa-Item .search-result-more{padding-top:8px;padding-bottom:8px;padding-left:44px}.aa-DetachedOverlay .aa-Item .search-result-more,#quarto-search-results .aa-Item .search-result-more{font-size:.8em;font-weight:400}.aa-DetachedOverlay .aa-Item .search-result-doc,#quarto-search-results .aa-Item .search-result-doc{border-top:1px solid #cbc8d0}.aa-DetachedSearchButton{background:none;border:none}.aa-DetachedSearchButton .aa-DetachedSearchButtonPlaceholder{display:none}.navbar .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon{color:rgba(255,255,255,.7)}.sidebar-tools-collapse #quarto-search,.sidebar-tools-main #quarto-search{display:inline}.sidebar-tools-collapse #quarto-search .aa-Autocomplete,.sidebar-tools-main #quarto-search .aa-Autocomplete{display:inline}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton{padding-left:4px;padding-right:4px}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon{color:#595959}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon .aa-SubmitIcon,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon .aa-SubmitIcon{margin-top:-3px}.aa-DetachedContainer{background:rgba(255,255,255,.65);width:90%;bottom:0;box-shadow:rgba(203,200,208,.6) 0 0 0 1px;outline:currentColor none medium;display:flex;flex-direction:column;left:0;margin:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:1101}.aa-DetachedContainer::after{height:32px}.aa-DetachedContainer .aa-SourceHeader{margin:var(--aa-spacing-half) 0 var(--aa-spacing-half) 2px}.aa-DetachedContainer .aa-Panel{background-color:#fff;border-radius:0;box-shadow:none;flex-grow:1;margin:0;padding:0;position:relative}.aa-DetachedContainer .aa-PanelLayout{bottom:0;box-shadow:none;left:0;margin:0;max-height:none;overflow-y:auto;position:absolute;right:0;top:0;width:100%}.aa-DetachedFormContainer{background-color:#fff;border-bottom:1px solid #cbc8d0;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:.5em}.aa-DetachedCancelButton{background:none;font-size:.8em;border:0;border-radius:3px;color:#444;cursor:pointer;margin:0 0 0 .5em;padding:0 .5em}.aa-DetachedCancelButton:hover,.aa-DetachedCancelButton:focus{box-shadow:rgba(89,49,150,.6) 0 0 0 1px;outline:currentColor none medium}.aa-DetachedContainer--modal{border-radius:6px;bottom:inherit;height:auto;margin:0 auto;max-width:850px;position:absolute;top:100px}.aa-DetachedContainer--modal .aa-PanelLayout{max-height:var(--aa-detached-modal-max-height);padding-bottom:var(--aa-spacing-half);position:static}.aa-Detached{height:100vh;overflow:hidden}.aa-DetachedOverlay{background-color:rgba(68,68,68,.4);position:fixed;left:0;right:0;top:0;margin:0;padding:0;height:100vh;z-index:1100}.quarto-listing{padding-bottom:1em}.listing-pagination{padding-top:.5em}ul.pagination{float:right;padding-left:8px;padding-top:.5em}ul.pagination li{padding-right:.75em}ul.pagination li.disabled a,ul.pagination li.active a{color:#444;text-decoration:none}ul.pagination li:last-of-type{padding-right:0}.listing-actions-group{display:flex}.quarto-listing-filter{margin-bottom:1em;width:200px;margin-left:auto}.quarto-listing-sort{margin-bottom:1em;margin-right:auto;width:auto}.quarto-listing-sort .input-group-text{font-size:.8em}.input-group-text{border-right:none}.quarto-listing-sort select.form-select{font-size:.8em}.listing-no-matching{text-align:center;padding-top:2em;padding-bottom:3em;font-size:1em}#quarto-margin-sidebar .quarto-listing-category{padding-top:0;font-size:1rem}#quarto-margin-sidebar .quarto-listing-category-title{cursor:pointer;font-weight:600;font-size:1rem}.quarto-listing-category .category{cursor:pointer}.quarto-listing-category .category.active{font-weight:600}.quarto-listing-category.category-cloud{display:flex;flex-wrap:wrap;align-items:baseline}.quarto-listing-category.category-cloud .category{padding-right:5px}.quarto-listing-category.category-cloud .category-cloud-1{font-size:.75em}.quarto-listing-category.category-cloud .category-cloud-2{font-size:.95em}.quarto-listing-category.category-cloud .category-cloud-3{font-size:1.15em}.quarto-listing-category.category-cloud .category-cloud-4{font-size:1.35em}.quarto-listing-category.category-cloud .category-cloud-5{font-size:1.55em}.quarto-listing-category.category-cloud .category-cloud-6{font-size:1.75em}.quarto-listing-category.category-cloud .category-cloud-7{font-size:1.95em}.quarto-listing-category.category-cloud .category-cloud-8{font-size:2.15em}.quarto-listing-category.category-cloud .category-cloud-9{font-size:2.35em}.quarto-listing-category.category-cloud .category-cloud-10{font-size:2.55em}.quarto-listing-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-1{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-2{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-3{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-3{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-4{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-4{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-5{grid-template-columns:repeat(5, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-5{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-5{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-6{grid-template-columns:repeat(6, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-6{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-6{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-7{grid-template-columns:repeat(7, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-7{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-7{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-8{grid-template-columns:repeat(8, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-8{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-8{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-9{grid-template-columns:repeat(9, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-9{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-9{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-10{grid-template-columns:repeat(10, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-10{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-10{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-11{grid-template-columns:repeat(11, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-11{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-11{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-12{grid-template-columns:repeat(12, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-12{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-12{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-grid{gap:1.5em}.quarto-grid-item.borderless{border:none}.quarto-grid-item.borderless .listing-categories .listing-category:last-of-type,.quarto-grid-item.borderless .listing-categories .listing-category:first-of-type{padding-left:0}.quarto-grid-item.borderless .listing-categories .listing-category{border:0}.quarto-grid-link{text-decoration:none;color:inherit}.quarto-grid-link:hover{text-decoration:none;color:inherit}.quarto-grid-item h5.title,.quarto-grid-item .title.h5{margin-top:0;margin-bottom:0}.quarto-grid-item .card-footer{display:flex;justify-content:space-between;font-size:.8em}.quarto-grid-item .card-footer p{margin-bottom:0}.quarto-grid-item p.card-img-top{margin-bottom:0}.quarto-grid-item img.thumbnail-image{object-fit:cover}.quarto-grid-item .card-other-values{margin-top:.5em;font-size:.8em}.quarto-grid-item .card-other-values tr{margin-bottom:.5em}.quarto-grid-item .card-other-values tr>td:first-of-type{font-weight:600;padding-right:1em;padding-left:1em;vertical-align:top}.quarto-grid-item div.post-contents{display:flex;flex-direction:column;text-decoration:none;height:100%}.quarto-grid-item div.card-img-bg{background-color:#adb5bd;flex-shrink:0}.quarto-grid-item .card-attribution{padding-top:1em;display:flex;gap:1em;text-transform:uppercase;color:#6c757d;font-weight:500;flex-grow:10;align-items:flex-end}.quarto-grid-item .description{padding-bottom:1em}.quarto-grid-item .card-attribution .date{align-self:flex-end}.quarto-grid-item .card-attribution.justify{justify-content:space-between}.quarto-grid-item .card-attribution.start{justify-content:flex-start}.quarto-grid-item .card-attribution.end{justify-content:flex-end}.quarto-grid-item .card-title{margin-bottom:.1em}.quarto-grid-item .card-subtitle{padding-top:.25em}.quarto-grid-item .card-text{font-size:.9em}.quarto-grid-item .listing-reading-time{padding-bottom:.25em}.quarto-grid-item .card-text-small{font-size:.8em}.quarto-grid-item .card-subtitle.subtitle{font-size:.9em;font-weight:600;padding-bottom:.5em}.quarto-grid-item .listing-categories{display:flex;flex-wrap:wrap;padding-bottom:5px}.quarto-grid-item .listing-categories .listing-category{color:#6c757d;border:solid 1px #dee2e6;border-radius:.25rem;text-transform:uppercase;font-size:.65em;padding-left:.5em;padding-right:.5em;padding-top:.15em;padding-bottom:.15em;cursor:pointer;margin-right:4px;margin-bottom:4px}.quarto-grid-item.card-right{text-align:right}.quarto-grid-item.card-right .listing-categories{justify-content:flex-end}.quarto-grid-item.card-left{text-align:left}.quarto-grid-item.card-center{text-align:center}.quarto-grid-item.card-center .listing-description{text-align:justify}.quarto-grid-item.card-center .listing-categories{justify-content:center}table.quarto-listing-table td.image{padding:0px}table.quarto-listing-table td.image img{width:100%;max-width:50px;object-fit:contain}table.quarto-listing-table a{text-decoration:none}table.quarto-listing-table th a{color:inherit}table.quarto-listing-table th a.asc:after{margin-bottom:-2px;margin-left:5px;display:inline-block;height:1rem;width:1rem;background-repeat:no-repeat;background-size:1rem 1rem;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-sort-up" viewBox="0 0 16 16"><path d="M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"/></svg>');content:""}table.quarto-listing-table th a.desc:after{margin-bottom:-2px;margin-left:5px;display:inline-block;height:1rem;width:1rem;background-repeat:no-repeat;background-size:1rem 1rem;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-sort-down" viewBox="0 0 16 16"><path d="M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"/></svg>');content:""}table.quarto-listing-table.table-hover td{cursor:pointer}.quarto-post.image-left{flex-direction:row}.quarto-post.image-right{flex-direction:row-reverse}@media(max-width: 767.98px){.quarto-post.image-right,.quarto-post.image-left{gap:0em;flex-direction:column}.quarto-post .metadata{padding-bottom:1em;order:2}.quarto-post .body{order:1}.quarto-post .thumbnail{order:3}}.list.quarto-listing-default div:last-of-type{border-bottom:none}@media(min-width: 992px){.quarto-listing-container-default{margin-right:2em}}div.quarto-post{display:flex;gap:2em;margin-bottom:1.5em;border-bottom:1px solid #dee2e6}@media(max-width: 767.98px){div.quarto-post{padding-bottom:1em}}div.quarto-post .metadata{flex-basis:20%;flex-grow:0;margin-top:.2em;flex-shrink:10}div.quarto-post .thumbnail{flex-basis:30%;flex-grow:0;flex-shrink:0}div.quarto-post .thumbnail img{margin-top:.4em;width:100%;object-fit:cover}div.quarto-post .body{flex-basis:45%;flex-grow:1;flex-shrink:0}div.quarto-post .body h3.listing-title,div.quarto-post .body .listing-title.h3{margin-top:0px;margin-bottom:0px;border-bottom:none}div.quarto-post .body .listing-subtitle{font-size:.875em;margin-bottom:.5em;margin-top:.2em}div.quarto-post .body .description{font-size:.9em}div.quarto-post a{color:#444;display:flex;flex-direction:column;text-decoration:none}div.quarto-post a div.description{flex-shrink:0}div.quarto-post .metadata{display:flex;flex-direction:column;font-size:.8em;font-family:var(--bs-font-sans-serif);flex-basis:33%}div.quarto-post .listing-categories{display:flex;flex-wrap:wrap;padding-bottom:5px}div.quarto-post .listing-categories .listing-category{color:#6c757d;border:solid 1px #dee2e6;border-radius:.25rem;text-transform:uppercase;font-size:.65em;padding-left:.5em;padding-right:.5em;padding-top:.15em;padding-bottom:.15em;cursor:pointer;margin-right:4px;margin-bottom:4px}div.quarto-post .listing-description{margin-bottom:.5em}div.quarto-about-jolla{display:flex !important;flex-direction:column;align-items:center;margin-top:10%;padding-bottom:1em}div.quarto-about-jolla .about-image{object-fit:cover;margin-left:auto;margin-right:auto;margin-bottom:1.5em}div.quarto-about-jolla img.round{border-radius:50%}div.quarto-about-jolla img.rounded{border-radius:10px}div.quarto-about-jolla .quarto-title h1.title,div.quarto-about-jolla .quarto-title .title.h1{text-align:center}div.quarto-about-jolla .quarto-title .description{text-align:center}div.quarto-about-jolla h2,div.quarto-about-jolla .h2{border-bottom:none}div.quarto-about-jolla .about-sep{width:60%}div.quarto-about-jolla main{text-align:center}div.quarto-about-jolla .about-links{display:flex}@media(min-width: 992px){div.quarto-about-jolla .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-jolla .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-jolla .about-link{color:#777;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-jolla .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-jolla .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-jolla .about-link:hover{color:#593196}div.quarto-about-jolla .about-link i.bi{margin-right:.15em}div.quarto-about-solana{display:flex !important;flex-direction:column;padding-top:3em !important;padding-bottom:1em}div.quarto-about-solana .about-entity{display:flex !important;align-items:start;justify-content:space-between}@media(min-width: 992px){div.quarto-about-solana .about-entity{flex-direction:row}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity{flex-direction:column-reverse;align-items:center;text-align:center}}div.quarto-about-solana .about-entity .entity-contents{display:flex;flex-direction:column}@media(max-width: 767.98px){div.quarto-about-solana .about-entity .entity-contents{width:100%}}div.quarto-about-solana .about-entity .about-image{object-fit:cover}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-image{margin-bottom:1.5em}}div.quarto-about-solana .about-entity img.round{border-radius:50%}div.quarto-about-solana .about-entity img.rounded{border-radius:10px}div.quarto-about-solana .about-entity .about-links{display:flex;justify-content:left;padding-bottom:1.2em}@media(min-width: 992px){div.quarto-about-solana .about-entity .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-solana .about-entity .about-link{color:#777;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-solana .about-entity .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-solana .about-entity .about-link:hover{color:#593196}div.quarto-about-solana .about-entity .about-link i.bi{margin-right:.15em}div.quarto-about-solana .about-contents{padding-right:1.5em;flex-basis:0;flex-grow:1}div.quarto-about-solana .about-contents main.content{margin-top:0}div.quarto-about-solana .about-contents h2,div.quarto-about-solana .about-contents .h2{border-bottom:none}div.quarto-about-trestles{display:flex !important;flex-direction:row;padding-top:3em !important;padding-bottom:1em}@media(max-width: 991.98px){div.quarto-about-trestles{flex-direction:column;padding-top:0em !important}}div.quarto-about-trestles .about-entity{display:flex !important;flex-direction:column;align-items:center;text-align:center;padding-right:1em}@media(min-width: 992px){div.quarto-about-trestles .about-entity{flex:0 0 42%}}div.quarto-about-trestles .about-entity .about-image{object-fit:cover;margin-bottom:1.5em}div.quarto-about-trestles .about-entity img.round{border-radius:50%}div.quarto-about-trestles .about-entity img.rounded{border-radius:10px}div.quarto-about-trestles .about-entity .about-links{display:flex;justify-content:center}@media(min-width: 992px){div.quarto-about-trestles .about-entity .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-trestles .about-entity .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-trestles .about-entity .about-link{color:#777;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-trestles .about-entity .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-trestles .about-entity .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-trestles .about-entity .about-link:hover{color:#593196}div.quarto-about-trestles .about-entity .about-link i.bi{margin-right:.15em}div.quarto-about-trestles .about-contents{flex-basis:0;flex-grow:1}div.quarto-about-trestles .about-contents h2,div.quarto-about-trestles .about-contents .h2{border-bottom:none}@media(min-width: 992px){div.quarto-about-trestles .about-contents{border-left:solid 1px #dee2e6;padding-left:1.5em}}div.quarto-about-trestles .about-contents main.content{margin-top:0}div.quarto-about-marquee{padding-bottom:1em}div.quarto-about-marquee .about-contents{display:flex;flex-direction:column}div.quarto-about-marquee .about-image{max-height:550px;margin-bottom:1.5em;object-fit:cover}div.quarto-about-marquee img.round{border-radius:50%}div.quarto-about-marquee img.rounded{border-radius:10px}div.quarto-about-marquee h2,div.quarto-about-marquee .h2{border-bottom:none}div.quarto-about-marquee .about-links{display:flex;justify-content:center;padding-top:1.5em}@media(min-width: 992px){div.quarto-about-marquee .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-marquee .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-marquee .about-link{color:#777;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-marquee .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-marquee .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-marquee .about-link:hover{color:#593196}div.quarto-about-marquee .about-link i.bi{margin-right:.15em}@media(min-width: 992px){div.quarto-about-marquee .about-link{border:none}}div.quarto-about-broadside{display:flex;flex-direction:column;padding-bottom:1em}div.quarto-about-broadside .about-main{display:flex !important;padding-top:0 !important}@media(min-width: 992px){div.quarto-about-broadside .about-main{flex-direction:row;align-items:flex-start}}@media(max-width: 991.98px){div.quarto-about-broadside .about-main{flex-direction:column}}@media(max-width: 991.98px){div.quarto-about-broadside .about-main .about-entity{flex-shrink:0;width:100%;height:450px;margin-bottom:1.5em;background-size:cover;background-repeat:no-repeat}}@media(min-width: 992px){div.quarto-about-broadside .about-main .about-entity{flex:0 10 50%;margin-right:1.5em;width:100%;height:100%;background-size:100%;background-repeat:no-repeat}}div.quarto-about-broadside .about-main .about-contents{padding-top:14px;flex:0 0 50%}div.quarto-about-broadside h2,div.quarto-about-broadside .h2{border-bottom:none}div.quarto-about-broadside .about-sep{margin-top:1.5em;width:60%;align-self:center}div.quarto-about-broadside .about-links{display:flex;justify-content:center;column-gap:20px;padding-top:1.5em}@media(min-width: 992px){div.quarto-about-broadside .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-broadside .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-broadside .about-link{color:#777;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-broadside .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-broadside .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-broadside .about-link:hover{color:#593196}div.quarto-about-broadside .about-link i.bi{margin-right:.15em}@media(min-width: 992px){div.quarto-about-broadside .about-link{border:none}}.tippy-box[data-theme~=quarto]{background-color:#fff;color:#444;border-radius:.25rem;border:solid 1px #dee2e6;font-size:.875rem}.tippy-box[data-theme~=quarto] .tippy-arrow{color:#dee2e6}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:-1px}.tippy-box[data-placement^=bottom]>.tippy-content{padding:.75em 1em;z-index:1}.top-right{position:absolute;top:1em;right:1em}.hidden{display:none !important}.quarto-layout-panel{margin-bottom:1em}.quarto-layout-panel>figure{width:100%}.quarto-layout-panel>figure>figcaption,.quarto-layout-panel>.panel-caption{margin-top:10pt}.quarto-layout-panel>.table-caption{margin-top:0px}.table-caption p{margin-bottom:.5em}.quarto-layout-row{display:flex;flex-direction:row;align-items:flex-start}.quarto-layout-valign-top{align-items:flex-start}.quarto-layout-valign-bottom{align-items:flex-end}.quarto-layout-valign-center{align-items:center}.quarto-layout-cell{position:relative;margin-right:20px}.quarto-layout-cell:last-child{margin-right:0}.quarto-layout-cell figure,.quarto-layout-cell>p{margin:.2em}.quarto-layout-cell img{max-width:100%}.quarto-layout-cell .html-widget{width:100% !important}.quarto-layout-cell div figure p{margin:0}.quarto-layout-cell figure{display:inline-block;margin-inline-start:0;margin-inline-end:0}.quarto-layout-cell table{display:inline-table}.quarto-layout-cell-subref figcaption,figure .quarto-layout-row figure figcaption{text-align:center;font-style:italic}.quarto-figure{position:relative;margin-bottom:1em}.quarto-figure>figure{width:100%;margin-bottom:0}.quarto-figure-left>figure>p{text-align:left}.quarto-figure-center>figure>p{text-align:center}.quarto-figure-right>figure>p{text-align:right}figure>p:empty{display:none}figure>p:first-child{margin-top:0;margin-bottom:0}figure>figcaption{margin-top:.5em}div[id^=tbl-]{position:relative}.quarto-figure>.anchorjs-link,div[id^=tbl-]>.anchorjs-link{position:absolute;top:0;right:0}.quarto-figure:hover>.anchorjs-link,div[id^=tbl-]:hover>.anchorjs-link,h2:hover>.anchorjs-link,.h2:hover>.anchorjs-link,h3:hover>.anchorjs-link,.h3:hover>.anchorjs-link,h4:hover>.anchorjs-link,.h4:hover>.anchorjs-link,h5:hover>.anchorjs-link,.h5:hover>.anchorjs-link,h6:hover>.anchorjs-link,.h6:hover>.anchorjs-link,.reveal-anchorjs-link>.anchorjs-link{opacity:1}#title-block-header{margin-block-end:1rem;position:relative;margin-top:-1px}#title-block-header .abstract{margin-block-start:1rem}#title-block-header .abstract .abstract-title{font-weight:600}#title-block-header a{text-decoration:none}#title-block-header .author,#title-block-header .date,#title-block-header .doi{margin-block-end:.2rem}#title-block-header .quarto-title-block>div{display:flex}#title-block-header .quarto-title-block>div>h1,#title-block-header .quarto-title-block>div>.h1{flex-grow:1}#title-block-header .quarto-title-block>div>button{flex-shrink:0;height:2.25rem;margin-top:0}@media(min-width: 992px){#title-block-header .quarto-title-block>div>button{margin-top:5px}}tr.header>th>p:last-of-type{margin-bottom:0px}table,.table{caption-side:top;margin-bottom:1.5rem}caption,.table-caption{padding-top:.5rem;padding-bottom:.5rem;text-align:center}.utterances{max-width:none;margin-left:-8px}iframe{margin-bottom:1em}details{margin-bottom:1em}details[show]{margin-bottom:0}details>summary{color:#6c757d}details>summary>p:only-child{display:inline}pre.sourceCode,code.sourceCode{position:relative}code{white-space:pre}@media print{code{white-space:pre-wrap}}pre>code{display:block}pre>code.sourceCode{white-space:pre}pre>code.sourceCode>span>a:first-child::before{text-decoration:none}pre.code-overflow-wrap>code.sourceCode{white-space:pre-wrap}pre.code-overflow-scroll>code.sourceCode{white-space:pre}code a:any-link{color:inherit;text-decoration:none}code a:hover{color:inherit;text-decoration:underline}ul.task-list{padding-left:1em}[data-tippy-root]{display:inline-block}.tippy-content .footnote-back{display:none}.quarto-embedded-source-code{display:none}.quarto-unresolved-ref{font-weight:600}.quarto-cover-image{max-width:35%;float:right;margin-left:30px}.cell-output-display .widget-subarea{margin-bottom:1em}.cell-output-display:not(.no-overflow-x){overflow-x:auto}.panel-input{margin-bottom:1em}.panel-input>div,.panel-input>div>div{display:inline-block;vertical-align:top;padding-right:12px}.panel-input>p:last-child{margin-bottom:0}.layout-sidebar{margin-bottom:1em}.layout-sidebar .tab-content{border:none}.tab-content>.page-columns.active{display:grid}div.sourceCode>iframe{width:100%;height:300px;margin-bottom:-0.5em}div.ansi-escaped-output{font-family:monospace;display:block}/*! +* +* ansi colors from IPython notebook's +* +*/.ansi-black-fg{color:#3e424d}.ansi-black-bg{background-color:#3e424d}.ansi-black-intense-fg{color:#282c36}.ansi-black-intense-bg{background-color:#282c36}.ansi-red-fg{color:#e75c58}.ansi-red-bg{background-color:#e75c58}.ansi-red-intense-fg{color:#b22b31}.ansi-red-intense-bg{background-color:#b22b31}.ansi-green-fg{color:#00a250}.ansi-green-bg{background-color:#00a250}.ansi-green-intense-fg{color:#007427}.ansi-green-intense-bg{background-color:#007427}.ansi-yellow-fg{color:#ddb62b}.ansi-yellow-bg{background-color:#ddb62b}.ansi-yellow-intense-fg{color:#b27d12}.ansi-yellow-intense-bg{background-color:#b27d12}.ansi-blue-fg{color:#208ffb}.ansi-blue-bg{background-color:#208ffb}.ansi-blue-intense-fg{color:#0065ca}.ansi-blue-intense-bg{background-color:#0065ca}.ansi-magenta-fg{color:#d160c4}.ansi-magenta-bg{background-color:#d160c4}.ansi-magenta-intense-fg{color:#a03196}.ansi-magenta-intense-bg{background-color:#a03196}.ansi-cyan-fg{color:#60c6c8}.ansi-cyan-bg{background-color:#60c6c8}.ansi-cyan-intense-fg{color:#258f8f}.ansi-cyan-intense-bg{background-color:#258f8f}.ansi-white-fg{color:#c5c1b4}.ansi-white-bg{background-color:#c5c1b4}.ansi-white-intense-fg{color:#a1a6b2}.ansi-white-intense-bg{background-color:#a1a6b2}.ansi-default-inverse-fg{color:#fff}.ansi-default-inverse-bg{background-color:#000}.ansi-bold{font-weight:bold}.ansi-underline{text-decoration:underline}:root{--quarto-body-bg: #fff;--quarto-body-color: #444;--quarto-text-muted: #6c757d;--quarto-border-color: rgba(0, 0, 0, 0.05);--quarto-border-width: 1px;--quarto-border-radius: 0.25rem}table.gt_table{color:var(--quarto-body-color);font-size:1em;width:100%;background-color:transparent;border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_col_heading{color:var(--quarto-body-color);font-weight:bold;background-color:transparent}table.gt_table thead.gt_col_headings{border-bottom:1px solid currentColor;border-top-width:inherit;border-top-color:var(--quarto-border-color)}table.gt_table thead.gt_col_headings:not(:first-child){border-top-width:1px;border-top-color:var(--quarto-border-color)}table.gt_table td.gt_row{border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-width:0px}table.gt_table tbody.gt_table_body{border-top-width:1px;border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-color:currentColor}div.columns{display:initial;gap:initial}div.column{display:inline-block;overflow-x:initial;vertical-align:top;width:50%}@media print{:root{font-size:11pt}#quarto-sidebar,#TOC,.nav-page{display:none}.page-columns .content{grid-column-start:page-start}.fixed-top{position:relative}.panel-caption,.figure-caption,figcaption{color:#666}}.code-copy-button{position:absolute;top:0;right:0;border:0;margin-top:5px;margin-right:5px;background-color:transparent}.code-copy-button:focus{outline:none}pre.sourceCode:hover>.code-copy-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>');background-repeat:no-repeat;background-size:1rem 1rem}pre.sourceCode:hover>.code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}pre.sourceCode:hover>.code-copy-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(89, 49, 150)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>')}pre.sourceCode:hover>.code-copy-button-checked:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(89, 49, 150)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}main ol ol,main ul ul,main ol ul,main ul ol{margin-bottom:1em}body{margin:0}main.page-columns>header>h1.title,main.page-columns>header>.title.h1{margin-bottom:0}@media(min-width: 992px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] 35px [page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(1200px - 3em)) [body-content-end] 3em [body-end] 50px [body-end-outset] minmax(0px, 250px) [page-end-inset] 50px [page-end] 1fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 100px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 100px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(50px, 150px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 991.98px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(1200px - 3em)) [body-content-end body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 4fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 767.98px){body .page-columns,body.fullcontent:not(.floating):not(.docked) .page-columns,body.slimcontent:not(.floating):not(.docked) .page-columns,body.docked .page-columns,body.docked.slimcontent .page-columns,body.docked.fullcontent .page-columns,body.floating .page-columns,body.floating.slimcontent .page-columns,body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}nav[role=doc-toc]{display:none}}body,.page-row-navigation{grid-template-rows:[page-top] max-content [contents-top] max-content [contents-bottom] max-content [page-bottom]}.page-rows-contents{grid-template-rows:[content-top] minmax(max-content, 1fr) [content-bottom] minmax(60px, max-content) [page-bottom]}.page-full{grid-column:screen-start/screen-end !important}.page-columns>*{grid-column:body-content-start/body-content-end}.page-columns.column-page>*{grid-column:page-start/page-end}.page-columns.column-page-left>*{grid-column:page-start/body-content-end}.page-columns.column-page-right>*{grid-column:body-content-start/page-end}.page-rows{grid-auto-rows:auto}.header{grid-column:screen-start/screen-end;grid-row:page-top/contents-top}#quarto-content{padding:0;grid-column:screen-start/screen-end;grid-row:contents-top/contents-bottom}body.floating .sidebar.sidebar-navigation{grid-column:page-start/body-start;grid-row:content-top/page-bottom}body.docked .sidebar.sidebar-navigation{grid-column:screen-start/body-start;grid-row:content-top/page-bottom}.sidebar.toc-left{grid-column:page-start/body-start;grid-row:content-top/page-bottom}.sidebar.margin-sidebar{grid-column:body-end/page-end;grid-row:content-top/page-bottom}.page-columns .content{grid-column:body-content-start/body-content-end;grid-row:content-top/content-bottom;align-content:flex-start}.page-columns .page-navigation{grid-column:body-content-start/body-content-end;grid-row:content-bottom/page-bottom}.page-columns .footer{grid-column:screen-start/screen-end;grid-row:contents-bottom/page-bottom}.page-columns .column-body{grid-column:body-content-start/body-content-end}.page-columns .column-body-fullbleed{grid-column:body-start/body-end}.page-columns .column-body-outset{grid-column:body-start-outset/body-end-outset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset table{background:#fff}.page-columns .column-body-outset-left{grid-column:body-start-outset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset-left table{background:#fff}.page-columns .column-body-outset-right{grid-column:body-content-start/body-end-outset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset-right table{background:#fff}.page-columns .column-page{grid-column:page-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page table{background:#fff}.page-columns .column-page-inset{grid-column:page-start-inset/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset table{background:#fff}.page-columns .column-page-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset-left table{background:#fff}.page-columns .column-page-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset-right figcaption table{background:#fff}.page-columns .column-page-left{grid-column:page-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-left table{background:#fff}.page-columns .column-page-right{grid-column:body-content-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-right figcaption table{background:#fff}#quarto-content.page-columns #quarto-margin-sidebar,#quarto-content.page-columns #quarto-sidebar{z-index:1}@media(max-width: 991.98px){#quarto-content.page-columns #quarto-margin-sidebar.collapse,#quarto-content.page-columns #quarto-sidebar.collapse{z-index:1055}}#quarto-content.page-columns main.column-page,#quarto-content.page-columns main.column-page-right,#quarto-content.page-columns main.column-page-left{z-index:0}.page-columns .column-screen-inset{grid-column:screen-start-inset/screen-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:screen-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/screen-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:screen-start/screen-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:screen-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/screen-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:screen-start/screen-end;padding:1em;background:#f9f8fc;z-index:998;transform:translate3d(0, 0, 0);margin-bottom:1em}.zindex-content{z-index:998;transform:translate3d(0, 0, 0)}.zindex-modal{z-index:1055;transform:translate3d(0, 0, 0)}.zindex-over-content{z-index:999;transform:translate3d(0, 0, 0)}img.img-fluid.column-screen,img.img-fluid.column-screen-inset-shaded,img.img-fluid.column-screen-inset,img.img-fluid.column-screen-inset-left,img.img-fluid.column-screen-inset-right,img.img-fluid.column-screen-left,img.img-fluid.column-screen-right{width:100%}@media(min-width: 992px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-end/page-end !important;z-index:998}.column-sidebar{grid-column:page-start/body-start !important;z-index:998}.column-leftmargin{grid-column:screen-start-inset/body-start !important;z-index:998}.no-row-height{height:1em;overflow:visible}}@media(max-width: 991.98px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-end/page-end !important;z-index:998}.no-row-height{height:1em;overflow:visible}.page-columns.page-full{overflow:visible}.page-columns.toc-left .margin-caption,.page-columns.toc-left div.aside,.page-columns.toc-left aside,.page-columns.toc-left .column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;transform:translate3d(0, 0, 0)}.page-columns.toc-left .no-row-height{height:initial;overflow:initial}}@media(max-width: 767.98px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;transform:translate3d(0, 0, 0)}.no-row-height{height:initial;overflow:initial}#quarto-margin-sidebar{display:none}.hidden-sm{display:none}}.panel-grid{display:grid;grid-template-rows:repeat(1, 1fr);grid-template-columns:repeat(24, 1fr);gap:1em}.panel-grid .g-col-1{grid-column:auto/span 1}.panel-grid .g-col-2{grid-column:auto/span 2}.panel-grid .g-col-3{grid-column:auto/span 3}.panel-grid .g-col-4{grid-column:auto/span 4}.panel-grid .g-col-5{grid-column:auto/span 5}.panel-grid .g-col-6{grid-column:auto/span 6}.panel-grid .g-col-7{grid-column:auto/span 7}.panel-grid .g-col-8{grid-column:auto/span 8}.panel-grid .g-col-9{grid-column:auto/span 9}.panel-grid .g-col-10{grid-column:auto/span 10}.panel-grid .g-col-11{grid-column:auto/span 11}.panel-grid .g-col-12{grid-column:auto/span 12}.panel-grid .g-col-13{grid-column:auto/span 13}.panel-grid .g-col-14{grid-column:auto/span 14}.panel-grid .g-col-15{grid-column:auto/span 15}.panel-grid .g-col-16{grid-column:auto/span 16}.panel-grid .g-col-17{grid-column:auto/span 17}.panel-grid .g-col-18{grid-column:auto/span 18}.panel-grid .g-col-19{grid-column:auto/span 19}.panel-grid .g-col-20{grid-column:auto/span 20}.panel-grid .g-col-21{grid-column:auto/span 21}.panel-grid .g-col-22{grid-column:auto/span 22}.panel-grid .g-col-23{grid-column:auto/span 23}.panel-grid .g-col-24{grid-column:auto/span 24}.panel-grid .g-start-1{grid-column-start:1}.panel-grid .g-start-2{grid-column-start:2}.panel-grid .g-start-3{grid-column-start:3}.panel-grid .g-start-4{grid-column-start:4}.panel-grid .g-start-5{grid-column-start:5}.panel-grid .g-start-6{grid-column-start:6}.panel-grid .g-start-7{grid-column-start:7}.panel-grid .g-start-8{grid-column-start:8}.panel-grid .g-start-9{grid-column-start:9}.panel-grid .g-start-10{grid-column-start:10}.panel-grid .g-start-11{grid-column-start:11}.panel-grid .g-start-12{grid-column-start:12}.panel-grid .g-start-13{grid-column-start:13}.panel-grid .g-start-14{grid-column-start:14}.panel-grid .g-start-15{grid-column-start:15}.panel-grid .g-start-16{grid-column-start:16}.panel-grid .g-start-17{grid-column-start:17}.panel-grid .g-start-18{grid-column-start:18}.panel-grid .g-start-19{grid-column-start:19}.panel-grid .g-start-20{grid-column-start:20}.panel-grid .g-start-21{grid-column-start:21}.panel-grid .g-start-22{grid-column-start:22}.panel-grid .g-start-23{grid-column-start:23}@media(min-width: 576px){.panel-grid .g-col-sm-1{grid-column:auto/span 1}.panel-grid .g-col-sm-2{grid-column:auto/span 2}.panel-grid .g-col-sm-3{grid-column:auto/span 3}.panel-grid .g-col-sm-4{grid-column:auto/span 4}.panel-grid .g-col-sm-5{grid-column:auto/span 5}.panel-grid .g-col-sm-6{grid-column:auto/span 6}.panel-grid .g-col-sm-7{grid-column:auto/span 7}.panel-grid .g-col-sm-8{grid-column:auto/span 8}.panel-grid .g-col-sm-9{grid-column:auto/span 9}.panel-grid .g-col-sm-10{grid-column:auto/span 10}.panel-grid .g-col-sm-11{grid-column:auto/span 11}.panel-grid .g-col-sm-12{grid-column:auto/span 12}.panel-grid .g-col-sm-13{grid-column:auto/span 13}.panel-grid .g-col-sm-14{grid-column:auto/span 14}.panel-grid .g-col-sm-15{grid-column:auto/span 15}.panel-grid .g-col-sm-16{grid-column:auto/span 16}.panel-grid .g-col-sm-17{grid-column:auto/span 17}.panel-grid .g-col-sm-18{grid-column:auto/span 18}.panel-grid .g-col-sm-19{grid-column:auto/span 19}.panel-grid .g-col-sm-20{grid-column:auto/span 20}.panel-grid .g-col-sm-21{grid-column:auto/span 21}.panel-grid .g-col-sm-22{grid-column:auto/span 22}.panel-grid .g-col-sm-23{grid-column:auto/span 23}.panel-grid .g-col-sm-24{grid-column:auto/span 24}.panel-grid .g-start-sm-1{grid-column-start:1}.panel-grid .g-start-sm-2{grid-column-start:2}.panel-grid .g-start-sm-3{grid-column-start:3}.panel-grid .g-start-sm-4{grid-column-start:4}.panel-grid .g-start-sm-5{grid-column-start:5}.panel-grid .g-start-sm-6{grid-column-start:6}.panel-grid .g-start-sm-7{grid-column-start:7}.panel-grid .g-start-sm-8{grid-column-start:8}.panel-grid .g-start-sm-9{grid-column-start:9}.panel-grid .g-start-sm-10{grid-column-start:10}.panel-grid .g-start-sm-11{grid-column-start:11}.panel-grid .g-start-sm-12{grid-column-start:12}.panel-grid .g-start-sm-13{grid-column-start:13}.panel-grid .g-start-sm-14{grid-column-start:14}.panel-grid .g-start-sm-15{grid-column-start:15}.panel-grid .g-start-sm-16{grid-column-start:16}.panel-grid .g-start-sm-17{grid-column-start:17}.panel-grid .g-start-sm-18{grid-column-start:18}.panel-grid .g-start-sm-19{grid-column-start:19}.panel-grid .g-start-sm-20{grid-column-start:20}.panel-grid .g-start-sm-21{grid-column-start:21}.panel-grid .g-start-sm-22{grid-column-start:22}.panel-grid .g-start-sm-23{grid-column-start:23}}@media(min-width: 768px){.panel-grid .g-col-md-1{grid-column:auto/span 1}.panel-grid .g-col-md-2{grid-column:auto/span 2}.panel-grid .g-col-md-3{grid-column:auto/span 3}.panel-grid .g-col-md-4{grid-column:auto/span 4}.panel-grid .g-col-md-5{grid-column:auto/span 5}.panel-grid .g-col-md-6{grid-column:auto/span 6}.panel-grid .g-col-md-7{grid-column:auto/span 7}.panel-grid .g-col-md-8{grid-column:auto/span 8}.panel-grid .g-col-md-9{grid-column:auto/span 9}.panel-grid .g-col-md-10{grid-column:auto/span 10}.panel-grid .g-col-md-11{grid-column:auto/span 11}.panel-grid .g-col-md-12{grid-column:auto/span 12}.panel-grid .g-col-md-13{grid-column:auto/span 13}.panel-grid .g-col-md-14{grid-column:auto/span 14}.panel-grid .g-col-md-15{grid-column:auto/span 15}.panel-grid .g-col-md-16{grid-column:auto/span 16}.panel-grid .g-col-md-17{grid-column:auto/span 17}.panel-grid .g-col-md-18{grid-column:auto/span 18}.panel-grid .g-col-md-19{grid-column:auto/span 19}.panel-grid .g-col-md-20{grid-column:auto/span 20}.panel-grid .g-col-md-21{grid-column:auto/span 21}.panel-grid .g-col-md-22{grid-column:auto/span 22}.panel-grid .g-col-md-23{grid-column:auto/span 23}.panel-grid .g-col-md-24{grid-column:auto/span 24}.panel-grid .g-start-md-1{grid-column-start:1}.panel-grid .g-start-md-2{grid-column-start:2}.panel-grid .g-start-md-3{grid-column-start:3}.panel-grid .g-start-md-4{grid-column-start:4}.panel-grid .g-start-md-5{grid-column-start:5}.panel-grid .g-start-md-6{grid-column-start:6}.panel-grid .g-start-md-7{grid-column-start:7}.panel-grid .g-start-md-8{grid-column-start:8}.panel-grid .g-start-md-9{grid-column-start:9}.panel-grid .g-start-md-10{grid-column-start:10}.panel-grid .g-start-md-11{grid-column-start:11}.panel-grid .g-start-md-12{grid-column-start:12}.panel-grid .g-start-md-13{grid-column-start:13}.panel-grid .g-start-md-14{grid-column-start:14}.panel-grid .g-start-md-15{grid-column-start:15}.panel-grid .g-start-md-16{grid-column-start:16}.panel-grid .g-start-md-17{grid-column-start:17}.panel-grid .g-start-md-18{grid-column-start:18}.panel-grid .g-start-md-19{grid-column-start:19}.panel-grid .g-start-md-20{grid-column-start:20}.panel-grid .g-start-md-21{grid-column-start:21}.panel-grid .g-start-md-22{grid-column-start:22}.panel-grid .g-start-md-23{grid-column-start:23}}@media(min-width: 992px){.panel-grid .g-col-lg-1{grid-column:auto/span 1}.panel-grid .g-col-lg-2{grid-column:auto/span 2}.panel-grid .g-col-lg-3{grid-column:auto/span 3}.panel-grid .g-col-lg-4{grid-column:auto/span 4}.panel-grid .g-col-lg-5{grid-column:auto/span 5}.panel-grid .g-col-lg-6{grid-column:auto/span 6}.panel-grid .g-col-lg-7{grid-column:auto/span 7}.panel-grid .g-col-lg-8{grid-column:auto/span 8}.panel-grid .g-col-lg-9{grid-column:auto/span 9}.panel-grid .g-col-lg-10{grid-column:auto/span 10}.panel-grid .g-col-lg-11{grid-column:auto/span 11}.panel-grid .g-col-lg-12{grid-column:auto/span 12}.panel-grid .g-col-lg-13{grid-column:auto/span 13}.panel-grid .g-col-lg-14{grid-column:auto/span 14}.panel-grid .g-col-lg-15{grid-column:auto/span 15}.panel-grid .g-col-lg-16{grid-column:auto/span 16}.panel-grid .g-col-lg-17{grid-column:auto/span 17}.panel-grid .g-col-lg-18{grid-column:auto/span 18}.panel-grid .g-col-lg-19{grid-column:auto/span 19}.panel-grid .g-col-lg-20{grid-column:auto/span 20}.panel-grid .g-col-lg-21{grid-column:auto/span 21}.panel-grid .g-col-lg-22{grid-column:auto/span 22}.panel-grid .g-col-lg-23{grid-column:auto/span 23}.panel-grid .g-col-lg-24{grid-column:auto/span 24}.panel-grid .g-start-lg-1{grid-column-start:1}.panel-grid .g-start-lg-2{grid-column-start:2}.panel-grid .g-start-lg-3{grid-column-start:3}.panel-grid .g-start-lg-4{grid-column-start:4}.panel-grid .g-start-lg-5{grid-column-start:5}.panel-grid .g-start-lg-6{grid-column-start:6}.panel-grid .g-start-lg-7{grid-column-start:7}.panel-grid .g-start-lg-8{grid-column-start:8}.panel-grid .g-start-lg-9{grid-column-start:9}.panel-grid .g-start-lg-10{grid-column-start:10}.panel-grid .g-start-lg-11{grid-column-start:11}.panel-grid .g-start-lg-12{grid-column-start:12}.panel-grid .g-start-lg-13{grid-column-start:13}.panel-grid .g-start-lg-14{grid-column-start:14}.panel-grid .g-start-lg-15{grid-column-start:15}.panel-grid .g-start-lg-16{grid-column-start:16}.panel-grid .g-start-lg-17{grid-column-start:17}.panel-grid .g-start-lg-18{grid-column-start:18}.panel-grid .g-start-lg-19{grid-column-start:19}.panel-grid .g-start-lg-20{grid-column-start:20}.panel-grid .g-start-lg-21{grid-column-start:21}.panel-grid .g-start-lg-22{grid-column-start:22}.panel-grid .g-start-lg-23{grid-column-start:23}}@media(min-width: 1200px){.panel-grid .g-col-xl-1{grid-column:auto/span 1}.panel-grid .g-col-xl-2{grid-column:auto/span 2}.panel-grid .g-col-xl-3{grid-column:auto/span 3}.panel-grid .g-col-xl-4{grid-column:auto/span 4}.panel-grid .g-col-xl-5{grid-column:auto/span 5}.panel-grid .g-col-xl-6{grid-column:auto/span 6}.panel-grid .g-col-xl-7{grid-column:auto/span 7}.panel-grid .g-col-xl-8{grid-column:auto/span 8}.panel-grid .g-col-xl-9{grid-column:auto/span 9}.panel-grid .g-col-xl-10{grid-column:auto/span 10}.panel-grid .g-col-xl-11{grid-column:auto/span 11}.panel-grid .g-col-xl-12{grid-column:auto/span 12}.panel-grid .g-col-xl-13{grid-column:auto/span 13}.panel-grid .g-col-xl-14{grid-column:auto/span 14}.panel-grid .g-col-xl-15{grid-column:auto/span 15}.panel-grid .g-col-xl-16{grid-column:auto/span 16}.panel-grid .g-col-xl-17{grid-column:auto/span 17}.panel-grid .g-col-xl-18{grid-column:auto/span 18}.panel-grid .g-col-xl-19{grid-column:auto/span 19}.panel-grid .g-col-xl-20{grid-column:auto/span 20}.panel-grid .g-col-xl-21{grid-column:auto/span 21}.panel-grid .g-col-xl-22{grid-column:auto/span 22}.panel-grid .g-col-xl-23{grid-column:auto/span 23}.panel-grid .g-col-xl-24{grid-column:auto/span 24}.panel-grid .g-start-xl-1{grid-column-start:1}.panel-grid .g-start-xl-2{grid-column-start:2}.panel-grid .g-start-xl-3{grid-column-start:3}.panel-grid .g-start-xl-4{grid-column-start:4}.panel-grid .g-start-xl-5{grid-column-start:5}.panel-grid .g-start-xl-6{grid-column-start:6}.panel-grid .g-start-xl-7{grid-column-start:7}.panel-grid .g-start-xl-8{grid-column-start:8}.panel-grid .g-start-xl-9{grid-column-start:9}.panel-grid .g-start-xl-10{grid-column-start:10}.panel-grid .g-start-xl-11{grid-column-start:11}.panel-grid .g-start-xl-12{grid-column-start:12}.panel-grid .g-start-xl-13{grid-column-start:13}.panel-grid .g-start-xl-14{grid-column-start:14}.panel-grid .g-start-xl-15{grid-column-start:15}.panel-grid .g-start-xl-16{grid-column-start:16}.panel-grid .g-start-xl-17{grid-column-start:17}.panel-grid .g-start-xl-18{grid-column-start:18}.panel-grid .g-start-xl-19{grid-column-start:19}.panel-grid .g-start-xl-20{grid-column-start:20}.panel-grid .g-start-xl-21{grid-column-start:21}.panel-grid .g-start-xl-22{grid-column-start:22}.panel-grid .g-start-xl-23{grid-column-start:23}}@media(min-width: 1400px){.panel-grid .g-col-xxl-1{grid-column:auto/span 1}.panel-grid .g-col-xxl-2{grid-column:auto/span 2}.panel-grid .g-col-xxl-3{grid-column:auto/span 3}.panel-grid .g-col-xxl-4{grid-column:auto/span 4}.panel-grid .g-col-xxl-5{grid-column:auto/span 5}.panel-grid .g-col-xxl-6{grid-column:auto/span 6}.panel-grid .g-col-xxl-7{grid-column:auto/span 7}.panel-grid .g-col-xxl-8{grid-column:auto/span 8}.panel-grid .g-col-xxl-9{grid-column:auto/span 9}.panel-grid .g-col-xxl-10{grid-column:auto/span 10}.panel-grid .g-col-xxl-11{grid-column:auto/span 11}.panel-grid .g-col-xxl-12{grid-column:auto/span 12}.panel-grid .g-col-xxl-13{grid-column:auto/span 13}.panel-grid .g-col-xxl-14{grid-column:auto/span 14}.panel-grid .g-col-xxl-15{grid-column:auto/span 15}.panel-grid .g-col-xxl-16{grid-column:auto/span 16}.panel-grid .g-col-xxl-17{grid-column:auto/span 17}.panel-grid .g-col-xxl-18{grid-column:auto/span 18}.panel-grid .g-col-xxl-19{grid-column:auto/span 19}.panel-grid .g-col-xxl-20{grid-column:auto/span 20}.panel-grid .g-col-xxl-21{grid-column:auto/span 21}.panel-grid .g-col-xxl-22{grid-column:auto/span 22}.panel-grid .g-col-xxl-23{grid-column:auto/span 23}.panel-grid .g-col-xxl-24{grid-column:auto/span 24}.panel-grid .g-start-xxl-1{grid-column-start:1}.panel-grid .g-start-xxl-2{grid-column-start:2}.panel-grid .g-start-xxl-3{grid-column-start:3}.panel-grid .g-start-xxl-4{grid-column-start:4}.panel-grid .g-start-xxl-5{grid-column-start:5}.panel-grid .g-start-xxl-6{grid-column-start:6}.panel-grid .g-start-xxl-7{grid-column-start:7}.panel-grid .g-start-xxl-8{grid-column-start:8}.panel-grid .g-start-xxl-9{grid-column-start:9}.panel-grid .g-start-xxl-10{grid-column-start:10}.panel-grid .g-start-xxl-11{grid-column-start:11}.panel-grid .g-start-xxl-12{grid-column-start:12}.panel-grid .g-start-xxl-13{grid-column-start:13}.panel-grid .g-start-xxl-14{grid-column-start:14}.panel-grid .g-start-xxl-15{grid-column-start:15}.panel-grid .g-start-xxl-16{grid-column-start:16}.panel-grid .g-start-xxl-17{grid-column-start:17}.panel-grid .g-start-xxl-18{grid-column-start:18}.panel-grid .g-start-xxl-19{grid-column-start:19}.panel-grid .g-start-xxl-20{grid-column-start:20}.panel-grid .g-start-xxl-21{grid-column-start:21}.panel-grid .g-start-xxl-22{grid-column-start:22}.panel-grid .g-start-xxl-23{grid-column-start:23}}main{margin-top:1em;margin-bottom:1em}h1,.h1,h2,.h2{margin-top:2rem;margin-bottom:1rem}h1.title,.title.h1{margin-top:0}h2,.h2{border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:.5rem}h3,.h3,h4,.h4{margin-top:1.5rem}.header-section-number{color:#848484}.nav-link.active .header-section-number{color:inherit}mark,.mark{padding:0em}.panel-caption,caption,.figure-caption{font-size:1rem}.panel-caption,.figure-caption,figcaption{color:#848484}.table-caption,caption{color:#444}.quarto-layout-cell[data-ref-parent] caption{color:#848484}.column-margin figcaption,.margin-caption,div.aside,aside,.column-margin{color:#848484;font-size:.825rem}.panel-caption.margin-caption{text-align:inherit}.column-margin.column-container p{margin-bottom:0}.column-margin.column-container>*:not(.collapse){padding-top:.5em;padding-bottom:.5em;display:block}.column-margin.column-container>*.collapse:not(.show){display:none}@media(min-width: 768px){.column-margin.column-container .callout-margin-content:first-child{margin-top:4.5em}.column-margin.column-container .callout-margin-content-simple:first-child{margin-top:3.5em}}.margin-caption>*{padding-top:.5em;padding-bottom:.5em}@media(max-width: 767.98px){.quarto-layout-row{flex-direction:column}}.tab-content{margin-top:0px;border-left:#dee2e6 1px solid;border-right:#dee2e6 1px solid;border-bottom:#dee2e6 1px solid;margin-left:0;padding:1em;margin-bottom:1em}@media(max-width: 767.98px){.layout-sidebar{margin-left:0;margin-right:0}}.panel-sidebar,.panel-sidebar .form-control,.panel-input,.panel-input .form-control,.selectize-dropdown{font-size:.9rem}.panel-sidebar .form-control,.panel-input .form-control{padding-top:.1rem}.tab-pane div.sourceCode{margin-top:0px}.tab-pane>p{padding-top:1em}.tab-content>.tab-pane:not(.active){display:none !important}div.sourceCode{background-color:rgba(222,226,230,.65);border:1px solid rgba(222,226,230,.65);border-radius:.25rem}pre.sourceCode{background-color:transparent}pre.sourceCode{border:none;font-size:.875em;overflow:visible !important;padding:.4em}.callout pre.sourceCode{padding-left:0}div.sourceCode{overflow-y:hidden}.callout div.sourceCode{margin-left:initial}.blockquote{font-size:inherit;padding-left:1rem;padding-right:1.5rem;color:#848484}.blockquote h1:first-child,.blockquote .h1:first-child,.blockquote h2:first-child,.blockquote .h2:first-child,.blockquote h3:first-child,.blockquote .h3:first-child,.blockquote h4:first-child,.blockquote .h4:first-child,.blockquote h5:first-child,.blockquote .h5:first-child{margin-top:0}pre{background-color:initial;padding:initial;border:initial}p code:not(.sourceCode),li code:not(.sourceCode){background-color:#f8f8f8;padding:.2em}nav p code:not(.sourceCode),nav li code:not(.sourceCode){background-color:transparent;padding:0}#quarto-embedded-source-code-modal>.modal-dialog{max-width:1000px;padding-left:1.75rem;padding-right:1.75rem}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body{padding:0}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body div.sourceCode{margin:0;padding:.2rem .2rem;border-radius:0px;border:none}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-header{padding:.7rem}.code-tools-button{font-size:1rem;padding:.15rem .15rem;margin-left:5px;color:#6c757d;background-color:transparent;transition:initial;cursor:pointer}.code-tools-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>');background-repeat:no-repeat;background-size:1rem 1rem}.code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}#quarto-embedded-source-code-modal .code-copy-button>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>')}#quarto-embedded-source-code-modal .code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}.sidebar{will-change:top;transition:top 200ms linear;position:sticky;overflow-y:auto;padding-top:1.2em;max-height:100vh}.sidebar.toc-left,.sidebar.margin-sidebar{top:0px;padding-top:1em}.sidebar.toc-left>*,.sidebar.margin-sidebar>*{padding-top:.5em}.sidebar.quarto-banner-title-block-sidebar>*{padding-top:1.65em}.sidebar nav[role=doc-toc]>h2,.sidebar nav[role=doc-toc]>.h2{font-size:.875rem;font-weight:400;margin-bottom:.5rem;margin-top:.3rem;font-family:inherit;border-bottom:0;padding-bottom:0;padding-top:0px}.sidebar nav[role=doc-toc]>ul a{border-left:1px solid #f9f8fc;padding-left:.6rem}.sidebar nav[role=doc-toc]>ul a:empty{display:none}.sidebar nav[role=doc-toc] ul{padding-left:0;list-style:none;font-size:.875rem;font-weight:300}.sidebar nav[role=doc-toc]>ul li a{line-height:1.1rem;padding-bottom:.2rem;padding-top:.2rem;color:inherit}.sidebar nav[role=doc-toc] ul>li>ul>li>a{padding-left:1.2em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>a{padding-left:2.4em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>a{padding-left:3.6em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:4.8em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:6em}.sidebar nav[role=doc-toc] ul>li>ul>li>a.active{border-left:1px solid #593196;color:#593196 !important}.sidebar nav[role=doc-toc] ul>li>a.active{border-left:1px solid #593196;color:#593196 !important}kbd,.kbd{color:#444;background-color:#fafafa;border:1px solid;border-radius:5px;border-color:rgba(0,0,0,.05)}div.hanging-indent{margin-left:1em;text-indent:-1em}.citation a,.footnote-ref{text-decoration:none}.footnotes ol{padding-left:1em}.tippy-content>*{margin-bottom:.7em}.tippy-content>*:last-child{margin-bottom:0}.table a{word-break:break-word}.table>:not(:first-child){border-top-width:1px;border-top-color:rgba(0,0,0,.05)}.table>thead{border-bottom:1px solid currentColor}.table>tbody{border-top:1px solid rgba(0,0,0,.05)}.callout{margin-top:1.25rem;margin-bottom:1.25rem;border-radius:.25rem}.callout.callout-style-simple{padding:.4em .7em;border-left:5px solid;border-right:1px solid rgba(0,0,0,.05);border-top:1px solid rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.05)}.callout.callout-style-default{border-left:5px solid;border-right:1px solid rgba(0,0,0,.05);border-top:1px solid rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.05)}.callout .callout-body-container{flex-grow:1}.callout.callout-style-simple .callout-body{font-size:.9rem;font-weight:400}.callout.callout-style-default .callout-body{font-size:.9rem;font-weight:400}.callout.callout-captioned .callout-body{margin-top:.2em}.callout:not(.no-icon).callout-captioned.callout-style-simple .callout-body{padding-left:1.6em}.callout.callout-captioned>.callout-header{padding-top:.2em;margin-bottom:-0.2em}.callout.callout-style-simple>div.callout-header{border-bottom:none;font-size:.9rem;font-weight:600;opacity:75%}.callout.callout-style-default>div.callout-header{border-bottom:none;font-weight:600;opacity:85%;font-size:.9rem;padding-left:.5em;padding-right:.5em}.callout.callout-style-default div.callout-body{padding-left:.5em;padding-right:.5em}.callout.callout-style-default div.callout-body>:first-child{margin-top:.5em}.callout>div.callout-header[data-bs-toggle=collapse]{cursor:pointer}.callout.callout-style-default .callout-header[aria-expanded=false],.callout.callout-style-default .callout-header[aria-expanded=true]{padding-top:0px;margin-bottom:0px;align-items:center}.callout.callout-captioned .callout-body>:last-child:not(.sourceCode),.callout.callout-captioned .callout-body>div>:last-child:not(.sourceCode){margin-bottom:.5rem}.callout:not(.callout-captioned) .callout-body>:first-child,.callout:not(.callout-captioned) .callout-body>div>:first-child{margin-top:.25rem}.callout:not(.callout-captioned) .callout-body>:last-child,.callout:not(.callout-captioned) .callout-body>div>:last-child{margin-bottom:.2rem}.callout.callout-style-simple .callout-icon::before,.callout.callout-style-simple .callout-toggle::before{height:1rem;width:1rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.callout.callout-style-default .callout-icon::before,.callout.callout-style-default .callout-toggle::before{height:.9rem;width:.9rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:.9rem .9rem}.callout.callout-style-default .callout-toggle::before{margin-top:5px}.callout .callout-btn-toggle .callout-toggle::before{transition:transform .2s linear}.callout .callout-header[aria-expanded=false] .callout-toggle::before{transform:rotate(-90deg)}.callout .callout-header[aria-expanded=true] .callout-toggle::before{transform:none}.callout.callout-style-simple:not(.no-icon) div.callout-icon-container{padding-top:.2em;padding-right:.55em}.callout.callout-style-default:not(.no-icon) div.callout-icon-container{padding-top:.1em;padding-right:.35em}.callout.callout-style-default:not(.no-icon) div.callout-caption-container{margin-top:-1px}.callout.callout-style-default.callout-caution:not(.no-icon) div.callout-icon-container{padding-top:.3em;padding-right:.35em}.callout>.callout-body>.callout-icon-container>.no-icon,.callout>.callout-header>.callout-icon-container>.no-icon{display:none}div.callout.callout{border-left-color:#6c757d}div.callout.callout-style-default>.callout-header{background-color:#6c757d}div.callout-note.callout{border-left-color:#007bff}div.callout-note.callout-style-default>.callout-header{background-color:#e6f2ff}div.callout-note:not(.callout-captioned) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23006fe6" class="bi bi-info-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z"/></svg>');}div.callout-note.callout-captioned .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23006fe6" class="bi bi-info-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z"/></svg>');}div.callout-note .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-tip.callout{border-left-color:#13b955}div.callout-tip.callout-style-default>.callout-header{background-color:#e7f8ee}div.callout-tip:not(.callout-captioned) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %2311a74d" class="bi bi-lightbulb" viewBox="0 0 16 16"><path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/></svg>');}div.callout-tip.callout-captioned .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %2311a74d" class="bi bi-lightbulb" viewBox="0 0 16 16"><path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/></svg>');}div.callout-tip .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-warning.callout{border-left-color:#efa31d}div.callout-warning.callout-style-default>.callout-header{background-color:#fdf6e8}div.callout-warning:not(.callout-captioned) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23d7931a" class="bi bi-exclamation-triangle" viewBox="0 0 16 16"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></svg>');}div.callout-warning.callout-captioned .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23d7931a" class="bi bi-exclamation-triangle" viewBox="0 0 16 16"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></svg>');}div.callout-warning .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-caution.callout{border-left-color:#fd7e14}div.callout-caution.callout-style-default>.callout-header{background-color:#fff2e8}div.callout-caution:not(.callout-captioned) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e47112" class="bi bi-cone-striped" viewBox="0 0 16 16"><path d="M9.97 4.88l.953 3.811C10.158 8.878 9.14 9 8 9c-1.14 0-2.159-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.274 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/></svg>');}div.callout-caution.callout-captioned .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e47112" class="bi bi-cone-striped" viewBox="0 0 16 16"><path d="M9.97 4.88l.953 3.811C10.158 8.878 9.14 9 8 9c-1.14 0-2.159-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.274 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/></svg>');}div.callout-caution .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-important.callout{border-left-color:#fc3939}div.callout-important.callout-style-default>.callout-header{background-color:#ffebeb}div.callout-important:not(.callout-captioned) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e33333" class="bi bi-exclamation-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></svg>');}div.callout-important.callout-captioned .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e33333" class="bi bi-exclamation-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></svg>');}div.callout-important .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(68, 68, 68)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}.quarto-toggle-container{display:flex;align-items:center}@media(min-width: 992px){.navbar .quarto-color-scheme-toggle{padding-left:.5rem;padding-right:.5rem}}@media(max-width: 767.98px){.navbar .quarto-color-scheme-toggle{padding-left:0;padding-right:0;padding-bottom:.5em}}.quarto-reader-toggle .bi::before,.quarto-color-scheme-toggle .bi::before{display:inline-block;height:1rem;width:1rem;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.navbar-collapse .quarto-color-scheme-toggle{padding-left:.6rem;padding-right:0;margin-top:-12px}.sidebar-navigation{padding-left:20px}.sidebar-navigation .quarto-color-scheme-toggle .bi::before{padding-top:.2rem;margin-bottom:-0.2rem}.sidebar-tools-main .quarto-color-scheme-toggle .bi::before{padding-top:.2rem;margin-bottom:-0.2rem}.navbar .quarto-color-scheme-toggle .bi::before{padding-top:7px;margin-bottom:-7px;padding-left:2px;margin-right:2px}.navbar .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(255, 255, 255, 0.7)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.navbar .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(255, 255, 255, 0.7)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}.sidebar-navigation .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(94, 94, 94, 1)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.sidebar-navigation .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(94, 94, 94, 1)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}.quarto-sidebar-toggle{border-color:#dee2e6;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem;border-style:solid;border-width:1px;overflow:hidden;border-top-width:0px;padding-top:0px !important}.quarto-sidebar-toggle-title{cursor:pointer;padding-bottom:2px;margin-left:.25em;text-align:center;font-weight:400;font-size:.775em}#quarto-content .quarto-sidebar-toggle{background:#fafafa}#quarto-content .quarto-sidebar-toggle-title{color:#444}.quarto-sidebar-toggle-icon{color:#dee2e6;margin-right:.5em;float:right;transition:transform .2s ease}.quarto-sidebar-toggle-icon::before{padding-top:5px}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-icon{transform:rotate(-180deg)}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-title{border-bottom:solid #dee2e6 1px}.quarto-sidebar-toggle-contents{background-color:#fff;padding-right:10px;padding-left:10px;margin-top:0px !important;transition:max-height .5s ease}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-contents{padding-top:1em;padding-bottom:10px}.quarto-sidebar-toggle:not(.expanded) .quarto-sidebar-toggle-contents{padding-top:0px !important;padding-bottom:0px}nav[role=doc-toc]{z-index:1020}#quarto-sidebar>*,nav[role=doc-toc]>*{transition:opacity .1s ease,border .1s ease}#quarto-sidebar.slow>*,nav[role=doc-toc].slow>*{transition:opacity .4s ease,border .4s ease}.quarto-color-scheme-toggle:not(.alternate).top-right .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(157, 157, 157, 1)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.quarto-color-scheme-toggle.alternate.top-right .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(119, 119, 119, 1)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}#quarto-appendix.default{border-top:1px solid #dee2e6}#quarto-appendix.default{background-color:#fff;padding-top:1.5em;margin-top:2em;z-index:998}#quarto-appendix.default .quarto-appendix-heading{margin-top:0;line-height:1.4em;font-weight:600;opacity:.9;border-bottom:none;margin-bottom:0}#quarto-appendix.default .footnotes ol,#quarto-appendix.default .footnotes ol li>p:last-of-type,#quarto-appendix.default .quarto-appendix-contents>p:last-of-type{margin-bottom:0}#quarto-appendix.default .quarto-appendix-secondary-label{margin-bottom:.4em}#quarto-appendix.default .quarto-appendix-bibtex{font-size:.7em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-bibtex code.sourceCode{white-space:pre-wrap}#quarto-appendix.default .quarto-appendix-citeas{font-size:.9em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-heading{font-size:1em !important}#quarto-appendix.default *[role=doc-endnotes]>ol,#quarto-appendix.default .quarto-appendix-contents>*:not(h2):not(.h2){font-size:.9em}#quarto-appendix.default section{padding-bottom:1.5em}#quarto-appendix.default section *[role=doc-endnotes],#quarto-appendix.default section>*:not(a){opacity:.9;word-wrap:break-word}.btn.btn-quarto,div.cell-output-display .btn-quarto{color:#0f0d13;background-color:#a991d4;border-color:#a991d4}.btn.btn-quarto:hover,div.cell-output-display .btn-quarto:hover{color:#0f0d13;background-color:#b6a2da;border-color:#b29cd8}.btn-check:focus+.btn.btn-quarto,.btn.btn-quarto:focus,.btn-check:focus+div.cell-output-display .btn-quarto,div.cell-output-display .btn-quarto:focus{color:#0f0d13;background-color:#b6a2da;border-color:#b29cd8;box-shadow:0 0 0 .25rem rgba(146,125,183,.5)}.btn-check:checked+.btn.btn-quarto,.btn-check:active+.btn.btn-quarto,.btn.btn-quarto:active,.btn.btn-quarto.active,.show>.btn.btn-quarto.dropdown-toggle,.btn-check:checked+div.cell-output-display .btn-quarto,.btn-check:active+div.cell-output-display .btn-quarto,div.cell-output-display .btn-quarto:active,div.cell-output-display .btn-quarto.active,.show>div.cell-output-display .btn-quarto.dropdown-toggle{color:#fff;background-color:#baa7dd;border-color:#b29cd8}.btn-check:checked+.btn.btn-quarto:focus,.btn-check:active+.btn.btn-quarto:focus,.btn.btn-quarto:active:focus,.btn.btn-quarto.active:focus,.show>.btn.btn-quarto.dropdown-toggle:focus,.btn-check:checked+div.cell-output-display .btn-quarto:focus,.btn-check:active+div.cell-output-display .btn-quarto:focus,div.cell-output-display .btn-quarto:active:focus,div.cell-output-display .btn-quarto.active:focus,.show>div.cell-output-display .btn-quarto.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(146,125,183,.5)}.btn.btn-quarto:disabled,.btn.btn-quarto.disabled,div.cell-output-display .btn-quarto:disabled,div.cell-output-display .btn-quarto.disabled{color:#fff;background-color:#a991d4;border-color:#a991d4}nav.quarto-secondary-nav.color-navbar{background-color:#593196;color:rgba(255,255,255,.7)}nav.quarto-secondary-nav.color-navbar h1,nav.quarto-secondary-nav.color-navbar .h1,nav.quarto-secondary-nav.color-navbar .quarto-btn-toggle{color:rgba(255,255,255,.7)}@media(max-width: 991.98px){body.nav-sidebar .quarto-title-banner,body.nav-sidebar .quarto-title-banner{display:none}}p.subtitle{margin-top:.25em;margin-bottom:.5em}code a:any-link{color:inherit;text-decoration-color:#6c757d}/*! light */div.observablehq table thead tr th{background-color:var(--bs-body-bg)}input,button,select,optgroup,textarea{background-color:var(--bs-body-bg)}@media print{.page-columns .column-screen-inset{grid-column:page-start-inset/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:page-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:page-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:page-start-inset/page-end-inset;padding:1em;background:#f9f8fc;z-index:998;transform:translate3d(0, 0, 0);margin-bottom:1em}}a.external:after{display:inline-block;height:.75rem;width:.75rem;margin-bottom:.15em;margin-left:.25em;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(89, 49, 150)" class="bi bi-box-arrow-up-right" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');background-repeat:no-repeat;background-size:.75rem .75rem}a.external:after:hover{cursor:pointer}.quarto-ext-icon{display:inline-block;font-size:.75em;padding-left:.3em}.code-with-filename .code-with-filename-file{margin-bottom:0;padding-bottom:2px;padding-top:2px;padding-left:.7em;border:var(--quarto-border-width) solid var(--quarto-border-color);border-radius:var(--quarto-border-radius);border-bottom:0;border-bottom-left-radius:0%;border-bottom-right-radius:0%}.code-with-filename div.sourceCode,.reveal .code-with-filename div.sourceCode{margin-top:0;border-top-left-radius:0%;border-top-right-radius:0%}.code-with-filename .code-with-filename-file pre{margin-bottom:0}.code-with-filename .code-with-filename-file,.code-with-filename .code-with-filename-file pre{background-color:rgba(219,219,219,.8)}.quarto-dark .code-with-filename .code-with-filename-file,.quarto-dark .code-with-filename .code-with-filename-file pre{background-color:#555}.code-with-filename .code-with-filename-file strong{font-weight:400}.quarto-title-banner{margin-bottom:1em;color:rgba(255,255,255,.7);background:#593196}.quarto-title-banner .code-tools-button{color:rgba(204,204,204,.7)}.quarto-title-banner .code-tools-button:hover{color:rgba(255,255,255,.7)}.quarto-title-banner .code-tools-button>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(204, 204, 204)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}.quarto-title-banner .code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(255, 255, 255)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}.quarto-title-banner .quarto-title .title{font-weight:600}.quarto-title-banner .quarto-categories{margin-top:.75em}@media(min-width: 992px){.quarto-title-banner{padding-top:2.5em;padding-bottom:2.5em}}@media(max-width: 991.98px){.quarto-title-banner{padding-top:1em;padding-bottom:1em}}main.quarto-banner-title-block section:first-of-type h2:first-of-type,main.quarto-banner-title-block section:first-of-type .h2:first-of-type,main.quarto-banner-title-block section:first-of-type h3:first-of-type,main.quarto-banner-title-block section:first-of-type .h3:first-of-type,main.quarto-banner-title-block section:first-of-type h4:first-of-type,main.quarto-banner-title-block section:first-of-type .h4:first-of-type{margin-top:0}.quarto-title .quarto-categories{display:flex;column-gap:.4em;padding-bottom:.5em;margin-top:.75em}.quarto-title .quarto-categories .quarto-category{padding:.25em .75em;font-size:.65em;text-transform:uppercase;border:solid 1px;border-radius:.25rem;opacity:.6}.quarto-title .quarto-categories .quarto-category a{color:inherit}#title-block-header.quarto-title-block.default .quarto-title-meta{display:grid;grid-template-columns:repeat(2, 1fr)}#title-block-header.quarto-title-block.default .quarto-title .title{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-author-orcid img{margin-top:-5px}#title-block-header.quarto-title-block.default .quarto-description p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p,#title-block-header.quarto-title-block.default .quarto-title-authors p,#title-block-header.quarto-title-block.default .quarto-title-affiliations p{margin-bottom:.1em}#title-block-header.quarto-title-block.default .quarto-title-meta-heading{text-transform:uppercase;margin-top:1em;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-contents{font-size:.9em}#title-block-header.quarto-title-block.default .quarto-title-meta-contents a{color:#444}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p.affiliation:last-of-type{margin-bottom:.7em}#title-block-header.quarto-title-block.default p.affiliation{margin-bottom:.1em}#title-block-header.quarto-title-block.default .description,#title-block-header.quarto-title-block.default .abstract{margin-top:0}#title-block-header.quarto-title-block.default .description>p,#title-block-header.quarto-title-block.default .abstract>p{font-size:.9em}#title-block-header.quarto-title-block.default .description>p:last-of-type,#title-block-header.quarto-title-block.default .abstract>p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .description .abstract-title,#title-block-header.quarto-title-block.default .abstract .abstract-title{margin-top:1em;text-transform:uppercase;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-author{display:grid;grid-template-columns:1fr 1fr}.btn:focus,.btn:active,.btn:active:focus,.btn.active:focus{outline:none}.btn-secondary{background-color:#fff;border-color:#ccc;color:#17141f}.btn-secondary:hover{background-color:#dee2e6;border-color:#adb5bd;color:#17141f}.btn-secondary.disabled{background-color:#fff;border-color:#cfcfcf;color:#23202a}.btn-warning{color:#fff}.btn-primary:focus{box-shadow:0 0 5px #6a46a1}.btn-secondary:focus{box-shadow:0 0 5px #cbc8d0}.btn-success:focus{box-shadow:0 0 5px #2bc066}.btn-info:focus{box-shadow:0 0 5px #1aa6e0}.btn-warning:focus{box-shadow:0 0 5px #f1ac34}.btn-danger:focus{box-shadow:0 0 5px #fc4d4d}.btn.disabled:focus{box-shadow:none}.table .thead-dark th{background-color:#a991d4;border-color:rgba(0,0,0,.05)}.form-control:focus{box-shadow:0 0 5px rgba(100,65,164,.4)}.nav-tabs .nav-link,.nav-tabs .nav-link.active{border-width:0 0 1px}.nav-tabs .nav-link:hover,.nav-tabs .nav-link.active,.nav-tabs .nav-link.active:hover,.nav-tabs .nav-link.active:focus{border-bottom:1px solid #593196}.nav-tabs .nav-item+.nav-item{margin-left:0}.breadcrumb-item.active{color:#444}.badge.bg-light{color:#17141f}.progress{height:8px}.list-group-item{color:rgba(255,255,255,.8)}.list-group-item.active,.list-group-item:hover,.list-group-item:focus{color:#fff}.list-group-item.active{font-weight:700}.list-group-item.active:hover{background-color:#2e283e}.list-group-item.disabled:hover{color:#5c507c}/*# sourceMappingURL=150491552321247ce48a81c6e9d056db.css.map */ diff --git a/public/site_libs/bootstrap/bootstrap.min.js b/public/site_libs/bootstrap/bootstrap.min.js new file mode 100644 index 0000000..cc0a255 --- /dev/null +++ b/public/site_libs/bootstrap/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v5.1.3 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t="transitionend",e=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return e},i=t=>{const i=e(t);return i&&document.querySelector(i)?i:null},n=t=>{const i=e(t);return i?document.querySelector(i):null},s=e=>{e.dispatchEvent(new Event(t))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(t):null,a=(t,e,i)=>{Object.keys(i).forEach((n=>{const s=i[n],r=e[n],a=r&&o(r)?"element":null==(l=r)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`)}))},l=t=>!(!o(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),c=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),h=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?h(t.parentNode):null},d=()=>{},u=t=>{t.offsetHeight},f=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},p=[],m=()=>"rtl"===document.documentElement.dir,g=t=>{var e;e=()=>{const e=f();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(p.length||document.addEventListener("DOMContentLoaded",(()=>{p.forEach((t=>t()))})),p.push(e)):e()},_=t=>{"function"==typeof t&&t()},b=(e,i,n=!0)=>{if(!n)return void _(e);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(i)+5;let r=!1;const a=({target:n})=>{n===i&&(r=!0,i.removeEventListener(t,a),_(e))};i.addEventListener(t,a),setTimeout((()=>{r||s(i)}),o)},v=(t,e,i,n)=>{let s=t.indexOf(e);if(-1===s)return t[!i&&n?t.length-1:0];const o=t.length;return s+=i?1:-1,n&&(s=(s+o)%o),t[Math.max(0,Math.min(s,o-1))]},y=/[^.]*(?=\..*)\.|.*/,w=/\..*/,E=/::\d+$/,A={};let T=1;const O={mouseenter:"mouseover",mouseleave:"mouseout"},C=/^(mouseenter|mouseleave)/i,k=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function L(t,e){return e&&`${e}::${T++}`||t.uidEvent||T++}function x(t){const e=L(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function D(t,e,i=null){const n=Object.keys(t);for(let s=0,o=n.length;s<o;s++){const o=t[n[s]];if(o.originalHandler===e&&o.delegationSelector===i)return o}return null}function S(t,e,i){const n="string"==typeof e,s=n?i:e;let o=P(t);return k.has(o)||(o=t),[n,s,o]}function N(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),C.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};n?n=t(n):i=t(i)}const[o,r,a]=S(e,i,n),l=x(t),c=l[a]||(l[a]={}),h=D(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=L(r,e.replace(y,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return s.delegateTarget=r,n.oneOff&&j.off(t,s.type,e,i),i.apply(r,[s]);return null}}(t,i,n):function(t,e){return function i(n){return n.delegateTarget=t,i.oneOff&&j.off(t,n.type,e),e.apply(t,[n])}}(t,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function I(t,e,i,n,s){const o=D(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function P(t){return t=t.replace(w,""),O[t]||t}const j={on(t,e,i,n){N(t,e,i,n,!1)},one(t,e,i,n){N(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=S(e,i,n),a=r!==e,l=x(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void I(t,l,r,o,s?i:null)}c&&Object.keys(l).forEach((i=>{!function(t,e,i,n){const s=e[i]||{};Object.keys(s).forEach((o=>{if(o.includes(n)){const n=s[o];I(t,e,i,n.originalHandler,n.delegationSelector)}}))}(t,l,i,e.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((i=>{const n=i.replace(E,"");if(!a||e.includes(n)){const e=h[i];I(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=f(),s=P(e),o=e!==s,r=k.has(s);let a,l=!0,c=!0,h=!1,d=null;return o&&n&&(a=n.Event(e,i),n(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(s,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==i&&Object.keys(i).forEach((t=>{Object.defineProperty(d,t,{get:()=>i[t]})})),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},M=new Map,H={set(t,e,i){M.has(t)||M.set(t,new Map);const n=M.get(t);n.has(e)||0===n.size?n.set(e,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(t,e)=>M.has(t)&&M.get(t).get(e)||null,remove(t,e){if(!M.has(t))return;const i=M.get(t);i.delete(e),0===i.size&&M.delete(t)}};class B{constructor(t){(t=r(t))&&(this._element=t,H.set(this._element,this.constructor.DATA_KEY,this))}dispose(){H.remove(this._element,this.constructor.DATA_KEY),j.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,i=!0){b(t,e,i)}static getInstance(t){return H.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.1.3"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}}const R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,s=t.NAME;j.on(document,i,`[data-bs-dismiss="${s}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),c(this))return;const o=n(this)||this.closest(`.${s}`);t.getOrCreateInstance(o)[e]()}))};class W extends B{static get NAME(){return"alert"}close(){if(j.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),j.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(W,"close"),g(W);const $='[data-bs-toggle="button"]';class z extends B{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=z.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function q(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function F(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}j.on(document,"click.bs.button.data-api",$,(t=>{t.preventDefault();const e=t.target.closest($);z.getOrCreateInstance(e).toggle()})),g(z);const U={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${F(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${F(e)}`)},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter((t=>t.startsWith("bs"))).forEach((i=>{let n=i.replace(/^bs/,"");n=n.charAt(0).toLowerCase()+n.slice(1,n.length),e[n]=q(t.dataset[i])})),e},getDataAttribute:(t,e)=>q(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},V={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&3!==n.nodeType;)n.matches(e)&&i.push(n),n=n.parentNode;return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(", ");return this.find(e,t).filter((t=>!c(t)&&l(t)))}},K="carousel",X={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Y={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Q="next",G="prev",Z="left",J="right",tt={ArrowLeft:J,ArrowRight:Z},et="slid.bs.carousel",it="active",nt=".active.carousel-item";class st extends B{constructor(t,e){super(t),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._indicatorsElement=V.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return X}static get NAME(){return K}next(){this._slide(Q)}nextWhenVisible(){!document.hidden&&l(this._element)&&this.next()}prev(){this._slide(G)}pause(t){t||(this._isPaused=!0),V.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(s(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=V.findOne(nt,this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void j.one(this._element,et,(()=>this.to(t)));if(e===t)return this.pause(),void this.cycle();const i=t>e?Q:G;this._slide(i,this._items[t])}_getConfig(t){return t={...X,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(K,t,Y),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?J:Z)}_addEventListeners(){this._config.keyboard&&j.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(j.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),j.on(this._element,"mouseleave.bs.carousel",(t=>this.cycle(t)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>this._pointerEvent&&("pen"===t.pointerType||"touch"===t.pointerType),e=e=>{t(e)?this.touchStartX=e.clientX:this._pointerEvent||(this.touchStartX=e.touches[0].clientX)},i=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},n=e=>{t(e)&&(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((t=>this.cycle(t)),500+this._config.interval))};V.find(".carousel-item img",this._element).forEach((t=>{j.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(j.on(this._element,"pointerdown.bs.carousel",(t=>e(t))),j.on(this._element,"pointerup.bs.carousel",(t=>n(t))),this._element.classList.add("pointer-event")):(j.on(this._element,"touchstart.bs.carousel",(t=>e(t))),j.on(this._element,"touchmove.bs.carousel",(t=>i(t))),j.on(this._element,"touchend.bs.carousel",(t=>n(t))))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=tt[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(t){return this._items=t&&t.parentNode?V.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const i=t===Q;return v(this._items,e,i,this._config.wrap)}_triggerSlideEvent(t,e){const i=this._getItemIndex(t),n=this._getItemIndex(V.findOne(nt,this._element));return j.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:n,to:i})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=V.findOne(".active",this._indicatorsElement);e.classList.remove(it),e.removeAttribute("aria-current");const i=V.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e<i.length;e++)if(Number.parseInt(i[e].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(t)){i[e].classList.add(it),i[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||V.findOne(nt,this._element);if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);e?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=e):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(t,e){const i=this._directionToOrder(t),n=V.findOne(nt,this._element),s=this._getItemIndex(n),o=e||this._getItemByOrder(i,n),r=this._getItemIndex(o),a=Boolean(this._interval),l=i===Q,c=l?"carousel-item-start":"carousel-item-end",h=l?"carousel-item-next":"carousel-item-prev",d=this._orderToDirection(i);if(o&&o.classList.contains(it))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(o,d).defaultPrevented)return;if(!n||!o)return;this._isSliding=!0,a&&this.pause(),this._setActiveIndicatorElement(o),this._activeElement=o;const f=()=>{j.trigger(this._element,et,{relatedTarget:o,direction:d,from:s,to:r})};if(this._element.classList.contains("slide")){o.classList.add(h),u(o),n.classList.add(c),o.classList.add(c);const t=()=>{o.classList.remove(c,h),o.classList.add(it),n.classList.remove(it,h,c),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(t,n,!0)}else n.classList.remove(it),o.classList.add(it),this._isSliding=!1,f();a&&this.cycle()}_directionToOrder(t){return[J,Z].includes(t)?m()?t===Z?G:Q:t===Z?Q:G:t}_orderToDirection(t){return[Q,G].includes(t)?m()?t===G?Z:J:t===G?J:Z:t}static carouselInterface(t,e){const i=st.getOrCreateInstance(t,e);let{_config:n}=i;"object"==typeof e&&(n={...n,...e});const s="string"==typeof e?e:n.slide;if("number"==typeof e)i.to(e);else if("string"==typeof s){if(void 0===i[s])throw new TypeError(`No method named "${s}"`);i[s]()}else n.interval&&n.ride&&(i.pause(),i.cycle())}static jQueryInterface(t){return this.each((function(){st.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=n(this);if(!e||!e.classList.contains("carousel"))return;const i={...U.getDataAttributes(e),...U.getDataAttributes(this)},s=this.getAttribute("data-bs-slide-to");s&&(i.interval=!1),st.carouselInterface(e,i),s&&st.getInstance(e).to(s),t.preventDefault()}}j.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",st.dataApiClickHandler),j.on(window,"load.bs.carousel.data-api",(()=>{const t=V.find('[data-bs-ride="carousel"]');for(let e=0,i=t.length;e<i;e++)st.carouselInterface(t[e],st.getInstance(t[e]))})),g(st);const ot="collapse",rt={toggle:!0,parent:null},at={toggle:"boolean",parent:"(null|element)"},lt="show",ct="collapse",ht="collapsing",dt="collapsed",ut=":scope .collapse .collapse",ft='[data-bs-toggle="collapse"]';class pt extends B{constructor(t,e){super(t),this._isTransitioning=!1,this._config=this._getConfig(e),this._triggerArray=[];const n=V.find(ft);for(let t=0,e=n.length;t<e;t++){const e=n[t],s=i(e),o=V.find(s).filter((t=>t===this._element));null!==s&&o.length&&(this._selector=s,this._triggerArray.push(e))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return rt}static get NAME(){return ot}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t,e=[];if(this._config.parent){const t=V.find(ut,this._config.parent);e=V.find(".collapse.show, .collapse.collapsing",this._config.parent).filter((e=>!t.includes(e)))}const i=V.findOne(this._selector);if(e.length){const n=e.find((t=>i!==t));if(t=n?pt.getInstance(n):null,t&&t._isTransitioning)return}if(j.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e.forEach((e=>{i!==e&&pt.getOrCreateInstance(e,{toggle:!1}).hide(),t||H.set(e,"bs.collapse",null)}));const n=this._getDimension();this._element.classList.remove(ct),this._element.classList.add(ht),this._element.style[n]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const s=`scroll${n[0].toUpperCase()+n.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(ht),this._element.classList.add(ct,lt),this._element.style[n]="",j.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[n]=`${this._element[s]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(j.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,u(this._element),this._element.classList.add(ht),this._element.classList.remove(ct,lt);const e=this._triggerArray.length;for(let t=0;t<e;t++){const e=this._triggerArray[t],i=n(e);i&&!this._isShown(i)&&this._addAriaAndCollapsedClass([e],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(ht),this._element.classList.add(ct),j.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(lt)}_getConfig(t){return(t={...rt,...U.getDataAttributes(this._element),...t}).toggle=Boolean(t.toggle),t.parent=r(t.parent),a(ot,t,at),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=V.find(ut,this._config.parent);V.find(ft,this._config.parent).filter((e=>!t.includes(e))).forEach((t=>{const e=n(t);e&&this._addAriaAndCollapsedClass([t],this._isShown(e))}))}_addAriaAndCollapsedClass(t,e){t.length&&t.forEach((t=>{e?t.classList.remove(dt):t.classList.add(dt),t.setAttribute("aria-expanded",e)}))}static jQueryInterface(t){return this.each((function(){const e={};"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1);const i=pt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}j.on(document,"click.bs.collapse.data-api",ft,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=i(this);V.find(e).forEach((t=>{pt.getOrCreateInstance(t,{toggle:!1}).toggle()}))})),g(pt);var mt="top",gt="bottom",_t="right",bt="left",vt="auto",yt=[mt,gt,_t,bt],wt="start",Et="end",At="clippingParents",Tt="viewport",Ot="popper",Ct="reference",kt=yt.reduce((function(t,e){return t.concat([e+"-"+wt,e+"-"+Et])}),[]),Lt=[].concat(yt,[vt]).reduce((function(t,e){return t.concat([e,e+"-"+wt,e+"-"+Et])}),[]),xt="beforeRead",Dt="read",St="afterRead",Nt="beforeMain",It="main",Pt="afterMain",jt="beforeWrite",Mt="write",Ht="afterWrite",Bt=[xt,Dt,St,Nt,It,Pt,jt,Mt,Ht];function Rt(t){return t?(t.nodeName||"").toLowerCase():null}function Wt(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function $t(t){return t instanceof Wt(t).Element||t instanceof Element}function zt(t){return t instanceof Wt(t).HTMLElement||t instanceof HTMLElement}function qt(t){return"undefined"!=typeof ShadowRoot&&(t instanceof Wt(t).ShadowRoot||t instanceof ShadowRoot)}const Ft={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];zt(s)&&Rt(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});zt(n)&&Rt(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function Ut(t){return t.split("-")[0]}function Vt(t,e){var i=t.getBoundingClientRect();return{width:i.width/1,height:i.height/1,top:i.top/1,right:i.right/1,bottom:i.bottom/1,left:i.left/1,x:i.left/1,y:i.top/1}}function Kt(t){var e=Vt(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Xt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&qt(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Yt(t){return Wt(t).getComputedStyle(t)}function Qt(t){return["table","td","th"].indexOf(Rt(t))>=0}function Gt(t){return(($t(t)?t.ownerDocument:t.document)||window.document).documentElement}function Zt(t){return"html"===Rt(t)?t:t.assignedSlot||t.parentNode||(qt(t)?t.host:null)||Gt(t)}function Jt(t){return zt(t)&&"fixed"!==Yt(t).position?t.offsetParent:null}function te(t){for(var e=Wt(t),i=Jt(t);i&&Qt(i)&&"static"===Yt(i).position;)i=Jt(i);return i&&("html"===Rt(i)||"body"===Rt(i)&&"static"===Yt(i).position)?e:i||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&zt(t)&&"fixed"===Yt(t).position)return null;for(var i=Zt(t);zt(i)&&["html","body"].indexOf(Rt(i))<0;){var n=Yt(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function ee(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var ie=Math.max,ne=Math.min,se=Math.round;function oe(t,e,i){return ie(t,ne(e,i))}function re(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function ae(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const le={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=Ut(i.placement),l=ee(a),c=[bt,_t].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return re("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:ae(t,yt))}(s.padding,i),d=Kt(o),u="y"===l?mt:bt,f="y"===l?gt:_t,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=te(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,E=oe(v,w,y),A=l;i.modifiersData[n]=((e={})[A]=E,e.centerOffset=E-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Xt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ce(t){return t.split("-")[1]}var he={top:"auto",right:"auto",bottom:"auto",left:"auto"};function de(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=!0===h?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:se(se(e*n)/n)||0,y:se(se(i*n)/n)||0}}(r):"function"==typeof h?h(r):r,u=d.x,f=void 0===u?0:u,p=d.y,m=void 0===p?0:p,g=r.hasOwnProperty("x"),_=r.hasOwnProperty("y"),b=bt,v=mt,y=window;if(c){var w=te(i),E="clientHeight",A="clientWidth";w===Wt(i)&&"static"!==Yt(w=Gt(i)).position&&"absolute"===a&&(E="scrollHeight",A="scrollWidth"),w=w,s!==mt&&(s!==bt&&s!==_t||o!==Et)||(v=gt,m-=w[E]-n.height,m*=l?1:-1),s!==bt&&(s!==mt&&s!==gt||o!==Et)||(b=_t,f-=w[A]-n.width,f*=l?1:-1)}var T,O=Object.assign({position:a},c&&he);return l?Object.assign({},O,((T={})[v]=_?"0":"",T[b]=g?"0":"",T.transform=(y.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",T)):Object.assign({},O,((e={})[v]=_?m+"px":"",e[b]=g?f+"px":"",e.transform="",e))}const ue={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:Ut(e.placement),variation:ce(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,de(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,de(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var fe={passive:!0};const pe={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=Wt(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,fe)})),a&&l.addEventListener("resize",i.update,fe),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,fe)})),a&&l.removeEventListener("resize",i.update,fe)}},data:{}};var me={left:"right",right:"left",bottom:"top",top:"bottom"};function ge(t){return t.replace(/left|right|bottom|top/g,(function(t){return me[t]}))}var _e={start:"end",end:"start"};function be(t){return t.replace(/start|end/g,(function(t){return _e[t]}))}function ve(t){var e=Wt(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function ye(t){return Vt(Gt(t)).left+ve(t).scrollLeft}function we(t){var e=Yt(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ee(t){return["html","body","#document"].indexOf(Rt(t))>=0?t.ownerDocument.body:zt(t)&&we(t)?t:Ee(Zt(t))}function Ae(t,e){var i;void 0===e&&(e=[]);var n=Ee(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=Wt(n),r=s?[o].concat(o.visualViewport||[],we(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Ae(Zt(r)))}function Te(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Oe(t,e){return e===Tt?Te(function(t){var e=Wt(t),i=Gt(t),n=e.visualViewport,s=i.clientWidth,o=i.clientHeight,r=0,a=0;return n&&(s=n.width,o=n.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(r=n.offsetLeft,a=n.offsetTop)),{width:s,height:o,x:r+ye(t),y:a}}(t)):zt(e)?function(t){var e=Vt(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(e):Te(function(t){var e,i=Gt(t),n=ve(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ie(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ie(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ye(t),l=-n.scrollTop;return"rtl"===Yt(s||i).direction&&(a+=ie(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Gt(t)))}function Ce(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?Ut(s):null,r=s?ce(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case mt:e={x:a,y:i.y-n.height};break;case gt:e={x:a,y:i.y+i.height};break;case _t:e={x:i.x+i.width,y:l};break;case bt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?ee(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case wt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case Et:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ke(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.boundary,r=void 0===o?At:o,a=i.rootBoundary,l=void 0===a?Tt:a,c=i.elementContext,h=void 0===c?Ot:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=re("number"!=typeof p?p:ae(p,yt)),g=h===Ot?Ct:Ot,_=t.rects.popper,b=t.elements[u?g:h],v=function(t,e,i){var n="clippingParents"===e?function(t){var e=Ae(Zt(t)),i=["absolute","fixed"].indexOf(Yt(t).position)>=0&&zt(t)?te(t):t;return $t(i)?e.filter((function(t){return $t(t)&&Xt(t,i)&&"body"!==Rt(t)})):[]}(t):[].concat(e),s=[].concat(n,[i]),o=s[0],r=s.reduce((function(e,i){var n=Oe(t,i);return e.top=ie(n.top,e.top),e.right=ne(n.right,e.right),e.bottom=ne(n.bottom,e.bottom),e.left=ie(n.left,e.left),e}),Oe(t,o));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}($t(b)?b:b.contextElement||Gt(t.elements.popper),r,l),y=Vt(t.elements.reference),w=Ce({reference:y,element:_,strategy:"absolute",placement:s}),E=Te(Object.assign({},_,w)),A=h===Ot?E:y,T={top:v.top-A.top+m.top,bottom:A.bottom-v.bottom+m.bottom,left:v.left-A.left+m.left,right:A.right-v.right+m.right},O=t.modifiersData.offset;if(h===Ot&&O){var C=O[s];Object.keys(T).forEach((function(t){var e=[_t,gt].indexOf(t)>=0?1:-1,i=[mt,gt].indexOf(t)>=0?"y":"x";T[t]+=C[i]*e}))}return T}function Le(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?Lt:l,h=ce(n),d=h?a?kt:kt.filter((function(t){return ce(t)===h})):yt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ke(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[Ut(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const xe={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=Ut(g),b=l||(_!==g&&p?function(t){if(Ut(t)===vt)return[];var e=ge(t);return[be(t),e,be(e)]}(g):[ge(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(Ut(i)===vt?Le(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,E=new Map,A=!0,T=v[0],O=0;O<v.length;O++){var C=v[O],k=Ut(C),L=ce(C)===wt,x=[mt,gt].indexOf(k)>=0,D=x?"width":"height",S=ke(e,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),N=x?L?_t:bt:L?gt:mt;y[D]>w[D]&&(N=ge(N));var I=ge(N),P=[];if(o&&P.push(S[k]<=0),a&&P.push(S[N]<=0,S[I]<=0),P.every((function(t){return t}))){T=C,A=!1;break}E.set(C,P)}if(A)for(var j=function(t){var e=v.find((function(e){var i=E.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},M=p?3:1;M>0&&"break"!==j(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function De(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function Se(t){return[mt,_t,gt,bt].some((function(e){return t[e]>=0}))}const Ne={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ke(e,{elementContext:"reference"}),a=ke(e,{altBoundary:!0}),l=De(r,n),c=De(a,s,o),h=Se(l),d=Se(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},Ie={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=Lt.reduce((function(t,i){return t[i]=function(t,e,i){var n=Ut(t),s=[bt,mt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[bt,_t].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},Pe={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=Ce({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},je={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ke(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=Ut(e.placement),b=ce(e.placement),v=!b,y=ee(_),w="x"===y?"y":"x",E=e.modifiersData.popperOffsets,A=e.rects.reference,T=e.rects.popper,O="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,C={x:0,y:0};if(E){if(o||a){var k="y"===y?mt:bt,L="y"===y?gt:_t,x="y"===y?"height":"width",D=E[y],S=E[y]+g[k],N=E[y]-g[L],I=f?-T[x]/2:0,P=b===wt?A[x]:T[x],j=b===wt?-T[x]:-A[x],M=e.elements.arrow,H=f&&M?Kt(M):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},R=B[k],W=B[L],$=oe(0,A[x],H[x]),z=v?A[x]/2-I-$-R-O:P-$-R-O,q=v?-A[x]/2+I+$+W+O:j+$+W+O,F=e.elements.arrow&&te(e.elements.arrow),U=F?"y"===y?F.clientTop||0:F.clientLeft||0:0,V=e.modifiersData.offset?e.modifiersData.offset[e.placement][y]:0,K=E[y]+z-V-U,X=E[y]+q-V;if(o){var Y=oe(f?ne(S,K):S,D,f?ie(N,X):N);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?mt:bt,G="x"===y?gt:_t,Z=E[w],J=Z+g[Q],tt=Z-g[G],et=oe(f?ne(J,K):J,Z,f?ie(tt,X):tt);E[w]=et,C[w]=et-Z}}e.modifiersData[n]=C}},requiresIfExists:["offset"]};function Me(t,e,i){void 0===i&&(i=!1);var n=zt(e);zt(e)&&function(t){var e=t.getBoundingClientRect();e.width,t.offsetWidth,e.height,t.offsetHeight}(e);var s,o,r=Gt(e),a=Vt(t),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!i)&&(("body"!==Rt(e)||we(r))&&(l=(s=e)!==Wt(s)&&zt(s)?{scrollLeft:(o=s).scrollLeft,scrollTop:o.scrollTop}:ve(s)),zt(e)?((c=Vt(e)).x+=e.clientLeft,c.y+=e.clientTop):r&&(c.x=ye(r))),{x:a.left+l.scrollLeft-c.x,y:a.top+l.scrollTop-c.y,width:a.width,height:a.height}}function He(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var Be={placement:"bottom",modifiers:[],strategy:"absolute"};function Re(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return!e.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function We(t){void 0===t&&(t={});var e=t,i=e.defaultModifiers,n=void 0===i?[]:i,s=e.defaultOptions,o=void 0===s?Be:s;return function(t,e,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},Be,o),modifiersData:{},elements:{reference:t,popper:e},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){var s="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,s),a.scrollParents={reference:$t(t)?Ae(t):t.contextElement?Ae(t.contextElement):[],popper:Ae(e)};var r,c,u=function(t){var e=He(t);return Bt.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((r=[].concat(n,a.options.modifiers),c=r.reduce((function(t,e){var i=t[e.name];return t[e.name]=i?Object.assign({},i,e,{options:Object.assign({},i.options,e.options),data:Object.assign({},i.data,e.data)}):e,t}),{}),Object.keys(c).map((function(t){return c[t]}))));return a.orderedModifiers=u.filter((function(t){return t.enabled})),a.orderedModifiers.forEach((function(t){var e=t.name,i=t.options,n=void 0===i?{}:i,s=t.effect;if("function"==typeof s){var o=s({state:a,name:e,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var t=a.elements,e=t.reference,i=t.popper;if(Re(e,i)){a.rects={reference:Me(e,te(i),"fixed"===a.options.strategy),popper:Kt(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach((function(t){return a.modifiersData[t.name]=Object.assign({},t.data)}));for(var n=0;n<a.orderedModifiers.length;n++)if(!0!==a.reset){var s=a.orderedModifiers[n],o=s.fn,r=s.options,l=void 0===r?{}:r,d=s.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:h})||a)}else a.reset=!1,n=-1}}},update:(s=function(){return new Promise((function(t){h.forceUpdate(),t(a)}))},function(){return r||(r=new Promise((function(t){Promise.resolve().then((function(){r=void 0,t(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!Re(t,e))return h;function d(){l.forEach((function(t){return t()})),l=[]}return h.setOptions(i).then((function(t){!c&&i.onFirstUpdate&&i.onFirstUpdate(t)})),h}}var $e=We(),ze=We({defaultModifiers:[pe,Pe,ue,Ft]}),qe=We({defaultModifiers:[pe,Pe,ue,Ft,Ie,xe,je,le,Ne]});const Fe=Object.freeze({__proto__:null,popperGenerator:We,detectOverflow:ke,createPopperBase:$e,createPopper:qe,createPopperLite:ze,top:mt,bottom:gt,right:_t,left:bt,auto:vt,basePlacements:yt,start:wt,end:Et,clippingParents:At,viewport:Tt,popper:Ot,reference:Ct,variationPlacements:kt,placements:Lt,beforeRead:xt,read:Dt,afterRead:St,beforeMain:Nt,main:It,afterMain:Pt,beforeWrite:jt,write:Mt,afterWrite:Ht,modifierPhases:Bt,applyStyles:Ft,arrow:le,computeStyles:ue,eventListeners:pe,flip:xe,hide:Ne,offset:Ie,popperOffsets:Pe,preventOverflow:je}),Ue="dropdown",Ve="Escape",Ke="Space",Xe="ArrowUp",Ye="ArrowDown",Qe=new RegExp("ArrowUp|ArrowDown|Escape"),Ge="click.bs.dropdown.data-api",Ze="keydown.bs.dropdown.data-api",Je="show",ti='[data-bs-toggle="dropdown"]',ei=".dropdown-menu",ii=m()?"top-end":"top-start",ni=m()?"top-start":"top-end",si=m()?"bottom-end":"bottom-start",oi=m()?"bottom-start":"bottom-end",ri=m()?"left-start":"right-start",ai=m()?"right-start":"left-start",li={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},ci={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class hi extends B{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return li}static get DefaultType(){return ci}static get NAME(){return Ue}toggle(){return this._isShown()?this.hide():this.show()}show(){if(c(this._element)||this._isShown(this._menu))return;const t={relatedTarget:this._element};if(j.trigger(this._element,"show.bs.dropdown",t).defaultPrevented)return;const e=hi.getParentFromElement(this._element);this._inNavbar?U.setDataAttribute(this._menu,"popper","none"):this._createPopper(e),"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>j.on(t,"mouseover",d))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Je),this._element.classList.add(Je),j.trigger(this._element,"shown.bs.dropdown",t)}hide(){if(c(this._element)||!this._isShown(this._menu))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){j.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>j.off(t,"mouseover",d))),this._popper&&this._popper.destroy(),this._menu.classList.remove(Je),this._element.classList.remove(Je),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),j.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...U.getDataAttributes(this._element),...t},a(Ue,t,this.constructor.DefaultType),"object"==typeof t.reference&&!o(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ue.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(t){if(void 0===Fe)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:o(this._config.reference)?e=r(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((t=>"applyStyles"===t.name&&!1===t.enabled));this._popper=qe(e,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}_isShown(t=this._element){return t.classList.contains(Je)}_getMenuElement(){return V.next(this._element,ei)[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return ri;if(t.classList.contains("dropstart"))return ai;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ni:ii:e?oi:si}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem({key:t,target:e}){const i=V.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(l);i.length&&v(i,e,t===Ye,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=hi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const e=V.find(ti);for(let i=0,n=e.length;i<n;i++){const n=hi.getInstance(e[i]);if(!n||!1===n._config.autoClose)continue;if(!n._isShown())continue;const s={relatedTarget:n._element};if(t){const e=t.composedPath(),i=e.includes(n._menu);if(e.includes(n._element)||"inside"===n._config.autoClose&&!i||"outside"===n._config.autoClose&&i)continue;if(n._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;"click"===t.type&&(s.clickEvent=t)}n._completeHide(s)}}static getParentFromElement(t){return n(t)||t.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?t.key===Ke||t.key!==Ve&&(t.key!==Ye&&t.key!==Xe||t.target.closest(ei)):!Qe.test(t.key))return;const e=this.classList.contains(Je);if(!e&&t.key===Ve)return;if(t.preventDefault(),t.stopPropagation(),c(this))return;const i=this.matches(ti)?this:V.prev(this,ti)[0],n=hi.getOrCreateInstance(i);if(t.key!==Ve)return t.key===Xe||t.key===Ye?(e||n.show(),void n._selectMenuItem(t)):void(e&&t.key!==Ke||hi.clearMenus());n.hide()}}j.on(document,Ze,ti,hi.dataApiKeydownHandler),j.on(document,Ze,ei,hi.dataApiKeydownHandler),j.on(document,Ge,hi.clearMenus),j.on(document,"keyup.bs.dropdown.data-api",hi.clearMenus),j.on(document,Ge,ti,(function(t){t.preventDefault(),hi.getOrCreateInstance(this).toggle()})),g(hi);const di=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",ui=".sticky-top";class fi{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",(e=>e+t)),this._setElementAttributes(di,"paddingRight",(e=>e+t)),this._setElementAttributes(ui,"marginRight",(e=>e-t))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t)[e];t.style[e]=`${i(Number.parseFloat(s))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(di,"paddingRight"),this._resetElementAttributes(ui,"marginRight")}_saveInitialAttribute(t,e){const i=t.style[e];i&&U.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=U.getDataAttribute(t,e);void 0===i?t.style.removeProperty(e):(U.removeDataAttribute(t,e),t.style[e]=i)}))}_applyManipulationCallback(t,e){o(t)?e(t):V.find(t,this._element).forEach(e)}isOverflowing(){return this.getWidth()>0}}const pi={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},mi={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},gi="show",_i="mousedown.bs.backdrop";class bi{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&u(this._getElement()),this._getElement().classList.add(gi),this._emulateAnimation((()=>{_(t)}))):_(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove(gi),this._emulateAnimation((()=>{this.dispose(),_(t)}))):_(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...pi,..."object"==typeof t?t:{}}).rootElement=r(t.rootElement),a("backdrop",t,mi),t}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),j.on(this._getElement(),_i,(()=>{_(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(j.off(this._element,_i),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){b(t,this._getElement(),this._config.isAnimated)}}const vi={trapElement:null,autofocus:!0},yi={trapElement:"element",autofocus:"boolean"},wi=".bs.focustrap",Ei="backward";class Ai{constructor(t){this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}activate(){const{trapElement:t,autofocus:e}=this._config;this._isActive||(e&&t.focus(),j.off(document,wi),j.on(document,"focusin.bs.focustrap",(t=>this._handleFocusin(t))),j.on(document,"keydown.tab.bs.focustrap",(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,j.off(document,wi))}_handleFocusin(t){const{target:e}=t,{trapElement:i}=this._config;if(e===document||e===i||i.contains(e))return;const n=V.focusableChildren(i);0===n.length?i.focus():this._lastTabNavDirection===Ei?n[n.length-1].focus():n[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?Ei:"forward")}_getConfig(t){return t={...vi,..."object"==typeof t?t:{}},a("focustrap",t,yi),t}}const Ti="modal",Oi="Escape",Ci={backdrop:!0,keyboard:!0,focus:!0},ki={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},Li="hidden.bs.modal",xi="show.bs.modal",Di="resize.bs.modal",Si="click.dismiss.bs.modal",Ni="keydown.dismiss.bs.modal",Ii="mousedown.dismiss.bs.modal",Pi="modal-open",ji="show",Mi="modal-static";class Hi extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=V.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new fi}static get Default(){return Ci}static get NAME(){return Ti}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||j.trigger(this._element,xi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Pi),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),j.on(this._dialog,Ii,(()=>{j.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(){if(!this._isShown||this._isTransitioning)return;if(j.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const t=this._isAnimated();t&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(ji),j.off(this._element,Si),j.off(this._dialog,Ii),this._queueCallback((()=>this._hideModal()),this._element,t)}dispose(){[window,this._dialog].forEach((t=>j.off(t,".bs.modal"))),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new bi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Ai({trapElement:this._element})}_getConfig(t){return t={...Ci,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(Ti,t,ki),t}_showElement(t){const e=this._isAnimated(),i=V.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,i&&(i.scrollTop=0),e&&u(this._element),this._element.classList.add(ji),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,j.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,e)}_setEscapeEvent(){this._isShown?j.on(this._element,Ni,(t=>{this._config.keyboard&&t.key===Oi?(t.preventDefault(),this.hide()):this._config.keyboard||t.key!==Oi||this._triggerBackdropTransition()})):j.off(this._element,Ni)}_setResizeEvent(){this._isShown?j.on(window,Di,(()=>this._adjustDialog())):j.off(window,Di)}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(Pi),this._resetAdjustments(),this._scrollBar.reset(),j.trigger(this._element,Li)}))}_showBackdrop(t){j.on(this._element,Si,(t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())})),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(j.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:i}=this._element,n=e>document.documentElement.clientHeight;!n&&"hidden"===i.overflowY||t.contains(Mi)||(n||(i.overflowY="hidden"),t.add(Mi),this._queueCallback((()=>{t.remove(Mi),n||this._queueCallback((()=>{i.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;(!i&&t&&!m()||i&&!t&&m())&&(this._element.style.paddingLeft=`${e}px`),(i&&!t&&!m()||!i&&t&&m())&&(this._element.style.paddingRight=`${e}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=Hi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}j.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=n(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),j.one(e,xi,(t=>{t.defaultPrevented||j.one(e,Li,(()=>{l(this)&&this.focus()}))}));const i=V.findOne(".modal.show");i&&Hi.getInstance(i).hide(),Hi.getOrCreateInstance(e).toggle(this)})),R(Hi),g(Hi);const Bi="offcanvas",Ri={backdrop:!0,keyboard:!0,scroll:!1},Wi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},$i="show",zi=".offcanvas.show",qi="hidden.bs.offcanvas";class Fi extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return Bi}static get Default(){return Ri}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||j.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new fi).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add($i),this._queueCallback((()=>{this._config.scroll||this._focustrap.activate(),j.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(j.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove($i),this._backdrop.hide(),this._queueCallback((()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new fi).reset(),j.trigger(this._element,qi)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(t){return t={...Ri,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(Bi,t,Wi),t}_initializeBackDrop(){return new bi({className:"offcanvas-backdrop",isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new Ai({trapElement:this._element})}_addEventListeners(){j.on(this._element,"keydown.dismiss.bs.offcanvas",(t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()}))}static jQueryInterface(t){return this.each((function(){const e=Fi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}j.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=n(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),c(this))return;j.one(e,qi,(()=>{l(this)&&this.focus()}));const i=V.findOne(zi);i&&i!==e&&Fi.getInstance(i).hide(),Fi.getOrCreateInstance(e).toggle(this)})),j.on(window,"load.bs.offcanvas.data-api",(()=>V.find(zi).forEach((t=>Fi.getOrCreateInstance(t).show())))),R(Fi),g(Fi);const Ui=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Vi=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,Ki=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Xi=(t,e)=>{const i=t.nodeName.toLowerCase();if(e.includes(i))return!Ui.has(i)||Boolean(Vi.test(t.nodeValue)||Ki.test(t.nodeValue));const n=e.filter((t=>t instanceof RegExp));for(let t=0,e=n.length;t<e;t++)if(n[t].test(i))return!0;return!1};function Yi(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(let t=0,i=s.length;t<i;t++){const i=s[t],n=i.nodeName.toLowerCase();if(!Object.keys(e).includes(n)){i.remove();continue}const o=[].concat(...i.attributes),r=[].concat(e["*"]||[],e[n]||[]);o.forEach((t=>{Xi(t,r)||i.removeAttribute(t.nodeName)}))}return n.body.innerHTML}const Qi="tooltip",Gi=new Set(["sanitize","allowList","sanitizeFn"]),Zi={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Ji={AUTO:"auto",TOP:"top",RIGHT:m()?"left":"right",BOTTOM:"bottom",LEFT:m()?"right":"left"},tn={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},en={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},nn="fade",sn="show",on="show",rn="out",an=".tooltip-inner",ln=".modal",cn="hide.bs.modal",hn="hover",dn="focus";class un extends B{constructor(t,e){if(void 0===Fe)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return tn}static get NAME(){return Qi}static get Event(){return en}static get DefaultType(){return Zi}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains(sn))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),j.off(this._element.closest(ln),cn,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=j.trigger(this._element,this.constructor.Event.SHOW),e=h(this._element),i=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!i)return;"tooltip"===this.constructor.NAME&&this.tip&&this.getTitle()!==this.tip.querySelector(an).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);const n=this.getTipElement(),s=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME);n.setAttribute("id",s),this._element.setAttribute("aria-describedby",s),this._config.animation&&n.classList.add(nn);const o="function"==typeof this._config.placement?this._config.placement.call(this,n,this._element):this._config.placement,r=this._getAttachment(o);this._addAttachmentClass(r);const{container:a}=this._config;H.set(n,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(a.append(n),j.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=qe(this._element,n,this._getPopperConfig(r)),n.classList.add(sn);const l=this._resolvePossibleFunction(this._config.customClass);l&&n.classList.add(...l.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{j.on(t,"mouseover",d)}));const c=this.tip.classList.contains(nn);this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,j.trigger(this._element,this.constructor.Event.SHOWN),t===rn&&this._leave(null,this)}),this.tip,c)}hide(){if(!this._popper)return;const t=this.getTipElement();if(j.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove(sn),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>j.off(t,"mouseover",d))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains(nn);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==on&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),j.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())}),this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");t.innerHTML=this._config.template;const e=t.children[0];return this.setContent(e),e.classList.remove(nn,sn),this.tip=e,this.tip}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),an)}_sanitizeAndSetContent(t,e,i){const n=V.findOne(i,t);e||!n?this.setElementContent(n,e):n.remove()}setElementContent(t,e){if(null!==t)return o(e)?(e=r(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.append(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Yi(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){const t=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(t)}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){return e||this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return"function"==typeof t?t.call(this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`)}_getAttachment(t){return Ji[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)j.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e=t===hn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=t===hn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;j.on(this._element,e,this._config.selector,(t=>this._enter(t))),j.on(this._element,i,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},j.on(this._element.closest(ln),cn,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?dn:hn]=!0),e.getTipElement().classList.contains(sn)||e._hoverState===on?e._hoverState=on:(clearTimeout(e._timeout),e._hoverState=on,e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{e._hoverState===on&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?dn:hn]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=rn,e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{e._hoverState===rn&&e.hide()}),e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=U.getDataAttributes(this._element);return Object.keys(e).forEach((t=>{Gi.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),a(Qi,t,this.constructor.DefaultType),t.sanitize&&(t.template=Yi(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),i=t.getAttribute("class").match(e);null!==i&&i.length>0&&i.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_getBasicClassPrefix(){return"bs-tooltip"}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(t){return this.each((function(){const e=un.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(un);const fn={...un.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'},pn={...un.DefaultType,content:"(string|element|function)"},mn={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class gn extends un{static get Default(){return fn}static get NAME(){return"popover"}static get Event(){return mn}static get DefaultType(){return pn}isWithContent(){return this.getTitle()||this._getContent()}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),".popover-header"),this._sanitizeAndSetContent(t,this._getContent(),".popover-body")}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return"bs-popover"}static jQueryInterface(t){return this.each((function(){const e=gn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(gn);const _n="scrollspy",bn={offset:10,method:"auto",target:""},vn={offset:"number",method:"string",target:"(string|element)"},yn="active",wn=".nav-link, .list-group-item, .dropdown-item",En="position";class An extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,j.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return bn}static get NAME(){return _n}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":En,e="auto"===this._config.method?t:this._config.method,n=e===En?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),V.find(wn,this._config.target).map((t=>{const s=i(t),o=s?V.findOne(s):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[U[e](o).top+n,s]}return null})).filter((t=>t)).sort(((t,e)=>t[0]-e[0])).forEach((t=>{this._offsets.push(t[0]),this._targets.push(t[1])}))}dispose(){j.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){return(t={...bn,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target=r(t.target)||document.documentElement,a(_n,t,vn),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),i=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=i){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t<this._offsets[e+1])&&this._activate(this._targets[e])}}_activate(t){this._activeTarget=t,this._clear();const e=wn.split(",").map((e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),i=V.findOne(e.join(","),this._config.target);i.classList.add(yn),i.classList.contains("dropdown-item")?V.findOne(".dropdown-toggle",i.closest(".dropdown")).classList.add(yn):V.parents(i,".nav, .list-group").forEach((t=>{V.prev(t,".nav-link, .list-group-item").forEach((t=>t.classList.add(yn))),V.prev(t,".nav-item").forEach((t=>{V.children(t,".nav-link").forEach((t=>t.classList.add(yn)))}))})),j.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){V.find(wn,this._config.target).filter((t=>t.classList.contains(yn))).forEach((t=>t.classList.remove(yn)))}static jQueryInterface(t){return this.each((function(){const e=An.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}j.on(window,"load.bs.scrollspy.data-api",(()=>{V.find('[data-bs-spy="scroll"]').forEach((t=>new An(t)))})),g(An);const Tn="active",On="fade",Cn="show",kn=".active",Ln=":scope > li > .active";class xn extends B{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(Tn))return;let t;const e=n(this._element),i=this._element.closest(".nav, .list-group");if(i){const e="UL"===i.nodeName||"OL"===i.nodeName?Ln:kn;t=V.find(e,i),t=t[t.length-1]}const s=t?j.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(j.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,i);const o=()=>{j.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),j.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,i){const n=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?V.children(e,kn):V.find(Ln,e))[0],s=i&&n&&n.classList.contains(On),o=()=>this._transitionComplete(t,n,i);n&&s?(n.classList.remove(Cn),this._queueCallback(o,t,!0)):o()}_transitionComplete(t,e,i){if(e){e.classList.remove(Tn);const t=V.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove(Tn),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add(Tn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),u(t),t.classList.contains(On)&&t.classList.add(Cn);let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&V.find(".dropdown-toggle",e).forEach((t=>t.classList.add(Tn))),t.setAttribute("aria-expanded",!0)}i&&i()}static jQueryInterface(t){return this.each((function(){const e=xn.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}j.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),c(this)||xn.getOrCreateInstance(this).show()})),g(xn);const Dn="toast",Sn="hide",Nn="show",In="showing",Pn={animation:"boolean",autohide:"boolean",delay:"number"},jn={animation:!0,autohide:!0,delay:5e3};class Mn extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Pn}static get Default(){return jn}static get NAME(){return Dn}show(){j.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(Sn),u(this._element),this._element.classList.add(Nn),this._element.classList.add(In),this._queueCallback((()=>{this._element.classList.remove(In),j.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(Nn)&&(j.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(In),this._queueCallback((()=>{this._element.classList.add(Sn),this._element.classList.remove(In),this._element.classList.remove(Nn),j.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(Nn)&&this._element.classList.remove(Nn),super.dispose()}_getConfig(t){return t={...jn,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},a(Dn,t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){j.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),j.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),j.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),j.on(this._element,"focusout.bs.toast",(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=Mn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(Mn),g(Mn),{Alert:W,Button:z,Carousel:st,Collapse:pt,Dropdown:hi,Modal:Hi,Offcanvas:Fi,Popover:gn,ScrollSpy:An,Tab:xn,Toast:Mn,Tooltip:un}})); +//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/public/site_libs/clipboard/clipboard.min.js b/public/site_libs/clipboard/clipboard.min.js new file mode 100644 index 0000000..41c6a0f --- /dev/null +++ b/public/site_libs/clipboard/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.10 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body},i="";return"string"==typeof t?(e=t,n="rtl"===document.documentElement.getAttribute("dir"),(o=document.createElement("textarea")).style.fontSize="12pt",o.style.border="0",o.style.padding="0",o.style.margin="0",o.style.position="absolute",o.style[n?"right":"left"]="-9999px",n=window.pageYOffset||document.documentElement.scrollTop,o.style.top="".concat(n,"px"),o.setAttribute("readonly",""),o.value=e,o=o,r.container.appendChild(o),i=c()(o),a("copy"),o.remove()):(i=c()(t),a("copy")),i};function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var s=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.action,n=void 0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==e){if(!e||"object"!==r(e)||1!==e.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return t?l(t,{container:o}):e?"cut"===n?f(e):l(e,{container:o}):void 0};function p(t){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function y(t,e){return(y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function h(n){var o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=m(n);return t=o?(t=m(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeof t?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}function m(t){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function v(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))return e.getAttribute(t)}var o=function(){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());var t,e,n,o=h(r);function r(t,e){var n;return function(t){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}return t=r,n=[{key:"copy",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body};return l(t,e)}},{key:"cut",value:function(t){return f(t)}},{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],t="string"==typeof t?[t]:t,e=!!document.queryCommandSupported;return t.forEach(function(t){e=e&&!!document.queryCommandSupported(t)}),e}}],(e=[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===p(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=u()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget,n=this.action(e)||"copy",t=s({action:n,container:this.container,target:this.target(e),text:this.text(e)});this.emit(t?"success":"error",{action:n,text:t,trigger:e,clearSelection:function(){e&&e.focus(),document.activeElement.blur(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return v("action",t)}},{key:"defaultTarget",value:function(t){t=v("target",t);if(t)return document.querySelector(t)}},{key:"defaultText",value:function(t){return v("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}])&&d(t.prototype,e),n&&d(t,n),r}()},828:function(t){var e;"undefined"==typeof Element||Element.prototype.matches||((e=Element.prototype).matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector),t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},438:function(t,e,n){var u=n(828);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=u(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},879:function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,n){var f=n(879),l=n(438);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!f.string(e))throw new TypeError("Second argument must be a String");if(!f.fn(n))throw new TypeError("Third argument must be a Function");if(f.node(t))return c=e,a=n,(u=t).addEventListener(c,a),{destroy:function(){u.removeEventListener(c,a)}};if(f.nodeList(t))return o=t,r=e,i=n,Array.prototype.forEach.call(o,function(t){t.addEventListener(r,i)}),{destroy:function(){Array.prototype.forEach.call(o,function(t){t.removeEventListener(r,i)})}};if(f.string(t))return t=t,e=e,n=n,l(document.body,t,e,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,u,c,a}},817:function(t){t.exports=function(t){var e,n="SELECT"===t.nodeName?(t.focus(),t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((e=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),e||t.removeAttribute("readonly"),t.value):(t.hasAttribute("contenteditable")&&t.focus(),n=window.getSelection(),(e=document.createRange()).selectNodeContents(t),n.removeAllRanges(),n.addRange(e),n.toString());return n}},279:function(t){function e(){}e.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,u=o.length;i<u;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=e,t.exports.TinyEmitter=e}},r={},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o(686).default;function o(t){if(r[t])return r[t].exports;var e=r[t]={exports:{}};return n[t](e,e.exports,o),e.exports}var n,r}); \ No newline at end of file diff --git a/public/site_libs/countdown-0.4.0/countdown.css b/public/site_libs/countdown-0.4.0/countdown.css new file mode 100644 index 0000000..bf38701 --- /dev/null +++ b/public/site_libs/countdown-0.4.0/countdown.css @@ -0,0 +1,144 @@ +.countdown { + background: inherit; + position: absolute; + cursor: pointer; + font-size: 3rem; + line-height: 1; + border-color: #ddd; + border-width: 3px; + border-style: solid; + border-radius: 15px; + box-shadow: 0px 4px 10px 0px rgba(50, 50, 50, 0.4); + -webkit-box-shadow: 0px 4px 10px 0px rgba(50, 50, 50, 0.4); + margin: 0.6em; + padding: 10px 15px; + text-align: center; + z-index: 10; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.countdown { + display: flex; + align-items: center; + justify-content: center; +} +.countdown .countdown-time { + background: none; + font-size: 100%; + padding: 0; +} +.countdown-digits { + color: inherit; +} +.countdown.running { + border-color: #2A9B59FF; + background-color: #43AC6A; +} +.countdown.running .countdown-digits { + color: #002F14FF; +} +.countdown.finished { + border-color: #DE3000FF; + background-color: #F04124; +} +.countdown.finished .countdown-digits { + color: #4A0900FF; +} +.countdown.running.warning { + border-color: #CEAC04FF; + background-color: #E6C229; +} +.countdown.running.warning .countdown-digits { + color: #3A2F02FF; +} + +.countdown.running.blink-colon .countdown-digits.colon { + opacity: 0.1; +} + +/* ------ Controls ------ */ +.countdown:not(.running) .countdown-controls { + display: none; +} + +.countdown-controls { + position: absolute; + top: -0.5rem; + right: -0.5rem; + left: -0.5rem; + display: flex; + justify-content: space-between; + margin: 0; + padding: 0; +} + +.countdown-controls > button { + font-size: 1.5rem; + width: 1rem; + height: 1rem; + display: inline-block; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + font-family: monospace; + padding: 10px; + margin: 0; + background: inherit; + border: 2px solid; + border-radius: 100%; + transition: 50ms transform ease-in-out, 150ms opacity ease-in; + --countdown-transition-distance: 10px; +} + +.countdown .countdown-controls > button:last-child { + transform: translate(calc(-1 * var(--countdown-transition-distance)), var(--countdown-transition-distance)); + opacity: 0; + color: #002F14FF; + background-color: #43AC6A; + border-color: #2A9B59FF; +} + +.countdown .countdown-controls > button:first-child { + transform: translate(var(--countdown-transition-distance), var(--countdown-transition-distance)); + opacity: 0; + color: #4A0900FF; + background-color: #F04124; + border-color: #DE3000FF; +} + +.countdown.running:hover .countdown-controls > button, +.countdown.running:focus-within .countdown-controls > button{ + transform: translate(0, 0); + opacity: 1; +} + +.countdown.running:hover .countdown-controls > button:hover, +.countdown.running:focus-within .countdown-controls > button:hover{ + transform: translate(0, calc(var(--countdown-transition-distance) / -2)); + box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.4); + -webkit-box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.4); +} + +.countdown.running:hover .countdown-controls > button:active, +.countdown.running:focus-within .countdown-controls > button:active{ + transform: translate(0, calc(var(--coutndown-transition-distance) / -5)); +} + +/* ----- Fullscreen ----- */ +.countdown.countdown-fullscreen { + z-index: 0; +} + +.countdown-fullscreen.running .countdown-controls { + top: 1rem; + left: 0; + right: 0; + justify-content: center; +} + +.countdown-fullscreen.running .countdown-controls > button + button { + margin-left: 1rem; +} diff --git a/public/site_libs/countdown-0.4.0/countdown.js b/public/site_libs/countdown-0.4.0/countdown.js new file mode 100644 index 0000000..a058ad8 --- /dev/null +++ b/public/site_libs/countdown-0.4.0/countdown.js @@ -0,0 +1,478 @@ +/* globals Shiny,Audio */ +class CountdownTimer { + constructor (el, opts) { + if (typeof el === 'string' || el instanceof String) { + el = document.querySelector(el) + } + + if (el.counter) { + return el.counter + } + + const minutes = parseInt(el.querySelector('.minutes').innerText || '0') + const seconds = parseInt(el.querySelector('.seconds').innerText || '0') + const duration = minutes * 60 + seconds + + function attrIsTrue (x) { + if (x === true) return true + return !!(x === 'true' || x === '' || x === '1') + } + + this.element = el + this.duration = duration + this.end = null + this.is_running = false + this.warn_when = parseInt(el.dataset.warnWhen) || -1 + this.update_every = parseInt(el.dataset.updateEvery) || 1 + this.play_sound = attrIsTrue(el.dataset.playSound) + this.blink_colon = attrIsTrue(el.dataset.blinkColon) + this.startImmediately = attrIsTrue(el.dataset.startImmediately) + this.timeout = null + this.display = { minutes, seconds } + + if (opts.src_location) { + this.src_location = opts.src_location + } + + this.addEventListeners() + } + + addEventListeners () { + const self = this + + if (this.startImmediately) { + if (window.remark && window.slideshow) { + // Remark (xaringan) support + const isOnVisibleSlide = () => { + return document.querySelector('.remark-visible').contains(self.element) + } + if (isOnVisibleSlide()) { + self.start() + } else { + let started_once = 0 + window.slideshow.on('afterShowSlide', function () { + if (started_once > 0) return + if (isOnVisibleSlide()) { + self.start() + started_once = 1 + } + }) + } + } else if (window.Reveal) { + // Revealjs (quarto) support + const isOnVisibleSlide = () => { + const currentSlide = document.querySelector('.reveal .slide.present') + return currentSlide ? currentSlide.contains(self.element) : false + } + if (isOnVisibleSlide()) { + self.start() + } else { + const revealStartTimer = () => { + if (isOnVisibleSlide()) { + self.start() + window.Reveal.off('slidechanged', revealStartTimer) + } + } + window.Reveal.on('slidechanged', revealStartTimer) + } + } else if (window.IntersectionObserver) { + // All other situtations use IntersectionObserver + const onVisible = (element, callback) => { + new window.IntersectionObserver((entries, observer) => { + entries.forEach(entry => { + if (entry.intersectionRatio > 0) { + callback(element) + observer.disconnect() + } + }) + }).observe(element) + } + onVisible(this.element, el => el.countdown.start()) + } else { + // or just start the timer as soon as it's initialized + this.start() + } + } + + function haltEvent (ev) { + ev.preventDefault() + ev.stopPropagation() + } + function isSpaceOrEnter (ev) { + return ev.code === 'Space' || ev.code === 'Enter' + } + function isArrowUpOrDown (ev) { + return ev.code === 'ArrowUp' || ev.code === 'ArrowDown' + } + + ;['click', 'touchend'].forEach(function (eventType) { + self.element.addEventListener(eventType, function (ev) { + haltEvent(ev) + self.is_running ? self.stop() : self.start() + }) + }) + this.element.addEventListener('keydown', function (ev) { + if (ev.code === "Escape") { + self.reset() + haltEvent(ev) + } + if (!isSpaceOrEnter(ev) && !isArrowUpOrDown(ev)) return + haltEvent(ev) + if (isSpaceOrEnter(ev)) { + self.is_running ? self.stop() : self.start() + return + } + + if (!self.is_running) return + + if (ev.code === 'ArrowUp') { + self.bumpUp() + } else if (ev.code === 'ArrowDown') { + self.bumpDown() + } + }) + this.element.addEventListener('dblclick', function (ev) { + haltEvent(ev) + if (self.is_running) self.reset() + }) + this.element.addEventListener('touchmove', haltEvent) + + const btnBumpDown = this.element.querySelector('.countdown-bump-down') + ;['click', 'touchend'].forEach(function (eventType) { + btnBumpDown.addEventListener(eventType, function (ev) { + haltEvent(ev) + if (self.is_running) self.bumpDown() + }) + }) + btnBumpDown.addEventListener('keydown', function (ev) { + if (!isSpaceOrEnter(ev) || !self.is_running) return + haltEvent(ev) + self.bumpDown() + }) + + const btnBumpUp = this.element.querySelector('.countdown-bump-up') + ;['click', 'touchend'].forEach(function (eventType) { + btnBumpUp.addEventListener(eventType, function (ev) { + haltEvent(ev) + if (self.is_running) self.bumpUp() + }) + }) + btnBumpUp.addEventListener('keydown', function (ev) { + if (!isSpaceOrEnter(ev) || !self.is_running) return + haltEvent(ev) + self.bumpUp() + }) + this.element.querySelector('.countdown-controls').addEventListener('dblclick', function (ev) { + haltEvent(ev) + }) + } + + remainingTime () { + const remaining = this.is_running + ? (this.end - Date.now()) / 1000 + : this.remaining || this.duration + + let minutes = Math.floor(remaining / 60) + let seconds = Math.ceil(remaining - minutes * 60) + + if (seconds > 59) { + minutes = minutes + 1 + seconds = seconds - 60 + } + + return { remaining, minutes, seconds } + } + + start () { + if (this.is_running) return + + this.is_running = true + + if (this.remaining) { + // Having a static remaining time indicates timer was paused + this.end = Date.now() + this.remaining * 1000 + this.remaining = null + } else { + this.end = Date.now() + this.duration * 1000 + } + + this.reportStateToShiny('start') + + this.element.classList.remove('finished') + this.element.classList.add('running') + this.update(true) + this.tick() + } + + tick (run_again) { + if (typeof run_again === 'undefined') { + run_again = true + } + + if (!this.is_running) return + + const { seconds: secondsWas } = this.display + this.update() + + if (run_again) { + const delay = (this.end - Date.now() > 10000) ? 1000 : 250 + this.blinkColon(secondsWas) + this.timeout = setTimeout(this.tick.bind(this), delay) + } + } + + blinkColon (secondsWas) { + // don't blink unless option is set + if (!this.blink_colon) return + // warn_when always updates the seconds + if (this.warn_when > 0 && Date.now() + this.warn_when > this.end) { + this.element.classList.remove('blink-colon') + return + } + const { seconds: secondsIs } = this.display + if (secondsIs > 10 || secondsWas !== secondsIs) { + this.element.classList.toggle('blink-colon') + } + } + + update (force) { + if (typeof force === 'undefined') { + force = false + } + + const { remaining, minutes, seconds } = this.remainingTime() + + const setRemainingTime = (selector, time) => { + const timeContainer = this.element.querySelector(selector) + if (!timeContainer) return + time = Math.max(time, 0) + timeContainer.innerText = String(time).padStart(2, 0) + } + + if (this.is_running && remaining < 0.25) { + this.stop() + setRemainingTime('.minutes', 0) + setRemainingTime('.seconds', 0) + this.playSound() + return + } + + const should_update = force || + Math.round(remaining) < this.warn_when || + Math.round(remaining) % this.update_every === 0 + + if (should_update) { + this.element.classList.toggle('warning', remaining <= this.warn_when) + this.display = { minutes, seconds } + setRemainingTime('.minutes', minutes) + setRemainingTime('.seconds', seconds) + } + } + + stop () { + const { remaining } = this.remainingTime() + if (remaining > 1) { + this.remaining = remaining + } + this.element.classList.remove('running') + this.element.classList.remove('warning') + this.element.classList.remove('blink-colon') + this.element.classList.add('finished') + this.is_running = false + this.end = null + this.reportStateToShiny('stop') + this.timeout = clearTimeout(this.timeout) + } + + reset () { + this.stop() + this.remaining = null + this.update(true) + this.reportStateToShiny('reset') + this.element.classList.remove('finished') + this.element.classList.remove('warning') + } + + setValues (opts) { + if (typeof opts.warn_when !== 'undefined') { + this.warn_when = opts.warn_when + } + if (typeof opts.update_every !== 'undefined') { + this.update_every = opts.update_every + } + if (typeof opts.blink_colon !== 'undefined') { + this.blink_colon = opts.blink_colon + if (!opts.blink_colon) { + this.element.classList.remove('blink-colon') + } + } + if (typeof opts.play_sound !== 'undefined') { + this.play_sound = opts.play_sound + } + if (typeof opts.duration !== 'undefined') { + this.duration = opts.duration + if (this.is_running) { + this.reset() + this.start() + } + } + this.reportStateToShiny('update') + this.update(true) + } + + bumpTimer (val, round) { + round = typeof round === 'boolean' ? round : true + const { remaining } = this.remainingTime() + let newRemaining = remaining + val + if (newRemaining <= 0) { + this.setRemaining(0) + this.stop() + return + } + if (round && newRemaining > 10) { + newRemaining = Math.round(newRemaining / 5) * 5 + } + this.setRemaining(newRemaining) + this.reportStateToShiny(val > 0 ? 'bumpUp' : 'bumpDown') + this.update(true) + } + + bumpUp (val) { + if (!this.is_running) { + console.error('timer is not running') + return + } + this.bumpTimer( + val || this.bumpIncrementValue(), + typeof val === 'undefined' + ) + } + + bumpDown (val) { + if (!this.is_running) { + console.error('timer is not running') + return + } + this.bumpTimer( + val || -1 * this.bumpIncrementValue(), + typeof val === 'undefined' + ) + } + + setRemaining (val) { + if (!this.is_running) { + console.error('timer is not running') + return + } + this.end = Date.now() + val * 1000 + this.update(true) + } + + playSound () { + let url = this.play_sound + if (!url) return + if (typeof url === 'boolean') { + const src = this.src_location + ? this.src_location.replace('/countdown.js', '') + : 'libs/countdown' + url = src + '/smb_stage_clear.mp3' + } + const sound = new Audio(url) + sound.play() + } + + bumpIncrementValue (val) { + val = val || this.remainingTime().remaining + if (val <= 30) { + return 5 + } else if (val <= 300) { + return 15 + } else if (val <= 3000) { + return 30 + } else { + return 60 + } + } + + reportStateToShiny (action) { + if (!window.Shiny) return + + const inputId = this.element.id + const data = { + event: { + action, + time: new Date().toISOString() + }, + timer: { + is_running: this.is_running, + end: this.end ? new Date(this.end).toISOString() : null, + remaining: this.remainingTime() + } + } + + function shinySetInputValue () { + if (!window.Shiny.setInputValue) { + setTimeout(shinySetInputValue, 100) + return + } + window.Shiny.setInputValue(inputId, data) + } + + shinySetInputValue() + } +} + +(function () { + const CURRENT_SCRIPT = document.currentScript.getAttribute('src') + + document.addEventListener('DOMContentLoaded', function () { + const els = document.querySelectorAll('.countdown') + if (!els || !els.length) { + return + } + els.forEach(function (el) { + el.countdown = new CountdownTimer(el, { src_location: CURRENT_SCRIPT }) + }) + + if (window.Shiny) { + Shiny.addCustomMessageHandler('countdown:update', function (x) { + if (!x.id) { + console.error('No `id` provided, cannot update countdown') + return + } + const el = document.getElementById(x.id) + el.countdown.setValues(x) + }) + + Shiny.addCustomMessageHandler('countdown:start', function (id) { + const el = document.getElementById(id) + if (!el) return + el.countdown.start() + }) + + Shiny.addCustomMessageHandler('countdown:stop', function (id) { + const el = document.getElementById(id) + if (!el) return + el.countdown.stop() + }) + + Shiny.addCustomMessageHandler('countdown:reset', function (id) { + const el = document.getElementById(id) + if (!el) return + el.countdown.reset() + }) + + Shiny.addCustomMessageHandler('countdown:bumpUp', function (id) { + const el = document.getElementById(id) + if (!el) return + el.countdown.bumpUp() + }) + + Shiny.addCustomMessageHandler('countdown:bumpDown', function (id) { + const el = document.getElementById(id) + if (!el) return + el.countdown.bumpDown() + }) + } + }) +})() diff --git a/public/site_libs/countdown-0.4.0/smb_stage_clear.mp3 b/public/site_libs/countdown-0.4.0/smb_stage_clear.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..da2ddc2cd41e5c37b828798d9a67b3e55cd6657c GIT binary patch literal 38758 zcmeZtF=k-^0p*b3U{?kP27U$xW}n2eG*b&bBLh7{0|SsG6#xHRZ~)3=V2H@fONXdu zc*MXk-I9TggNv76P*_YtN=89RMO{lr-_X?D%EsQ&#lzPxFeEG@DmFeTB|S4cudukJ ztg^bUp}DoaySIPhlxZ_(&0DZ|>55fr)^FOfZO86?2ag;(ar)fFE7$Klc>L`3`%m9~ z{QUL%@4x>b%Y72dl1(l2j7>ot7*=7r3}H^UJjC+G0>Xxp|36PS!oY69WFYInz`(%4 zR{tLaJ~$YHsQ>@}*lS2=a9Cd{SfG$@Ho-$VDLr-i-P^fg>Oxv<iD}#36}(*_z^u^Y zP*vKv@xq=1PCPS2Ycvx(7tQ9J5irF|ah6rV&qs5Ll%<=P#GBlBHLmc-PGY_u@^B-w zxsi*HSE9rDBX#=HW~{=7Wx5ZuR<k5{%Q)sY>*UIs&D(a+>8xP0NyRxP2`-Zqx5yaA z>DxYX3!U6udS=FDAyKZ=5$lvD86<pqD!w5@qeXkquL}`f0mmNv>@*2_y>AA`jHzuh z92`=fO%3K@UNZv^F348Xxvmhscljwp*PTCY7Ekml?PRhq`SiW;MxoIE&l`^14(AbT zm!Ex!LD%r66`$s!%V*y&?b#Kybl;)$yWTqdd#{_8Z~NNX`>*oRE2AHE@qBKINAK;v zRpp}P9+<qdu<ET}VA+<H?{ZA<`C61-`Teq<|Ie#B(T(f<lg<Umg|9T+KDWnU`PAF> ziYHIh#pg}t(Y<`T$4y-`bLE0r8@kT_EnD}(-+Aw}d?~FfKd(A8Ci}kL8gw)B%JPuy z!io=4#V>Lu1^W4gv#d}G+~ky&?Hr>XG-E}P`boi4l_!G=ci7FAm?f!m<-|UPLj}i$ zB?1j?W==T9+R1WdqKvAL$5c~8)}_qJEBKT`*<HGfCcCN##g*EIL~RzCx9R2jK-G1V zJX1cW$LGw;>+9;-cq?P_#)bvydHCIyA6_~ftZY<HD6vcEDZsz>OO_llXRkx^%@ zCY7f1ZkaYI%I&YGz5e2V^=$K$4W=(TeSUxE&57=twzRv<<k3lOy5zA^`rCt;MPKhf z_4@w(NJ&P3Y`5wE&kaZJ={CRH_WyhaLlk#F3X^iIs84^hkLc37mppxZ87`YSs#--Q z+&+5T>#JIdn1{){T`}4H_0N<Y_aCT#!2gf;{}uON4F3=Oe=z$m`~T_x^#5`0zfdn+ z=^ww=aav07mf9~~Ip*41OID@vwQ<SqdNlQE;m)O#B2@1N7uP@K;=Rgj8B{zge;MO^ zUh`{Tg&wl91?-F}5%9=vi}Gdto1l>G`*P0#!-qHj+4t8!WxRF&$@f1e_g}03>%RZ_ z{}=z?{;&W2|E&GX?Z5i}pPCncs_N?h&jCkX%Wf`P_veVqoe9&Mi?^2l(G{0iurXy3 z^9@!X@37h(+7l)*Tox{GwEKUcD>5Z+VZg#oYZ+ho%zhWmaVRzZq6E+XgS)({zFy?> z$=UyrqyEPV_5Tz9PyK(a{*?58#s6~uSJ$upf9C(B|5N{;{=ablC;5-h{%bi{88xNE ze(kfAXaTw4rOf4dn`I6^SrK@7yF>hvfSNg*JCp<*Jr8hi^bz~2uKMyt0!wUf?8aXP z3H;8S)}gWjp^wT6H=h*j<qteIAye&!s2t;oHVfxqZtJbdm*;YC{w>oG+wnPa4_9DA z-ib9$=RU0|-V?U$eZ~hR=Xx9F)h5&TUr^ey#J@$xzP!8~<bqdHHDbHvYWxL`asK~O zu2KI&<3H0AN&P!Y92&Di?kJi}|Ie}J-&Ffq9i8!y_MhJW?9ToF3$Ol<XD|Bl->fPm z@Bg&voFAr`6-X+#hWRi3Uwh2RpxM#;#^HGaZ0bg_Msrg)XSEhBV~CPHzqIAdGLtCj zN%J<gY|ef4&{!nvvg|ids`{#LBDP!Z^o2Xu9@*WIoVRuH>dzdX&n3RPFhBp7MCn?W z4tHOJ%`F@9pL8AhULv>YaL4q6;XWq6Hzgg-@(a^Z{3*W3w>zRH{?-rew_$R<%i8w0 zC;ZMY*D`Hsvg->gyHc)}?_|q+>ZX_F;xGKxQ(hTFM!r(X4_MHzrL`cPZJzj6u3ojD zw`Md)x#=EV`6|nran+oE;imP~^^5fG&NeQ!UK-#hd27jPC(U1#jhD>lFJoCTqx;=P zF3tTilJ38{MS_2CKQAwr|LgqYpZ{0<|Npt*$Zsv<Z|CKzxF=pdXy*SaV1D}##f$Y# zC%^pD{ktio)Og>v<qKnPmV_o~yWhQj@K0)a=Hq6^B>~4;&)r?;aY^xS-TS}O_IfHB zJakj=-{qw?KPaJK(TUwFF9z+`U$@vHjNSd$iGPM4&;Iq*{dxbKCjaZ2g>V17{Qu<H z({JbgTRF%dsuB43f93-Jr+?l4vqrCf{o-<cvb|J8Z1c_VNnNKS|7~UDl$)_CGwtoU za6y)3KVqK!zg6=8v%`_!(x;y7t2^v!AoOtm29vZ{7mr5&a>WH-Qk^d<mKGflEwsBB z_3?sKdB8N;e+Drb`8WURX(|87_+$U<pV<6!cU(W$NBqD4!Z!Zb7X3%}7nJ|`XI(E; z@~FE$lh>v;G5?g9e014uP<neNZOyf-<glwn`6rp4*xHSy3nFeENf&CH;8I<=uY1$| z!&@#{efe<5zD=fj-y6Oe#y`$)ejaz{@J7CfQ%ku6lb-K05Z=einD_8n=ch;Q9IEO+ zT5I+`;^jEe(Ww``GgZD$`_sRN7J*;9K4soLqWtIn|6?nb|DXM$!{NK^yYEk)fL!oS zMq6oD&5^D*BFZ7<b`3@K`i{4@f9e+Mz5QsbQ>DamgGZ%m#Sd>BV$pJpyV7+!W!s&% z2V=Jy8G0W-Fs(N5OMC0fh_2|luX!#Xy}9V!kFBB?Ud*d`ANF%*iEpCm{uVQp#5)!) z&$yfNl-4s!t_{=nRoUU7b!)rYoDXI}9vm+~Dddy7_qS_xhqxoNY%g5MvVIU{CcwJx z`qNI&&SfgjR(kALV>rJ(33KT<Tt8jZbV>e6rRyKmExYwKHt6kJ@**cuIRC`c1>1Y7 zruuw!>S3#T>NNeMAnU>#OT<<su{W13H(R9}v~|tTn+FdFr*o&CHx^vB`_qep6|B<l zlfPB3{<?X&%eH3+A5@>8{M%n8$>Zqxa|>q#B(7Qd*WF#sRndNm)vt+Cj@ecF#O^n6 zvizSub5HtTmizxdCmi{!@rCbLTorf3ul_&DXa5U)@ZbMy$N$g&g^K@Q+;QLk&x`+O z|5@6GCaX6YZ!^{63bt;D*IF7eRcEuZ$3mv8S49)cbhhyAZ!7&iuktLbK%2Od@#^o_ z+||#mIJxfXoc;2RQw6zF{}rTcY7sFPd?grn^4f%X4EEChm9{_DE4cnI_td}H^-X;C zU+WL@3;(Zcs+IqnTtEAV#r@BqIDH{I``vb#!`?dEx$If~ze<t+S-;Tl{)4GS;uDLf zsx35&@?LrBrY6h!?;TT$lmA?wS@bGZ+j#!28^PJy9WFZrC%S4qU9)wT+}51J<AsrJ z#r~fat*bfNKJou*ouFs_dH*R<>Ho(b$sgMPLy7-y^pEfVryu_i|247xapmEAH{DNw zLg$(M6|v1Sr(I2caeVplKS;q-;o|mN`&tfqO;=^w!M=irL8dt{aPgm=(;PGx=6p=# zZ!GBa<<=2=ksHIQ@F2uMre(vGr4j<iSt8D)SYMp=K|-l2w%2yu4vYM%>=pA|ezmPh znb~Wm_bIdCb^5-CQ>L%1W?AL@WM{4RM(f>8OV%IZ{_lT`gZZ!UYuR6_C!$;hE%r|r z*srtd?`lx!e3g3jZ@1K8SA+kLmbe&xFW-A?_vzg`YFeMyr$3m#`2WIyy6`m;^`Q&X zi?3!co_0&DLwntdgpWt3+^?G&s59e#a_<&N|8A@FrnJKJ6}sMwwWlp{RJ%XV!T-)R zsr@R8+Y2|}eOxx{NM^u=8*9VX3S4wPVy8Q`d5VfUe}rsfx)dmM{%NjWwkxKJb;AY+ zy<2l##5Nu`REfWH@t(>1Kl(@Rvl=nlO7^fi97<!mmtZWhG+o=-v@LGwpR%5FUAGT4 zWUV{aD)M2!M&hL}ZZnQ<IiB%;?S-p8qE@n-F05-dF>!Qii*{CjXnFeE|Aj{`M3rq2 za^v}9_xS43JL1t+YCT7P8gMxUT=ifMWWPEw`|aX0+9@B-&AR;e<Co=P%%I%(Osj_N zRNNufoJCSw?!1uamzLTj9?juiq{;03uleNswV!Xx|75oMvHfk!Jw5B!C;!Xd{(tJi z=lX^9$GVg2|JCS!T-(1nr~Qq-1JhPZG54D~DPOf@x%p4KDCFx*V3k~X<z&px8SYd5 z8#&gU5_tFN>iK{UEy){7lg;(!<!5&}Oo~`8`)_l@oynfHzg_PoIc5K!GRw>S+7COC ze{IM1-QVZl`u{@yk4qo#|C@3D@Bizo^M5C;2ZiWUx!qm6WlnobNL+iEFY@i;?~p*p zX;EgJ7X#mzN;&VG8ur2I(@ytP<&X_~*W6yZYx(!i4ykP(67vl%GT&J=LCopGEH~eO zAsHJ3EdHNsP}e<U&n(w?|J(VDnfuoF8b13f{<Ql4@mW^!|NejayZ=wUl>M)n|3cbA z_rL8=Ec>-DI)3WKpNF<KNT+&foqRXj?MM>ig*AS0Ug4WnK<VwL%<ih)GDo<6+|lj+ zuAVLE#jd!^`vtds=-i?$UfhS7l@A&^-CuOPx$Sd}k@>2Zy@zeCX-v@mJ~hSv^Dee- z>*EvUeCCHfSY0VtFm<W%d*QbhOTGz<Ia}>zFZ^`x!11XHRkIB@^V)or*~G|j`&Q+9 zo8(v3ef%b$?tGSvKej{y<bvNa(VGs-9QOMlFOX_)xQw@IW@W%*)#!geqh_3c@zwsf zXjT9Azu!+Lukz)dB%1a%b^8sq%tHYmRw;ei7+$v}Yi6@*^}pBZo4T%bM|DM)&sJh? zVNJV~xgx9D(uH4P=k&DhW2%9Y3U^*6T$?N|FyWc#EwSF_h_$P>t@hP@WHt$us{U#5 zu<eRDeD0?E8J}C{*4()$#v^9hd9yW2Y)M3dw&Bw#iKxu5B%=w>X1-ax;oZ4D$yYiS ziOueMhh(>$I?JJI=;gWO%6ezU%WBEDj(UcQ@>$yLvyW6&%bw}ByC><ivFS>+(Bst+ zn~r~<WIyw3$o`Xk(branro2|TT>aDkk;^>E*FW^VpV~SoXmb5ro?~%*X45J8Wv=|& z7CiX8`LWX3<-Uwd&V6E2+U`)(5hh^#;>`V@_d#v3e+Eay&ea{h=yCk&ywfIG8(1xh z47LZ}5xcOEajRnG`Wa_mFW|ks=IdMK^!HX<?UtxAzskM*-%s$~`p@38PuVrye>VL} z+rs{Di-ceQmp}9WzwxKue{28$_5S~V`=6}>5**2G{MH$#Ld~oMm-S@JoGCeIXyXy{ zqt&Ha;?t4#=lWi!1Aq7~KGm^EdeQ8Tc=f3Psaa=EZ+B5mU0C{NTS~B}Nz65$=7#IL z#Sd+(`IKF{KwBY?wU~3V`tL%{!-1RT|J>DZan9;L0Y<@{JDvY`fzrW0<s6|+QK!%S zkPqxx;Qco`DE_}la{d3$^WR1PS^xiM(EtAz?*BA3kl-v@&c9hn#MGS6*dTi8H(hpx z2UqoW+;sP!<!UT8JIvUlW#4<xiApuM?qp;Xs#jaZXy)AP=H4bh`^r=?&u;dM5%r8& zO>d3(HKLov*3V)-#MgE0{*RsDe5$M>v|j2=zX410|NR`Lf3)@_7ydso+u=;&|3AV1 zA644_Klac3-}?W5egFSu{r~VNgPO$Y1MAnUU7vX%;6i!tlG@v*M>u^8m5-=w>Z#qE zdtF($^e)qt;%`&^7N5Jl<2BE%n2o~S*OzbS-zKB5rrz%R@1n`l6?K(gtrhIP+g+LB z!8~(@Tx%Pf`%Ik%#+f-EL|>V|?P6c^@jb|G&*hg0?Up&>ZBYLHakqr=z0Dghx}WS5 z$XsUB@`Ptyx~PEh!ko|h`=`yY&^^VJ{<UhGh4r5=xlWy;|JLn4%DYc#da%8W{@4GV zxBvf{{)=yw;=+uZ?C0ZS4g}9!zEDL+!Gniu(E<nks!452&jn9m;yB{gInkVv$7*Ts z0*l^??x&))TCT@>6?xVk_ZI!jaOP4#;O-sQ)}FDe1LdFZ+CD<t{+vGFVl&g>Lh9bh zYqU!zo3lM$F<s}_k!kfjEj&*v3Z|bF*AMh4+VLtdwc}r~^5J92c2#R@xvaUCW%!4L zsPXoxW`%@^%(c}$CLpBiuk$Kv#RS{<cT?up_s-rS9<$)nv&h*ou?respIUR;#JgBU zvW7SR`H#a33qBO>ms50?InQucvTfRliGO!Zk#(5pxZK^le#4R3&&!ggta>upsc5+g z@5ZTpS5^hR@p`yPwL=Y*e?A!>ZrfFJ`C`UguC#y7R}5asU#?wMqITfE=#0eD%}>{q z-YG5Ke|yy#U9X&?t9O_sresT4OgKDwfs=GllvdD0Uy%u-A8NFB&t?zEom0B<->%T> z0UMMr1SQpbX1%EVbool*|0{pfyZfjAf2`^0Db#yL{?8N@Q?a1`|DV-AJ^wfN|Npbk zat)dkR5=*`RJwS@+IGBX`)9IfGrLPe2FLl@J&&Z4jy$;dcW=w5`wtcz@3>d6AU?|c z>XQZA&8uRkOrAc;<D`PT&?B!>?Ila5$b(|xnR*T1Zn*=G6F!=hS4<Q8`~Uqp0sELm zcKhq4UVNVa`|Gl}tTX$c{GW1r<^Izw+pRL+{{LD0t8+idB^TzFI<v6|_6u#Xm7JRN zbn=&gs6S;-n{Pzk&0w9RJK>qyn*aBYUpX(I!8kKYhke~`u^T&s7B7@w4gb0Kvfu1% zzHPk=SRKFrTkYs(RZ)}w|Mpyo)UQ6QV!!^>+F!Z<x?Wf6r~ALi=kwR@KgT;ab^iZ9 z`~N0?yMJywDA#|KSK-?(bNE@w|NqtwznIPVI8W%Scy^n;)avWWalM`9b;aW_W3vB| zI;okp?2~?8es$Qp*MnQrvhCNhO*T5G?xn}|-e~i^;A*w!L6e6O_l4*MCv?Avc{l8v z%wd$dAR{f$cWTGN3o~Zz@@ZHjbnjJ(*o(3&4f6w>W}P|lP<}SZ1ux}v_|`?8y7gff zca^LQ!}Q=yv;S62k>TXN;9dVwbH|Ev;s4o6B)<Rp_EGs4)7}45|NsBIRI8zJ`sowP z5*;q@h%jZW56`yAa0_x+Iz2dQhfPzc>C2ETlZQJ$>v1Wo{%qO&YU{mYZ#JAW-TLUu z(U(z0fs@429a87bn#lh1-o$gDn0u;rg=<&ck$#JZQM+GDuDgEEd)jQSz0S<FArI2> zd%O~7NvW+33A`F}@XX|wZ{0o3+S+Dm`1JX1+;02K|6=#XNTEvC>%ae()k>RQEjhBP zuFQ7r-tAwNh2Ney?*A|Gzed9qq4w4-<sqCsp3Y0JEY)IoR=!H~YD<@(M61^2$4qCw zzx02`&v^ZbmdO4a0eo(XuY;ye@UU(PI5?I4c0+>;CnMk77i!ZbSnk{wT*u5C9n$dl zEja&}+6ZmjbNY18su?F@qa;pF6ZK?HZ+ho*)9dSmYg3)Ct=_*;WAm#6?#wDe{odtY z>pxxF?p;={znwwh$EKAtYtqU-mq%!A+LhM7HEW91)Kia7giqM)w&Uo&+`rLGOaJ&j zW0dA@&C$>KQ=9&$K0i%(N1XB5?AKO5?k;riesU*J#%kp`?)pE^&HpdZllENjKi7A^ z{WaBj_b>lFzI30S&i;$fEq9v#DNQkUP-p97VR-1Y$mm{bkxn6p#3AifOYD*-t%$mm zyY;<btN!$-Tfp_{13eR=d2yGo_H?Zg`qWsw^x4|bwYipI8jfr?uIT1^s=JCsX)G<u z(S5kKg!#Y`PcKiEUS|*6((V5vwwf<caI3%izu`y0`~N?xWaGtK*Z=?j$MJQu>i@s> zI`RMRKWzLjF8%*+@IM_b1_PD}$_=+|H>_B*tE{$2=G4Tlrr4#CZVYdZs7?1)Y8Hu^ z8hCWsu^kPsZ8Hy8<VVlgo^;gu!_*^kTNYoKo4tRU)jipFR=W#ddmdnTq38WJHt@*z zH8+!mGPb16yrg?4DmrRwwfs*|jqys6M`%&al~9uh&hxW+4zn?-dIw#-EC0pW+Vubb z71j?+&z#rH5`R3S|9}4f4u>lnojR@U{}sOyV%dLg`!^Zq%=r;_WPktvGwpxC>AepG z8I%t7G0ixn6n$uqL6dRPZg!PJNoP~e`yFp}ZF=@`*CC#ZZZhYmws1rrS}h~3H|^GO zosUcV&5YPtE^sp}=i!Zwy?Nf!D26>)?hGi!f6;s+)_dcg!i_7F1q%WVbD}wR)*Lw7 zR>RaPz3Kk{^9>uA(^e+VW#jh#_5U@mNaptce~bz~%G#b@xXk>2{r`^hZjUD@r2T*S zmoZLGZvEW)=gx64`SMQb>;IpV`oAW9>P2Q&hHj1>0@<q%N`IZ}xivuWGUMWv>W2SK zIgdBbP!PT{!z!Iuguktn&DpBaf%lYn@}AQlcgs{9Wng(A+xW$NYyGvQ6B~343>+5C z_z-HuD<aJSa`jh@5TU+`dm1NV)uz39lf~DV`TxI-#GLO*85*D8{@VY}Qi(nP|BtS& zN$0cWnGW6m|Nmpgr4{zg*Z(j6+VeB~-~Y=>D*bmtU;qCq`u~ct&P66BhAa*X?v3-7 zfBRbI;lONs$3#F!jA6@{DGaM8Pe@@tU3T}dKkIeYe~~&r9Tq7G{F0n?JS_Lq8^?*Q z9Evl#+TN^{|Mj>2|NrmYHT{|meA9yh?dRn&OgCcl`{$*7rgXl<qtl>t@JIEJ*mS9T z%OZBJ`~UxGL1gRRG=?h*K5j4SCf6^K*kGad|9{IlIpw8mljg`;#s1&^|8V(YBhCdo z_Wvusvf-lV*LofM&y9@SFDtI|UA}hz&zY+KK6d91F|aVq;<DiW`aF#9VP0psoXf^$ zo=tB=LoVJs-0q+xaOAA^p5jN^Rb^YIG?nKZm6LRseAd-H*)A*M)WHUUEq*MXE}#(o zto=u<UE*2V4g0UZ{{R1fT&L8a%{}5{?#Y*{mKR9;N-UbGloPAXCBqjm-|7Fq5JoT6 zxf6{zWb_!0#?Sp9d0-0P)Bpbu8EJXz=EQRa{{OfCe>=C?0<jy`{QuAVd)$z;wO+^k z3u{O8#8)C8mu{~Abh7xbz<0?_Oe{=2Toxkh9=$(o<yBTtsN@!8^5&G{XES~^Vcj?E zDr;WMYIHtrTUAq`a+&Q+K|$!<yr(s5y`_F;GqZzS{YHC>Si8i%lq;+b6INXfe-+tu zj?J9eg7eF1pM~?8E}6@)#O!Ozn8j)oRsa9&p>xYG$xJBaw}1OTAg?|B|38VME#DTd zGxq-f{{Khc+uEFq|9|_{vQhtceMI@`-p4<e|Np7`Z(;GO1q`eVdpRrw9&g()^PxYF zO65Mk#_m+1trL>+PDZ$hoR}xIM&sP&hi|GK95X8Rsj!Mo4(#?$4Vqah{bWbW2Ezk~ zU2e?ETKzpeDQ6SM3XrRxsqqL+mbj;Of}f42bHYN01jm(Zh8|Z=T*+oID9+mdFN4)d zdzpNLl2*q5)&CApQE>nNzr|sx?TVUq!~OsNKXTnG@aL%O|6lPAMeXgYpGW^ncFEa4 zaWV7%pGWGinQKj8U}K18vEYBbVC|3aDOO1hkCm@<bmo;f@~PQIw6J<x2nhOUE?U5H zpwolxX{7_p!pBU_8e7&a`)`xJI6!M7r_#cwCfiGHyuSlV(eK0a%mNR!fL#4eBSffQ z;-1EdoC^`v&)2P3ARV#jb)B-vH`UWQ$F=73{fqs-Vm^zh-%E*>8!|H|{rBB}k^7qD z^#A``;%qdwE;DY}>?{92|9^AUvo2%KElsQcPx;r8^l{PGnoa-LJaA~zn?8@<IQ0KB z=iL8u_*=Oiv2ZZ-fbwMSg669A4)d2qm!*rcGqx>xbcgFmD`U5^7f-~&IsFpnLtS0B zuk@LFZq2Uqm2tD=$|DOioUOT9vU_|(L9YI*ry|x2O4s!zG9R8a+6o#QpK?iWm~^(I zd(kAdrw5`{m;e9Ubdq<M(jIP~oBQMcCazbn|Nr4|KbP&AJfT(p|NrlN?YH4o@BaVJ zuSGQD|NXxp*S>yY^ZEZ@r|!R|<A0ffjiHLmg1d|@%l7GNtvkh`2M&s<GOSoQeJ?wU zdSQlm-1M6pmsx$Y%h458<BjUtFZQNx<62+I^6nz%po)##7XM$D{r~^R(^9va1%#?h zwg+XKgIxVqtwwCJ#Jyz^VmB<WymQH$cXVfV8Dm^*|NsC0CYW*S+BMWA^c;KpYyWEw zCfygM|Nkf%8U(&`ZZ`Y>_y0dxzE;Cte(Cxz`yOkU-`YQ?{<%}4o_Y6Tx&MD&2LDs( zX<%fyV|bu4vihQ>f6K2wwi}D3C6e?v$<5enS>bRXuX|x+o6Ny%lbzl+JeFduj((BS z+l301SMQUGEm~^e79@FcWmviS_h}O8cP!^gzW%A@>D;iR2;}NNntQ~$CGM%+STgUP z&k<u!uK#QKpYr(WZ15B_oPKxt+JB#3Xtr*V>|=T2q`c~{{;#B5UfW&&{|N?M<`dh> z9T9bLfBxJ5uep~l52$85X#U^&b7Pz3_S3w74V!e=KY9`U<^KN#Hru~)sD1s!#KO?Z zVQIy<fBA#yg6o`vW((i2N`I!Hk-2os0d<K_HyW2(^@=R{oZRa&ZI0*5=*R}ik~-re z)1cVdizHuc>wmsAFlBB|x5_S%tN-cBh_yxBOS#c5pg-;ICxb|xPCf(mX|a0jtwJvw zOI_dpIpKc7%3@2~hwQ)gFIIT4SpWaG(N{t%&u#Mj|Nnn7e&t@Y{r~DuAK(A354hw1 zQt1ExEBk*seqm&mpK#<AyEFf>4_lUn8S<#H>l-#QGDz4MEKv!%YB_Beg97JqA2zpm z_nRSsO{Qwoue9B}qns<Th5wwdZjb(nr5UHU#9Vu<-EwR3##3KKY#HA#nU<C{ZMJl1 z9H=h&q*@}hSms%R&6@vn&OLVC-|dn1J#%GJ?DAuE@oDS{svTC<#-%R}<mODbT)c<H z`+nVzDeS57Mvnu&1#q*Rv;Amzp<W;-`B6ZY(?#a^gC4(yX1%%j$6dyI*5iuWGki~9 zt!oc_^~td|o^6i(6#<S0_6N*XbN@5UexVuiYfkSk``@fe6&kHupMT$L@zmktbfuUx z+;67Hty%XK)E<3psw1}Q&a0yvblRTSX6{(cwsC5*<lL*KW-FI^UHxpJwX`lfz2{0+ zY_{&xsi(Jvo%o!(=i2uDui3WU%MM>3qN4eAzGWJ3Vb*KmPRZkMxz>xlp1(e8Z*_!W zqTTk^4EOWrbZ59TD*OmjtAC=r;<VMWj)`2)p8HBnVs;SgoicU%&pnp|_dom8|8(om z<H1MEocLea_u60Cw|w^h>*@=$Hpnq^GFF@Bu>D+c_=EPI!%mx(`lDC4sK;l#VJ&0O zR?=*or^0Exw6w{}Ik87QGZ^Hbn_4P-hvE)j&H2CNl;oj1m0xrtrs>^PUBTJ8dQt9w zHi7n(j~wQ!?(Mqy^_6<#oGlZB`g$1xqkp|*P0auQ*DXbmC*$q^SI4XC&wpHSdydYz z|9?JT{%;WV|JvXG{}&o(x$rPKFjQS-_<y@2a?SbUYHMtld=YY1m|g$ij3=W8?=Cad z>z|ISyUSK!kl1=6{=admh~pm3?`w@2vwizlZar{g&&=z7O?UH}4!_{a_FK@PsQ>?8 z!-DfSeyE+_{%VD@i2eJ&uE}$>(pKgFf42U=GbrtRR#f5JR(B|B$wcWnxw-$JO!l7t z<fiQZHUF0X|N1=TdKu#ZUNP1;(*)$hHa$Br{|IxVkXz*<L5AhE9$U?nx22f=iuTiA z6WX+JSy72|_#{oviVVLk(SKf_IG`wH*B)^`_XmsW&8zi08Q5~BIvxuD|1U+zWUrG5 zUw8O#9*GH6`}3dsGR+X1B*pvx_3`(AcM5Et;~!oBGcNxhs1Nv8k%ezn%@wIHaY6F0 z?N|T*tHu86AcKRXdF9)Whxn%axw52J(oO80x#0!H2O7Uwj2-)gVWUsh3?GJ6)M zY0zTH9SLhM%vi4Y+UniXo6JTJx5P1|E<XQL)KPo&q5rDU^(*Wf4;nwx@TmWP#j8EC zZe~Mm^uLXD{r~?J?9iJE3Y~WfSNJx|9g+I+|5xaQZ~ud0>f|gZ>M#EPI{2*psa5X( z{{R2GT#JE=QM%8eSusEMMbDLc0<Be+9*rHW6T>SK4tbw>qQItIKlgdz>B!@(aZ_>v zCMXNL&D|D#aaDweL(0ZUZz|uNRN5jtDN2Axvi$!F1%-CwM=A#P|35Q)4fx_7z^ij} z|7GEf+gbnrTRieo*s1jY|Kpbb|Br)0=ci%_*M7O%Pf9K{S|yAA|Nn9O>N~!1>(>>u z{{R1YpKFKv1qKBc9ScSV76v1Sws!$ry<B7s4y3$2uyCQ4srAOTbBPHrvJ(zGP+{5~ zG%LqmCo|Ri$g#AG3O+mLdcVH7mbp~2g_q&wbFs^>10IzsP5K&gLUIL9)*{~jL8lp6 z9)LpUh0+nBNl_=4v+O+~9m3hgu2cX2n>N$Mlf~yw>#!&?=XC7i{wu5?v*5x^H|_r~ zB&Ru-iS1+aYQJ;Q{@>SWj69r2|9@ev&~7VXUdOFz|NoDe_PL)O>=Qn9@3(psAyxkW zudBfJLn&N){8xs4WH4Z{FkqOs;OSh^c|zYmsvVhQ@g%QHE8*k$b*{@2_>TKD^*A5+ z#9gz#?d$DJpnUp9-$$tE$5V9)gW^nwni-Q#d`-)CX)KBL*u~+`ILkug_>?4{U0Ol= zqo%PjytMwm=7G}%iz8Ee3Ji+>|6gL|z>!$`ttdibMT_12H3y`6WH@)p|4&|e!6ib- z!gbpEzfnC-M^1|We<hpfyf&cHUFiS+4+njn&opkjm-}_cG|uV&{}s5YB{WDZo_K-5 zfWgm#!9vxt`}Nvu4Usz>1X~x&S5{02Qrdogu`Sy!*~nc{o$U5TuPyWchu&=LUZb|u zQbd22!td=X-X?M+NPaUD2GvX-wO#nCejIxd>gyI7GXJ`90Mi`x{a<G=Wi`5RDr|B2 zCSvvf|7+=nNps3ddYntx^5WcoZ&=9|XgVkS{~S$@1K|vTM~?iifBmxUmhJZc0i_3D zudrTJ^Z)<DVtxM=n^-xEE?1pzF9_NH|FgmE-exHd$<PlB1}q*H3<gF#%n~lfZ6*D? z)_6|P47s&<iF?AV!dnlUot6u;F*mIFl(x<4xK81$L^W=Mb+eLEPUf9|b?2h7V=Bni zZ?&HARsFcDD%zk}sBYqLrv2JA|JRNQ5;b%GzhDw-c)@n8+eNCCUDW&kUnV)mFzp5N z8hQ@!yZG|IGGw`Bq_y<_E8i3gu@x*n(HH9fuX&)B^yvSuCV}Seqf3l=|Njq&F%EdG z!|-sS_Wm_LQkt{>|93E%^uX8U(AAF&3M_UO3^E4-9qv5~+3?AMX;&iu^O6nGSM_qv z*xE8}QJc1=kCoYAmG;-7<2q}0A8Rmi(N$FGSKA6oJFm2_2vz-fsxFeb<kqD)Ubn`- zQ%r=TSX#LzT;0W%#i-eJ|Mxup4$X!eE4DZZJ=id1|NlEz#4<c~P3xR6+d*o<TeJKN z#!O7k^D-J|{r{V`@NJh1i-M#|=>OFoM_3wV*Z;pFEG6x=E{2UQ|NpOpJN3<9X*RYp z<joA+n||nn%KrbK6}E3>KO@7u>H&iS^Kk|?W)_72hU`+c+s)yHXC$;NC*)LUY=1Oa zH{&4d=T1(>1q=tg_v&tKul%(<lg(I_mr3=B!@i8B`YW4RPBF{^#ll}b9-*=y$6kb7 z5Zk3^^oZ?=Z0{@gaGys9nkKFP_o6Xy!Ruv5m(JzzZ@(J<|3%*dYoqOf7tS-dPZ3*x z<Ajcb`Le*P|G&=B<a(k1;2S^ZxB6ed67C6ZyZ_hGUM*;iePh}7|9>6ss?91lVBBjG zSpWH9h2sDJfi8v%T?B4ySbBlMfRUx~04q<_3(0%&llgh%6ucacrj@J;5Nlc5&6n`# z;nB8*2cE2-lD2g7qD~JNC;6l=8@xcV@K$$^P}z;Asv=W(E~hW4>JkoF#j%nh&h^OM zw$DZ(I&b!xGG%es|LSq%+7QIKF>6ETC%*OnUkBV}Q4$Wi^2RtJ+TdH|zopZdgjxd4 z^Z%dR$iW=S(4ySS{{MYsf>f8D{{Iy!CU!5wqz)ch|NqxP2ATVtn@*fx^ZZJUKI7y6 z|1D%XFKEbk9$EE;fx%{nCi9#~S)-adW~S!JYzGe*RCT=+N~lmsia1bO;gYyQNQ9A- z!C;2~1N#~In4Z-}J}xpMPnNFxvTc57uE&C>W)`4W_^ES-uUz7|hA-Cx;Yl%D)hGUL zdnEW%<;+!`U0q%A8l77mws20ZXye#*rI^c0P=CqtDZXdU`dkh=y~JR{=D8+sSDU{t zJG$$u-sK+u=J_$-7VEbiI<@%7xAoB*=Xy=gi#;u~@qNL%JG>mVP415`ieFvI+U_f{ z^Y7Yy<vRH{=GXJ6Ff2IcpQq@1=EJ@1eG%Vhdc_AyI3zdrXs~nJ8@)DvlRi)S+UuDA zKPPj_de1D?i}=3h{Qu7jj=b~j5sPd1UM9fvDt4BHsao{2kj0A*JN+o<OK+>XxBc() z`dtT7y4>Rg<DNz?b4qKRrft9H_@1{aIwg@z@qhpS{kQY~|Nnp1B`xr`Y~bV-_Q=2b zg@M81%#_15><p$YItL{<W(YNUHvHh+^3CZ{SL4ct6Y_!#OqtW>YF}dzV0GhHVCj8% z><;&j1~yOm^0%hj%K7J9knu20yje4`e8<P*N`>FcU(RiRXYs^y+6*=I4CUGT`QnyN zJ^g8lxAy)CPhZt6;(v1D#bTk;8}8)Y+xdT`OG04QBbL?rOCrQ_C8ou;J^Wqz_DY+w z`0CqNZFluAs&$@m`S$Gkr>-04uk<XNckJc+E7J_8eV&oH=kxpj4?R8GUoAPx?dkRG z(wjW<sj6xr)6D(zLk+IFMT=kcmR`PbSKTEy9hYmopn!Yqt|Hdf7<YidulTKd<GI80 z=T$!cKd<s(yS=TKoV4t9^Z5zve35leRePU*)l^)WSAE{@pX9#{e?Gr|{$tmstxxs0 zFTE&w;@KTtzi;m*txVZ;Ju{QtSp1F5F00V6{oSXYusU+E?JRkCK*HEQZ<+08DfcP2 zwYZFyG%Yz7lh}|kYx&KmlB)&Q<|@Sh=JA`bVEZf9A|Hc<M$cW{&+ct>X#X3nIZy4( z;*X)3$pNQ~PM+wxaaE{iWk{pd%UF%aH%>%l^EAZYTIc_3|BP>|x$lKm>%3W(#y=%K zFMQc*{S3a)X*qr6uXam+JF3)>d(8OPm7pjMt<G1AJ6(5YOLi>f+4^zXHlO{u*Us(w z_CH~kdEOCGQ})=6>zBMKv*w=UfAuzRN6?*?cW3%0{(BRZCHMTm-M^0aKb_w1r~nGM zPo8^(metR?!0><Je$Vgq-%nj%THzbBXm@qYuM1}J4AIM)3yv3@jYvCd8=32wd*Z45 zAM^jt$^Sg-f9m~Tu;;K@NYCTwQ&T31hE3VA?6AO2znDF#Uv<*!7&KVkEXtdA-1yp* z7gk9sQ%j8=Rg3y~Of<@vVXV&eh?%vCUFDUQBTLw32QM|D1+!O`tP%?dvdNmux~Gj@ zCO2B?*a}&m5+|pMM|sWKMc03Iv+sY#^?&~VHK+e=_W#vif6n}`+5e^gXVgENulV}s zs)S|6Ce8ofmZq2+_q|roY4PTG;{EdV^V@502EVHPn|P1=h5Pg~XV3iRI;kxAD8o-_ zhh5L%P=>U|Xpxm)m%Y%O;KI^rwR-oxhsss)Q(2qr<B~MYf1SAh-S)rT{m=1#Hve0E z|Et{pIr%@Y|DW;ynY{q0Ird%ganrKu8x0J<_T7(7XfX&@dizGTcGj2q0Umvv-<J8A zMw{k5uF6$gd-=x7`+OhrIsR^VKd(@e{fuHFOA8yni;v^F10{#&HUI5B*e8;z(xtJe zOXWl)TlN?Bh`x;f@=RX$U&;RG-u@@}|D^vX|6i<s%3XhF`=7%9PwhX&|E&M%{(owH z+tmQepi-0G?|Gh5Pb}U9IkRq^VhUOu_fKYZ*mjvCvv#!YVB1x@rK5QwpQ9G1NMUz^ z09!$ka8p5xX7i>g%iHFs-<LGdioSM(|B!(9g|7yaxPN>Q?&A2dEWROTL8Z_HxvU?4 z{JWgPSHBJa_}-wZQHX8LfzL5Lav%TRe+LSKXR?<st(H1+?#^_}BZqDMzA(mH-rwQ) zYyN>n>Gn?C?MF5V?s1UZf28ZL|AdUi=M_2ITRHAL7g30LZvEAw<o_#``&SOUU3spw zqu=t}7sWe?k607RZK|tRhn;x4bIsPp*V|^s<Qbh?no*eC&u!W`XLdK&w%(4=lx0kd zmo?2ibN}h|v=ePJYL^5?yfT;`+Od7RV~mjTN3jY1%AgA1uWky{Zn?v!?j+mTo?rHT zisSC-Qgb(&TTkvjmNIe8wUuwo^iNhy6P?O@bHYRIrdyHwJiq?*crZ)o*7j4^<tP8S zxBruce$tkkZr8S)(cAxD|M0Zwiyb~>hph_O<&{-@{imsX*c$V%$A7$%^O&Yr;mW!w z$!)`_ds<Hu%q)D${6jO3OYYV_>-Y59Q8pLrODA}1wB2Nvu1<P)q<8xxU#+waPnJsR zC-w*L-L~yiZgK4ijuloCQlM)1gRXMYzPQsDb(YMqIvK_BN{mq<J1@-rXU_NM+&{IV zcAY-`$3y%<J=;V3#Sd-&hcWyzzYy{N<gpz452v)>{AUaMTcg(d_sW0u7xnKSe-IFD z^-A&YwAog(Ve)#_kB;i%dbTP{SaeV9uX;XTq4sq5-)W}B1^hGSpKx$}BKXy}{vYR; zFX{&qp0|BSoAv(v|Aj{Ud!L!v`%K%n@P*-@bb-qJr^oCSKW)DK@%zbXr^NrPY~Jtw zOW645pX%jbC;X~g_CM_Ti~FnZzy0YHv#w;5BdFW-PyX<){c?w04LRJRgY1KCW4vNB zHG`TKh6J5GdGDZ9+x$BP$Mu&wPkFmb`%P2B3x3a+N*eC@uf;NS91a~-31SK`*Uc=v z$Jfi}EB<HAl7jC~gH<9m%>OyefB$Js{zvP?@Kg4$j_lX}q8I)1PW}4Nf^~1dD*azw zcKO#Pf#3fEK`!_rpM7Y%%;9r$_RoEMGfFY~-POM`m+pG@tlhmeC%kAvkKVVq-N$>S zYcJ`sm79EEVmflOIyxyYCa*N?+mcQ8QYm}$g1SYfS^oDt-;h```|MP2&8J`f-nEh1 zu=7&L{n8$}?+2P38tuhDSs&T*?RoY7M-PwhJ|+FpPq9xj(_=z2$OW(EmN4y?IqdhP z$Ag{!BUiB3r=yNWroJy6lRtlqv)nlU_yit*!9R<d|7#a~>pyv1qx087j^bS{?O*Mb ziti}%Ts07`sC%EYJ-RqKbImhj-S!95og!^@a%Uf_7UN^!58*uPACYicRY1bHEP8vM zcT!f=fA{$-a~82|>Cb)Rb{3Quo@#b~I~8|`yQj-5{fC_M&5*_GCx3KO-OfF4Zcxgs zCA-$$`egclrKh6Zxpy`zD*jZf#-=YVKKn)9VC^g4C4skJ+lB1^Epc{E=!}1ba@9wR z&Uy;}f2r~7)5HfRt8RMPhikgsNPd^<;x5tk**@@okFK-}f4opqhmGf@2F<BW2B)qj zM1ShfPbo6nw)5&z*$G~)p4x^t|K4PI!}$5m4x7f?JW=LTr!3QMkKQPd<H5nWZS{u3 zpuF&0SNPhgf2X`7xzDHQ@gCgKq&+25t5u}u$e9~X0e7!0Y)JpKD2Q*u|IS-d|HR{u zz18~v@nzUw&$^ITJ^!!l;tl^&f7-IV@{`SerDealzV6pmdr>K|H2k+z?$IJG(c6v9 zi*Fn^KlL;(d-{Sa*H*_=3s>tmU48e^u4b*vLxlws<$fKwW)mrTZ2^a~!V6dbmH&H~ zyIbwgO|oBP7Sa3P>Qeug_z#u#pAK&SxIb{!{I7D_zw94w{eP0>|K%_8^}lSwzt$f* zY}&wHn%wNav~UL~9ekCm`m`^u+FzjkQqRSo@;4`BPZkv|e5%FvhI4uElMCD23MA8x z_Wnvq=g$0p$V>O;Oz*@TsY(33|K;AfDE?ReC&IKMK>ts+<Nk^N`S`od|9FYrKmUvC z@%~pI?;oodKKXx-=Kkql<;8xVEBU7BP_HzpUU}NBm+{;o;@k5T4>5pT@IfZ})3Lg0 zSBW6^yHa-=pUXe9`@^ihZQB0IyT*G{%Nm|=O?d13hllyyluA~IYwRW2ANM_$Kb(HV z$EHh3PK5W$KMRXCvvs_QhUSZFR=do9YVWYw)mGB~(d46*y*5XsL%zFcsP1?uZ+vQc z_y2yeFB8?}Qf;3}PVg}}RbLoY0CK@+sn2Dn<*L1Iq#gOZf58*>`6uij-m`q*TjhIg zR-skW>18e~>7SgOc%<aY6j!i1Hy+g6<T9CcYO~|#_eCp@@N{?_b`0cLteIJ}*TVaY z_nArgjJ;E(md4Ka$SkVnsz|x%nsuS4@0uv*<>-r(MAq<{%si*LD)4ywqUsEd!ds_6 zb=Du1&!0}kRUVysvdKQ(h4Z9y|JNCo?EUNc^>-avbjjoK);`9M!n;=+{AoTrq0!aV zb1}bIP-~w?_f!+>U6FtP|J(ofM_S~1txC(8S3}yS|6BOt)zn}+O|Slq=MJ4Qu@Szj zam=Q~abg$$)TI;8I4~>@)vacD=x_99I>+<I%9UI#qAZc%zCxihvul_A)oXumoJgqr zUTQWUl;Xb|?Gf7*cl*MX)$7m37_B{Y!ZhqxddXH@3;n}AzYdBiy~tP_yz5uzFP;9d zQoW{RX653kCl>x#W2)U=Se@taq4sQSwDj5y%hs=A3)$;>m9<`IR>%?I?*BQZ{~whn z@SA-OJnJVSaiu_Gf8nD4Z^UJy{@vRDxc1{;@0#Vh690C(-+wOl)WKlu9Ca(^Le(=K zoF}%tO-kyz*L|u{MeD%MBqz1M5xP1nvt}`+__Os`+im6G(|2ul+;^32!&9#k$7z$^ z9Dc%>X|B-sYWb4|b)a(Ry=L{hWq&T8Z|u<3|EYAlA~#+vdFemRD_i``{(f|R|3y&N ztNy3khx4E3|DUS+|5f~_b8GvuqF-FK<&FR8|MTg_s}4fTq8MvGnhL}$cUi@-`qPon zwX-L1=ASwtq!K#KW#;ej)fM+<N32;gWBKOS5{CsF_br)KmmzK=$DFNW&ahW^Qi&IX zh^9(j*IX&D;)OqWZp@H3{rfRKZ^6fS>Bs#a-IgvY(Enm}(BSauKL@xZoa`Yr#wP{k zZ|i=Y>ASJ3v;NfopTYnC#(&;+fBV}#`~UU+3q56^u*^%y_cfPMO3p&Q2jLM@J66s5 z_V_V-yWe9Kflo4K$F-&eH86S{3DW7%yR_rF`BXP!lPfvdywBIwTc6x2o+WYY?E$8? zxIl^hsba~A)9&^dudE7>p89iklA><i({@lAeWrN$*>1TbeP49)w=I~YZ+FaJgC+D; zu;%Y=Q6bCUc7^{F4QKnFTJOl1XTs5IE8Q!e`B}}V@lp8ysr85c?A^z^!qxm=??1j+ zhwf<|kABVW-L|XG(b;>0jn2eh*?C{yY%{vWytpVb<74(Wzb_XrHFX-!Qdn}3<GSke z&DD=Xc(?3YyJpQJ0f9|CzAqma7RBHEetPo7jG%*C&V%CgoqF-J-Es$yZkQf?BtEQ| zbN13D{Wht0rY~>UebjNKQ})CLgC+J~SM2pZ>e5^PmM`ejr@6=U<|Jn>JTm#7+xh$P zYhH!steUg^?4_r^Zkngx>?@nhvuMp3(|bpm!lo?M*4J2;7i_m8sfz0_*S!Tt{!X>} zKH=@fPiC@H6(lTLGpcj@kE^c<)#BxQt!DPxLqe(8FyMgF$(n6(;hhsYB^fTcoot(a zcvEEB+Q?bUyDlADBD69?43x8e>Q50nRCmgCg88I=&RqNJn^)aT)?BZf{`tk%tc{Nx zI2JzZczCbyoUO9zoZn2HD^5vEREO?pcvkY%;zWqPqVBIgwdkN@SLZStw&`>Edal?K zRww>~`Cs_|zp}^vfBFAKyz~G2^M^lp8Hh+V&x~7>r<;{I>Cp6l8)P2~PWY&`sIk(- z<22XQpAF*cc4vfD+lXCbKfg9Y-}_BI53}VaPnB1mS{EH9FPvWZ`2P~!FA=dldjIe1 z2<z_&Q2+ar|K)$*%|>kr_vhwSN7rq99GDGCA%9ix2pyI?)mrlZSNzg{>;J!+`~TPc z|K~6NSu3<PKwQ6dR(*E2*`mwaE>>#%KJiLNXL)JD+#=D-3!Nui{j@Di@=ZL;-L<>Q ze7Ww)9@mKq*L7YNz4P~>{Et^x$4y{W=*oX3mY5YaQ7onY|Ks(?jH_hI%KmjfQ+a&3 z|L48Ux6aolJ5=rroVD#=zv-W;|Be6u;}WU=-~azg&HVqMGX9I~?N$3_4nMLvd$~`6 z&2mXse093Y?y9-=oy)T)9@!Y2nbf{oaH21#jr^~Spaat<eLr=i*Z=FS=8y8z?Rj`F zRZ8aaM@9s_w!7<nW$LGCUN6^#pWB-xYCiMz%x`yns=a)?FFa!Ijn(;REXSG@FBg*d zif@(S<R8uN|14LqD5?gz;G_H=q2qFgU1R=*e$_oTKi~w{OC^reGi|ljrC!$mvGrf} z|9?FW|NpK3e`@;K|Np|*t0W#=s3d&jR_C#-_${7J!E%gZyOuvnz2_*y$!ZyrrsVKO zaINr!QZB}o`+b%+9aaBzWX<M)M7DKH|D~Q@dVJZ0<BBW8C2f?_)*AM8yOe-($#b<9 zp~G^AuQn{vb53=b%vN!u*Xvs9B(Jxd?({}aIaaR~6_cTTb8Qx5zR|yGmGE^5c5Dwn zZVt@eI?ex`Yxv^BLb=*;7ByFDRvo%^>6R^r!;1ZFGrOnq%DnDip1Svn3xociV^Nzt z{!Q92!G4N;HD9UjzcpQf#|$=2jPEgUSCy#T>M*&*ymPJS%~{ifi<WL>n87C1G}Sw2 zT|j4srDN3NXssnNQqhwyeEF<dn7U)xt;JKo!}#9}r7s<-JH@@`hWkR+)}<k9*X#_r zmcuQdek!Krf`QH|wQH>{<xlq)IzM~=ICS$_C2K!v%X9w^KZ#zjE_Ua+edU(tHcgPQ z^w@Ows-eDJhieD>rH+StMZ%5;xr*sqX>2;TwkJfIGuu$1`seZ2s`n@5{#W_y|Nj5H zm;AmtX)0BosxK}E_gmNh**`I1a-&7eTlpz7WLN667dbjNG5VZY!*QmYrz&P=lC$^Q zJD>h+e7@rK^Z%b+1J@Yujhj*Sw%q!hh?ZnqlBZRYL!0ljub^1?qT_sNx7?}Q8IyXK z+^_uh|DSEQWkli2`qxU#r9S`v$;VG+s+<3_?x115#Q)_B?^*r-xP0;N`pb`XPc_&7 z*Yf`J)JwszQNwcSkpNejP4kwpl_uBya!*x#?k%CXbh@GHA=!M(n`a)2e3|lE_4EJV zix$LhSZNZnN<3~$npAuI^RFjk4kkB5PAQ$yV(+u$%}b?8n#w<}-8#d%{r{CTzUTjc zIp)-bNPqkP*D?Gl^Zu6~`(^5XfKu-px!cnY%N_R5nf_G%`u}>V{aW(>e|6jc@BiuL zJdZgj_tP6r@2Rf~8=@Di64hB}=PAQB)7w>e`iT;eh@$V?)S@oTzH~6BKIUA)0oNTC zx^tViu(+2`XVPA1s2gliVf01f(R9&;4}b3A*n0oFH2+p@M~nKxSJ6isEldA@<2VbR z;(n@-{A|0-VgG=uO7EJoTo~7x%}<kR{a^ogS3Bdskih>dcb)#1a{uGQr~dE%@1MNq zrTqV|Qvd&Jod|7UG{{nOKRQ42M21z;^}U^EVxO_iYe*0;YTBkQDJ7+RY{8~9rFGLd zESh6Jot-Jj(a3i0wECN@#$sWfby2}DF3+FtX>wcGz?;qHsjVK9w#}_O8!zQAJR7mJ zX;Be-<wQ`)_erJu(x#e|vlBSN<uaEob*#Oc|NoEX+WNm4=c_gIy3Q?svePeW=~e5E zEUv5G&A)je!^2kY(n&`V_SHcjtuqd9-oME^yZRd||J9}UE!(}O9oX~W{p-n*cfQ5h z1<u;C-<!L!?~9PB#wxvIB5zYRvAY{iX?(tk@nrhl86J^AeqP;M1J;}m3oQG^XSKn2 zlAx%iyr<Abv0Z_6_Mlqko%tHE-7=@SPlzm(;P9QwRQxpD&AoUEm#TeI%&E407LA5Y zc54G3tPlwPYajLXUgYlY?*gXDyZ<OGHhL8;`@iDujL7JuYn!fZn0{nW*vDEMpVMZm z=Q=hWnwQpdq+T-k<tg5zgH5%Yu5CN^|M!x_Nb%SI|9@C)D0S%5?RAMto~MM?R);Ci zl$E-D|6PU$hqeA^-~4|~>i^v@<V1f-bpLlMtNy3k`FZ+(-uGHfc4pROj8NONqb2cq zTA<#{CF?vHo}8HRPw27oyhmSlhW+0G^3Nq5>u;OtPM;6q*RU1*_HBCD-ISulzO^|{ zEi9)0|M}MD7j{Tq(B^K^S`&3;n`chf{A=qAqWrgi@nh~0ovi<_gSSxV|NsBbxm5K3 z|NlAv|4-Zf8z;X1AN>Dw=S#n7|9@`(oa)M`$&@W-Gi{Rmj-+6vIr~edF}e5ex$!|Z z^~ZsSK99rGT0AsG4lr%rR#x@YY34<XT4ffcc2WEPXZXLb$P(Dhc-xni_igF_XZseM zaO?iJ<XDO5sWbntEfzR`@{9fd|HmGR^PGBC|NsAF`TwA_^F%I1XuI6uTWg*Q*S`tQ z|G)o#;NRu`|9|#>KGn*?#T2h#Ig^R~<fEgNi<7JberGhT37(v!lKNuB^*i3v9jpZ| z$;fkUvp;!BCsxf}-~juhr`%`v|0}+?P(a(KZT99Fyzl?Ne=T1B%~<q+uKNGWEE6tW zc>VwXmo|yTS^xk4S^oc@oBZD*)Bk_-|6hx~Jgxp;(7*gmj2sO03<{uJ|5NS`$ZZNI z3|Ja}CrLi^*Wv2qf77qO<n)mwN&TdI+pg7f<eZV_t5Vn~zvAT+)0upeO3J&Zuuo)T zlmGwBedn(x0~h5twka2UR+Rkz_iw=@`(FVUm=CW0|B~OK?{5A7fA*ahf?ogsxBr;> zum1sM8g)Ahw*SBW|7nWWg`TJUAQya+tr6NRSC^pkU*grTldOlB*%;y#EDah|`FCra z=law*<KT0>DGMgv)7JGj{NeKdorf{YqSmJ5Hxu8@oOo!(Nv;m&84uXJ>;IhHYRBWG zc*ZHPchP~U)&IYJZC$(nTH_9x=>JO?C)k?*|Nm2@f-7qO|Nrv;|DQBEe_g5m-~B&p zLGklZAw_7u%#~SJbR{FD|DT?JCiF537h^1g)mA1U&Iiw)m~%_}xHEKYTDf6y($fzq z@6w+daeA*d`SAKp{iYu8WzLg09M*8{|9|dl;Ti+gCT?HnfYtT?w;yf%f62jk!;{k| z{=ecp^yvTp|2LAj`u6|-e@g!U<6r;J^w<C0|MS|tP0|0)|2Nyj$j;!;pdi3fc{lsU zQ*R+Im4?FtpwRgzdqrrq+?iP~GC6X$B(sF2o~+iI_x7bkGKb-01%K(6^K$k@C^pa1 zb&_H~k$%wk|IbJF3d58fP8DT{eSY5Gd-(qU^S{|;s{c+_T<C9i|7Szgf;aZz|Nlq) zkWoCC_5a`h?*DcB?^H^^{i>#$8vj4I{!_=j(^FV3|37Xjf9$gs$OXS;T!c2ur74*l zVc}%16|maSWEb)G;oR<gMfrsRb0w~7IOe)^EVJbPdxj|}jN`{7vHF>D|NlM>n`ZK+ z!;PUpv;JS<*FtliRoXJ%4tJc@-v0kubuhF3b6bKq1N-sN{~PrL=db?%|KwpEkL>^d z|M>p@%W!zVJJ)nj`&Qyw0LTUZm3+je%iKvhWBvbV{K>0}SlAi;6$}F!45!%tNcYqh zNl=^gUQzm|w!y^wtBu!NiZx!eiGQ;>^Yz{F-_pWt$_3#EN|>ai;{VSyTee2xsJM%w z#IM#vv-bbb56CtD^+<xHarOV#4CmzH|NsAU#+B>W{{R1#{{NrkI)7C{{r~si9Q;bI zM`*p=X@8q@Vwqmu_J8L8*>Rbfiy>dYGKj_KgT8ILp_!*p-2RNMlKldvCbKtkgbICN zZfr@?Oy88gOH<$yld)4SV+~`W{{PE)SDPi>LR{y1#7MvY|9_3$|GSL$I8N7pZJYA{ z|Np0HPR{ZF|37*E^}p2F`V;g2@BeSncWK%GPtQL~J!Ro!n8RQ-l|}aY&5PHJLp@T| z4MCyvPtFFCLM&OoTyWraXt~5V{|5uBf?inmE0LT3<z_Z?^Ed>G*#EbF+v4f>X!ksG z`PTpc-@oEI{y#>_LHF#$|JT?iEYJV{|Fd9*=Bxkz|IGgX&u;#|V@K!z+y4Kl`<JKw z|DXLoyJ{078-qQAh5+-f$A)n?w!4V4_}^8I`T}ynFBuh~^)hFo*1X9%BkFIWko&+d zrs@d)`7Z}rZ~r;=zo+O%;=1!rO!p)YG}`|+v|qcL!{F_Tye`MA$b`h*+5azmZ9jJZ zmCuK?`TuuXD80S@|Nm3QTw&h&|5tyUuiyVlrpf!4a?JJr*Y5v0(YjXSkL~}Tg6<!m zePU!~x*&ameGX*iAw+1i+~Hdh74t*|ic;3tdgld*iZv|om~~L$S_f~(Lyc^Y%C|uW z+zgwtZ8g^Bi>G;p3G=(8Ox&>~OsXmJfiq+2{{I^C=N3oQDLNG&*f6bk+7m60m1ZSj z%YVL)$ZtD+S7aKfq<F5dMQFav<p(DgFL&~g*eIJ-Rx)krhHO?z`Tzev?r=Hu`eprp z_m92#uYX-p@u=I{H~Ig+&G-KvU$g2+!O{O8Pt~ue{>UuG?Ag0HT=25Wu^F<nec#(k z?D?Q*8ojVh>EwMku`9Amj%3cfQzmu!Ht&hbId1&*a%N8w7>r81b1y&j>^!2QSv*l< zPSxUAMbU{b*;TrV{+fPV^T-<1>in$kA~fsEvn3HsT^ar_+3b?D_so(}p2*!OW;3f_ zeOdB>3d3GjmivF+&75;UQSap(o2wst?dL7#c-&~>Q83{+_v7$$FDv<6-D)51?{8I% zb56eh+WgphrG2(`|Nnng_@w%K|Nn12Qq^7$V;sZ`)lP^kzYzO%e}%aHkFbZISn~h> z|CAq*HYMxqwdk|oZ-@W7yQ<=}m+PtA6CNR3Rj+L7nZ8u-jmyhLS4@Il?>!#2EHqS2 zQyo;-|2HxIw(sBLi#97aAJ#vmbUo$9Q^qbn<)FXXhi<+Ndi~vQS5o!0d)v;3pUth) zW|RDSe$C(QYs=l0Gv53^-aV^BMER)W;;DUMW;SNhnk$}btISL{b$6~jmASXhtp56s z*vj_$U9-b}iGSmeKKGX?Y5D(iwm<%@TE)cJD9coM*q}!A`m4$eiCc{lQooB0lurq4 zNcz&LEXc<k+H%SBm}3S1qN3o5%+vor<w<5}zkTgj?(Q3JdstX37*?F!6St`E{z{bt zyGrM!uH5VHyz8|CD204fn|$q3-C_QW^5!6uoGs>IM`rN*y{La>#rf-}K->TSzm83L zuipLs-~Qg-U;8^BN7<SGU-SLx_2(>G>;F7B;WFj_wLdkVmg}i7Hc1PoUR+W8sIX%8 zmu1ViQ|>+cI^ojW`(Z|oM-pWdk8XJrThcyh<FRvB|Nr2~W!qDme$RHpC-oX;1+Ctd zFE29Y*WU}CF#D2>^}Bv+HDl$wpcL{{<@2-o5|?jXFy*Rb48QufjX7}t<|~a8xLT%O z({<VZ|NmsZv&tvpfBj9l|Nj&F)BgW!_iI)jJox{$-iqu0_v`%X4^3vApv!#mU_r^E zODo<uOyJc0+Bjn-lTu*i5{6076gsB~ndqsD3btPQZ1^HII^_EQ{~2pOZqEDv`j%J1 z@-x3*i10`VE|c)KKKkI@m)_<#vplUXy2dSZQayfR^8Wvqgm+*1|D5S!XZk5;@qhdO zbjm&c1uk8bs^6`aI{jcr{MTPB-oO6$C4UNx|8M(K{yD$-|46lo@&AM0xL2jGKETK2 znptp$e=T2YchccIWgQtpCc!%GEo@p(bE95*%w5QooTt$;t94CTs7>UY^7y?9rW5v0 z&xt*+Uc_1V>xHHFhusfEm^3$ZNU)TMd3K&&o|Tn9=_okdln=jKE_E#-W-g=Wzx~gh z7rp&|O*Z&L{{R00=0}vy|GyCV*S@nZVEg~uAD2(ztpCeCW%|GVqjsTF8Mqh@$rQL; z=8L#s%vdaP@^;H{_8PAv*9%4WnlM*ZYHF^1Ts3>g=l}l`k87H5JvF0lS&FG@==;>9 zuqFn1_N0pC?1`JzUFYw*xi?|4={0$lllA`%SeJ7D|H@qW^P=+q|5w!8&h{^A|Nktt z{{PYE>s)mH|Nmqis>C-R6mI_&gI}$yI_)3uf3B+i|3te_TAvvl1R@L=<wau>*uI+G zklq^MI9tWdA!BQcsz`hCyd7MhovYVJJ+J)#{|D!y<GK%jU#nkJv{|!uLJD`Z>e@Yu zi?*&WzjXcU+StiFo78eXv@q-v4f_A(ps@5>{(l{2b{-$sNtOTq@8Fo^XmbUW7v3pk zKbu!^CfY&5_y21fnd1NdBu=hy+i>Ln|JNd%do9**F8}|OF){!Dj)r}vo>re397M7# z7*#~Ig!XGiaIUdl6_ogCL7LE0lac^k3EP=ccP!2vdl!4{>;L~3(@Ho`u6-YUy2M=X z+ExyC17;12r_MzW;x~k9)W=7q|2pL`rNc-s!KLx9uKoWRjTMz1|KFrBx|Gkd@jmo= zKgeyrRg_<K{kWD=^Z&2AlWKk^gU$B;Cmrtd*8khECFJGt3$yC~e`SBtx+p~H{@>Ti zt$Ne{pJ#LX9N7JdL4n83fME^iG=+VVm+an_X{~uCnU|)Zm2l=H1J|lV7qxWpfVRao zpEv)W?r@JqDEQ6NmD0OaQtX@@8rCdKlU*P%k$a`*irw`_@x>1L0tM{X5;*6uNiF^V zb>e{=B}>ymZu_Zb{i^N9oyQ*kgHAE%I~B?p6<pr`|CeI}`;yn33}#d8|1!xbXzl;E zK!`<cvcl*3|6kkm-KN+yKKuW6;=}jq|34?}kQZy*0t(O^3kDC?TJ?YHE|`U#)~ahf z&T`4cVbe3aNy=$mjb9ebyc(PT|Np;@$GjHJegC@n)`Hc(-aK0$IH*Nw8fVYa;%h0} z`D~@~U$$2|&9O?WKzZT4diATOA9vL*tWZhtIy>?IE1fnyzsmiu44I5#o%uCZ*8l&) zd`U|_wVh*j`2V#6_vZh9&3$Rky)>=;|9`bI)b)6^hX2o5WW@3RufW$`tqHfjFevb( z88CR1dQULlmU`iIeBmUELk2uOoR$%R8XSivPElOv{?R3B?&CNA16_E76b>!<9I511 z%5pR1Kth4x8K-Nf`q>%|dZeAW=$ZBF-0F=x%v&ssPZ^7@2$~qV|JNx7d0$Y7{!;z? zs_VzSlq~}0|8MMJc#tbLPf%&;|NkpqIQ#fc+i<?=z4!me56ljS|NqLeX!+t8*Zu#0 za~eL?l2J7I|7U@G*#BRSwb22cLZY7;9C$)37%~zSPixNg$em&EQs{({bc3jZgzS8= zEeBou*VruJy<C3()iRHzUnd^OjOt*C4ZTsdRwYPZ;KF`~gq3V}VlC2)8D1a1)#V); z3kuPX8quH-Rl1S(?AA1QCJ%OtmyKo|EDVblo7R7`;|mG*dH(O|0p`Spt1K~{_5Z&# zJ!AW|qWuZ~_xyj2%-oI6|DQYbEY>#Y>=6I|f0;zf-ONJ@YW9C$%RAY7|9{astIqh) zf>&P{97O6Y7$c-t-MV|?^_4Gfv6uY>_qsHts4#L}t3Gh<abAw{vc7AtbQ;)LnNqf= zD~fo@>PSppTqDL1(%fLzl-S4AvseG;q`!<Tt&TTAuKuAF{jToEU6nhD6>J=)-v7@y z{W6vR>+Y~<_PisZ{Qv(o)E!+H&wcj)-!vum`u{5o7hmk&B>eyXihxsFygK~<pE<ho z|G$N*pJsCYU=T3sO_})MWJbuDtLID(d|~bpX0$j^z;*pslX{m^A7^G`0Lw-VR`VW4 z#*iZpoWjc{{z%@p`!@5FYmb9|c4_4LHGRFNaxeC<q@8HpQ=M%web2OKZ`WDAE+k-4 zpp=zQ?w!5!%sxD;+6YPq-<7Lh_5C>W<jB0z*DjtBTW)#AGMrE{G~TKFHP$ChuOTM0 z&}H)fsEKL~kpY)<6$%vO6uUk5|BrH0Xz6%sQp$3mG1c4GXZEsXeodE!4@5oee*I<_ zchLih0+mgyFFYh>?A`zWBGZD?UPe{|9b)(YUFE*;RIu#-wP4mxqbmp3OKANRC}dHe zUuSXfvA)}mBo=1LSEmg!LjNxWwS<0{-+ong;M<Bl+cg}u<sFzU%ETC0I48cl{%Xk+ z-}}p-z5G1eJx$`YX1Z$mOWD>ISJw+qOnycexwqE)`(L$+pE4ui)a3GwQ`y=j-#nNV z|0Rrb`MtcnTJyc_66bw5X8in-YW(zlg|$4N;iHd?{(IjiE<9$~<M8-?orV1UiZ(Bc zQ~m$vzbU!@pQrkMepND4<<S}Po^3tJa{vEn{)^x6;ok(V>E$IZE-o(B9C82u|NnUZ zah6+y^X$~w@Aucv=Jw5A)4HIwojva0om<z|nuGjv+d%l)X0b;XE5x6ET~a?k;i#D8 zzv^iXF`FBNt~*RLd%!H@ZLynOROgCkjyUhMs~W#%oVwrc!E1B*bYHN|`4FAzd8ZFm z_tq!A^_#b;`S9)HgEh`3U5n0Yeh$8MJY|-`YR|<U{EHrOab)d@$a$^SA-3wAZ++>1 z-$I>$TeBv%&J{n=Jw-P_S38_pH8eCd%zR#j<v!NAGgl?O?rjPEH8Cn;hvbx24vozD zFS8P?9Q(xlTNacbd;2?6&)urNV2$mzzYlwKGQTo?yq%b>djRC0yLyxNot8T-@YUeJ zo9**d=C=7abW6XG@vY4eKjdPfwLP@iMMYr6(G1O?4p%mt8Og=jIkA!#4zTHlPJMFx zzh3=k<NJTM{$H{6|M~x)^Z%v%|9SoYx&8mP)c>mgbM8P4Z{Ov&9t&S^J*&~0Qh9B| z%GG9?FaJNdbn)8WJ8$dOl*gH5*NgSXY<DzNIrmU;>)rpRYttPs{p=U}+ZuasmZOD$ zl6lovgN2RhUbDZdJ!QD>um8{Y|L3&-r|th$|9ATTQU1^VKlc9v|9`0e>;5x;3aEYX zRMz;_qN>ABA{tanB&=iig%qrp&G0{<a`cpKyx&*O?w!iZS+@P}PCvi&=nkLkL%q|~ zZ~I;2-Iq1hv&`p!;%1XAQA@IT3%d1#Lnbe>JJ>ht`ge~d60x`cDb;^i{r~aO|6e8k zUzq=|wf^V*zx#hYtpBsR{)PAdiT|Ix^4R)CDH7}g8Ro84RYzJ2!p!xTE8ei~xs>~- zCnzYi?9s184xXjkwfAdm{MCCukE1^<eqQCnQ`NPX7Sz46|NQ3;!x7n&*@skvR8PHJ zIz9F8dcLAv(IVo%dAwD>y*^x6=@_bz=^cNf%p${L_4De*Ji31R_uu=!Y2R~@f98*c z=l?qj?EhK?a=|O<%dfV})bty4^JGb+EuY7mT5q_#<ycVlA6NVTqV|7T&VT!~bpIE{ z|EK?d(r<`ii#+@4)sch^R}Rc|Eq!z{MDec2)`~l~iw!ru+qybXZTHmfh1nBhqoll# z$~4ZNES;~azsJy%U26pw+s%!gd{z_P9eqAMz4_{t&smKbj~&86<>-6$>URsG4xeAZ zC6=Xk<(XD$s>58<erwC^77_`M3QN?MEcxs;S@E@%U&nb>-IWs`{e9#)?R4`ICAVCO z(Db#v5?8JkJYLteLwC;VJrfllt@^S-dCjG}7uFnqe9F8%vQew_JhR^I|M${c`lr39 zmHj=*y7OvO^*`=M%Pd#Vcy+RV*}R~ev#z~+{36sq#QI2Ud*#~gD*11Yc?F*4N@aJI zKOLcw#v{5Zyz-9NmLtb`?j`=ewH@4R`(^w^Y+cOhiw4I8{?`9{Hr>wC;`^P=j#2X` zwY+#(uzn)zui8GQ0>7+TuQHgvhDc8K|8GCR>`3bV6{|G<MSonf{b!!&kNa=9f7dhb z|NT8T{@1SF-~ZkJo3}js@7BLENI2$DS#^Q$il+frY$vFgubb3wUAFT|adAfU+G~H8 zI(nb5KU}@bQ<CMuhqD3ycpsVbJy`i_+k~T~TsI~?OZNP4HDR^ingfjAbo0MH->&^{ z*|dMrFH{%Gzt|J-Xa4Ug^_PFC|FYM9|2Jl3{>u3$rh&(I-pUvM+AnvgHN^Z}ZvA!r z3xO=&OPkAo#(%2ZrrKn<hu?X}>$x#1t5c>v%*zQhpAdLPEBBXH8An2zZL4F;3ePK( z?&ex~KaS<|>i8&sj!ltg)lGSUxmqu#v7Y@mNBe92tHAw^`xZ?2|M;Wt$$tU<Kk6U( z+`oL{*Z!}~`L};O|9(CE<ZBJ_ix20Wh|aPWefuO}ht*ue1wQK%n?PywpKSHN!*WOb zu6TJb?OFJ@TqE_bzH-*T(6-yhd5^C-)V6WSueD|EjC=+;T-RUyy!?63^WACNyhY9T zJy0&4`@j0ZYrErj{TDNx@9%f7KbKSR&LaM2urp8k6x|<_RsVVv`aA7^e7N=Y+dsSh zFYh<6e-+`k-}$eW!*{o|`jz=7uYyKb{>n5r9ha$b`Lf`8qO7Rfl-!MiW>Nh&H&1=_ zVNIyDEW;iFzegTVFR)lxxvb=gXyOr@S*m>5b;B8-31JgCbUxMxK9g;6<^HsFM)8}c zHXm>PcogRN?Zw2<hKfsXn-{!LcVlM~0{5MtDRtK!sylq1=W))hge+aLS6a#^XRK6i zzvIaC_0`r+wZ&<Br`5WaCK`N`Q8ruWYOrCmm{qG*?!Tz(Z5a_OmhNhsvQBZ$DW$OP z_({|1AKkEx&;Bg&H#BkiF5{Y_&<7fkVad1n>i@Mr{mWu~XsU|4y2h7)hY3GTBYZw; z2=oPna!%1nQg7WkzxnoxdEZYZ?+vo=5-4b!^Ti5O`oGej{BKv?CHC05)$V66K6-S` z+%!4<J4aa4+9ZYx@>jxM-Tq}g$868W`PWa)S+FpF<An+L=P20g|39_I+v3W$jM!bi z0lu=%|39?^xat07`+v$T{lB~Wf6agXVgH{l{r~b$<;_)Bv||1Fw@!94za_Wcn`hOe ztzSPX#a}&k?$ZIqo`~bY-41J~ZA>~hYsQjE9*^f;Z2IqL&=KOg*V(S;VfOzZLBssr zU5)uy4;{A5|7RKa{-gDOu}}Yh$;<zr`&YXD-|qiY@~<pgy8mmW{7-QI=ba+=tyM9H z&s{x!w{;C~lQa7!*O=wsZ0EM}YsCEs*!T9!mR^Q`+NQr&S}*39E;j4s`Ws7^t?mAI zabMH*wYsdE4EaPS?vG$=-+18sKb?M_`kw!RbN2tQN&Y+kr(XR3>9hX7{mY&E|K^na zix>4T*}i;gRj9+sd$!BOW}AGqoV9WySKL01srlSyUw`#4wdtDlCh|wo?S+Xi`R$j0 z(%TQI*S8MU9pRh1`~AbXS?&^(E<SvB-RjoszL-gl+KX#hvpzlde>wX}@RHS1Omlv| ztO<~Glo8l}s`>m4CvV;V$1{BYJ0Ab1^6CGtIZf^V?Y|ZF?EiQ8T*&)RYkzUyYu*3F z%Jl!tKcJlTTvC{6SJmNjHHAM`9b}#yW~r;3dz@D;-}J$c7mJ!186<RnoIa@6n7EvW zi8sPf(Rjt*?V>%`=6`RQ;Im{4=drl!Rn_K`^l#K!vB{)P6kurN2`f$AmUU!FX+UB1 zk(^Tt)aT``Tb=S@@BL{-GxN26aWgmE4Two`bUaa|Rr`Mh$OYdOxo>UVbNGB>lWRzg zn9^bM1Gfy{WwGDkp39tMr8Ilx@xG?6upQ5MtyWp8=701HTDUKg*W~I{+4z%E-?dlT z|KD}}C-2|0p?~{!&qz(%mD;iUdauCYbswkQ_c2}i>HtsH#k)5QMJA+v(cut3QE}?S zix;1)zZ_AVx!O3R*E_lyl&+r}hOix$dnPbPFzJeKj-LFoS#?hhr#*S?m6?6Cf${KT zM~|PUEuKd0NwfHy|1q|}%sl6Gmd1*YpSULet4%*>bGvWprB!l@D@r+C*}aM#+QKET zZjSGLZS(&1GS!tis~<1cczx)X;1T_-jHEfLoNDJSUY_r0(mciE7MCUK<@R6H_@Cwf zpN{kYR^ET~_jA1HF8iJrQ6`fZ%`{eiQVo8$!f8`cU#YW7Vbsc(ms~`fzOIVeozWGY z?i!%sZ?9%wt#$LWls995TafdlS5wSNLH>E7ZNjuJ?)3TAaM|+8Pdg68-OJW{<Dk?U zclFMv+X-qi+YTR2FS!}JbT8kjoaF^A44r-PpVn;1(4TUh>2TYQs(1;mx&u28-QzfR z?Mser&G~nNdjkJ|m8dcPucrI|W5M$Oex`3vbxo~FJnDaH?t&*#g3Klgss$<qhvqgU z96WBgnoY|@hat{0;6=a{o_4KWi}TLRo3%1P(9Gyqp4|GRtFv-1o^Ne@<dd%wlK<OU zl69KozGDtkIwmjae*7Ub<zh;&$83k6i@YT>6YLEw*+D&)U+OhXGk07Q*}HGjr9ZD9 z+eB+Gby8yf@b$xi+3&ckniDsalzjVYF39@*pRuH-!%zFatn(dW{tMp!|H69x*GKiA z8olFuqUHZB_F3>mtIu(QMuo63&!2;}9Mk^k8*#3e%li@77@{*NZR_keGEo=qTnu7m zJY0~qFpc-sZeLc>Q;}YZA-CA0uf2U*b+k5aYtdVUsgquv-8FlM6R7R-T7!jY=8ij8 z4bwE|Rn-5P==Atvc;NMEp2-0v<}%qvl0t9!1VYu${<`ZWU>s_AwnBIL>ENC>@ATyU zB#H*S-C2?!f9{pUiQK=8k$r+w|9{;1Cw2R$hkxsT&iwy3>LlM^#c8jvxyA+jb=w)F zCEGl;k#UvE``VC6A&%S)I@3&Ajz3#cxYPe$?cA5OLF%iI7|3qUx)k8DSo`kX$vf54 zER>qm8eFdFuKIU6ab~`_@UCCmRi4X%T>VA+3e$`k*QEAJK5%hfdg|_+8{GM6%X9AJ zxj0S?Tk^MvDcyI|S{qTOCe7@Y6yH{t)xMWpyz<S<uSneffBVw1^>2zo_SD{4|F~k3 z_G?qA-cp`Cr5la0uC6aK&5I%&)@|Y|+CG6*AkABoeZQ-4`A?sHCHbe{btT(gyCvNr zmTWcS5bvF;#%UKXJd2!JWNtarBJ|wTMHAg7R&@L<%9RfI;}x!Oe0pU<GtaKyZ<fAP zp0aYPF(_TX)nEPZRNW!(-qkZxr>u&-Gr#<i&a_hj+m8G=wSDjVgHzkIudlqyH8V#3 zmE^o<y2UYhH^gq(TX#+Wrgdh8nawp_!vhUTFA5JoRFWyH58NLArOwXgQtSSHro19P z>kD^%a~|mZ;uf}eVzzAYetG^)vz9eJ`t19cy=vC|KN$%;?w{+==fC*l7kAJtwr}#U zOJCkv8K^GI349pK*HpA{bD_1W(urqJZ?_zu8s&W2zsvXgthcW(uBys;nH7F~W<lzo z*LRMc&0U?ht9RQirj)H$L9y^rYm3;ny2Ix^O0%y^9edEy9dGl-?*IRHYRcCZ9QpdO z|G)d=rajAlO?rIx{;$rMPxt>n4Ze2t|I`2fAAj8c|I_;aPvaCy=3YO4qFw!^_7z?( z$Db2elrv4EvroNcW8+@C`;(}>pCapmKYKJ1I##UxXH(*T$Ma`p-1movcb{Kxv1;{y zcdzuhb4|pSt~O+0oc`CCA?MX=AFGz>|Gx_e|9D_%e<A<k|HU6=BI4Ba|E!!7c5C@p zPEdLMUVe+%zM8}5J*2gw|Nr%<v-tl>{{Ls?`Tx(<|JOcZvx)C?rH8ZN##YM{bNc5x zG*nEQ)pv73hQ!9wg=O3ZoU%Idf`V`VmOF-bYghmCp8e*}-uE_~_6hIGB!4vCJQF#$ zU#;o+oEh4T6-MnhZ~rhe`IY#@<o&<W7$yFf0!;RPpz`3U!XKecRcH7;7U#`>@h3yj zl>2{A;q|wF8DA%r{r~Uq{>c4b|Nq|$|Nqnf|J2l84V8^wmvC#i*mNYbSZsJTdB)Wl ztDO^X3SaMf6?V1iT#K?rqqDeV^s8W@67kz+p`oRkRkGd}HwHZLh}@nab@t<97Reb0 zr|{fbZK}EB%;d<21{W4Sa=FkH_`!hZ#A)xIJNHfmYX(o_6wq4*a@z+*6|rqKXZUs2 zcDiRM7jLXkW#B!hax?Jjk8_ja{^uRhz2;EE$nAWkYDz$jZIUZvVB(LTyRupZ9J7)p zpK&>UbfSlirEGz&A#4BK>z~>`)xVgp$`Vv7Wc5l-CF7&l??&&f|JyY-Hm`rbLTp#p zb3Tzyzuln=6Ccghd};sAq-IUM!19w{6Hinf`m*3&^pE#vL&7{Y(!Nh(WCZ1(Usg6^ zYwsMpuqUEt--V}z6S|Iv|Lk_x<T^ED(z|87-n+l0<*cbGDx13FP?t&Ph0-ZoZpEaO zYp%>p(s_Dycdzy;WmfNWxmeF{-sw6USI^ZAE4*XbJE`i$s?AH)uNa<QbN|XD&#+j1 z9_uCR-=xHOo<7n1^KX`zGec|X_K>5p&*rL}bc;IGc4_ke_gA)k`22st!QPi&{{O!n zupy|@=gU{a9s#cg12K`g`<`<AHN6@3NkQYke))F6I}2m4rAQ{sw3?Ap_vjZ7ZxqL! zyY(F^Apcy^Qeit*ciDTw<$NP|8U6LUZvTDG^Wg5*To;M6x9^v^`gP4Y8t!tUOO1Ou zSI52k|6?7tS(pEhO}hV5aO$=DfA>6OKNhwBcg_1#|3CS<?|FXp|J%=X<^N`F(eu2U z^>25pfX+gdJCPz@56?fFyhm8$txvFXvfY(4VlOmBTKZn-tYOmJH}k-z$1c~M@2p_j z=`*wOLZ;JuN4M<2|9^8YJGA5`TTK7|T$^|8-ul-wd%u4+y0riQ>Sr##H~S`b{Qv&5 z{pS8>ZRvX+|JwimwfEe5P|kWMr@U!f&EZ=!enuTgYKpm4^@Urr>*>!W3uSZ4Qg5-< zWKXL)+4aJ{Y<lRzzzYY?pLOVbE&l(jc*8dToE)hQTFR$%);!GrzdhoQ`^v1sRDu5g zpSK*k?Eh>3b)DYzla}xQ|37kjVEF%wKlh)R|Ib&XuJEt_|NBqZmHhwzuV@0J637Lw zWEXEbROhF}BVOE@uqE<HK^D8j%!2BU-IGgas6OoFy1aN92Y17s+b_KHx-R~@8kBKF z#E4;bm_d@`S~Uv?6CT<5L8liUX|2@!TD~p3=&G@2mjF+bUk9J9w_Na+Lmj79rmtCe zQt(dop7n-%R^Jl7z;0*2;G|{B{`#EofmP`s7rc=E!nCXAh}r~;Rqw)o^C(?CmE2`6 zCCI_R(kzl^?{;~aNrjBq%GSn@FL!iB&S~4~+`+%!S#E`ut2$Tfu{l|ihJW7A`nUey z!od78i}%jwmwflHTdr;SgzfY*5rrz<ZMOWnVkvAMp6MN*zj<8Jl$!hF%p%iWAxrEY z%&d{sI}1uxZ%ta*cFSDm@6dHg6j~Z{_Uc}PwFg4oE<~6Jm;`L_a+BFOe^q8_v}K*e zQ{OoT|GSuUAI-G(zxt=}`Tzf~LZ!CGN7nuP_WX*a(DG$h@BLhRHoN}6(xNSAR;^JM zb~RL3AlhHmcD*T4x$(w=ZU1-8$+p`y)niXw-I9s<{~ek-4zJq(+Et`(|Jp43|G%tG zF2DXY_56QNk^2AE3y!eF1U_M(`KkB7_K$1LECm#|#;iFR_#i7KT>h8NJNt*19=@10 z@p-{}-N<EY!?xDubFSvN2J+86EgPZZa+jo+_z1l?-nim@c-Te*Zdti?lOqNAGBsr9 zrT_nLvA%GI___UG*L7$<k^jHKlKod2d;i8wTCS>VE}E5jicE?XVLW1x$L;+8|Es^r z5C4Dte`3k<S10ZNzyJSfi>QJFk0{rC2K(=?T(wWX3e}2YS2C_!s>#W#KRtb(+3L&2 z!bcW7JGJ!7<z0tMzU#znjQh90bSbCS(IUP1StVCa|9Jn^@VY+pwAXyGc9pME?y@;f zUg+x~?EBiBOXg_&wHE>(WChvp@~`x~%K$!5?uW97*urg>q+Og3Z!a~v>$81r$O~Q5 zWeGi8E#(&LxBvhD_t?YbzxF><X561C`Ty_#f04RcJxmNDMT{a0p-jqa*e^WZIQzgC zfp?+FO$N(Zoa>W$-aK?_Z%gC}ZrC(Qci)zvl(}-75Au4I1i7j%+7j|#&fe<q8qMV{ z(g&Z#|NpxE=#R9X=wJ6z#2%EJ|6k)0{Quwo*P)6WuAtKYm#UB0+<n*7Vj7OPdHw%? z`_+U;!hhpGHO$z4J>cd4fA#;LtmOO*x`u~?L8EIa!vz`RCF^yVb~AnwUt=p--*iar zi_iLucb7ekr)gN8YEqXtz>wf%%62I|Dvj+Ii%l7$@PdUU!r}jq-M{8Gtw|u^rQZU> zg!>b|{r|7Ce}TXXO*hr`uS-rg2s@dW=f8gDnBRQ4{{R2iQjM=bIqS3h9<f<*Y0FF| zGu+^u<^TWR|De{IkoceX>o&aO3gw?$+QIw(&-VYHLVQKPFbFVkbGdah$b<#-SEL79 zxvbKhXnjZR1cy;?Px^d~?~yfgTs%@8D-|j?r^L>6ue`!iB^g%s|EKQH%ZJpY%A_{m z{{QRQ^1qJOlFL;0Uk>aLECjW8UaE$ObxYh;`LbyGuU*ZLROJ7E`+rx^lh@=(O>_PK z|HpRO|Nrqzss5g0{r~;{uX$^IW-wsj;&RYpkjyG#a&9Y``mkaD(E}O#{-`pyuefd7 zW4?QGssn?gj$>^{DAVm{>w{iDoiwAg@uYA{Q2syLx}+%14QE5d+MmV$|J?tI@5MHa z@4pwsGn`U<*8l%pOXk)3|NpNQxE!~VopS&GzyHy^LHmF0f9Awqzw)u_|3Cl#Uol_x z2o!FA<b1>y%Uw&!VPIh3<Y6gbX7xV6p(pxMHIKpc&r^o1+8Y`TIY)Wrqv!1BxU*3D z?3Kj$4FZ9d!m3keEDa7n<DGEPA;)7$|NrCpFZvaw+gckKZTj>7f9`$7D<X4f;`*=B zI!jn(j6D9Yk8)hisdoSWwEN%BdOp}9a7jW?X2*Jv3%)Ceh|QKe_9)>0FZ-BPhS9(3 zKhEdX{8ucvx*n9I5>{OO!l1yw&E;groVAmCeOt-QBW%S@vrcVX$=k{z<FNLrT}9Mg zV@8W6+3<xboA#dn5GpCdJVW?FFq>mm{Qncv-*~j7><x(eKd=7(m)lQFB-niahMaCl zIyl2T|JAhwP`ZAt+#}X6c315M;{p@;|Ns9-tP!|T)w%fp|L|)Y=cw$z{%>KKe|^S% za0*|j^97W`xfqxl1XIft^?6=uA7GjDY?0cog*Ps55|y$j4*50rst&(am8V;eZSQWy z8>}LH7lUe5vX`}O{NQ-t@GRD8(zDb~hyT-)Kf}i1utd*En}I3LdG`N5o4*`gAbV+2 z{W-NoCR~4FH1)x5Q?L=6Epy>1!{1dJ&7m_^$N#te_rfwGq^Vo2K_#v2{{PSN3-ZJp zi~l^|9#HC>;QlO^w{ic!Mfd+7S&?(~I|Bm)7Y`FxlfA$_(f^7pou?bNyu4j-U}bUH z!S%;9H6KcxVs)G++H+5h^-z+x*$cI_#ml6QKML3&s=0CX_WynQXV@n+E!Zp=z`gv$ zxBvfL|0XF&c~1QQs!YEb<hGycK4R^1ch$ZmOt^Gb{?|7TJ%(KK|Ns9j{FBbDI7f5# z|G)9U-2pfLm;KjkWw>u0(0~8`EBpT+OR~N)1PE|(F{C$eAFLNUees{jBb7(rAKkc8 z*%M%Bz&~}*yKHH{7wN}O&hJo5>34m7^_+pT^QLDj>;KIC^DxA8VWE_a`{w`uSN=`Z zP`J`ve`V<$wi$c&e=TADrd9vn{y%s=_?6Ngv3{X@%W{|txwyKRa-;wMzy8&8Q}o~Z zPX-CwuYEl8|F8f5Pl2yK8!#|%axrKzh-}n4$PoF^pGU7Ckkc!K*E`B8)Ph^4>RtJg zvSl7l=C9kAF4#I*^?v%w3;sI=7^^0RN-Wv`U+Mldu7!(QEl#l<eyacf=drJC5`}C2 ze>I-P+RrwlcK@wK9cq(a?f?J(l_B4U=gTB!vVl_kJNXc?`EqrOO#c60{e{(L^}qFB zyAB%vn(K7_|6lk2|LlcIKQJ&T@as=p@kp=Dr}mz~7LA_G(Hk2$xMt|{O<b@-Ns!^! zytJ1Ji55jAmTQtU>^PWN9TFYn7+iv0^YksdwEmcUiy9ZNo4^b!E*Xs@G0V%?YUXeM z`=#N*@~gjcKr#1JNk(kC+`Y7%qpJ-Wk~8kIhhN)UchuJFv+2t8<*HvM?Z`OT^el6E z`qN3D98!)lsW<+PR%TS068Ev|(?SWIu)C_&Q*-0?=1tmrYG=fL=Iv8H3mYxJqBX@f z?9MIm{OFDT8q52=H3jczma(zcudLpiy!IR8vb{Q`XAT%tRK8uj(LY$*{7v}Ea_wvC znc8=DXPw<$GR1U>>S|Na!4a?hOT^+@zL(_)r1s^xYONRC{Qv*||9}6!{(AlYhkNUt za~A}BsgR%hyx?!<twq;<XP2uj5acXyi8Za7d1uYy$pIW4tMrp?O!xmSw%Ppc#B%#{ z5BL8o=lL4a60xTC0|P_j`psHWrK*DS8M$q<`A!~W&`5A$ZewitkT8#fks)BG^f5O^ zrpe3>0(onEuN<?#?|*rR?BSS$$HJ|IP9Hn@Iw;v+XQR3Pnm3k$q2h8}He5kR?tbT8 ze|tvzJ2%zI1-GMPKUjagV{mNVJe5-n3mgtbS{pcMy(m&w%|EWa|E}ijSN+-*=~nBH zq;&Ge%Wm*z$?U5Mj@<jbBL9BBhr*pFDg7DzrZc|(tdsGXSzi;JZ|Xkf+&%4^j~`7r z`+oKP&wF-c$VJSP{ipeU&BleV_Fht3DfE4xf=g2Y=pMYAjwND!9pC2d(U|9Q_PhJU z&t7TY_bERtP@QLU^?T)S#?wNx&T1SuDKzE!xB34+GRDh&|JU6do5L<yVYYmmId{GK z;)}blJFU;&VrJCudH=}u)EjYY=brezQ+#4#P%Ohax9y(ptsRp^SKTiQyVmCLDyA#o zT8vGuV$91vnVSisHgBq}5AS=QQ*dy{t{`6qCB=DevXL8ZHEM94y&t`P+L0}jI21Cj z%{JB9v1{^K`G@yz6f$wFnNcIJYPW3t-^;=d6K+IgKYO__NL_DMRZ6}6XWyruOZV&D z7Z%KG4*Sb)uT^z~O`^19&D@60tgcC2?~D)Ccv;L5p7y4vr7Gz6rFR#-qP0Qo!P8ng zVu#`mowtdUnzEmL@7aBpWv{dt-jvQ_(YS1;DbB5Ge6Yor+f~@^*Un=u7mNz`J!|}6 zel09@d8*OnAn{=BO`2`flKy|4!N@Vs?f$PMOVxWP*5;=K2dyoc>a*meqH(~4X*@@4 z4zK<H-}akv{_X#Bb+7;V{#^Y3&+^a9Umf7gT;3oidogXwM9xjWq;eT78XGiN`o64i zV9GdjPOr3JT9Ol=3{zGU&$W3TJQ+s>($x-o*_UZfXI$JocVdvohH_!g>;I$DHo2&- zGA_skwJM&fhKQ|;JFM{Jcez#VUDMr~VWHXPzuIav-Aw<VY!GKOFpnx*{n~<;;bfJ! zN7-V#nODxwkV!rv;}RASvu#t3sYACMkHGx>|F8645ZdzJ{Qnirr7Wk^{&!dZ>65Pi zpE#+$|7lhegOCA7ociqp!k+B2%A$9winaycEH^sq*W-{n^WNkeKYdu&OWt3Uwdupu zHj^bUMJ|akESstQsM`7e>jhDqGX8xV@|EUa%l!XKKH+-PA&{$oXr+ivEW5enfuZex zk44O{j5PIsP4|+n`1IfZ{})?tkw<bVQhWWr+W&w5dTu@V4Aaa%|NlSVZ=Jv+5qcwa zPRk#ktvl}I#r=@sh~E}*&s#Eimx<#0qo3P#BCar(Y!2*9**9M{u_Z~S$L-fzGfgkY z9nvhDB)sL$eQJNU|EQ){_OGD+@~)|>Dqa%x|NnRX%dZNWb;jgR`t-e;z6qM=wJd_> zKl{E^vys>F_5c5O-~Zon5L7OIm#-1pEqD6alH#-P<+tzlGpfG#{rcJW)jRLslm7m6 zkCdIrm;e9&9QyzNYrv~|>7Q*HyPrwimsd+a@@9#)$UW}MC4aW{&DG-ePM^ZM_|UXu znKVu}rO=&W7QV)6TduJ;UC7;2*q$~`J1#I!we&{J=h^??`6O>`adn+BXH%MH7%1G{ zY1N2ri#vSYrtEF&s!21mmXu!Ev~hC({0p9!_WGqPPI3@^^t1H5T2q>%kd6A>kSVW1 z&#@<${r}3L6mv=Vzy&#-n8O#-m6v&~E8fMXz`;5}RA8yM)S9=^k&)@%Mz1Q}|NlQ@ z{Lk@c(7)x<KNo+FJ~eF#i-Jg!U=73mo6^TuhxGsaFyrI9*{M5s++t$<aA4ZY+bmya zcP}`qc0ICxUyQ|8!Gf^f?+!nloH~Q0CFU?Lsht}Sa`jtn7O`V>heHc~Y09|NvYu*u z|MUI-s7ZgE+FZ^5rXC1y4qo*?>_yX>l3H)8INz|fs<vh;vRpk3AI&glc`Dcz9{>N< z-($)C*Z-gBJXbIKf9k^jUxnnSPFyvS!NI}Ou6MG6+>6IP_q7i)+?;#LGd;`8&5cLy z`rk;~e>*j7^W*c5+rPQFHIQ%VhSjI|6a`}3)2}J4vi~2vDoN?au7CUg-~MExxAEBj z6-T6=UakLic%k{<{oonlSISq!7R8;J^+NeezzO{e0{*Z6|NW~j_SgOw-{qhFSGNCu zV!twL5`#ih=E0&5Ou|z?Gd?p8@NCasT_pFcq*ITJYd*K=i<L^b4_&rdr4`<HEuGGo zX}e~M0e2aHaB_HhK<bnI|5i;aFq+Dh|NZ~p|7uK~lm6e!6Z<3?7F}O;rjf;8|K<OG zF|~dT3s0SvoBIF%|C#gt*8fe}3rdMEWmCkq%bgLms6SIbZU29>e^Co~IN10W={#X! zZEBlxHu1zXN2Ux<3nAIJA|_FRZvxA!o>u4<iT$g$7Bg*=aGt7nxKm@*XZbZ+-t2y7 zbGa_W@H!Ov3jB}CT=u%$NO1Mhl~cd}ztVI$>ER-&BO8p>{QpPR2poyn5o2QRYjPRX zLU<w1BDU$@nFTL=fAbh!ev<NNfe?q2QSo`3j}JafILu@4*qBFwQ%SJdfB*ltKlcBs z|Fq=lKfAx&_5Zwoi5<A0EXyg|z}hG{BV*2IE8Wru%x!n2-f()ixJ+mY%u1eq|Ku*4 z+%NkgStA!-d2`Nq)7<Ecs6Sihi_~3ph&Z-Dhj*Rlgt}mNzVLf?AHU9D9prwDJK41F z?*IRv|I~uq_FMgk*tWVOq9K1DpH~gokTln)Q10-Oh@=AFLiv(&FW>6MEq9$LbGG+& z#j&@&w@t+&ey#6hW8#P@ddwbr{@&)V5nH#e&7If$ZMn2w=IqDsrPh_k{H=ME^EWKA z>G;3<e|)z7ll{xe^XK$04(Z42p$QxUfhk-ujqH0YqSkx7opZI9?f0Hi#qAHcB&sgh ziOft^2vs+bRTVS+0IGjp8}Nv2+;{qP#ozzs)w*Wk&h>kJFY<|XSGjD{-L#RzrRvrF zU+Gh_Brf<Sy!xB}f49ok&0kv_>+1hINFPrA|8<3Q+ubQoO?obrgqHr9lq;+(Fq2)% zvBvl7|Nr%|-Szc<UDKw-e|-A$Q2+mH;XebD4zMY37N|^Ucx!k5duizgj%U^)6S~6^ z7q-oA)O|ZElc#W_0V8L@(cr(?yO>t)OcgxDV`k=hZNm;@{r~G0ABwU`68g9O|6lzz zrU#eKwg0!J$Dy{TYvS*a-5Y8<+<$?>`mORCv1M_mZ#&5UpZlwACtG3R>h=GBgLa(l z|Jm^|{FD2qL;wHl*G1TNuy7b8XvQ#{SC`kGdD%+s|I5P$*H#vF_VHwKCtLkEA5|m5 za-A!@>3sCdzG}t?v42Gl9uPQ_lC{gBLUOm_|Fu`L1Qk6aT=z#VyY3wID)arZglpUX zuQX6tq&xlp%7mb0YfE_Zc1;bM^<G8P(PNn?$Zc=rZNyf^T~i5IbWz}m{r~^}jLqNw zKg0TRa-H*^hyMRR@jvzA;$6t~i%GNefBEAJk4tP>IdXqyZ20}}_lk{T@BZY4=S@0u zX`;H}op!yD!?V|GwQIhK57=GbZmzE)`1y(@k5|NOn|&)4roWGWUG(VWrw3{VQ7w-c z?gp21cTDBntn9k{|Cf`Wl{6ytCnl^qmXdbjkiw>)wWnJ^IryKFjL@>UQ@5V{oVbvO zsYmS5BN2h?QCa#^nwi9IX3ky`uX5Kz%5awF6khJ9pUbo-GxsF39`Kz|aIksF2DxCD zd(Hn}7&fs_{?c~ne7M2?KN>1~ntdLfKgGWC|6jLyVcP>tBC<St7@c%lts)<}>U~z^ z)NNGYK6EAh<pWit?!};#_{wOF*ph!|&R48j)EL|1-+E^624Sbv6z3NUe?^qFv;_3b zT4fe-WYOO>8<+kJv2}Z=U6~-cZ-$IdYv$^p%ob;k{<@<x<H|F?>MV(V-F7AOV0q4+ zUhlPeK_{L}KC?$4#N$hoy}NN<R<dR6Ojb{xh>Rs?<=l$J1K;xQ+h}OJ=I4$k%|7*F z*JDf1YWAmUI86?G_-bBl+>M`SHF=kAFKK*yPtwXLb<+$RIcA2H|Ic-D&Slm=CYl@3 zknuS|{u#gIgK*|oZFR}kGG5>LKk9;-w~s8PZ!O((`Sgh<<x?FFO|Oa>{Hu4jJT+dB z@Pgf;_v{{#8xPZX6xnpL%6t~iJYc!?$#zGly|=dZMO@GhS+;l1?%)6a|C}A$=Ab;$ z*|_M&_1Kv_D-#uGmbjj5k}y`R)Xm?0b^iOy=O!%;e|YJjN5AJh+k3yKeY_SgHT%gf zWtqz9+Q&}DXv!F$xN7&c<b-}&*st$p5f+!e^joi;d##k&z|(bOp_q}+u1zlwrvzUA z|NV-qxt3(s=lTCN?Ej{!3f=z~QY)Hg!{M7NcPOuygHM!EY(@mjKmEsS3}?I9Z3<Kr z>}EU?4CD|pyS6NBf}&qGvyl*Us~Wq`{$11jHz*43xaWBY6sceJ*YGWryC(JL#gb6% zuK_6>n^swU*}nZu`Tzb+NA3Q-d2i*vvh=p$yw|VA=f`L3Y&vx<vRL9tJI@R8+Z$Ng zg4QirqocEU>X}W~i%v(TPK!8}x@ObfH7Xyjlxg!^oinFh{>P*ltD9B`TN&xM)!f^3 zdfKL)e8)B#25PR&-nXdMZ>h?pY5pP&O^YT<RLcL>X`1&xc*(|u;3-YXjshP&TP>%Z z%~)g8GHd_K8H|k_HfpE;Hl{Ykuuc*PcmL}Y5>_(f$P~_1lFe&&DeEi`oFM>;)Svbu zd^r-&R?70pS%z}(MJ9b)tt_0_+;FqGP_mP8Rgfvu{m7)XRly81ICwaHSU2S*Gd`L5 zt372217p)8&1ucQ${mYmrg(_HIIkD^@BOEHQLZOfm8-DLE%4a1*6_^s(8%rI_y7O@ z|GUiJ$0pmJu4FRHecP@2;OkBnZ@I_o9<O`<Q)Qx&q{=SIDXt4w7rgPRU2>=H=BX*$ zH7|5elD}TL|I~A%J6TUPCudJxQ+jpIU!`Wj0H%sY4<Y-%&M*J}Y&3c?xp8juHr_bq zEX`R~I+{mz|6l8B;F*>cziETWj?IUaCddDBdU4^=yHIX#?h|WnPg;Gp=_CtJ<pBnV zcW-=)Ot<)$fFkvam5ES^#JlA(f3Do$yuAC20+ZeY5v!Sc&hIX<C>S%E^ahlRu}|i1 zXq{!5vi5?<XEx#UPU<|0y5X;)^<)^kxpZDFoqzR)ms3K+^Tsb>vYQsMrSQ+;$!fX( z&t51i^1!=p9UfK&b&Z0F2{I={-h|p!M*a6Sw6^@Kb+L5PBOe8g=j>ZpSz8V>Oin4f z`sLQfs3k$nkpgS_C(5rl)1PF+V^r|{xYPeXMVJ1+>@uDuC~&8FDGSE|iG`(ls)zai zM|v=G2&(;iDq!f;I*Tt16shMdr|{)Q9M`bz(*L*6Pfl{K;w}M8iO=0P(&aWan3@=~ zPG#ZO?Y7so<n=KUG5_xHU-99?MI0>5MFHAVd3L-0HF)juT`icA)zKxHb?&@Op4cOL zJG-W_CG|;Yh%GqhleIcR$>g+_Z~p(Ee@~^P$lbfVf!TSH;G%ecjqJH+4sJfV=JG#x zuGt$mv?wM$VA#cwYOvE?gQI|Pt;>nu@$t{E$WF6qdQ-_Nesn<)<8E<=?aT=c`4)15 zPJSW2lb?z&k(;Dq!Z+9O)<4_77ZsO$SkKrnLvF(h&-y<FQ|o`axc4MDcpiw}z$e9= z&(^uwn!Uo||L<81L55AW`>o6wOgW+&Iut>HaNpiUEJfmJX3D*s{y*`Yov9wPCMu{* z&{#3S?%agUH^oi3?}%uGJ2o)bq%q}al|(RlE&SLpi?JnX!wRmg#~LM~o$I82X-W9m z&TdnaFkqM#aENi~m(JZ>_c)k%j2V3QC?0KQJ8wPp5`%_^>XJjV?*D&3|Lf^j`=4^Z zInq?xd?{ji?#~tG*OveHN!rEs#6jnVLKNGJUU`Sh1rZ-R3+~$ge8POc_^VbS=OHHb zpdI-OI~-UHM3~qaCTy5({L}HZK&w&)U$c|vu9N+1Hkk8xUeLLtAyPE+|5xt7|NjES zyx3e~bRB{=h)6J}x+iaXG)L+GFV+u+jBc~|)<?D9V45N0uox5ww`{fuW$bvHnKH5Q z|JfrKFS#7aV=-hac(uhn`HEX(h!U@71A|@B@!EAtJDZx0ZM`MCz$ejwv-BVn%e1lw zY|jjsWb<Zde28IGJlTCpa8_323X_&^C0}Mp<gAN*nfqaahS^u&^Iu=gWZfZ>)G>{* z@zUW5X)_lbs8f0${-<AVvcnlS#*K|40X)*2n+&9GF&*JK{&xRGm$077uX=C7g@2sr zJLt?L@Zf@iWU@-2iCxZB&X=hdEY&>4U#ZvoEX%TQU>3COZ-JzI&e=<>4=OskC8{{^ zuq@b`{KEDB*C`C0PLKWvoj72`<PxIG(;Bt^@tY)>D8DGy&Sn;|o42fIHG%@+zGaG7 z&W@*<0zT}#ygV088yKwryxa8jQgkvq(`45dn>(2&CH!PNsQ6HU=X65aSD_vgCBFpj z9%;57F@`f?vN1CZF9$O-ID8i7JnR{~kVELi!kHmULO6t^Uwqfz`YUDut5Z`)5bp_z zt=AMakC_QPyU1;DrT&WkiAiZJH&oboZFu-P7`qrw_AKC@$B=2^KXcaA@TbKL--6U9 zt_rC1abdOaSA50p!`igSj8#7Ik*;-Cq}Em)lTh)73yh3gDu3L{pV9MDOt?T&^I%%L z!kYenGcIcVf2Hc8V(630#OmmFz_mf<LUPAZl@NDkhX2<Veqzva=kosBxxwrKcY~qF zEXS*$K=|nNL@Z&)+f0jpk`@P(Pl~jfD7OTklMTw`y82?W14o3IPH1TZL&K*PsvFEq z=E!m#5PsRT@MWch!UsOBPtNb0if33V6g--7A;Lp0+3?7}r+l-_BwQlGi=@OhXRKX) zR;MG?er}9?c%oz1;zd{3UMHMXdeJ9-h4<d){GVDGTV?qkigDi&ZE~8*(D@+RF=o;H zf0L3P`CMNeJ=L|PxcRPth(HSmLt}@EYf$`!s@B9Deim>0NXxHtRK+rw+L{{_um8Vd zHUIw%o^D-*iHb?m3CB}*+if)c|B_(=<IDX!9|R`!FeEUF*8d6f@mrZO?NFm*qqpBR z*-)JYyk2|^M;jDuUxEVRu9*s7VZ?il$m)*M7aa~I2Ir;w=cyW8;E-V8)RkeZRoHeS zf}P=;y!Xoh6`7vwlZIMbm9sgLKBt%8N>b?Jdg_+yvPkjJm7h1~{5v->Mag7SoLGkZ zT*b3?n-yo}yx?HyS^Zzx?a*^)H=zcJ=mh_clR}E8nYD$UJpB6V&qYC|jgxnA$0Zm( z5*JR`*7bmsNi2e0qGN;ff`36-hyN`uuy#5T_DbX5%$X~$G721>X3Bf@|C;ct|If7K z)m)jtxrjeN*oiT!!;1UFhtL0CPG>mMAkBAwqX}D$#DW8soSy$b3Tp5C;^Vf#Q6Rl1 zv|Rl6Jl+lof!|sU3N~pb|8{yYB@|p-399Y>Soer!?0EJf!md3~n4dY~K!DY%e3K@2 zzlMiDUpcr5Ff9$7e00Lf<bQ`57X*v3_wAd+$9-Vh&j<z9Mg=Bg=eyMwb6u`{WMj5r zYd(_EcuD#k>!X#q|1V1Py7)VuV#tzV<yVpDYWTchN6<#e{}(;{($9u%FAeE<CG#kv zg#8TfB1sNDj=&{Z|BbU+K05GuE^_>JV)`?c%!;ChqY8Y5Jlf{}RebAzrqo(4_#`lc z=`iCW12ztyC3~_vr~g|tgIierLj4uD#x@E03sPpsK#_XEN=FEsz1RO2UtII(%ESyo zJ~j^B&5tKcx)R8u=BhQd!N69RMeKvdjs*@0XFQS=QsTa;HJrG@FHw6nfN8dgXCOC6 zQ=0|X3EeBRD_Bw<_lhvH=t#*fI}+u1f?wm2{W&%s^~vfCuiJ!~OU{W{Uf7iKZ2o5^ zp*PX|1;URMG(8q^gf;d1_T2t&S5l;D_3!Dz2BX7Dh6_0u&L2=IG+X*td`<GRglxX4 z|3dye)Y$YuBA`ja*ZzONtNMQp7ad(Mv>50FNMGR&(VA^$dhGwd%?cU{d-h-16d){Q z*l<tD_y4Dk`)MVe0j-+67F$z(2N*Lo9I@eL;G54W7q=xO{+S3fC{pj6Y~d@}@m?d8 zZRTcnEfzP4#svZ<8j7q3+_vo#f2bjlu!%2U;ZMR0nM4DolozRz(+%0Su`u-b>z-K? zbcT^p^0Z5}ZVw};*=f6~_*GuM;oFlLb{IWe&_6fDVnWU04Y#ci^MyF@8*HCfdrhKF z!i;^oRi)EuF#)#R##LWV94S)rGL_cdSNHqZ;rT6=lk!eKEjawM$4REkGxp2(iW7{I z+P7jBd}YvI(IzeDAJzUe@r6nbd%M9>zGZU`v|nk~HGY0l(3fq7>x->IS^uy7|GePH zd3P6~1c`SqB^0G*|JyX7=%u9agDVqsKQMDLteu!p<|p-$x&Ee73eSv-u4eg;!i@3E zQZp<TNG(w7N-zI5nen#H99JO^R;i}5Cs}4%9Pz!Vcz`28Oed;=k&WGeA*4f!k;&%t zjsuLvCa--@$m<7P6l|JOWO3V@!$D0-NX8(Hi&Jkyk+|fFI~Goi1{+EqCowz>^%O}9 zvf%Q%@paD9D|hc%yp{^(uU0+t<LHwYM%5M0Gs~qGIhU<{Q?Il8$G>NWhc%a_-RjsZ zzRxjc^0fD^$vTDqPw(IV<Mgk;!OlUiH_f>A)Zp#&%vkq@U)lmqgN&WqH$J!j|NHzg z=_^dx;gXxrY${I8cH4AvqZl(o%ZvqK|36)_|MOC8XGC&iL9-j{lsT>&{Z;?}N=#Lm zT_5>?%VRgsuITuGpxkiJMntHz;#qou9Y?s=#w)@fPFqc%n0A`ss!QP21_qld?lf*T zB_;+X&z?CeXD!xjWGF1;;b#ihRw=vXWZlvK@Q}%t$4&uBEYCeMo}ByH=yGvk+refA ztwc+MFGg0JY^>k5``iBifBwpi19F$2a_1aUT6=oQ#@zkS4ldhT|8a-)mCXz@SehCP zR3uuZSz@@7nSxHYSX_+yANk;vp|87el=lgSxvV*!6CdbE2(&U6MWmb+c0O@^!zLkB zhKu*~>?icUHjw9YW;n5om!VYb|F71H|Nj#{%b6=2{LiY>B;vqZ)2uYv>7(5KFDDK# z+E@tRfBHdUisphXn{@7fWiQB-iJG$l6bMgkZNySQ%^s$<rZ(>M9qV>mKDg1;#J`|{ z!RAfxmXsGA2``v38g~`!kV{lx;9z8W_>zH}E$HxxSxLf)A6=Glu{SgwzUYyp_Diq8 zLE+ew;<bhc51hzbRz5S(a9!PAzWCqw|CyZZm=`ov&VXqb)9%}6-FG=w-<$rYPt@uh z+m^_LL`_CJXP3@~Edg#aD;&-%uK%>DdAi5JkTjhoZ7Ytoi|7^naIg?ay}%rxvFyx0 zAKRlnSEe${PTBuT;s25pzitoi!{Qp(RQ~@u@@?7w(@f2Cb(jMcwp_GkzB*y~+=UfO z|Gf^BV!kw4>)*2lUJlU>9)gVZuMW4QoS8V`DvQC<tdy;wKzL!ZgfC^sdyQJ%)<o|> z7lDPsolzWoUECYr<Zy4%lQ8=3apO_S&bp=p)7-w_sJ|L;AoX)f|0K}`Gga8G-~X<s zxAsx<=h}8>Mqf8uSA#W=kFNbYTOzSd>iHcVh9xU?jXvKt^{OtYt*o_KYhZq+c)h>B z|GbLC6XE{~y!E;L<ffL*<XkHBap9luzyJULzr6FTbN-(^bM0v%&q_X)`D+JdtvK!M z!qI8u|5-((QK4WRON30`X8o0^B0UWm3XNyDv+Mt?sQy1!#;<dM6N?xVXDj1U&xIku z{`Idtqyr|o{!co<#jf6%q+$P0uiHI4rRlP>x9fYwUz53uG+tfh;A^>bZ8|6r-dgtX zl}J2WDf!ipt3k8DF|hl~$5~8*4GC77Ggw#*)Z+rRBb`}hPGmd~!yv`#6UL^r(@{T5 z_Kcih(<V0tW=FoK0aJ7v<5yc-|6jA|wDj4^zLZlvABE)GGdH)_t<|0M`BZAamtC`F z>+G*g)vjE*a_MERYYsP>uRiuD(AMp`l&|;i|Nj|(R++r``zqq}Z(jTJpQpSxQgivN zS+ducEr)qM@8<KL&Mmyt@RCLEN}Q+46p!_HU7M2{m}ZDGdTiSkt^Jj!@c+M#MaDvm z92=!rR1WJ1hPh6Yz2yA$y8|bmH2+u2i8EN3_%$M`IQIXE=WX|#DDTLmSS)cdN_ob6 zeb#9l5}-i%XMaa5N8;U!KUcFF6l``0J>SBjFT}?y%-#6#fP_0+!=lEA9GrslCTKrQ zcp^Gwh7^;!X8*#uyDAQAb2B(H8E$B*GzfU^cYlWkTRVqXsi*aC<0XMCih>jM`7$K8 z#3?SnR?wKG)56etI{xFXFkhCV1!e|LZH!F|eP%K7F!~-_yyEiuFPHfu&)&3h>rX0) zQIYU_SmF>P5H-QHxt(*9y-7_<kS1f-g1GpA_xVeL^!g^S#%Ts#@%;a_OV;;)q=xC0 z#t=m#|0YHS(*qODatt0V{J)}~nWdy~!ThXgc1$YA64>N<_y4-l&LMCzt7ri$9~Y1I zRzI^_n+~WYq$!1R@cV)S;hRklAE->w)ohsAv4Vkx$0vXLSsC8Ims<@4*<L(5dbe?c zFvB9tXQ44FdO2(pYs{y-Fx~U>fuqwIF}Z2C6c)Tvb>W$Q{W9C9PRoUM%m&WcdJ1Wg zPZ`A6TDJXvTrwxB=SV|fgP4Mz!F&xS|Hd?L&3XUNF48qw9JMnh<;04ad<|O@a~V$Y zD|IgXG;QIm<O3<Olk7INUn%Jg+@KR;VI<-G|EGZI|Cb#%FPU>p<enzgAa*LGPDyF? z|40uh8GZe)EBYA(4jy87#C$6LC%<S|Nyi0Wj~zkrGWumg3A@fUFjzJ^I9AC|dcUTb z;oxK)m10fj4FUqqZH$eXRp(UK{r<-bY9{<P{Ueki@$N;463=PoU>6x~i6YT`Qv!Fh zUN?vkFv{sm%ZuJG(514#F=qA2mrG|{zP&P;v*kq6ofLN2<Q4z#?aq3tX7XC<>8>d= zE`M9vd*hBcdr-u}Oy7zb5<9}<4W*M3f_~;dZ8v_m;a*L_gCCMd78X5U*#0i@&t~4k z=QmG!YP{q_qSNK2*EgU4{9f<#>-{^N(=<MtpAWM&N;P?5^jt`j!H@gsBTp8w*=nzx zX0>blny~Cumbgwg<6|WsDHX8@rv<qyE2s7bcK(l^(Ey6nXHGhN89UxBm-RSy`j_ak z4rY_?hQ+b<KXyy2ht6j^($1C{y{2ehV~5A1ZeJF@Jb{3K!ebiC`ku$N^-CR>Z+x)8 z;9vmD0f9dU6;#;|I7l`oXfqn{h?&%+`HQ9+D!An@=Ce}YWX$N^?9MWAfgq!oz*aFu zCYSDM2mV{~*a{r}@W(~_46BDF*NqE&ORs*r^056@o_3McE;eDw)!v>$Z<d|S$_@4m zfBP!4t!8b5_~TsBzyj7-r~BJKRjm`<FH?Qzl_ihqG_TpI_cq;@;d*zadU}=dmZ`?| z6P%VGNpxzOccRrV`OlNLXO#J-zBo8lYpYVR$(OPRfAeLZ-kx%KLq^XkpZ}jX9J%VZ zL@Y$&e2InK`McHSpLhPgUp=?X_)h)ad%y3Pu5{+Ta(SJD&5Vly8;Z^RwYSfY51n1N z*RJ+3|G9a0Hym00Z}ObGHJ`Ve3$e;6Fqxd=zuIFTQM|vk<ZqTmde}4tWtS--!6H+p zNxqF=(l563`qQlkQaHrcEicr_ic?vXxPObMO!5pi%WVY<rhhX|lInF`WPD}M>6%lU z|2pzVy?=SDeA(lmRat2}0|OJ&(gYeJ+`h)`;Ol$1HU9rUDMk;c1y@|ftn~l?zZx30 zEi^PfO_a~o`PS?I|3k%eLbJc>e`aOOKmGszvsDc<41{OC$p6p7qW$j`Q?m5yr}|SF zTBS96QVf=?ifUlE|B!=o!{G_6h8J2YZ~y=AR{5?cS}Ue)wNa~ZbDm4g$H$77m!ICM zDt7<>zlX|f9A^Z@)gxVRa{4iR<XHHSDNUR8j)kY(%kZlV^)1S~3N}l&%!y%oDJJw| z<DnoHF3t;LMvLCXgJ&&&sl;$ii#x??`E}b*;SL=>HpT@d;d;Nj!;ESs#JZnro7Gvk zuu;Rr!sgRaQHJ^!C#EnB-bX=csZ-oHDjEy??CA5k_|^6Q|NsC0&7YZ+DyusGU%KD4 zwy^X&?-?Vj(rrHVw8W)nvrS#aP~W0-`^<z(DMz-aHEz7Ic!T+k__AG>o%g8iGMWDW z|Np-$FU)?L;$jt0qL%-p<o*8tpAC+D7wTN)`Y(fJ&d0!iKOP^CKk_#xH1&PUZi#6O z^+z4AB;T4iQ&{$-<Yp!tEna^Mx1Ujs989a3>;GxSgr?6GkEl3d9Te6zD>QLJ1IV<u z{1?wT$T7GtFgw_k%j(P6(O-1r_0n|=`7Mqsf8V(tsu;0UC}`3(ey2?vSFCGWto`hI z{r~^}e^>d18*U8}Ilp{%$<vgF(i=?^)j_7c<2%FTBFEsqLDVq1Va8@_ey#g@2A7(- zLqQ(hx|45e^|d3rPIa_;UeRWGxZ;xR%$&UfXF<W#wWKPtH(Fb<Ltnpkd&-+=V~}Z| z1&sL|<QR^w)J;_vNSpd;+f3^%L5i9=6I>bUTNKXrH%(L&I&LlWdx=PULsD1|n@f@) zw}WSu{r_JaH$M32nD9rRRrOE4GeMaVY#M))6v%B$lwFVLRhrurvAFT^vn8l9)VC^s zp7v>0d)0%B$HE;WkDK~V-g}n6C(Pu=mgWEd|Nk{>%GJB)PIMe>w3uQj5|DfGKghIi z0=vr`<QUpFzPlACtrghEt!n(gLtA$LmkuZ9Du((N#@CZYZG|5`Ro97Hax=zK>t5Fq zC(}LCK!Nvf`}bSznkS0eB<}4k$@Kx5_C=ui9muq;F`hOoTs(!#+B#crf_&-xu&!;V zwn=H<xt4dgl@IQ@Jmqwy!4a`yfBXOc|JVOAJF#8K@^sd+V5QwgA>I6E`W}N!`^>-a z6gW<`EEQEuUd&u|e6GgQ&}=6=D^SA!JykEXDWELs)vo4>^JW`UFO~mXXtPsN9OTu% zoX^8UHLq;ZjH>@DuCBBZWZGB3YAJ9m1Z{U+xV3y*e|mE4&CoZG7K5^pBCAx{)q^=t zo%ftGO3PM=IV97rW%KFol@*|=_W$p<-g<WKc}S^Z_Svg-yEcPN`@okCj?*Q(=N#W% z8yWPXY{s^yHqAat47DvzkJ_wkW^g#X;9Pjb)qTo!mLiskMZT{2pak;m?ut!Y`MR=a zl`P)V`sU16mk^L?-vxEpz;1I$U;iXg<DK=2`9EHs;YkDK$zS)@Z?QZaY*oFe$@86- z_~goO({J+n?gC9z{8IjY_eJpLxu;%D_clDWVp`I!)gaS83-EA(P0Mmu78Y6`b^d?S zbm<L={?4FaJ2Pw6SI-My#00K9>-V^x`es|giBnN+TfTh-W%K{;xmUWMt@KKdo8t7# zHrEJj8vh?A2RR1Ug<4gi>vARk$}*j*^a*S8arAWsVPic*1A|pW0g!25_&?WyOj}Bn z4t$D0rhOHto(1+PK7~ZdflT|tzx$aDD4!Cg1D~S*p9PM5VqjqY!@$76fT9opFTjYf literal 0 HcmV?d00001 diff --git a/public/site_libs/quarto-html/anchor.min.js b/public/site_libs/quarto-html/anchor.min.js new file mode 100644 index 0000000..1c2b86f --- /dev/null +++ b/public/site_libs/quarto-html/anchor.min.js @@ -0,0 +1,9 @@ +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat +// +// AnchorJS - v4.3.1 - 2021-04-17 +// https://www.bryanbraun.com/anchorjs/ +// Copyright (c) 2021 Bryan Braun; Licensed MIT +// +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat +!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(this,function(){"use strict";return function(A){function d(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function w(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],d(this.options),this.isTouchDevice=function(){return Boolean("ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(A){var e,t,o,i,n,s,a,c,r,l,h,u,p=[];if(d(this.options),"touch"===(l=this.options.visible)&&(l=this.isTouchDevice()?"always":"hover"),0===(e=w(A=A||"h2, h3, h4, h5, h6")).length)return this;for(null===document.head.querySelector("style.anchorjs")&&((u=document.createElement("style")).className="anchorjs",u.appendChild(document.createTextNode("")),void 0===(A=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(u):document.head.insertBefore(u,A),u.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",u.sheet.cssRules.length),u.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",u.sheet.cssRules.length),u.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",u.sheet.cssRules.length),u.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',u.sheet.cssRules.length)),u=document.querySelectorAll("[id]"),t=[].map.call(u,function(A){return A.id}),i=0;i<e.length;i++)if(this.hasAnchorJSLink(e[i]))p.push(i);else{if(e[i].hasAttribute("id"))o=e[i].getAttribute("id");else if(e[i].hasAttribute("data-anchor-id"))o=e[i].getAttribute("data-anchor-id");else{for(c=a=this.urlify(e[i].textContent),s=0;n=t.indexOf(c=void 0!==n?a+"-"+s:c),s+=1,-1!==n;);n=void 0,t.push(c),e[i].setAttribute("id",c),o=c}(r=document.createElement("a")).className="anchorjs-link "+this.options.class,r.setAttribute("aria-label",this.options.ariaLabel),r.setAttribute("data-anchorjs-icon",this.options.icon),this.options.titleText&&(r.title=this.options.titleText),h=document.querySelector("base")?window.location.pathname+window.location.search:"",h=this.options.base||h,r.href=h+"#"+o,"always"===l&&(r.style.opacity="1"),""===this.options.icon&&(r.style.font="1em/1 anchorjs-icons","left"===this.options.placement&&(r.style.lineHeight="inherit")),"left"===this.options.placement?(r.style.position="absolute",r.style.marginLeft="-1em",r.style.paddingRight=".5em",e[i].insertBefore(r,e[i].firstChild)):(r.style.paddingLeft=".375em",e[i].appendChild(r))}for(i=0;i<p.length;i++)e.splice(p[i]-i,1);return this.elements=this.elements.concat(e),this},this.remove=function(A){for(var e,t,o=w(A),i=0;i<o.length;i++)(t=o[i].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(o[i]))&&this.elements.splice(e,1),o[i].removeChild(t));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(A){var e=document.createElement("textarea");return e.innerHTML=A,A=e.value,this.options.truncate||d(this.options),A.trim().replace(/'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}}); +// @license-end \ No newline at end of file diff --git a/public/site_libs/quarto-html/popper.min.js b/public/site_libs/quarto-html/popper.min.js new file mode 100644 index 0000000..2269d66 --- /dev/null +++ b/public/site_libs/quarto-html/popper.min.js @@ -0,0 +1,6 @@ +/** + * @popperjs/core v2.11.4 - MIT License + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(e,t){void 0===t&&(t=!1);var n=e.getBoundingClientRect(),o=1,i=1;if(r(e)&&t){var a=e.offsetHeight,f=e.offsetWidth;f>0&&(o=s(n.width)/f||1),a>0&&(i=s(n.height)/a||1)}return{width:n.width/o,height:n.height/i,top:n.top/i,right:n.right/o,bottom:n.bottom/i,left:n.left/o,x:n.left/o,y:n.top/i}}function c(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function p(e){return e?(e.nodeName||"").toLowerCase():null}function u(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function l(e){return f(u(e)).left+c(e).scrollLeft}function d(e){return t(e).getComputedStyle(e)}function h(e){var t=d(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function m(e,n,o){void 0===o&&(o=!1);var i,a,d=r(n),m=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),v=u(n),g=f(e,m),y={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(d||!d&&!o)&&(("body"!==p(n)||h(v))&&(y=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:c(i)),r(n)?((b=f(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):v&&(b.x=l(v))),{x:g.left+y.scrollLeft-b.x,y:g.top+y.scrollTop-b.y,width:g.width,height:g.height}}function v(e){var t=f(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function g(e){return"html"===p(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||u(e)}function y(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:r(e)&&h(e)?e:y(g(e))}function b(e,n){var r;void 0===n&&(n=[]);var o=y(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],h(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(b(g(s)))}function x(e){return["table","td","th"].indexOf(p(e))>=0}function w(e){return r(e)&&"fixed"!==d(e).position?e.offsetParent:null}function O(e){for(var n=t(e),i=w(e);i&&x(i)&&"static"===d(i).position;)i=w(i);return i&&("html"===p(i)||"body"===p(i)&&"static"===d(i).position)?n:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&r(e)&&"fixed"===d(e).position)return null;var n=g(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(p(n))<0;){var i=d(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var j="top",E="bottom",D="right",A="left",L="auto",P=[j,E,D,A],M="start",k="end",W="viewport",B="popper",H=P.reduce((function(e,t){return e.concat([t+"-"+M,t+"-"+k])}),[]),T=[].concat(P,[L]).reduce((function(e,t){return e.concat([t,t+"-"+M,t+"-"+k])}),[]),R=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function S(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function q(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function V(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function N(e,r){return r===W?V(function(e){var n=t(e),r=u(e),o=n.visualViewport,i=r.clientWidth,a=r.clientHeight,s=0,f=0;return o&&(i=o.width,a=o.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=o.offsetLeft,f=o.offsetTop)),{width:i,height:a,x:s+l(e),y:f}}(e)):n(r)?function(e){var t=f(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(r):V(function(e){var t,n=u(e),r=c(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=i(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=i(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),f=-r.scrollLeft+l(e),p=-r.scrollTop;return"rtl"===d(o||n).direction&&(f+=i(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:f,y:p}}(u(e)))}function I(e,t,o){var s="clippingParents"===t?function(e){var t=b(g(e)),o=["absolute","fixed"].indexOf(d(e).position)>=0&&r(e)?O(e):e;return n(o)?t.filter((function(e){return n(e)&&q(e,o)&&"body"!==p(e)})):[]}(e):[].concat(t),f=[].concat(s,[o]),c=f[0],u=f.reduce((function(t,n){var r=N(e,n);return t.top=i(r.top,t.top),t.right=a(r.right,t.right),t.bottom=a(r.bottom,t.bottom),t.left=i(r.left,t.left),t}),N(e,c));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function _(e){return e.split("-")[1]}function F(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function U(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?C(o):null,a=o?_(o):null,s=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(i){case j:t={x:s,y:n.y-r.height};break;case E:t={x:s,y:n.y+n.height};break;case D:t={x:n.x+n.width,y:f};break;case A:t={x:n.x-r.width,y:f};break;default:t={x:n.x,y:n.y}}var c=i?F(i):null;if(null!=c){var p="y"===c?"height":"width";switch(a){case M:t[c]=t[c]-(n[p]/2-r[p]/2);break;case k:t[c]=t[c]+(n[p]/2-r[p]/2)}}return t}function z(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function X(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function Y(e,t){void 0===t&&(t={});var r=t,o=r.placement,i=void 0===o?e.placement:o,a=r.boundary,s=void 0===a?"clippingParents":a,c=r.rootBoundary,p=void 0===c?W:c,l=r.elementContext,d=void 0===l?B:l,h=r.altBoundary,m=void 0!==h&&h,v=r.padding,g=void 0===v?0:v,y=z("number"!=typeof g?g:X(g,P)),b=d===B?"reference":B,x=e.rects.popper,w=e.elements[m?b:d],O=I(n(w)?w:w.contextElement||u(e.elements.popper),s,p),A=f(e.elements.reference),L=U({reference:A,element:x,strategy:"absolute",placement:i}),M=V(Object.assign({},x,L)),k=d===B?M:A,H={top:O.top-k.top+y.top,bottom:k.bottom-O.bottom+y.bottom,left:O.left-k.left+y.left,right:k.right-O.right+y.right},T=e.modifiersData.offset;if(d===B&&T){var R=T[i];Object.keys(H).forEach((function(e){var t=[D,E].indexOf(e)>=0?1:-1,n=[j,E].indexOf(e)>=0?"y":"x";H[e]+=R[n]*t}))}return H}var G={placement:"bottom",modifiers:[],strategy:"absolute"};function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function K(e){void 0===e&&(e={});var t=e,r=t.defaultModifiers,o=void 0===r?[]:r,i=t.defaultOptions,a=void 0===i?G:i;return function(e,t,r){void 0===r&&(r=a);var i,s,f={placement:"bottom",orderedModifiers:[],options:Object.assign({},G,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],p=!1,u={state:f,setOptions:function(r){var i="function"==typeof r?r(f.options):r;l(),f.options=Object.assign({},a,f.options,i),f.scrollParents={reference:n(e)?b(e):e.contextElement?b(e.contextElement):[],popper:b(t)};var s,p,d=function(e){var t=S(e);return R.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}((s=[].concat(o,f.options.modifiers),p=s.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{}),Object.keys(p).map((function(e){return p[e]}))));return f.orderedModifiers=d.filter((function(e){return e.enabled})),f.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,o=e.effect;if("function"==typeof o){var i=o({state:f,name:t,instance:u,options:r}),a=function(){};c.push(i||a)}})),u.update()},forceUpdate:function(){if(!p){var e=f.elements,t=e.reference,n=e.popper;if(J(t,n)){f.rects={reference:m(t,O(n),"fixed"===f.options.strategy),popper:v(n)},f.reset=!1,f.placement=f.options.placement,f.orderedModifiers.forEach((function(e){return f.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<f.orderedModifiers.length;r++)if(!0!==f.reset){var o=f.orderedModifiers[r],i=o.fn,a=o.options,s=void 0===a?{}:a,c=o.name;"function"==typeof i&&(f=i({state:f,options:s,name:c,instance:u})||f)}else f.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){u.forceUpdate(),e(f)}))},function(){return s||(s=new Promise((function(e){Promise.resolve().then((function(){s=void 0,e(i())}))}))),s}),destroy:function(){l(),p=!0}};if(!J(e,t))return u;function l(){c.forEach((function(e){return e()})),c=[]}return u.setOptions(r).then((function(e){!p&&r.onFirstUpdate&&r.onFirstUpdate(e)})),u}}var Q={passive:!0};var Z={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,r=e.instance,o=e.options,i=o.scroll,a=void 0===i||i,s=o.resize,f=void 0===s||s,c=t(n.elements.popper),p=[].concat(n.scrollParents.reference,n.scrollParents.popper);return a&&p.forEach((function(e){e.addEventListener("scroll",r.update,Q)})),f&&c.addEventListener("resize",r.update,Q),function(){a&&p.forEach((function(e){e.removeEventListener("scroll",r.update,Q)})),f&&c.removeEventListener("resize",r.update,Q)}},data:{}};var $={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=U({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},ee={top:"auto",right:"auto",bottom:"auto",left:"auto"};function te(e){var n,r=e.popper,o=e.popperRect,i=e.placement,a=e.variation,f=e.offsets,c=e.position,p=e.gpuAcceleration,l=e.adaptive,h=e.roundOffsets,m=e.isFixed,v=f.x,g=void 0===v?0:v,y=f.y,b=void 0===y?0:y,x="function"==typeof h?h({x:g,y:b}):{x:g,y:b};g=x.x,b=x.y;var w=f.hasOwnProperty("x"),L=f.hasOwnProperty("y"),P=A,M=j,W=window;if(l){var B=O(r),H="clientHeight",T="clientWidth";if(B===t(r)&&"static"!==d(B=u(r)).position&&"absolute"===c&&(H="scrollHeight",T="scrollWidth"),B=B,i===j||(i===A||i===D)&&a===k)M=E,b-=(m&&B===W&&W.visualViewport?W.visualViewport.height:B[H])-o.height,b*=p?1:-1;if(i===A||(i===j||i===E)&&a===k)P=D,g-=(m&&B===W&&W.visualViewport?W.visualViewport.width:B[T])-o.width,g*=p?1:-1}var R,S=Object.assign({position:c},l&&ee),C=!0===h?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:s(t*r)/r||0,y:s(n*r)/r||0}}({x:g,y:b}):{x:g,y:b};return g=C.x,b=C.y,p?Object.assign({},S,((R={})[M]=L?"0":"",R[P]=w?"0":"",R.transform=(W.devicePixelRatio||1)<=1?"translate("+g+"px, "+b+"px)":"translate3d("+g+"px, "+b+"px, 0)",R)):Object.assign({},S,((n={})[M]=L?b+"px":"",n[P]=w?g+"px":"",n.transform="",n))}var ne={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,f=void 0===s||s,c={placement:C(t.placement),variation:_(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,te(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:f})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,te(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var re={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},i=t.elements[e];r(i)&&p(i)&&(Object.assign(i.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});r(o)&&p(o)&&(Object.assign(o.style,a),Object.keys(i).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]};var oe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,a=T.reduce((function(e,n){return e[n]=function(e,t,n){var r=C(e),o=[A,j].indexOf(r)>=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[A,D].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],f=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=f,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}},ie={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(e){return e.replace(/left|right|bottom|top/g,(function(e){return ie[e]}))}var se={start:"end",end:"start"};function fe(e){return e.replace(/start|end/g,(function(e){return se[e]}))}function ce(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=void 0===f?T:f,p=_(r),u=p?s?H:H.filter((function(e){return _(e)===p})):P,l=u.filter((function(e){return c.indexOf(e)>=0}));0===l.length&&(l=u);var d=l.reduce((function(t,n){return t[n]=Y(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[C(n)],t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}var pe={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,f=n.fallbackPlacements,c=n.padding,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.flipVariations,h=void 0===d||d,m=n.allowedAutoPlacements,v=t.options.placement,g=C(v),y=f||(g===v||!h?[ae(v)]:function(e){if(C(e)===L)return[];var t=ae(e);return[fe(e),t,fe(t)]}(v)),b=[v].concat(y).reduce((function(e,n){return e.concat(C(n)===L?ce(t,{placement:n,boundary:p,rootBoundary:u,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,O=new Map,P=!0,k=b[0],W=0;W<b.length;W++){var B=b[W],H=C(B),T=_(B)===M,R=[j,E].indexOf(H)>=0,S=R?"width":"height",q=Y(t,{placement:B,boundary:p,rootBoundary:u,altBoundary:l,padding:c}),V=R?T?D:A:T?E:j;x[S]>w[S]&&(V=ae(V));var N=ae(V),I=[];if(i&&I.push(q[H]<=0),s&&I.push(q[V]<=0,q[N]<=0),I.every((function(e){return e}))){k=B,P=!1;break}O.set(B,I)}if(P)for(var F=function(e){var t=b.find((function(t){var n=O.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},U=h?3:1;U>0;U--){if("break"===F(U))break}t.placement!==k&&(t.modifiersData[r]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ue(e,t,n){return i(e,a(t,n))}var le={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=void 0===o||o,f=n.altAxis,c=void 0!==f&&f,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.padding,h=n.tether,m=void 0===h||h,g=n.tetherOffset,y=void 0===g?0:g,b=Y(t,{boundary:p,rootBoundary:u,padding:d,altBoundary:l}),x=C(t.placement),w=_(t.placement),L=!w,P=F(x),k="x"===P?"y":"x",W=t.modifiersData.popperOffsets,B=t.rects.reference,H=t.rects.popper,T="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,R="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,q={x:0,y:0};if(W){if(s){var V,N="y"===P?j:A,I="y"===P?E:D,U="y"===P?"height":"width",z=W[P],X=z+b[N],G=z-b[I],J=m?-H[U]/2:0,K=w===M?B[U]:H[U],Q=w===M?-H[U]:-B[U],Z=t.elements.arrow,$=m&&Z?v(Z):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[N],ne=ee[I],re=ue(0,B[U],$[U]),oe=L?B[U]/2-J-re-te-R.mainAxis:K-re-te-R.mainAxis,ie=L?-B[U]/2+J+re+ne+R.mainAxis:Q+re+ne+R.mainAxis,ae=t.elements.arrow&&O(t.elements.arrow),se=ae?"y"===P?ae.clientTop||0:ae.clientLeft||0:0,fe=null!=(V=null==S?void 0:S[P])?V:0,ce=z+ie-fe,pe=ue(m?a(X,z+oe-fe-se):X,z,m?i(G,ce):G);W[P]=pe,q[P]=pe-z}if(c){var le,de="x"===P?j:A,he="x"===P?E:D,me=W[k],ve="y"===k?"height":"width",ge=me+b[de],ye=me-b[he],be=-1!==[j,A].indexOf(x),xe=null!=(le=null==S?void 0:S[k])?le:0,we=be?ge:me-B[ve]-H[ve]-xe+R.altAxis,Oe=be?me+B[ve]+H[ve]-xe-R.altAxis:ye,je=m&&be?function(e,t,n){var r=ue(e,t,n);return r>n?n:r}(we,me,Oe):ue(m?we:ge,me,m?Oe:ye);W[k]=je,q[k]=je-me}t.modifiersData[r]=q}},requiresIfExists:["offset"]};var de={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=C(n.placement),f=F(s),c=[A,D].indexOf(s)>=0?"height":"width";if(i&&a){var p=function(e,t){return z("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:X(e,P))}(o.padding,n),u=v(i),l="y"===f?j:A,d="y"===f?E:D,h=n.rects.reference[c]+n.rects.reference[f]-a[f]-n.rects.popper[c],m=a[f]-n.rects.reference[f],g=O(i),y=g?"y"===f?g.clientHeight||0:g.clientWidth||0:0,b=h/2-m/2,x=p[l],w=y-u[c]-p[d],L=y/2-u[c]/2+b,M=ue(x,L,w),k=f;n.modifiersData[r]=((t={})[k]=M,t.centerOffset=M-L,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&q(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function he(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function me(e){return[j,D,E,A].some((function(t){return e[t]>=0}))}var ve={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=Y(t,{elementContext:"reference"}),s=Y(t,{altBoundary:!0}),f=he(a,r),c=he(s,o,i),p=me(f),u=me(c);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":u})}},ge=K({defaultModifiers:[Z,$,ne,re]}),ye=[Z,$,ne,re,oe,pe,le,de,ve],be=K({defaultModifiers:ye});e.applyStyles=re,e.arrow=de,e.computeStyles=ne,e.createPopper=be,e.createPopperLite=ge,e.defaultModifiers=ye,e.detectOverflow=Y,e.eventListeners=Z,e.flip=pe,e.hide=ve,e.offset=oe,e.popperGenerator=K,e.popperOffsets=$,e.preventOverflow=le,Object.defineProperty(e,"__esModule",{value:!0})})); + diff --git a/public/site_libs/quarto-html/quarto-html.min.css b/public/site_libs/quarto-html/quarto-html.min.css new file mode 100644 index 0000000..c2857c3 --- /dev/null +++ b/public/site_libs/quarto-html/quarto-html.min.css @@ -0,0 +1 @@ +/*# sourceMappingURL=0a6b880beb84f9b6f36107a76f82c5b1.css.map */ diff --git a/public/site_libs/quarto-html/quarto-syntax-highlighting.css b/public/site_libs/quarto-html/quarto-syntax-highlighting.css new file mode 100644 index 0000000..36cb328 --- /dev/null +++ b/public/site_libs/quarto-html/quarto-syntax-highlighting.css @@ -0,0 +1,171 @@ +/* quarto syntax highlight colors */ +:root { + --quarto-hl-ot-color: #003B4F; + --quarto-hl-at-color: #657422; + --quarto-hl-ss-color: #20794D; + --quarto-hl-an-color: #5E5E5E; + --quarto-hl-fu-color: #4758AB; + --quarto-hl-st-color: #20794D; + --quarto-hl-cf-color: #003B4F; + --quarto-hl-op-color: #5E5E5E; + --quarto-hl-er-color: #AD0000; + --quarto-hl-bn-color: #AD0000; + --quarto-hl-al-color: #AD0000; + --quarto-hl-va-color: #111111; + --quarto-hl-bu-color: inherit; + --quarto-hl-ex-color: inherit; + --quarto-hl-pp-color: #AD0000; + --quarto-hl-in-color: #5E5E5E; + --quarto-hl-vs-color: #20794D; + --quarto-hl-wa-color: #5E5E5E; + --quarto-hl-do-color: #5E5E5E; + --quarto-hl-im-color: #00769E; + --quarto-hl-ch-color: #20794D; + --quarto-hl-dt-color: #AD0000; + --quarto-hl-fl-color: #AD0000; + --quarto-hl-co-color: #5E5E5E; + --quarto-hl-cv-color: #5E5E5E; + --quarto-hl-cn-color: #8f5902; + --quarto-hl-sc-color: #5E5E5E; + --quarto-hl-dv-color: #AD0000; + --quarto-hl-kw-color: #003B4F; +} + +/* other quarto variables */ +:root { + --quarto-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +pre > code.sourceCode > span { + color: #003B4F; +} + +code span { + color: #003B4F; +} + +code.sourceCode > span { + color: #003B4F; +} + +div.sourceCode, +div.sourceCode pre.sourceCode { + color: #003B4F; +} + +code span.ot { + color: #003B4F; +} + +code span.at { + color: #657422; +} + +code span.ss { + color: #20794D; +} + +code span.an { + color: #5E5E5E; +} + +code span.fu { + color: #4758AB; +} + +code span.st { + color: #20794D; +} + +code span.cf { + color: #003B4F; +} + +code span.op { + color: #5E5E5E; +} + +code span.er { + color: #AD0000; +} + +code span.bn { + color: #AD0000; +} + +code span.al { + color: #AD0000; +} + +code span.va { + color: #111111; +} + +code span.pp { + color: #AD0000; +} + +code span.in { + color: #5E5E5E; +} + +code span.vs { + color: #20794D; +} + +code span.wa { + color: #5E5E5E; + font-style: italic; +} + +code span.do { + color: #5E5E5E; + font-style: italic; +} + +code span.im { + color: #00769E; +} + +code span.ch { + color: #20794D; +} + +code span.dt { + color: #AD0000; +} + +code span.fl { + color: #AD0000; +} + +code span.co { + color: #5E5E5E; +} + +code span.cv { + color: #5E5E5E; + font-style: italic; +} + +code span.cn { + color: #8f5902; +} + +code span.sc { + color: #5E5E5E; +} + +code span.dv { + color: #AD0000; +} + +code span.kw { + color: #003B4F; +} + +.prevent-inlining { + content: "</"; +} + +/*# sourceMappingURL=debc5d5d77c3f9108843748ff7464032.css.map */ diff --git a/public/site_libs/quarto-html/quarto.js b/public/site_libs/quarto-html/quarto.js new file mode 100644 index 0000000..c183855 --- /dev/null +++ b/public/site_libs/quarto-html/quarto.js @@ -0,0 +1,760 @@ +const sectionChanged = new CustomEvent("quarto-sectionChanged", { + detail: {}, + bubbles: true, + cancelable: false, + composed: false, +}); + +window.document.addEventListener("DOMContentLoaded", function (_event) { + const tocEl = window.document.querySelector('nav.toc-active[role="doc-toc"]'); + const sidebarEl = window.document.getElementById("quarto-sidebar"); + const leftTocEl = window.document.getElementById("quarto-sidebar-toc-left"); + const marginSidebarEl = window.document.getElementById( + "quarto-margin-sidebar" + ); + // function to determine whether the element has a previous sibling that is active + const prevSiblingIsActiveLink = (el) => { + const sibling = el.previousElementSibling; + if (sibling && sibling.tagName === "A") { + return sibling.classList.contains("active"); + } else { + return false; + } + }; + + // fire slideEnter for bootstrap tab activations (for htmlwidget resize behavior) + function fireSlideEnter(e) { + const event = window.document.createEvent("Event"); + event.initEvent("slideenter", true, true); + window.document.dispatchEvent(event); + } + const tabs = window.document.querySelectorAll('a[data-bs-toggle="tab"]'); + tabs.forEach((tab) => { + tab.addEventListener("shown.bs.tab", fireSlideEnter); + }); + + // Track scrolling and mark TOC links as active + // get table of contents and sidebar (bail if we don't have at least one) + const tocLinks = tocEl + ? [...tocEl.querySelectorAll("a[data-scroll-target]")] + : []; + const makeActive = (link) => tocLinks[link].classList.add("active"); + const removeActive = (link) => tocLinks[link].classList.remove("active"); + const removeAllActive = () => + [...Array(tocLinks.length).keys()].forEach((link) => removeActive(link)); + + // activate the anchor for a section associated with this TOC entry + tocLinks.forEach((link) => { + link.addEventListener("click", () => { + if (link.href.indexOf("#") !== -1) { + const anchor = link.href.split("#")[1]; + const heading = window.document.querySelector( + `[data-anchor-id=${anchor}]` + ); + if (heading) { + // Add the class + heading.classList.add("reveal-anchorjs-link"); + + // function to show the anchor + const handleMouseout = () => { + heading.classList.remove("reveal-anchorjs-link"); + heading.removeEventListener("mouseout", handleMouseout); + }; + + // add a function to clear the anchor when the user mouses out of it + heading.addEventListener("mouseout", handleMouseout); + } + } + }); + }); + + const sections = tocLinks.map((link) => { + const target = link.getAttribute("data-scroll-target"); + if (target.startsWith("#")) { + return window.document.getElementById(decodeURI(`${target.slice(1)}`)); + } else { + return window.document.querySelector(decodeURI(`${target}`)); + } + }); + + const sectionMargin = 200; + let currentActive = 0; + // track whether we've initialized state the first time + let init = false; + + const updateActiveLink = () => { + // The index from bottom to top (e.g. reversed list) + let sectionIndex = -1; + if ( + window.innerHeight + window.pageYOffset >= + window.document.body.offsetHeight + ) { + sectionIndex = 0; + } else { + sectionIndex = [...sections].reverse().findIndex((section) => { + if (section) { + return window.pageYOffset >= section.offsetTop - sectionMargin; + } else { + return false; + } + }); + } + if (sectionIndex > -1) { + const current = sections.length - sectionIndex - 1; + if (current !== currentActive) { + removeAllActive(); + currentActive = current; + makeActive(current); + if (init) { + window.dispatchEvent(sectionChanged); + } + init = true; + } + } + }; + + const inHiddenRegion = (top, bottom, hiddenRegions) => { + for (const region of hiddenRegions) { + if (top <= region.bottom && bottom >= region.top) { + return true; + } + } + return false; + }; + + const categorySelector = "header.quarto-title-block .quarto-category"; + const activateCategories = (href) => { + // Find any categories + // Surround them with a link pointing back to: + // #category=Authoring + try { + const categoryEls = window.document.querySelectorAll(categorySelector); + for (const categoryEl of categoryEls) { + const categoryText = categoryEl.textContent; + if (categoryText) { + const link = `${href}#category=${encodeURIComponent(categoryText)}`; + const linkEl = window.document.createElement("a"); + linkEl.setAttribute("href", link); + for (const child of categoryEl.childNodes) { + linkEl.append(child); + } + categoryEl.appendChild(linkEl); + } + } + } catch { + // Ignore errors + } + }; + function hasTitleCategories() { + return window.document.querySelector(categorySelector) !== null; + } + + function offsetRelativeUrl(url) { + const offset = getMeta("quarto:offset"); + return offset ? offset + url : url; + } + + function offsetAbsoluteUrl(url) { + const offset = getMeta("quarto:offset"); + const baseUrl = new URL(offset, window.location); + + const projRelativeUrl = url.replace(baseUrl, ""); + if (projRelativeUrl.startsWith("/")) { + return projRelativeUrl; + } else { + return "/" + projRelativeUrl; + } + } + + // read a meta tag value + function getMeta(metaName) { + const metas = window.document.getElementsByTagName("meta"); + for (let i = 0; i < metas.length; i++) { + if (metas[i].getAttribute("name") === metaName) { + return metas[i].getAttribute("content"); + } + } + return ""; + } + + async function findAndActivateCategories() { + const currentPagePath = offsetAbsoluteUrl(window.location.href); + const response = await fetch(offsetRelativeUrl("listings.json")); + if (response.status == 200) { + return response.json().then(function (listingPaths) { + const listingHrefs = []; + for (const listingPath of listingPaths) { + const pathWithoutLeadingSlash = listingPath.listing.substring(1); + for (const item of listingPath.items) { + if ( + item === currentPagePath || + item === currentPagePath + "index.html" + ) { + // Resolve this path against the offset to be sure + // we already are using the correct path to the listing + // (this adjusts the listing urls to be rooted against + // whatever root the page is actually running against) + const relative = offsetRelativeUrl(pathWithoutLeadingSlash); + const baseUrl = window.location; + const resolvedPath = new URL(relative, baseUrl); + listingHrefs.push(resolvedPath.pathname); + break; + } + } + } + + // Look up the tree for a nearby linting and use that if we find one + const nearestListing = findNearestParentListing( + offsetAbsoluteUrl(window.location.pathname), + listingHrefs + ); + if (nearestListing) { + activateCategories(nearestListing); + } else { + // See if the referrer is a listing page for this item + const referredRelativePath = offsetAbsoluteUrl(document.referrer); + const referrerListing = listingHrefs.find((listingHref) => { + const isListingReferrer = + listingHref === referredRelativePath || + listingHref === referredRelativePath + "index.html"; + return isListingReferrer; + }); + + if (referrerListing) { + // Try to use the referrer if possible + activateCategories(referrerListing); + } else if (listingHrefs.length > 0) { + // Otherwise, just fall back to the first listing + activateCategories(listingHrefs[0]); + } + } + }); + } + } + if (hasTitleCategories()) { + findAndActivateCategories(); + } + + const findNearestParentListing = (href, listingHrefs) => { + if (!href || !listingHrefs) { + return undefined; + } + // Look up the tree for a nearby linting and use that if we find one + const relativeParts = href.substring(1).split("/"); + while (relativeParts.length > 0) { + const path = relativeParts.join("/"); + for (const listingHref of listingHrefs) { + if (listingHref.startsWith(path)) { + return listingHref; + } + } + relativeParts.pop(); + } + + return undefined; + }; + + const manageSidebarVisiblity = (el, placeholderDescriptor) => { + let isVisible = true; + + return (hiddenRegions) => { + if (el === null) { + return; + } + + // Find the last element of the TOC + const lastChildEl = el.lastElementChild; + + if (lastChildEl) { + // Find the top and bottom o the element that is being managed + const elTop = el.offsetTop; + const elBottom = + elTop + lastChildEl.offsetTop + lastChildEl.offsetHeight; + + // Converts the sidebar to a menu + const convertToMenu = () => { + for (const child of el.children) { + child.style.opacity = 0; + child.style.overflow = "hidden"; + } + + const toggleContainer = window.document.createElement("div"); + toggleContainer.style.width = "100%"; + toggleContainer.classList.add("zindex-over-content"); + toggleContainer.classList.add("quarto-sidebar-toggle"); + toggleContainer.classList.add("headroom-target"); // Marks this to be managed by headeroom + toggleContainer.id = placeholderDescriptor.id; + toggleContainer.style.position = "fixed"; + + const toggleIcon = window.document.createElement("i"); + toggleIcon.classList.add("quarto-sidebar-toggle-icon"); + toggleIcon.classList.add("bi"); + toggleIcon.classList.add("bi-caret-down-fill"); + + const toggleTitle = window.document.createElement("div"); + const titleEl = window.document.body.querySelector( + placeholderDescriptor.titleSelector + ); + if (titleEl) { + toggleTitle.append(titleEl.innerText, toggleIcon); + } + toggleTitle.classList.add("zindex-over-content"); + toggleTitle.classList.add("quarto-sidebar-toggle-title"); + toggleContainer.append(toggleTitle); + + const toggleContents = window.document.createElement("div"); + toggleContents.classList = el.classList; + toggleContents.classList.add("zindex-over-content"); + toggleContents.classList.add("quarto-sidebar-toggle-contents"); + for (const child of el.children) { + if (child.id === "toc-title") { + continue; + } + + const clone = child.cloneNode(true); + clone.style.opacity = 1; + clone.style.display = null; + toggleContents.append(clone); + } + toggleContents.style.height = "0px"; + toggleContainer.append(toggleContents); + el.parentElement.prepend(toggleContainer); + + // Process clicks + let tocShowing = false; + // Allow the caller to control whether this is dismissed + // when it is clicked (e.g. sidebar navigation supports + // opening and closing the nav tree, so don't dismiss on click) + const clickEl = placeholderDescriptor.dismissOnClick + ? toggleContainer + : toggleTitle; + + const closeToggle = () => { + if (tocShowing) { + toggleContainer.classList.remove("expanded"); + toggleContents.style.height = "0px"; + tocShowing = false; + } + }; + + const positionToggle = () => { + // position the element (top left of parent, same width as parent) + const elRect = el.getBoundingClientRect(); + toggleContainer.style.left = `${elRect.left}px`; + toggleContainer.style.top = `${elRect.top}px`; + toggleContainer.style.width = `${elRect.width}px`; + }; + + // Get rid of any expanded toggle if the user scrolls + window.document.addEventListener( + "scroll", + throttle(() => { + closeToggle(); + }, 50) + ); + + // Handle positioning of the toggle + window.addEventListener( + "resize", + throttle(() => { + positionToggle(); + }, 50) + ); + positionToggle(); + + // Process the click + clickEl.onclick = () => { + if (!tocShowing) { + toggleContainer.classList.add("expanded"); + toggleContents.style.height = null; + tocShowing = true; + } else { + closeToggle(); + } + }; + }; + + // Converts a sidebar from a menu back to a sidebar + const convertToSidebar = () => { + for (const child of el.children) { + child.style.opacity = 1; + child.style.overflow = null; + } + + const placeholderEl = window.document.getElementById( + placeholderDescriptor.id + ); + if (placeholderEl) { + placeholderEl.remove(); + } + + el.classList.remove("rollup"); + }; + + if (isReaderMode()) { + convertToMenu(); + isVisible = false; + } else { + if (!isVisible) { + // If the element is current not visible reveal if there are + // no conflicts with overlay regions + if (!inHiddenRegion(elTop, elBottom, hiddenRegions)) { + convertToSidebar(); + isVisible = true; + } + } else { + // If the element is visible, hide it if it conflicts with overlay regions + // and insert a placeholder toggle (or if we're in reader mode) + if (inHiddenRegion(elTop, elBottom, hiddenRegions)) { + convertToMenu(); + isVisible = false; + } + } + } + } + }; + }; + + // Find any conflicting margin elements and add margins to the + // top to prevent overlap + const marginChildren = window.document.querySelectorAll( + ".column-margin.column-container > * " + ); + let lastBottom = 0; + for (const marginChild of marginChildren) { + const top = marginChild.getBoundingClientRect().top; + if (top < lastBottom) { + const margin = lastBottom - top; + marginChild.style.marginTop = `${margin}px`; + } + const styles = window.getComputedStyle(marginChild); + const marginTop = parseFloat(styles["marginTop"]); + + lastBottom = top + marginChild.getBoundingClientRect().height + marginTop; + } + + // Manage the visibility of the toc and the sidebar + const marginScrollVisibility = manageSidebarVisiblity(marginSidebarEl, { + id: "quarto-toc-toggle", + titleSelector: "#toc-title", + dismissOnClick: true, + }); + const sidebarScrollVisiblity = manageSidebarVisiblity(sidebarEl, { + id: "quarto-sidebarnav-toggle", + titleSelector: ".title", + dismissOnClick: false, + }); + let tocLeftScrollVisibility; + if (leftTocEl) { + tocLeftScrollVisibility = manageSidebarVisiblity(leftTocEl, { + id: "quarto-lefttoc-toggle", + titleSelector: "#toc-title", + dismissOnClick: true, + }); + } + + // Find the first element that uses formatting in special columns + const conflictingEls = window.document.body.querySelectorAll( + '[class^="column-"], [class*=" column-"], aside, [class*="margin-caption"], [class*=" margin-caption"], [class*="margin-ref"], [class*=" margin-ref"]' + ); + + // Filter all the possibly conflicting elements into ones + // the do conflict on the left or ride side + const arrConflictingEls = Array.from(conflictingEls); + const leftSideConflictEls = arrConflictingEls.filter((el) => { + if (el.tagName === "ASIDE") { + return false; + } + return Array.from(el.classList).find((className) => { + return ( + className !== "column-body" && + className.startsWith("column-") && + !className.endsWith("right") && + !className.endsWith("container") && + className !== "column-margin" + ); + }); + }); + const rightSideConflictEls = arrConflictingEls.filter((el) => { + if (el.tagName === "ASIDE") { + return true; + } + + const hasMarginCaption = Array.from(el.classList).find((className) => { + return className == "margin-caption"; + }); + if (hasMarginCaption) { + return true; + } + + return Array.from(el.classList).find((className) => { + return ( + className !== "column-body" && + !className.endsWith("container") && + className.startsWith("column-") && + !className.endsWith("left") + ); + }); + }); + + const kOverlapPaddingSize = 10; + function toRegions(els) { + return els.map((el) => { + const top = + el.getBoundingClientRect().top + + document.documentElement.scrollTop - + kOverlapPaddingSize; + return { + top, + bottom: top + el.scrollHeight + 2 * kOverlapPaddingSize, + }; + }); + } + + const hideOverlappedSidebars = () => { + marginScrollVisibility(toRegions(rightSideConflictEls)); + sidebarScrollVisiblity(toRegions(leftSideConflictEls)); + if (tocLeftScrollVisibility) { + tocLeftScrollVisibility(toRegions(leftSideConflictEls)); + } + }; + + window.quartoToggleReader = () => { + // Applies a slow class (or removes it) + // to update the transition speed + const slowTransition = (slow) => { + const manageTransition = (id, slow) => { + const el = document.getElementById(id); + if (el) { + if (slow) { + el.classList.add("slow"); + } else { + el.classList.remove("slow"); + } + } + }; + + manageTransition("TOC", slow); + manageTransition("quarto-sidebar", slow); + }; + + const readerMode = !isReaderMode(); + setReaderModeValue(readerMode); + + // If we're entering reader mode, slow the transition + if (readerMode) { + slowTransition(readerMode); + } + highlightReaderToggle(readerMode); + hideOverlappedSidebars(); + + // If we're exiting reader mode, restore the non-slow transition + if (!readerMode) { + slowTransition(!readerMode); + } + }; + + const highlightReaderToggle = (readerMode) => { + const els = document.querySelectorAll(".quarto-reader-toggle"); + if (els) { + els.forEach((el) => { + if (readerMode) { + el.classList.add("reader"); + } else { + el.classList.remove("reader"); + } + }); + } + }; + + const setReaderModeValue = (val) => { + if (window.location.protocol !== "file:") { + window.localStorage.setItem("quarto-reader-mode", val); + } else { + localReaderMode = val; + } + }; + + const isReaderMode = () => { + if (window.location.protocol !== "file:") { + return window.localStorage.getItem("quarto-reader-mode") === "true"; + } else { + return localReaderMode; + } + }; + let localReaderMode = null; + + // Walk the TOC and collapse/expand nodes + // Nodes are expanded if: + // - they are top level + // - they have children that are 'active' links + // - they are directly below an link that is 'active' + const walk = (el, depth) => { + // Tick depth when we enter a UL + if (el.tagName === "UL") { + depth = depth + 1; + } + + // It this is active link + let isActiveNode = false; + if (el.tagName === "A" && el.classList.contains("active")) { + isActiveNode = true; + } + + // See if there is an active child to this element + let hasActiveChild = false; + for (child of el.children) { + hasActiveChild = walk(child, depth) || hasActiveChild; + } + + // Process the collapse state if this is an UL + if (el.tagName === "UL") { + if (depth === 1 || hasActiveChild || prevSiblingIsActiveLink(el)) { + el.classList.remove("collapse"); + } else { + el.classList.add("collapse"); + } + + // untick depth when we leave a UL + depth = depth - 1; + } + return hasActiveChild || isActiveNode; + }; + + // walk the TOC and expand / collapse any items that should be shown + + if (tocEl) { + walk(tocEl, 0); + updateActiveLink(); + } + + // Throttle the scroll event and walk peridiocally + window.document.addEventListener( + "scroll", + throttle(() => { + if (tocEl) { + updateActiveLink(); + walk(tocEl, 0); + } + if (!isReaderMode()) { + hideOverlappedSidebars(); + } + }, 5) + ); + window.addEventListener( + "resize", + throttle(() => { + if (!isReaderMode()) { + hideOverlappedSidebars(); + } + }, 10) + ); + hideOverlappedSidebars(); + highlightReaderToggle(isReaderMode()); +}); + +// grouped tabsets +window.addEventListener("pageshow", (_event) => { + function getTabSettings() { + const data = localStorage.getItem("quarto-persistent-tabsets-data"); + if (!data) { + localStorage.setItem("quarto-persistent-tabsets-data", "{}"); + return {}; + } + if (data) { + return JSON.parse(data); + } + } + + function setTabSettings(data) { + localStorage.setItem( + "quarto-persistent-tabsets-data", + JSON.stringify(data) + ); + } + + function setTabState(groupName, groupValue) { + const data = getTabSettings(); + data[groupName] = groupValue; + setTabSettings(data); + } + + function toggleTab(tab, active) { + const tabPanelId = tab.getAttribute("aria-controls"); + const tabPanel = document.getElementById(tabPanelId); + if (active) { + tab.classList.add("active"); + tabPanel.classList.add("active"); + } else { + tab.classList.remove("active"); + tabPanel.classList.remove("active"); + } + } + + function toggleAll(selectedGroup, selectorsToSync) { + for (const [thisGroup, tabs] of Object.entries(selectorsToSync)) { + const active = selectedGroup === thisGroup; + for (const tab of tabs) { + toggleTab(tab, active); + } + } + } + + function findSelectorsToSyncByLanguage() { + const result = {}; + const tabs = Array.from( + document.querySelectorAll(`div[data-group] a[id^='tabset-']`) + ); + for (const item of tabs) { + const div = item.parentElement.parentElement.parentElement; + const group = div.getAttribute("data-group"); + if (!result[group]) { + result[group] = {}; + } + const selectorsToSync = result[group]; + const value = item.innerHTML; + if (!selectorsToSync[value]) { + selectorsToSync[value] = []; + } + selectorsToSync[value].push(item); + } + return result; + } + + function setupSelectorSync() { + const selectorsToSync = findSelectorsToSyncByLanguage(); + Object.entries(selectorsToSync).forEach(([group, tabSetsByValue]) => { + Object.entries(tabSetsByValue).forEach(([value, items]) => { + items.forEach((item) => { + item.addEventListener("click", (_event) => { + setTabState(group, value); + toggleAll(value, selectorsToSync[group]); + }); + }); + }); + }); + return selectorsToSync; + } + + const selectorsToSync = setupSelectorSync(); + for (const [group, selectedName] of Object.entries(getTabSettings())) { + const selectors = selectorsToSync[group]; + // it's possible that stale state gives us empty selections, so we explicitly check here. + if (selectors) { + toggleAll(selectedName, selectors); + } + } +}); + +function throttle(func, wait) { + let waiting = false; + return function () { + if (!waiting) { + func.apply(this, arguments); + waiting = true; + setTimeout(function () { + waiting = false; + }, wait); + } + }; +} diff --git a/public/site_libs/quarto-html/tabby.min.js b/public/site_libs/quarto-html/tabby.min.js new file mode 100644 index 0000000..4f44c7d --- /dev/null +++ b/public/site_libs/quarto-html/tabby.min.js @@ -0,0 +1,418 @@ +(function (root, factory) { + if (typeof define === "function" && define.amd) { + define([], function () { + return factory(root); + }); + } else if (typeof exports === "object") { + module.exports = factory(root); + } else { + root.Tabby = factory(root); + } +})( + typeof global !== "undefined" + ? global + : typeof window !== "undefined" + ? window + : this, + function (window) { + "use strict"; + + // + // Variables + // + + var defaults = { + idPrefix: "tabby-toggle_", + default: "[data-tabby-default]", + }; + + // + // Methods + // + + /** + * Merge two or more objects together. + * @param {Object} objects The objects to merge together + * @returns {Object} Merged values of defaults and options + */ + var extend = function () { + var merged = {}; + Array.prototype.forEach.call(arguments, function (obj) { + for (var key in obj) { + if (!obj.hasOwnProperty(key)) return; + merged[key] = obj[key]; + } + }); + return merged; + }; + + /** + * Emit a custom event + * @param {String} type The event type + * @param {Node} tab The tab to attach the event to + * @param {Node} details Details about the event + */ + var emitEvent = function (tab, details) { + // Create a new event + var event; + if (typeof window.CustomEvent === "function") { + event = new CustomEvent("tabby", { + bubbles: true, + cancelable: true, + detail: details, + }); + } else { + event = document.createEvent("CustomEvent"); + event.initCustomEvent("tabby", true, true, details); + } + + // Dispatch the event + tab.dispatchEvent(event); + }; + + var focusHandler = function (event) { + toggle(event.target); + }; + + var getKeyboardFocusableElements = function (element) { + return [ + ...element.querySelectorAll( + 'a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])' + ), + ].filter( + (el) => !el.hasAttribute("disabled") && !el.getAttribute("aria-hidden") + ); + }; + + /** + * Remove roles and attributes from a tab and its content + * @param {Node} tab The tab + * @param {Node} content The tab content + * @param {Object} settings User settings and options + */ + var destroyTab = function (tab, content, settings) { + // Remove the generated ID + if (tab.id.slice(0, settings.idPrefix.length) === settings.idPrefix) { + tab.id = ""; + } + + // remove event listener + tab.removeEventListener("focus", focusHandler, true); + + // Remove roles + tab.removeAttribute("role"); + tab.removeAttribute("aria-controls"); + tab.removeAttribute("aria-selected"); + tab.removeAttribute("tabindex"); + tab.closest("li").removeAttribute("role"); + content.removeAttribute("role"); + content.removeAttribute("aria-labelledby"); + content.removeAttribute("hidden"); + }; + + /** + * Add the required roles and attributes to a tab and its content + * @param {Node} tab The tab + * @param {Node} content The tab content + * @param {Object} settings User settings and options + */ + var setupTab = function (tab, content, settings) { + // Give tab an ID if it doesn't already have one + if (!tab.id) { + tab.id = settings.idPrefix + content.id; + } + + // Add roles + tab.setAttribute("role", "tab"); + tab.setAttribute("aria-controls", content.id); + tab.closest("li").setAttribute("role", "presentation"); + content.setAttribute("role", "tabpanel"); + content.setAttribute("aria-labelledby", tab.id); + + // Add selected state + if (tab.matches(settings.default)) { + tab.setAttribute("aria-selected", "true"); + } else { + tab.setAttribute("aria-selected", "false"); + content.setAttribute("hidden", "hidden"); + } + + // add focus event listender + tab.addEventListener("focus", focusHandler); + }; + + /** + * Hide a tab and its content + * @param {Node} newTab The new tab that's replacing it + */ + var hide = function (newTab) { + // Variables + var tabGroup = newTab.closest('[role="tablist"]'); + if (!tabGroup) return {}; + var tab = tabGroup.querySelector('[role="tab"][aria-selected="true"]'); + if (!tab) return {}; + var content = document.querySelector(tab.hash); + + // Hide the tab + tab.setAttribute("aria-selected", "false"); + + // Hide the content + if (!content) return { previousTab: tab }; + content.setAttribute("hidden", "hidden"); + + // Return the hidden tab and content + return { + previousTab: tab, + previousContent: content, + }; + }; + + /** + * Show a tab and its content + * @param {Node} tab The tab + * @param {Node} content The tab content + */ + var show = function (tab, content) { + tab.setAttribute("aria-selected", "true"); + content.removeAttribute("hidden"); + tab.focus(); + }; + + /** + * Toggle a new tab + * @param {Node} tab The tab to show + */ + var toggle = function (tab) { + // Make sure there's a tab to toggle and it's not already active + if (!tab || tab.getAttribute("aria-selected") == "true") return; + + // Variables + var content = document.querySelector(tab.hash); + if (!content) return; + + // Hide active tab and content + var details = hide(tab); + + // Show new tab and content + show(tab, content); + + // Add event details + details.tab = tab; + details.content = content; + + // Emit a custom event + emitEvent(tab, details); + }; + + /** + * Get all of the tabs in a tablist + * @param {Node} tab A tab from the list + * @return {Object} The tabs and the index of the currently active one + */ + var getTabsMap = function (tab) { + var tabGroup = tab.closest('[role="tablist"]'); + var tabs = tabGroup ? tabGroup.querySelectorAll('[role="tab"]') : null; + if (!tabs) return; + return { + tabs: tabs, + index: Array.prototype.indexOf.call(tabs, tab), + }; + }; + + /** + * Switch the active tab based on keyboard activity + * @param {Node} tab The currently active tab + * @param {Key} key The key that was pressed + */ + var switchTabs = function (tab, key) { + // Get a map of tabs + var map = getTabsMap(tab); + if (!map) return; + var length = map.tabs.length - 1; + var index; + + // Go to previous tab + if (["ArrowUp", "ArrowLeft", "Up", "Left"].indexOf(key) > -1) { + index = map.index < 1 ? length : map.index - 1; + } + + // Go to next tab + else if (["ArrowDown", "ArrowRight", "Down", "Right"].indexOf(key) > -1) { + index = map.index === length ? 0 : map.index + 1; + } + + // Go to home + else if (key === "Home") { + index = 0; + } + + // Go to end + else if (key === "End") { + index = length; + } + + // Toggle the tab + toggle(map.tabs[index]); + }; + + /** + * Create the Constructor object + */ + var Constructor = function (selector, options) { + // + // Variables + // + + var publicAPIs = {}; + var settings, tabWrapper; + + // + // Methods + // + + publicAPIs.destroy = function () { + // Get all tabs + var tabs = tabWrapper.querySelectorAll("a"); + + // Add roles to tabs + Array.prototype.forEach.call(tabs, function (tab) { + // Get the tab content + var content = document.querySelector(tab.hash); + if (!content) return; + + // Setup the tab + destroyTab(tab, content, settings); + }); + + // Remove role from wrapper + tabWrapper.removeAttribute("role"); + + // Remove event listeners + document.documentElement.removeEventListener( + "click", + clickHandler, + true + ); + tabWrapper.removeEventListener("keydown", keyHandler, true); + + // Reset variables + settings = null; + tabWrapper = null; + }; + + /** + * Setup the DOM with the proper attributes + */ + publicAPIs.setup = function () { + // Variables + tabWrapper = document.querySelector(selector); + if (!tabWrapper) return; + var tabs = tabWrapper.querySelectorAll("a"); + + // Add role to wrapper + tabWrapper.setAttribute("role", "tablist"); + + // Add roles to tabs. provide dynanmic tab indexes if we are within reveal + var contentTabindexes = + window.document.body.classList.contains("reveal-viewport"); + var nextTabindex = 1; + Array.prototype.forEach.call(tabs, function (tab) { + if (contentTabindexes) { + tab.setAttribute("tabindex", "" + nextTabindex++); + } else { + tab.setAttribute("tabindex", "0"); + } + + // Get the tab content + var content = document.querySelector(tab.hash); + if (!content) return; + + // set tab indexes for content + if (contentTabindexes) { + getKeyboardFocusableElements(content).forEach(function (el) { + el.setAttribute("tabindex", "" + nextTabindex++); + }); + } + + // Setup the tab + setupTab(tab, content, settings); + }); + }; + + /** + * Toggle a tab based on an ID + * @param {String|Node} id The tab to toggle + */ + publicAPIs.toggle = function (id) { + // Get the tab + var tab = id; + if (typeof id === "string") { + tab = document.querySelector( + selector + ' [role="tab"][href*="' + id + '"]' + ); + } + + // Toggle the tab + toggle(tab); + }; + + /** + * Handle click events + */ + var clickHandler = function (event) { + // Only run on toggles + var tab = event.target.closest(selector + ' [role="tab"]'); + if (!tab) return; + + // Prevent link behavior + event.preventDefault(); + + // Toggle the tab + toggle(tab); + }; + + /** + * Handle keydown events + */ + var keyHandler = function (event) { + // Only run if a tab is in focus + var tab = document.activeElement; + if (!tab.matches(selector + ' [role="tab"]')) return; + + // Only run for specific keys + if (["Home", "End"].indexOf(event.key) < 0) return; + + // Switch tabs + switchTabs(tab, event.key); + }; + + /** + * Initialize the instance + */ + var init = function () { + // Merge user options with defaults + settings = extend(defaults, options || {}); + + // Setup the DOM + publicAPIs.setup(); + + // Add event listeners + document.documentElement.addEventListener("click", clickHandler, true); + tabWrapper.addEventListener("keydown", keyHandler, true); + }; + + // + // Initialize and return the Public APIs + // + + init(); + return publicAPIs; + }; + + // + // Return the Constructor + // + + return Constructor; + } +); diff --git a/public/site_libs/quarto-html/tippy.css b/public/site_libs/quarto-html/tippy.css new file mode 100644 index 0000000..e6ae635 --- /dev/null +++ b/public/site_libs/quarto-html/tippy.css @@ -0,0 +1 @@ +.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1} \ No newline at end of file diff --git a/public/site_libs/quarto-html/tippy.umd.min.js b/public/site_libs/quarto-html/tippy.umd.min.js new file mode 100644 index 0000000..ca292be --- /dev/null +++ b/public/site_libs/quarto-html/tippy.umd.min.js @@ -0,0 +1,2 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],t):(e=e||self).tippy=t(e.Popper)}(this,(function(e){"use strict";var t={passive:!0,capture:!0},n=function(){return document.body};function r(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function o(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function i(e,t){return"function"==typeof e?e.apply(void 0,t):e}function a(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function s(e,t){var n=Object.assign({},e);return t.forEach((function(e){delete n[e]})),n}function u(e){return[].concat(e)}function c(e,t){-1===e.indexOf(t)&&e.push(t)}function p(e){return e.split("-")[0]}function f(e){return[].slice.call(e)}function l(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function d(){return document.createElement("div")}function v(e){return["Element","Fragment"].some((function(t){return o(e,t)}))}function m(e){return o(e,"MouseEvent")}function g(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function h(e){return v(e)?[e]:function(e){return o(e,"NodeList")}(e)?f(e):Array.isArray(e)?e:f(document.querySelectorAll(e))}function b(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function y(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function w(e){var t,n=u(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function E(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function O(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var x={isTouch:!1},C=0;function T(){x.isTouch||(x.isTouch=!0,window.performance&&document.addEventListener("mousemove",A))}function A(){var e=performance.now();e-C<20&&(x.isTouch=!1,document.removeEventListener("mousemove",A)),C=e}function L(){var e=document.activeElement;if(g(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var D=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto,R=Object.assign({appendTo:n,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),k=Object.keys(R);function P(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=R[o])?r:i);return t}),{});return Object.assign({},e,t)}function j(e,t){var n=Object.assign({},t,{content:i(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(P(Object.assign({},R,{plugins:t}))):k).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function M(e,t){e.innerHTML=t}function V(e){var t=d();return!0===e?t.className="tippy-arrow":(t.className="tippy-svg-arrow",v(e)?t.appendChild(e):M(t,e)),t}function I(e,t){v(t.content)?(M(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?M(e,t.content):e.textContent=t.content)}function S(e){var t=e.firstElementChild,n=f(t.children);return{box:t,content:n.find((function(e){return e.classList.contains("tippy-content")})),arrow:n.find((function(e){return e.classList.contains("tippy-arrow")||e.classList.contains("tippy-svg-arrow")})),backdrop:n.find((function(e){return e.classList.contains("tippy-backdrop")}))}}function N(e){var t=d(),n=d();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=d();function o(n,r){var o=S(t),i=o.box,a=o.content,s=o.arrow;r.theme?i.setAttribute("data-theme",r.theme):i.removeAttribute("data-theme"),"string"==typeof r.animation?i.setAttribute("data-animation",r.animation):i.removeAttribute("data-animation"),r.inertia?i.setAttribute("data-inertia",""):i.removeAttribute("data-inertia"),i.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?i.setAttribute("role",r.role):i.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||I(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(i.removeChild(s),i.appendChild(V(r.arrow))):i.appendChild(V(r.arrow)):s&&i.removeChild(s)}return r.className="tippy-content",r.setAttribute("data-state","hidden"),I(r,e.props),t.appendChild(n),n.appendChild(r),o(e.props,e.props),{popper:t,onUpdate:o}}N.$$tippy=!0;var B=1,H=[],U=[];function _(o,s){var v,g,h,C,T,A,L,k,M=j(o,Object.assign({},R,P(l(s)))),V=!1,I=!1,N=!1,_=!1,F=[],W=a(we,M.interactiveDebounce),X=B++,Y=(k=M.plugins).filter((function(e,t){return k.indexOf(e)===t})),$={id:X,reference:o,popper:d(),popperInstance:null,props:M,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:Y,clearDelayTimeouts:function(){clearTimeout(v),clearTimeout(g),cancelAnimationFrame(h)},setProps:function(e){if($.state.isDestroyed)return;ae("onBeforeUpdate",[$,e]),be();var t=$.props,n=j(o,Object.assign({},t,l(e),{ignoreAttributes:!0}));$.props=n,he(),t.interactiveDebounce!==n.interactiveDebounce&&(ce(),W=a(we,n.interactiveDebounce));t.triggerTarget&&!n.triggerTarget?u(t.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):n.triggerTarget&&o.removeAttribute("aria-expanded");ue(),ie(),J&&J(t,n);$.popperInstance&&(Ce(),Ae().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));ae("onAfterUpdate",[$,e])},setContent:function(e){$.setProps({content:e})},show:function(){var e=$.state.isVisible,t=$.state.isDestroyed,o=!$.state.isEnabled,a=x.isTouch&&!$.props.touch,s=r($.props.duration,0,R.duration);if(e||t||o||a)return;if(te().hasAttribute("disabled"))return;if(ae("onShow",[$],!1),!1===$.props.onShow($))return;$.state.isVisible=!0,ee()&&(z.style.visibility="visible");ie(),de(),$.state.isMounted||(z.style.transition="none");if(ee()){var u=re(),p=u.box,f=u.content;b([p,f],0)}A=function(){var e;if($.state.isVisible&&!_){if(_=!0,z.offsetHeight,z.style.transition=$.props.moveTransition,ee()&&$.props.animation){var t=re(),n=t.box,r=t.content;b([n,r],s),y([n,r],"visible")}se(),ue(),c(U,$),null==(e=$.popperInstance)||e.forceUpdate(),ae("onMount",[$]),$.props.animation&&ee()&&function(e,t){me(e,t)}(s,(function(){$.state.isShown=!0,ae("onShown",[$])}))}},function(){var e,t=$.props.appendTo,r=te();e=$.props.interactive&&t===n||"parent"===t?r.parentNode:i(t,[r]);e.contains(z)||e.appendChild(z);$.state.isMounted=!0,Ce()}()},hide:function(){var e=!$.state.isVisible,t=$.state.isDestroyed,n=!$.state.isEnabled,o=r($.props.duration,1,R.duration);if(e||t||n)return;if(ae("onHide",[$],!1),!1===$.props.onHide($))return;$.state.isVisible=!1,$.state.isShown=!1,_=!1,V=!1,ee()&&(z.style.visibility="hidden");if(ce(),ve(),ie(!0),ee()){var i=re(),a=i.box,s=i.content;$.props.animation&&(b([a,s],o),y([a,s],"hidden"))}se(),ue(),$.props.animation?ee()&&function(e,t){me(e,(function(){!$.state.isVisible&&z.parentNode&&z.parentNode.contains(z)&&t()}))}(o,$.unmount):$.unmount()},hideWithInteractivity:function(e){ne().addEventListener("mousemove",W),c(H,W),W(e)},enable:function(){$.state.isEnabled=!0},disable:function(){$.hide(),$.state.isEnabled=!1},unmount:function(){$.state.isVisible&&$.hide();if(!$.state.isMounted)return;Te(),Ae().forEach((function(e){e._tippy.unmount()})),z.parentNode&&z.parentNode.removeChild(z);U=U.filter((function(e){return e!==$})),$.state.isMounted=!1,ae("onHidden",[$])},destroy:function(){if($.state.isDestroyed)return;$.clearDelayTimeouts(),$.unmount(),be(),delete o._tippy,$.state.isDestroyed=!0,ae("onDestroy",[$])}};if(!M.render)return $;var q=M.render($),z=q.popper,J=q.onUpdate;z.setAttribute("data-tippy-root",""),z.id="tippy-"+$.id,$.popper=z,o._tippy=$,z._tippy=$;var G=Y.map((function(e){return e.fn($)})),K=o.hasAttribute("aria-expanded");return he(),ue(),ie(),ae("onCreate",[$]),M.showOnCreate&&Le(),z.addEventListener("mouseenter",(function(){$.props.interactive&&$.state.isVisible&&$.clearDelayTimeouts()})),z.addEventListener("mouseleave",(function(){$.props.interactive&&$.props.trigger.indexOf("mouseenter")>=0&&ne().addEventListener("mousemove",W)})),$;function Q(){var e=$.props.touch;return Array.isArray(e)?e:[e,0]}function Z(){return"hold"===Q()[0]}function ee(){var e;return!(null==(e=$.props.render)||!e.$$tippy)}function te(){return L||o}function ne(){var e=te().parentNode;return e?w(e):document}function re(){return S(z)}function oe(e){return $.state.isMounted&&!$.state.isVisible||x.isTouch||C&&"focus"===C.type?0:r($.props.delay,e?0:1,R.delay)}function ie(e){void 0===e&&(e=!1),z.style.pointerEvents=$.props.interactive&&!e?"":"none",z.style.zIndex=""+$.props.zIndex}function ae(e,t,n){var r;(void 0===n&&(n=!0),G.forEach((function(n){n[e]&&n[e].apply(n,t)})),n)&&(r=$.props)[e].apply(r,t)}function se(){var e=$.props.aria;if(e.content){var t="aria-"+e.content,n=z.id;u($.props.triggerTarget||o).forEach((function(e){var r=e.getAttribute(t);if($.state.isVisible)e.setAttribute(t,r?r+" "+n:n);else{var o=r&&r.replace(n,"").trim();o?e.setAttribute(t,o):e.removeAttribute(t)}}))}}function ue(){!K&&$.props.aria.expanded&&u($.props.triggerTarget||o).forEach((function(e){$.props.interactive?e.setAttribute("aria-expanded",$.state.isVisible&&e===te()?"true":"false"):e.removeAttribute("aria-expanded")}))}function ce(){ne().removeEventListener("mousemove",W),H=H.filter((function(e){return e!==W}))}function pe(e){if(!x.isTouch||!N&&"mousedown"!==e.type){var t=e.composedPath&&e.composedPath()[0]||e.target;if(!$.props.interactive||!O(z,t)){if(u($.props.triggerTarget||o).some((function(e){return O(e,t)}))){if(x.isTouch)return;if($.state.isVisible&&$.props.trigger.indexOf("click")>=0)return}else ae("onClickOutside",[$,e]);!0===$.props.hideOnClick&&($.clearDelayTimeouts(),$.hide(),I=!0,setTimeout((function(){I=!1})),$.state.isMounted||ve())}}}function fe(){N=!0}function le(){N=!1}function de(){var e=ne();e.addEventListener("mousedown",pe,!0),e.addEventListener("touchend",pe,t),e.addEventListener("touchstart",le,t),e.addEventListener("touchmove",fe,t)}function ve(){var e=ne();e.removeEventListener("mousedown",pe,!0),e.removeEventListener("touchend",pe,t),e.removeEventListener("touchstart",le,t),e.removeEventListener("touchmove",fe,t)}function me(e,t){var n=re().box;function r(e){e.target===n&&(E(n,"remove",r),t())}if(0===e)return t();E(n,"remove",T),E(n,"add",r),T=r}function ge(e,t,n){void 0===n&&(n=!1),u($.props.triggerTarget||o).forEach((function(r){r.addEventListener(e,t,n),F.push({node:r,eventType:e,handler:t,options:n})}))}function he(){var e;Z()&&(ge("touchstart",ye,{passive:!0}),ge("touchend",Ee,{passive:!0})),(e=$.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(ge(e,ye),e){case"mouseenter":ge("mouseleave",Ee);break;case"focus":ge(D?"focusout":"blur",Oe);break;case"focusin":ge("focusout",Oe)}}))}function be(){F.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),F=[]}function ye(e){var t,n=!1;if($.state.isEnabled&&!xe(e)&&!I){var r="focus"===(null==(t=C)?void 0:t.type);C=e,L=e.currentTarget,ue(),!$.state.isVisible&&m(e)&&H.forEach((function(t){return t(e)})),"click"===e.type&&($.props.trigger.indexOf("mouseenter")<0||V)&&!1!==$.props.hideOnClick&&$.state.isVisible?n=!0:Le(e),"click"===e.type&&(V=!n),n&&!r&&De(e)}}function we(e){var t=e.target,n=te().contains(t)||z.contains(t);"mousemove"===e.type&&n||function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,o=e.popperState,i=e.props.interactiveBorder,a=p(o.placement),s=o.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,c="top"===a?s.bottom.y:0,f="right"===a?s.left.x:0,l="left"===a?s.right.x:0,d=t.top-r+u>i,v=r-t.bottom-c>i,m=t.left-n+f>i,g=n-t.right-l>i;return d||v||m||g}))}(Ae().concat(z).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:M}:null})).filter(Boolean),e)&&(ce(),De(e))}function Ee(e){xe(e)||$.props.trigger.indexOf("click")>=0&&V||($.props.interactive?$.hideWithInteractivity(e):De(e))}function Oe(e){$.props.trigger.indexOf("focusin")<0&&e.target!==te()||$.props.interactive&&e.relatedTarget&&z.contains(e.relatedTarget)||De(e)}function xe(e){return!!x.isTouch&&Z()!==e.type.indexOf("touch")>=0}function Ce(){Te();var t=$.props,n=t.popperOptions,r=t.placement,i=t.offset,a=t.getReferenceClientRect,s=t.moveTransition,u=ee()?S(z).arrow:null,c=a?{getBoundingClientRect:a,contextElement:a.contextElement||te()}:o,p=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(ee()){var n=re().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}}];ee()&&u&&p.push({name:"arrow",options:{element:u,padding:3}}),p.push.apply(p,(null==n?void 0:n.modifiers)||[]),$.popperInstance=e.createPopper(c,z,Object.assign({},n,{placement:r,onFirstUpdate:A,modifiers:p}))}function Te(){$.popperInstance&&($.popperInstance.destroy(),$.popperInstance=null)}function Ae(){return f(z.querySelectorAll("[data-tippy-root]"))}function Le(e){$.clearDelayTimeouts(),e&&ae("onTrigger",[$,e]),de();var t=oe(!0),n=Q(),r=n[0],o=n[1];x.isTouch&&"hold"===r&&o&&(t=o),t?v=setTimeout((function(){$.show()}),t):$.show()}function De(e){if($.clearDelayTimeouts(),ae("onUntrigger",[$,e]),$.state.isVisible){if(!($.props.trigger.indexOf("mouseenter")>=0&&$.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&V)){var t=oe(!1);t?g=setTimeout((function(){$.state.isVisible&&$.hide()}),t):h=requestAnimationFrame((function(){$.hide()}))}}else ve()}}function F(e,n){void 0===n&&(n={});var r=R.plugins.concat(n.plugins||[]);document.addEventListener("touchstart",T,t),window.addEventListener("blur",L);var o=Object.assign({},n,{plugins:r}),i=h(e).reduce((function(e,t){var n=t&&_(t,o);return n&&e.push(n),e}),[]);return v(e)?i[0]:i}F.defaultProps=R,F.setDefaultProps=function(e){Object.keys(e).forEach((function(t){R[t]=e[t]}))},F.currentInput=x;var W=Object.assign({},e.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),X={mouseover:"mouseenter",focusin:"focus",click:"click"};var Y={name:"animateFill",defaultValue:!1,fn:function(e){var t;if(null==(t=e.props.render)||!t.$$tippy)return{};var n=S(e.popper),r=n.box,o=n.content,i=e.props.animateFill?function(){var e=d();return e.className="tippy-backdrop",y([e],"hidden"),e}():null;return{onCreate:function(){i&&(r.insertBefore(i,r.firstElementChild),r.setAttribute("data-animatefill",""),r.style.overflow="hidden",e.setProps({arrow:!1,animation:"shift-away"}))},onMount:function(){if(i){var e=r.style.transitionDuration,t=Number(e.replace("ms",""));o.style.transitionDelay=Math.round(t/10)+"ms",i.style.transitionDuration=e,y([i],"visible")}},onShow:function(){i&&(i.style.transitionDuration="0ms")},onHide:function(){i&&y([i],"hidden")}}}};var $={clientX:0,clientY:0},q=[];function z(e){var t=e.clientX,n=e.clientY;$={clientX:t,clientY:n}}var J={name:"followCursor",defaultValue:!1,fn:function(e){var t=e.reference,n=w(e.props.triggerTarget||t),r=!1,o=!1,i=!0,a=e.props;function s(){return"initial"===e.props.followCursor&&e.state.isVisible}function u(){n.addEventListener("mousemove",f)}function c(){n.removeEventListener("mousemove",f)}function p(){r=!0,e.setProps({getReferenceClientRect:null}),r=!1}function f(n){var r=!n.target||t.contains(n.target),o=e.props.followCursor,i=n.clientX,a=n.clientY,s=t.getBoundingClientRect(),u=i-s.left,c=a-s.top;!r&&e.props.interactive||e.setProps({getReferenceClientRect:function(){var e=t.getBoundingClientRect(),n=i,r=a;"initial"===o&&(n=e.left+u,r=e.top+c);var s="horizontal"===o?e.top:r,p="vertical"===o?e.right:n,f="horizontal"===o?e.bottom:r,l="vertical"===o?e.left:n;return{width:p-l,height:f-s,top:s,right:p,bottom:f,left:l}}})}function l(){e.props.followCursor&&(q.push({instance:e,doc:n}),function(e){e.addEventListener("mousemove",z)}(n))}function d(){0===(q=q.filter((function(t){return t.instance!==e}))).filter((function(e){return e.doc===n})).length&&function(e){e.removeEventListener("mousemove",z)}(n)}return{onCreate:l,onDestroy:d,onBeforeUpdate:function(){a=e.props},onAfterUpdate:function(t,n){var i=n.followCursor;r||void 0!==i&&a.followCursor!==i&&(d(),i?(l(),!e.state.isMounted||o||s()||u()):(c(),p()))},onMount:function(){e.props.followCursor&&!o&&(i&&(f($),i=!1),s()||u())},onTrigger:function(e,t){m(t)&&($={clientX:t.clientX,clientY:t.clientY}),o="focus"===t.type},onHidden:function(){e.props.followCursor&&(p(),c(),i=!0)}}}};var G={name:"inlinePositioning",defaultValue:!1,fn:function(e){var t,n=e.reference;var r=-1,o=!1,i=[],a={name:"tippyInlinePositioning",enabled:!0,phase:"afterWrite",fn:function(o){var a=o.state;e.props.inlinePositioning&&(-1!==i.indexOf(a.placement)&&(i=[]),t!==a.placement&&-1===i.indexOf(a.placement)&&(i.push(a.placement),e.setProps({getReferenceClientRect:function(){return function(e){return function(e,t,n,r){if(n.length<2||null===e)return t;if(2===n.length&&r>=0&&n[0].left>n[1].right)return n[r]||t;switch(e){case"top":case"bottom":var o=n[0],i=n[n.length-1],a="top"===e,s=o.top,u=i.bottom,c=a?o.left:i.left,p=a?o.right:i.right;return{top:s,bottom:u,left:c,right:p,width:p-c,height:u-s};case"left":case"right":var f=Math.min.apply(Math,n.map((function(e){return e.left}))),l=Math.max.apply(Math,n.map((function(e){return e.right}))),d=n.filter((function(t){return"left"===e?t.left===f:t.right===l})),v=d[0].top,m=d[d.length-1].bottom;return{top:v,bottom:m,left:f,right:l,width:l-f,height:m-v};default:return t}}(p(e),n.getBoundingClientRect(),f(n.getClientRects()),r)}(a.placement)}})),t=a.placement)}};function s(){var t;o||(t=function(e,t){var n;return{popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat(((null==(n=e.popperOptions)?void 0:n.modifiers)||[]).filter((function(e){return e.name!==t.name})),[t])})}}(e.props,a),o=!0,e.setProps(t),o=!1)}return{onCreate:s,onAfterUpdate:s,onTrigger:function(t,n){if(m(n)){var o=f(e.reference.getClientRects()),i=o.find((function(e){return e.left-2<=n.clientX&&e.right+2>=n.clientX&&e.top-2<=n.clientY&&e.bottom+2>=n.clientY})),a=o.indexOf(i);r=a>-1?a:r}},onHidden:function(){r=-1}}}};var K={name:"sticky",defaultValue:!1,fn:function(e){var t=e.reference,n=e.popper;function r(t){return!0===e.props.sticky||e.props.sticky===t}var o=null,i=null;function a(){var s=r("reference")?(e.popperInstance?e.popperInstance.state.elements.reference:t).getBoundingClientRect():null,u=r("popper")?n.getBoundingClientRect():null;(s&&Q(o,s)||u&&Q(i,u))&&e.popperInstance&&e.popperInstance.update(),o=s,i=u,e.state.isMounted&&requestAnimationFrame(a)}return{onMount:function(){e.props.sticky&&a()}}}};function Q(e,t){return!e||!t||(e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom||e.left!==t.left)}return F.setDefaultProps({plugins:[Y,J,G,K],render:N}),F.createSingleton=function(e,t){var n;void 0===t&&(t={});var r,o=e,i=[],a=[],c=t.overrides,p=[],f=!1;function l(){a=o.map((function(e){return u(e.props.triggerTarget||e.reference)})).reduce((function(e,t){return e.concat(t)}),[])}function v(){i=o.map((function(e){return e.reference}))}function m(e){o.forEach((function(t){e?t.enable():t.disable()}))}function g(e){return o.map((function(t){var n=t.setProps;return t.setProps=function(o){n(o),t.reference===r&&e.setProps(o)},function(){t.setProps=n}}))}function h(e,t){var n=a.indexOf(t);if(t!==r){r=t;var s=(c||[]).concat("content").reduce((function(e,t){return e[t]=o[n].props[t],e}),{});e.setProps(Object.assign({},s,{getReferenceClientRect:"function"==typeof s.getReferenceClientRect?s.getReferenceClientRect:function(){var e;return null==(e=i[n])?void 0:e.getBoundingClientRect()}}))}}m(!1),v(),l();var b={fn:function(){return{onDestroy:function(){m(!0)},onHidden:function(){r=null},onClickOutside:function(e){e.props.showOnCreate&&!f&&(f=!0,r=null)},onShow:function(e){e.props.showOnCreate&&!f&&(f=!0,h(e,i[0]))},onTrigger:function(e,t){h(e,t.currentTarget)}}}},y=F(d(),Object.assign({},s(t,["overrides"]),{plugins:[b].concat(t.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat((null==(n=t.popperOptions)?void 0:n.modifiers)||[],[W])})})),w=y.show;y.show=function(e){if(w(),!r&&null==e)return h(y,i[0]);if(!r||null!=e){if("number"==typeof e)return i[e]&&h(y,i[e]);if(o.indexOf(e)>=0){var t=e.reference;return h(y,t)}return i.indexOf(e)>=0?h(y,e):void 0}},y.showNext=function(){var e=i[0];if(!r)return y.show(0);var t=i.indexOf(r);y.show(i[t+1]||e)},y.showPrevious=function(){var e=i[i.length-1];if(!r)return y.show(e);var t=i.indexOf(r),n=i[t-1]||e;y.show(n)};var E=y.setProps;return y.setProps=function(e){c=e.overrides||c,E(e)},y.setInstances=function(e){m(!0),p.forEach((function(e){return e()})),o=e,m(!1),v(),l(),p=g(y),y.setProps({triggerTarget:a})},p=g(y),y},F.delegate=function(e,n){var r=[],o=[],i=!1,a=n.target,c=s(n,["target"]),p=Object.assign({},c,{trigger:"manual",touch:!1}),f=Object.assign({touch:R.touch},c,{showOnCreate:!0}),l=F(e,p);function d(e){if(e.target&&!i){var t=e.target.closest(a);if(t){var r=t.getAttribute("data-tippy-trigger")||n.trigger||R.trigger;if(!t._tippy&&!("touchstart"===e.type&&"boolean"==typeof f.touch||"touchstart"!==e.type&&r.indexOf(X[e.type])<0)){var s=F(t,f);s&&(o=o.concat(s))}}}}function v(e,t,n,o){void 0===o&&(o=!1),e.addEventListener(t,n,o),r.push({node:e,eventType:t,handler:n,options:o})}return u(l).forEach((function(e){var n=e.destroy,a=e.enable,s=e.disable;e.destroy=function(e){void 0===e&&(e=!0),e&&o.forEach((function(e){e.destroy()})),o=[],r.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),r=[],n()},e.enable=function(){a(),o.forEach((function(e){return e.enable()})),i=!1},e.disable=function(){s(),o.forEach((function(e){return e.disable()})),i=!0},function(e){var n=e.reference;v(n,"touchstart",d,t),v(n,"mouseover",d),v(n,"focusin",d),v(n,"click",d)}(e)})),l},F.hideAll=function(e){var t=void 0===e?{}:e,n=t.exclude,r=t.duration;U.forEach((function(e){var t=!1;if(n&&(t=g(n)?e.reference===n:e.popper===n.popper),!t){var o=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:o})}}))},F.roundArrow='<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>',F})); + diff --git a/public/site_libs/quarto-nav/headroom.min.js b/public/site_libs/quarto-nav/headroom.min.js new file mode 100644 index 0000000..b08f1df --- /dev/null +++ b/public/site_libs/quarto-nav/headroom.min.js @@ -0,0 +1,7 @@ +/*! + * headroom.js v0.12.0 - Give your page some headroom. Hide your header until you need it + * Copyright (c) 2020 Nick Williams - http://wicky.nillia.ms/headroom.js + * License: MIT + */ + +!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(t=t||self).Headroom=n()}(this,function(){"use strict";function t(){return"undefined"!=typeof window}function d(t){return function(t){return t&&t.document&&function(t){return 9===t.nodeType}(t.document)}(t)?function(t){var n=t.document,o=n.body,s=n.documentElement;return{scrollHeight:function(){return Math.max(o.scrollHeight,s.scrollHeight,o.offsetHeight,s.offsetHeight,o.clientHeight,s.clientHeight)},height:function(){return t.innerHeight||s.clientHeight||o.clientHeight},scrollY:function(){return void 0!==t.pageYOffset?t.pageYOffset:(s||o.parentNode||o).scrollTop}}}(t):function(t){return{scrollHeight:function(){return Math.max(t.scrollHeight,t.offsetHeight,t.clientHeight)},height:function(){return Math.max(t.offsetHeight,t.clientHeight)},scrollY:function(){return t.scrollTop}}}(t)}function n(t,s,e){var n,o=function(){var n=!1;try{var t={get passive(){n=!0}};window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch(t){n=!1}return n}(),i=!1,r=d(t),l=r.scrollY(),a={};function c(){var t=Math.round(r.scrollY()),n=r.height(),o=r.scrollHeight();a.scrollY=t,a.lastScrollY=l,a.direction=l<t?"down":"up",a.distance=Math.abs(t-l),a.isOutOfBounds=t<0||o<t+n,a.top=t<=s.offset[a.direction],a.bottom=o<=t+n,a.toleranceExceeded=a.distance>s.tolerance[a.direction],e(a),l=t,i=!1}function h(){i||(i=!0,n=requestAnimationFrame(c))}var u=!!o&&{passive:!0,capture:!1};return t.addEventListener("scroll",h,u),c(),{destroy:function(){cancelAnimationFrame(n),t.removeEventListener("scroll",h,u)}}}function o(t){return t===Object(t)?t:{down:t,up:t}}function s(t,n){n=n||{},Object.assign(this,s.options,n),this.classes=Object.assign({},s.options.classes,n.classes),this.elem=t,this.tolerance=o(this.tolerance),this.offset=o(this.offset),this.initialised=!1,this.frozen=!1}return s.prototype={constructor:s,init:function(){return s.cutsTheMustard&&!this.initialised&&(this.addClass("initial"),this.initialised=!0,setTimeout(function(t){t.scrollTracker=n(t.scroller,{offset:t.offset,tolerance:t.tolerance},t.update.bind(t))},100,this)),this},destroy:function(){this.initialised=!1,Object.keys(this.classes).forEach(this.removeClass,this),this.scrollTracker.destroy()},unpin:function(){!this.hasClass("pinned")&&this.hasClass("unpinned")||(this.addClass("unpinned"),this.removeClass("pinned"),this.onUnpin&&this.onUnpin.call(this))},pin:function(){this.hasClass("unpinned")&&(this.addClass("pinned"),this.removeClass("unpinned"),this.onPin&&this.onPin.call(this))},freeze:function(){this.frozen=!0,this.addClass("frozen")},unfreeze:function(){this.frozen=!1,this.removeClass("frozen")},top:function(){this.hasClass("top")||(this.addClass("top"),this.removeClass("notTop"),this.onTop&&this.onTop.call(this))},notTop:function(){this.hasClass("notTop")||(this.addClass("notTop"),this.removeClass("top"),this.onNotTop&&this.onNotTop.call(this))},bottom:function(){this.hasClass("bottom")||(this.addClass("bottom"),this.removeClass("notBottom"),this.onBottom&&this.onBottom.call(this))},notBottom:function(){this.hasClass("notBottom")||(this.addClass("notBottom"),this.removeClass("bottom"),this.onNotBottom&&this.onNotBottom.call(this))},shouldUnpin:function(t){return"down"===t.direction&&!t.top&&t.toleranceExceeded},shouldPin:function(t){return"up"===t.direction&&t.toleranceExceeded||t.top},addClass:function(t){this.elem.classList.add.apply(this.elem.classList,this.classes[t].split(" "))},removeClass:function(t){this.elem.classList.remove.apply(this.elem.classList,this.classes[t].split(" "))},hasClass:function(t){return this.classes[t].split(" ").every(function(t){return this.classList.contains(t)},this.elem)},update:function(t){t.isOutOfBounds||!0!==this.frozen&&(t.top?this.top():this.notTop(),t.bottom?this.bottom():this.notBottom(),this.shouldUnpin(t)?this.unpin():this.shouldPin(t)&&this.pin())}},s.options={tolerance:{up:0,down:0},offset:0,scroller:t()?window:null,classes:{frozen:"headroom--frozen",pinned:"headroom--pinned",unpinned:"headroom--unpinned",top:"headroom--top",notTop:"headroom--not-top",bottom:"headroom--bottom",notBottom:"headroom--not-bottom",initial:"headroom"}},s.cutsTheMustard=!!(t()&&function(){}.bind&&"classList"in document.documentElement&&Object.assign&&Object.keys&&requestAnimationFrame),s}); diff --git a/public/site_libs/quarto-nav/quarto-nav.js b/public/site_libs/quarto-nav/quarto-nav.js new file mode 100644 index 0000000..024fb1f --- /dev/null +++ b/public/site_libs/quarto-nav/quarto-nav.js @@ -0,0 +1,221 @@ +const headroomChanged = new CustomEvent("quarto-hrChanged", { + detail: {}, + bubbles: true, + cancelable: false, + composed: false, +}); + +window.document.addEventListener("DOMContentLoaded", function () { + let init = false; + + function throttle(func, wait) { + var timeout; + return function () { + const context = this; + const args = arguments; + const later = function () { + clearTimeout(timeout); + timeout = null; + func.apply(context, args); + }; + + if (!timeout) { + timeout = setTimeout(later, wait); + } + }; + } + + function headerOffset() { + // Set an offset if there is are fixed top navbar + const headerEl = window.document.querySelector("header.fixed-top"); + if (headerEl) { + return headerEl.clientHeight; + } else { + return 0; + } + } + + function footerOffset() { + const footerEl = window.document.querySelector("footer.footer"); + if (footerEl) { + return footerEl.clientHeight; + } else { + return 0; + } + } + + function updateDocumentOffsetWithoutAnimation() { + updateDocumentOffset(false); + } + + function updateDocumentOffset(animated) { + // set body offset + const topOffset = headerOffset(); + const bodyOffset = topOffset + footerOffset(); + const bodyEl = window.document.body; + bodyEl.setAttribute("data-bs-offset", topOffset); + bodyEl.style.paddingTop = topOffset + "px"; + + // deal with sidebar offsets + const sidebars = window.document.querySelectorAll( + ".sidebar, .headroom-target" + ); + sidebars.forEach((sidebar) => { + if (!animated) { + sidebar.classList.add("notransition"); + // Remove the no transition class after the animation has time to complete + setTimeout(function () { + sidebar.classList.remove("notransition"); + }, 201); + } + + if (window.Headroom && sidebar.classList.contains("sidebar-unpinned")) { + sidebar.style.top = "0"; + sidebar.style.maxHeight = "100vh"; + } else { + sidebar.style.top = topOffset + "px"; + sidebar.style.maxHeight = "calc(100vh - " + topOffset + "px)"; + } + }); + + // allow space for footer + const mainContainer = window.document.querySelector(".quarto-container"); + if (mainContainer) { + mainContainer.style.minHeight = "calc(100vh - " + bodyOffset + "px)"; + } + + // link offset + let linkStyle = window.document.querySelector("#quarto-target-style"); + if (!linkStyle) { + linkStyle = window.document.createElement("style"); + window.document.head.appendChild(linkStyle); + } + while (linkStyle.firstChild) { + linkStyle.removeChild(linkStyle.firstChild); + } + if (topOffset > 0) { + linkStyle.appendChild( + window.document.createTextNode(` + section:target::before { + content: ""; + display: block; + height: ${topOffset}px; + margin: -${topOffset}px 0 0; + }`) + ); + } + if (init) { + window.dispatchEvent(headroomChanged); + } + init = true; + } + + // initialize headroom + var header = window.document.querySelector("#quarto-header"); + if (header && window.Headroom) { + const headroom = new window.Headroom(header, { + tolerance: 5, + onPin: function () { + const sidebars = window.document.querySelectorAll( + ".sidebar, .headroom-target" + ); + sidebars.forEach((sidebar) => { + sidebar.classList.remove("sidebar-unpinned"); + }); + updateDocumentOffset(); + }, + onUnpin: function () { + const sidebars = window.document.querySelectorAll( + ".sidebar, .headroom-target" + ); + sidebars.forEach((sidebar) => { + sidebar.classList.add("sidebar-unpinned"); + }); + updateDocumentOffset(); + }, + }); + headroom.init(); + + let frozen = false; + window.quartoToggleHeadroom = function () { + if (frozen) { + headroom.unfreeze(); + frozen = false; + } else { + headroom.freeze(); + frozen = true; + } + }; + } + + // Observe size changed for the header + const headerEl = window.document.querySelector("header.fixed-top"); + if (headerEl && window.ResizeObserver) { + const observer = new window.ResizeObserver( + throttle(updateDocumentOffsetWithoutAnimation, 50) + ); + observer.observe(headerEl, { + attributes: true, + childList: true, + characterData: true, + }); + } else { + window.addEventListener( + "resize", + throttle(updateDocumentOffsetWithoutAnimation, 50) + ); + setTimeout(updateDocumentOffsetWithoutAnimation, 500); + } + + // fixup index.html links if we aren't on the filesystem + if (window.location.protocol !== "file:") { + const links = window.document.querySelectorAll("a"); + for (let i = 0; i < links.length; i++) { + links[i].href = links[i].href.replace(/\/index\.html/, "/"); + } + + // Fixup any sharing links that require urls + // Append url to any sharing urls + const sharingLinks = window.document.querySelectorAll( + "a.sidebar-tools-main-item" + ); + for (let i = 0; i < sharingLinks.length; i++) { + const sharingLink = sharingLinks[i]; + const href = sharingLink.getAttribute("href"); + if (href) { + sharingLink.setAttribute( + "href", + href.replace("|url|", window.location.href) + ); + } + } + + // Scroll the active navigation item into view, if necessary + const navSidebar = window.document.querySelector("nav#quarto-sidebar"); + if (navSidebar) { + // Find the active item + const activeItem = navSidebar.querySelector("li.sidebar-item a.active"); + if (activeItem) { + // Wait for the scroll height and height to resolve by observing size changes on the + // nav element that is scrollable + const resizeObserver = new ResizeObserver((_entries) => { + // The bottom of the element + const elBottom = activeItem.offsetTop; + const viewBottom = navSidebar.scrollTop + navSidebar.clientHeight; + + // The element height and scroll height are the same, then we are still loading + if (viewBottom !== navSidebar.scrollHeight) { + // Determine if the item isn't visible and scroll to it + if (elBottom >= viewBottom) { + navSidebar.scrollTop = elBottom; + } + + // stop observing now since we've completed the scroll + resizeObserver.unobserve(navSidebar); + } + }); + resizeObserver.observe(navSidebar); + } + } + } +}); diff --git a/public/site_libs/quarto-search/autocomplete.umd.js b/public/site_libs/quarto-search/autocomplete.umd.js new file mode 100644 index 0000000..3f2dcf0 --- /dev/null +++ b/public/site_libs/quarto-search/autocomplete.umd.js @@ -0,0 +1,3 @@ +/*! @algolia/autocomplete-js 1.5.3 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-js"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?t(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):t(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function r(e){return r="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},r(e)}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}function u(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function a(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function l(e){return{current:e}}function s(e,t){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),i=0;i<r;i++)o[i]=arguments[i];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,o)}),t)}}function p(e){return e.reduce((function(e,t){return e.concat(t)}),[])}var f=0;function d(){return"autocomplete-".concat(f++)}function v(e,t){return t.reduce((function(e,t){return e&&e[t]}),e)}function m(e){return 0===e.collections.length?0:e.collections.reduce((function(e,t){return e+t.items.length}),0)}var h=function(){},g="1.5.3",y=[{segment:"autocomplete-core",version:g}];function b(e,t){var n=t;return{then:function(t,r){return b(e.then(_(t,n,e),_(r,n,e)),n)},catch:function(t){return b(e.catch(_(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),b(e.finally(_(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===n.isCanceled}}}function O(e){return b(e,{isCanceled:!1,onCancelList:[]})}function _(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function P(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var o=(null===t?-1:t)+e;return o<=-1||o>=n?null===r?null:0:o}function j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e,t){var n=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?j(Object(n),!0).forEach((function(t){w(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):j(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:h},e);return Promise.resolve(t)})))}))}function I(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e}),[]).reduce((function(t,n){return n<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,o=0,i=0;!1===r;){var u=t.collections[o];if(u===n){r=!0;break}i+=u.items.length,o++}return t.activeItemId-i}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?E(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):E(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function C(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function D(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function x(e,t,n){var r,o=t.initialState;return{getState:function(){return o},dispatch:function(r,i){var u=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?D(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):D(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},o);o=e(o,{type:r,props:t,payload:i}),n({state:o,prevState:u})},pendingRequests:(r=[],{add:function(e){return r.push(e),e.finally((function(){r=r.filter((function(t){return t!==e}))}))},cancelAll:function(){r.forEach((function(e){return e.cancel()}))},isEmpty:function(){return 0===r.length}})}}function q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function N(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?q(Object(n),!0).forEach((function(t){L(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):q(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function L(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function R(e){return function(e){if(Array.isArray(e))return B(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return B(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return B(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function T(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function F(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?T(Object(n),!0).forEach((function(t){U(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):T(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function U(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function H(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?M(Object(n),!0).forEach((function(t){V(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):M(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function V(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function W(e){return function(e){if(Array.isArray(e))return Q(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Q(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Q(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Q(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function $(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?$(Object(n),!0).forEach((function(t){G(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function G(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function K(e){return Boolean(e.execute)}function J(e,t){return n=e,Boolean(null==n?void 0:n.execute)?z(z({},e),{},{requests:e.queries.map((function(n){return{query:n,sourceId:t,transformResponse:e.transformResponse}}))}):{items:e,sourceId:t};var n}function Y(e){var t=e.reduce((function(e,t){if(!K(t))return e.push(t),e;var n=t.searchClient,r=t.execute,o=t.requesterId,i=t.requests,u=e.find((function(e){return K(t)&&K(e)&&e.searchClient===n&&Boolean(o)&&e.requesterId===o}));if(u){var a;(a=u.items).push.apply(a,W(i))}else{var c={execute:r,requesterId:o,items:i,searchClient:n};e.push(c)}return e}),[]).map((function(e){if(!K(e))return Promise.resolve(e);var t=e,n=t.execute,r=t.items;return n({searchClient:t.searchClient,requests:r})}));return Promise.all(t).then((function(e){return p(e)}))}function X(e,t){return t.map((function(t){var n=e.filter((function(e){return e.sourceId===t.sourceId})),r=n.map((function(e){return e.items})),o=n[0].transformResponse,i=o?o(function(e){var t=e.map((function(e){var t;return A(A({},e),{},{hits:null===(t=e.hits)||void 0===t?void 0:t.map((function(t){return A(A({},t),{},{__autocomplete_indexName:e.index,__autocomplete_queryID:e.queryID})}))})}));return{results:t,hits:t.map((function(e){return e.hits})).filter(Boolean),facetHits:t.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}}(r)):r;return i.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:i}}))}var Z=["event","nextState","props","query","refresh","store"];function ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(n),!0).forEach((function(t){ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ne(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function re(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var oe,ie,ue,ae=null,ce=(oe=-1,ie=-1,ue=void 0,function(e){var t=++oe;return Promise.resolve(e).then((function(e){return ue&&t<ie?ue:(ie=t,ue=e,e)}))});function le(e){var t=e.event,n=e.nextState,r=void 0===n?{}:n,o=e.props,i=e.query,u=e.refresh,a=e.store,c=re(e,Z);ae&&o.environment.clearTimeout(ae);var l=c.setCollections,s=c.setIsOpen,f=c.setQuery,d=c.setActiveItemId,v=c.setStatus;if(f(i),d(o.defaultActiveItemId),!i&&!1===o.openOnFocus){var m,h=a.getState().collections.map((function(e){return te(te({},e),{},{items:[]})}));v("idle"),l(h),s(null!==(m=r.isOpen)&&void 0!==m?m:o.shouldPanelOpen({state:a.getState()}));var g=O(ce(h).then((function(){return Promise.resolve()})));return a.pendingRequests.add(g)}v("loading"),ae=o.environment.setTimeout((function(){v("stalled")}),o.stallThreshold);var y=O(ce(o.getSources(te({query:i,refresh:u,state:a.getState()},c)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(te({query:i,refresh:u,state:a.getState()},c))).then((function(t){return J(t,e.sourceId)}))}))).then(Y).then((function(t){return X(t,e)})).then((function(e){return function(e){var t=e.collections,n=e.props,r=e.state,o=t.reduce((function(e,t){return H(H({},e),{},V({},t.source.sourceId,H(H({},t.source),{},{getItems:function(){return p(t.items)}})))}),{});return p(n.reshape({sources:Object.values(o),sourcesBySourceId:o,state:r})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:a.getState()})}))})))).then((function(e){var n;v("idle"),l(e);var p=o.shouldPanelOpen({state:a.getState()});s(null!==(n=r.isOpen)&&void 0!==n?n:o.openOnFocus&&!i&&p||p);var f=I(a.getState());if(null!==a.getState().activeItemId&&f){var d=f.item,m=f.itemInputValue,h=f.itemUrl,g=f.source;g.onActive(te({event:t,item:d,itemInputValue:m,itemUrl:h,refresh:u,source:g,state:a.getState()},c))}})).finally((function(){v("idle"),ae&&o.environment.clearTimeout(ae)}));return a.pendingRequests.add(y)}var se=["event","props","refresh","store"];function pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function fe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pe(Object(n),!0).forEach((function(t){de(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function de(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ve(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var me=["props","refresh","store"],he=["inputElement","formElement","panelElement"],ge=["inputElement"],ye=["inputElement","maxLength"],be=["item","source"];function Oe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Oe(Object(n),!0).forEach((function(t){Pe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Oe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Pe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function je(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function we(e){var t=e.props,n=e.refresh,r=e.store,o=je(e,me);return{getEnvironmentProps:function(e){var n=e.inputElement,o=e.formElement,i=e.panelElement;return _e({onTouchStart:function(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[o,i].some((function(t){return n=t,r=e.target,n===r||n.contains(r);var n,r}))&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())},onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},je(e,he))},getRootProps:function(e){return _e({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},e)},getFormProps:function(e){return e.inputElement,_e({action:"",noValidate:!0,role:"search",onSubmit:function(i){var u;i.preventDefault(),t.onSubmit(_e({event:i,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),null===(u=e.inputElement)||void 0===u||u.blur()},onReset:function(i){var u;i.preventDefault(),t.onReset(_e({event:i,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),null===(u=e.inputElement)||void 0===u||u.focus()}},je(e,ge))},getLabelProps:function(e){return _e({htmlFor:"".concat(t.id,"-input"),id:"".concat(t.id,"-label")},e)},getInputProps:function(e){function i(e){(t.openOnFocus||Boolean(r.getState().query))&&le(_e({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var u="ontouchstart"in t.environment,a=e||{};a.inputElement;var c=a.maxLength,l=void 0===c?512:c,s=je(a,ye),p=I(r.getState());return _e({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:null!=p&&p.itemUrl?"go":"search",spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:l,type:"search",onChange:function(e){le(_e({event:e,props:t,query:e.currentTarget.value.slice(0,l),refresh:n,store:r},o))},onKeyDown:function(e){!function(e){var t=e.event,n=e.props,r=e.refresh,o=e.store,i=ve(e,se);if("ArrowUp"===t.key||"ArrowDown"===t.key){var u=function(){var e=n.environment.document.getElementById("".concat(n.id,"-item-").concat(o.getState().activeItemId));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},a=function(){var e=I(o.getState());if(null!==o.getState().activeItemId&&e){var n=e.item,u=e.itemInputValue,a=e.itemUrl,c=e.source;c.onActive(fe({event:t,item:n,itemInputValue:u,itemUrl:a,refresh:r,source:c,state:o.getState()},i))}};t.preventDefault(),!1===o.getState().isOpen&&(n.openOnFocus||Boolean(o.getState().query))?le(fe({event:t,props:n,query:o.getState().query,refresh:r,store:o},i)).then((function(){o.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),a(),setTimeout(u,0)})):(o.dispatch(t.key,{}),a(),u())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return;t.preventDefault();var c=I(o.getState()),l=c.item,s=c.itemInputValue,p=c.itemUrl,f=c.source;if(t.metaKey||t.ctrlKey)void 0!==p&&(f.onSelect(fe({event:t,item:l,itemInputValue:s,itemUrl:p,refresh:r,source:f,state:o.getState()},i)),n.navigator.navigateNewTab({itemUrl:p,item:l,state:o.getState()}));else if(t.shiftKey)void 0!==p&&(f.onSelect(fe({event:t,item:l,itemInputValue:s,itemUrl:p,refresh:r,source:f,state:o.getState()},i)),n.navigator.navigateNewWindow({itemUrl:p,item:l,state:o.getState()}));else if(t.altKey);else{if(void 0!==p)return f.onSelect(fe({event:t,item:l,itemInputValue:s,itemUrl:p,refresh:r,source:f,state:o.getState()},i)),void n.navigator.navigate({itemUrl:p,item:l,state:o.getState()});le(fe({event:t,nextState:{isOpen:!1},props:n,query:s,refresh:r,store:o},i)).then((function(){f.onSelect(fe({event:t,item:l,itemInputValue:s,itemUrl:p,refresh:r,source:f,state:o.getState()},i))}))}}}(_e({event:e,props:t,refresh:n,store:r},o))},onFocus:i,onBlur:function(){u||(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())},onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},s)},getPanelProps:function(e){return _e({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){return _e({role:"listbox","aria-labelledby":"".concat(t.id,"-label"),id:"".concat(t.id,"-list")},e)},getItemProps:function(e){var i=e.item,u=e.source,a=je(e,be);return _e({id:"".concat(t.id,"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var t=I(r.getState());if(null!==r.getState().activeItemId&&t){var u=t.item,a=t.itemInputValue,c=t.itemUrl,l=t.source;l.onActive(_e({event:e,item:u,itemInputValue:a,itemUrl:c,refresh:n,source:l,state:r.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var a=u.getItemInputValue({item:i,state:r.getState()}),c=u.getItemUrl({item:i,state:r.getState()});(c?Promise.resolve():le(_e({event:e,nextState:{isOpen:!1},props:t,query:a,refresh:n,store:r},o))).then((function(){u.onSelect(_e({event:e,item:i,itemInputValue:a,itemUrl:c,refresh:n,source:u,state:r.getState()},o))}))}},a)}}}function Se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ie(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Se(Object(n),!0).forEach((function(t){Ee(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ee(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ae(e){var t,n,r,o,i=e.plugins,u=e.options,a=null===(t=((null===(n=u.__autocomplete_metadata)||void 0===n?void 0:n.userAgents)||[])[0])||void 0===t?void 0:t.segment,c=a?Ee({},a,Object.keys((null===(r=u.__autocomplete_metadata)||void 0===r?void 0:r.options)||{})):{};return{plugins:i.map((function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}})),options:Ie({"autocomplete-core":Object.keys(u)},c),ua:y.concat((null===(o=u.__autocomplete_metadata)||void 0===o?void 0:o.userAgents)||[])}}function Ce(e){var t,n=e.state;return!1===n.isOpen||null===n.activeItemId?null:(null===(t=I(n))||void 0===t?void 0:t.itemInputValue)||null}function De(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ke(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?De(Object(n),!0).forEach((function(t){xe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):De(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var qe=function(e,t){switch(t.type){case"setActiveItemId":case"mousemove":return ke(ke({},e),{},{activeItemId:t.payload});case"setQuery":return ke(ke({},e),{},{query:t.payload,completion:null});case"setCollections":return ke(ke({},e),{},{collections:t.payload});case"setIsOpen":return ke(ke({},e),{},{isOpen:t.payload});case"setStatus":return ke(ke({},e),{},{status:t.payload});case"setContext":return ke(ke({},e),{},{context:ke(ke({},e.context),t.payload)});case"ArrowDown":var n=ke(ke({},e),{},{activeItemId:t.payload.hasOwnProperty("nextActiveItemId")?t.payload.nextActiveItemId:P(1,e.activeItemId,m(e),t.props.defaultActiveItemId)});return ke(ke({},n),{},{completion:Ce({state:n})});case"ArrowUp":var r=ke(ke({},e),{},{activeItemId:P(-1,e.activeItemId,m(e),t.props.defaultActiveItemId)});return ke(ke({},r),{},{completion:Ce({state:r})});case"Escape":return e.isOpen?ke(ke({},e),{},{activeItemId:null,isOpen:!1,completion:null}):ke(ke({},e),{},{activeItemId:null,query:"",status:"idle",collections:[]});case"submit":return ke(ke({},e),{},{activeItemId:null,isOpen:!1,status:"idle"});case"reset":return ke(ke({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:"idle",query:""});case"focus":return ke(ke({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case"blur":return t.props.debug?e:ke(ke({},e),{},{isOpen:!1,activeItemId:null});case"mouseleave":return ke(ke({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return"The reducer action ".concat(JSON.stringify(t.type)," is not supported."),e}};function Ne(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ne(Object(n),!0).forEach((function(t){Re(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ne(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Re(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Be(e){var t=[],n=function(e,t){var n,r="undefined"!=typeof window?window:{},o=e.plugins||[];return F(F({debug:!1,openOnFocus:!1,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,environment:r,shouldPanelOpen:function(e){return m(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:d(),plugins:o,initialState:F({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(n){return Promise.all([].concat(R(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return S(e,n)}))).then((function(e){return p(e)})).then((function(e){return e.map((function(e){return F(F({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:F({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}(e,t),r=x(qe,n,(function(e){var t=e.prevState,r=e.state;n.onStateChange(Le({prevState:t,state:r,refresh:u},o))})),o=function(e){var t=e.store;return{setActiveItemId:function(e){t.dispatch("setActiveItemId",e)},setQuery:function(e){t.dispatch("setQuery",e)},setCollections:function(e){var n=0,r=e.map((function(e){return N(N({},e),{},{items:p(e.items).map((function(e){return N(N({},e),{},{__autocomplete_id:n++})}))})}));t.dispatch("setCollections",r)},setIsOpen:function(e){t.dispatch("setIsOpen",e)},setStatus:function(e){t.dispatch("setStatus",e)},setContext:function(e){t.dispatch("setContext",e)}}}({store:r}),i=we(Le({props:n,refresh:u,store:r},o));function u(){return le(Le({event:new Event("input"),nextState:{isOpen:r.getState().isOpen},props:n,query:r.getState().query,refresh:u,store:r},o))}return n.plugins.forEach((function(e){var n;return null===(n=e.subscribe)||void 0===n?void 0:n.call(e,Le(Le({},o),{},{refresh:u,onSelect:function(e){t.push({onSelect:e})},onActive:function(e){t.push({onActive:e})}}))})),function(e){var t,n=e.metadata,r=e.environment;if(null===(t=r.navigator)||void 0===t?void 0:t.userAgent.includes("Algolia Crawler")){var o=r.document.createElement("meta"),i=r.document.querySelector("head");o.name="algolia:metadata",setTimeout((function(){o.content=JSON.stringify(n),i.appendChild(o)}),0)}}({metadata:Ae({plugins:n.plugins,options:e}),environment:n.environment}),Le(Le({refresh:u},i),o)}var Te=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-ClearIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","18"),n.setAttribute("height","18"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"),n.appendChild(r),n};function Fe(e,t){if("string"==typeof t){var n=e.document.querySelector(t);return"The element ".concat(JSON.stringify(t)," is not in the document."),n}return t}function Ue(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((function(e,t){return Object.keys(t).forEach((function(n){var r=e[n],o=t[n];r!==o&&(e[n]=[r,o].filter(Boolean).join(" "))})),e}),{})}var Me=function(e){return e&&"object"===r(e)&&"[object Object]"===Object.prototype.toString.call(e)};function He(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((function(e,t){return Object.keys(t).forEach((function(n){var r=e[n],o=t[n];Array.isArray(r)&&Array.isArray(o)?e[n]=r.concat.apply(r,a(o)):Me(r)&&Me(o)?e[n]=He(r,o):e[n]=o})),e}),{})}function Ve(e,t,n){e[t]=null===n?"":"number"!=typeof n?n:n+"px"}function We(e){this._listeners[e.type](e)}function Qe(e,t,n){var r,o,i=e[t];if("style"===t)if("string"==typeof n)e.style=n;else if(null===n)e.style="";else for(t in n)i&&n[t]===i[t]||Ve(e.style,t,n[t]);else"o"===t[0]&&"n"===t[1]?(r=t!==(t=t.replace(/Capture$/,"")),(o=t.toLowerCase())in e&&(t=o),t=t.slice(2),e._listeners||(e._listeners={}),e._listeners[t]=n,n?i||e.addEventListener(t,We,r):e.removeEventListener(t,We,r)):"list"!==t&&"tagName"!==t&&"form"!==t&&"type"!==t&&"size"!==t&&"download"!==t&&"href"!==t&&t in e?e[t]=null==n?"":n:"function"!=typeof n&&"dangerouslySetInnerHTML"!==t&&(null==n||!1===n&&!/^ar/.test(t)?e.removeAttribute(t):e.setAttribute(t,n))}function $e(e){return"onChange"===e?"onInput":e}function ze(e,t){for(var n in t)Qe(e,$e(n),t[n])}function Ge(e,t){for(var n in t)"o"===n[0]&&"n"===n[1]||Qe(e,$e(n),t[n])}var Ke=["children"];function Je(e){return function(t,n){var r=n.children,o=void 0===r?[]:r,i=u(n,Ke),c=e.document.createElement(t);return ze(c,i),c.append.apply(c,a(o)),c}}var Ye=["autocompleteScopeApi","environment","classNames","getInputProps","getInputPropsCore","onDetachedEscape","state"],Xe=function(e){var t=e.environment.document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("class","aa-LoadingIcon"),t.setAttribute("viewBox","0 0 100 100"),t.setAttribute("width","20"),t.setAttribute("height","20"),t.innerHTML='<circle\n cx="50"\n cy="50"\n fill="none"\n r="35"\n stroke="currentColor"\n stroke-dasharray="164.93361431346415 56.97787143782138"\n stroke-width="6"\n>\n <animateTransform\n attributeName="transform"\n type="rotate"\n repeatCount="indefinite"\n dur="1s"\n values="0 50 50;90 50 50;180 50 50;360 50 50"\n keyTimes="0;0.40;0.65;1"\n />\n</circle>',t},Ze=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-SubmitIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","20"),n.setAttribute("height","20"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"),n.appendChild(r),n};function et(e){var t=e.autocomplete,r=e.autocompleteScopeApi,o=e.classNames,i=e.environment,a=e.isDetached,c=e.placeholder,l=void 0===c?"Search":c,s=e.propGetters,p=e.setIsModalOpen,f=e.state,d=e.translations,v=Je(i),m=s.getRootProps(n({state:f,props:t.getRootProps({})},r)),h=v("div",n({class:o.root},m)),g=v("div",{class:o.detachedContainer,onMouseDown:function(e){e.stopPropagation()}}),y=v("div",{class:o.detachedOverlay,children:[g],onMouseDown:function(){p(!1),t.setIsOpen(!1)}}),b=s.getLabelProps(n({state:f,props:t.getLabelProps({})},r)),O=v("button",{class:o.submitButton,type:"submit",title:d.submitButtonTitle,children:[Ze({environment:i})]}),_=v("label",n({class:o.label,children:[O]},b)),P=v("button",{class:o.clearButton,type:"reset",title:d.clearButtonTitle,children:[Te({environment:i})]}),j=v("div",{class:o.loadingIndicator,children:[Xe({environment:i})]}),w=function(e){var t=e.autocompleteScopeApi,r=e.environment;e.classNames;var o=e.getInputProps,i=e.getInputPropsCore,a=e.onDetachedEscape,c=e.state,l=u(e,Ye),s=Je(r)("input",l),p=o(n({state:c,props:i({inputElement:s}),inputElement:s},t));return ze(s,n(n({},p),{},{onKeyDown:function(e){if(a&&"Escape"===e.key)return e.preventDefault(),void a();p.onKeyDown(e)}})),s}({class:o.input,environment:i,state:f,getInputProps:s.getInputProps,getInputPropsCore:t.getInputProps,autocompleteScopeApi:r,onDetachedEscape:a?function(){t.setIsOpen(!1),p(!1)}:void 0}),S=v("div",{class:o.inputWrapperPrefix,children:[_,j]}),I=v("div",{class:o.inputWrapperSuffix,children:[P]}),E=v("div",{class:o.inputWrapper,children:[w]}),A=s.getFormProps(n({state:f,props:t.getFormProps({inputElement:w})},r)),C=v("form",n({class:o.form,children:[S,E,I]},A)),D=s.getPanelProps(n({state:f,props:t.getPanelProps({})},r)),k=v("div",n({class:o.panel},D));if(a){var x=v("div",{class:o.detachedSearchButtonIcon,children:[Ze({environment:i})]}),q=v("div",{class:o.detachedSearchButtonPlaceholder,textContent:l}),N=v("button",{class:o.detachedSearchButton,onClick:function(e){e.preventDefault(),p(!0)},children:[x,q]}),L=v("button",{class:o.detachedCancelButton,textContent:d.detachedCancelButtonText,onClick:function(){t.setIsOpen(!1),p(!1)}}),R=v("div",{class:o.detachedFormContainer,children:[C,L]});g.appendChild(R),h.appendChild(N)}else h.appendChild(C);return{detachedContainer:g,detachedOverlay:y,inputWrapper:E,input:w,root:h,form:C,label:_,submitButton:O,clearButton:P,loadingIndicator:j,panel:k}}var tt,nt,rt,ot,it,ut,at={},ct=[],lt=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function st(e,t){for(var n in t)e[n]=t[n];return e}function pt(e){var t=e.parentNode;t&&t.removeChild(e)}function ft(e,t,n){var r,o,i,u={};for(i in t)"key"==i?r=t[i]:"ref"==i?o=t[i]:u[i]=t[i];if(arguments.length>2&&(u.children=arguments.length>3?tt.call(arguments,2):n),"function"==typeof e&&null!=e.defaultProps)for(i in e.defaultProps)void 0===u[i]&&(u[i]=e.defaultProps[i]);return dt(e,u,r,o,null)}function dt(e,t,n,r,o){var i={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==o?++rt:o};return null==o&&null!=nt.vnode&&nt.vnode(i),i}function vt(e){return e.children}function mt(e,t){this.props=e,this.context=t}function ht(e,t){if(null==t)return e.__?ht(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t<e.__k.length;t++)if(null!=(n=e.__k[t])&&null!=n.__e)return n.__e;return"function"==typeof e.type?ht(e):null}function gt(e){var t,n;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if(null!=(n=e.__k[t])&&null!=n.__e){e.__e=e.__c.base=n.__e;break}return gt(e)}}function yt(e){(!e.__d&&(e.__d=!0)&&ot.push(e)&&!bt.__r++||ut!==nt.debounceRendering)&&((ut=nt.debounceRendering)||it)(bt)}function bt(){for(var e;bt.__r=ot.length;)e=ot.sort((function(e,t){return e.__v.__b-t.__v.__b})),ot=[],e.some((function(e){var t,n,r,o,i,u;e.__d&&(i=(o=(t=e).__v).__e,(u=t.__P)&&(n=[],(r=st({},o)).__v=o.__v+1,Et(u,o,r,t.__n,void 0!==u.ownerSVGElement,null!=o.__h?[i]:null,n,null==i?ht(o):i,o.__h),At(n,o),o.__e!=i&>(o)))}))}function Ot(e,t,n,r,o,i,u,a,c,l){var s,p,f,d,v,m,h,g=r&&r.__k||ct,y=g.length;for(n.__k=[],s=0;s<t.length;s++)if(null!=(d=n.__k[s]=null==(d=t[s])||"boolean"==typeof d?null:"string"==typeof d||"number"==typeof d||"bigint"==typeof d?dt(null,d,null,null,d):Array.isArray(d)?dt(vt,{children:d},null,null,null):d.__b>0?dt(d.type,d.props,d.key,null,d.__v):d)){if(d.__=n,d.__b=n.__b+1,null===(f=g[s])||f&&d.key==f.key&&d.type===f.type)g[s]=void 0;else for(p=0;p<y;p++){if((f=g[p])&&d.key==f.key&&d.type===f.type){g[p]=void 0;break}f=null}Et(e,d,f=f||at,o,i,u,a,c,l),v=d.__e,(p=d.ref)&&f.ref!=p&&(h||(h=[]),f.ref&&h.push(f.ref,null,d),h.push(p,d.__c||v,d)),null!=v?(null==m&&(m=v),"function"==typeof d.type&&d.__k===f.__k?d.__d=c=_t(d,c,e):c=Pt(e,d,f,g,v,c),"function"==typeof n.type&&(n.__d=c)):c&&f.__e==c&&c.parentNode!=e&&(c=ht(f))}for(n.__e=m,s=y;s--;)null!=g[s]&&("function"==typeof n.type&&null!=g[s].__e&&g[s].__e==n.__d&&(n.__d=ht(r,s+1)),kt(g[s],g[s]));if(h)for(s=0;s<h.length;s++)Dt(h[s],h[++s],h[++s])}function _t(e,t,n){for(var r,o=e.__k,i=0;o&&i<o.length;i++)(r=o[i])&&(r.__=e,t="function"==typeof r.type?_t(r,t,n):Pt(n,r,r,o,r.__e,t));return t}function Pt(e,t,n,r,o,i){var u,a,c;if(void 0!==t.__d)u=t.__d,t.__d=void 0;else if(null==n||o!=i||null==o.parentNode)e:if(null==i||i.parentNode!==e)e.appendChild(o),u=null;else{for(a=i,c=0;(a=a.nextSibling)&&c<r.length;c+=2)if(a==o)break e;e.insertBefore(o,i),u=i}return void 0!==u?u:o.nextSibling}function jt(e,t,n){"-"===t[0]?e.setProperty(t,n):e[t]=null==n?"":"number"!=typeof n||lt.test(t)?n:n+"px"}function wt(e,t,n,r,o){var i;e:if("style"===t)if("string"==typeof n)e.style.cssText=n;else{if("string"==typeof r&&(e.style.cssText=r=""),r)for(t in r)n&&t in n||jt(e.style,t,"");if(n)for(t in n)r&&n[t]===r[t]||jt(e.style,t,n[t])}else if("o"===t[0]&&"n"===t[1])i=t!==(t=t.replace(/Capture$/,"")),t=t.toLowerCase()in e?t.toLowerCase().slice(2):t.slice(2),e.l||(e.l={}),e.l[t+i]=n,n?r||e.addEventListener(t,i?It:St,i):e.removeEventListener(t,i?It:St,i);else if("dangerouslySetInnerHTML"!==t){if(o)t=t.replace(/xlink[H:h]/,"h").replace(/sName$/,"s");else if("href"!==t&&"list"!==t&&"form"!==t&&"tabIndex"!==t&&"download"!==t&&t in e)try{e[t]=null==n?"":n;break e}catch(e){}"function"==typeof n||(null!=n&&(!1!==n||"a"===t[0]&&"r"===t[1])?e.setAttribute(t,n):e.removeAttribute(t))}}function St(e){this.l[e.type+!1](nt.event?nt.event(e):e)}function It(e){this.l[e.type+!0](nt.event?nt.event(e):e)}function Et(e,t,n,r,o,i,u,a,c){var l,s,p,f,d,v,m,h,g,y,b,O=t.type;if(void 0!==t.constructor)return null;null!=n.__h&&(c=n.__h,a=t.__e=n.__e,t.__h=null,i=[a]),(l=nt.__b)&&l(t);try{e:if("function"==typeof O){if(h=t.props,g=(l=O.contextType)&&r[l.__c],y=l?g?g.props.value:l.__:r,n.__c?m=(s=t.__c=n.__c).__=s.__E:("prototype"in O&&O.prototype.render?t.__c=s=new O(h,y):(t.__c=s=new mt(h,y),s.constructor=O,s.render=xt),g&&g.sub(s),s.props=h,s.state||(s.state={}),s.context=y,s.__n=r,p=s.__d=!0,s.__h=[]),null==s.__s&&(s.__s=s.state),null!=O.getDerivedStateFromProps&&(s.__s==s.state&&(s.__s=st({},s.__s)),st(s.__s,O.getDerivedStateFromProps(h,s.__s))),f=s.props,d=s.state,p)null==O.getDerivedStateFromProps&&null!=s.componentWillMount&&s.componentWillMount(),null!=s.componentDidMount&&s.__h.push(s.componentDidMount);else{if(null==O.getDerivedStateFromProps&&h!==f&&null!=s.componentWillReceiveProps&&s.componentWillReceiveProps(h,y),!s.__e&&null!=s.shouldComponentUpdate&&!1===s.shouldComponentUpdate(h,s.__s,y)||t.__v===n.__v){s.props=h,s.state=s.__s,t.__v!==n.__v&&(s.__d=!1),s.__v=t,t.__e=n.__e,t.__k=n.__k,t.__k.forEach((function(e){e&&(e.__=t)})),s.__h.length&&u.push(s);break e}null!=s.componentWillUpdate&&s.componentWillUpdate(h,s.__s,y),null!=s.componentDidUpdate&&s.__h.push((function(){s.componentDidUpdate(f,d,v)}))}s.context=y,s.props=h,s.state=s.__s,(l=nt.__r)&&l(t),s.__d=!1,s.__v=t,s.__P=e,l=s.render(s.props,s.state,s.context),s.state=s.__s,null!=s.getChildContext&&(r=st(st({},r),s.getChildContext())),p||null==s.getSnapshotBeforeUpdate||(v=s.getSnapshotBeforeUpdate(f,d)),b=null!=l&&l.type===vt&&null==l.key?l.props.children:l,Ot(e,Array.isArray(b)?b:[b],t,n,r,o,i,u,a,c),s.base=t.__e,t.__h=null,s.__h.length&&u.push(s),m&&(s.__E=s.__=null),s.__e=!1}else null==i&&t.__v===n.__v?(t.__k=n.__k,t.__e=n.__e):t.__e=Ct(n.__e,t,n,r,o,i,u,c);(l=nt.diffed)&&l(t)}catch(e){t.__v=null,(c||null!=i)&&(t.__e=a,t.__h=!!c,i[i.indexOf(a)]=null),nt.__e(e,t,n)}}function At(e,t){nt.__c&&nt.__c(t,e),e.some((function(t){try{e=t.__h,t.__h=[],e.some((function(e){e.call(t)}))}catch(e){nt.__e(e,t.__v)}}))}function Ct(e,t,n,r,o,i,u,a){var c,l,s,p=n.props,f=t.props,d=t.type,v=0;if("svg"===d&&(o=!0),null!=i)for(;v<i.length;v++)if((c=i[v])&&"setAttribute"in c==!!d&&(d?c.localName===d:3===c.nodeType)){e=c,i[v]=null;break}if(null==e){if(null===d)return document.createTextNode(f);e=o?document.createElementNS("http://www.w3.org/2000/svg",d):document.createElement(d,f.is&&f),i=null,a=!1}if(null===d)p===f||a&&e.data===f||(e.data=f);else{if(i=i&&tt.call(e.childNodes),l=(p=n.props||at).dangerouslySetInnerHTML,s=f.dangerouslySetInnerHTML,!a){if(null!=i)for(p={},v=0;v<e.attributes.length;v++)p[e.attributes[v].name]=e.attributes[v].value;(s||l)&&(s&&(l&&s.__html==l.__html||s.__html===e.innerHTML)||(e.innerHTML=s&&s.__html||""))}if(function(e,t,n,r,o){var i;for(i in n)"children"===i||"key"===i||i in t||wt(e,i,null,n[i],r);for(i in t)o&&"function"!=typeof t[i]||"children"===i||"key"===i||"value"===i||"checked"===i||n[i]===t[i]||wt(e,i,t[i],n[i],r)}(e,f,p,o,a),s)t.__k=[];else if(v=t.props.children,Ot(e,Array.isArray(v)?v:[v],t,n,r,o&&"foreignObject"!==d,i,u,i?i[0]:n.__k&&ht(n,0),a),null!=i)for(v=i.length;v--;)null!=i[v]&&pt(i[v]);a||("value"in f&&void 0!==(v=f.value)&&(v!==p.value||v!==e.value||"progress"===d&&!v)&&wt(e,"value",v,p.value,!1),"checked"in f&&void 0!==(v=f.checked)&&v!==e.checked&&wt(e,"checked",v,p.checked,!1))}return e}function Dt(e,t,n){try{"function"==typeof e?e(t):e.current=t}catch(e){nt.__e(e,n)}}function kt(e,t,n){var r,o;if(nt.unmount&&nt.unmount(e),(r=e.ref)&&(r.current&&r.current!==e.__e||Dt(r,null,t)),null!=(r=e.__c)){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){nt.__e(e,t)}r.base=r.__P=null}if(r=e.__k)for(o=0;o<r.length;o++)r[o]&&kt(r[o],t,"function"!=typeof e.type);n||null==e.__e||pt(e.__e),e.__e=e.__d=void 0}function xt(e,t,n){return this.constructor(e,n)}tt=ct.slice,nt={__e:function(e,t){for(var n,r,o;t=t.__;)if((n=t.__c)&&!n.__)try{if((r=n.constructor)&&null!=r.getDerivedStateFromError&&(n.setState(r.getDerivedStateFromError(e)),o=n.__d),null!=n.componentDidCatch&&(n.componentDidCatch(e),o=n.__d),o)return n.__E=n}catch(t){e=t}throw e}},rt=0,mt.prototype.setState=function(e,t){var n;n=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=st({},this.state),"function"==typeof e&&(e=e(st({},n),this.props)),e&&st(n,e),null!=e&&this.__v&&(t&&this.__h.push(t),yt(this))},mt.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),yt(this))},mt.prototype.render=vt,ot=[],it="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,bt.__r=0;var qt="__aa-highlight__",Nt="__/aa-highlight__";function Lt(e){var t=e.highlightedValue.split(qt),n=t.shift(),r=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{get:function(){return e},add:function(t){var n=e[e.length-1];(null==n?void 0:n.isHighlighted)===t.isHighlighted?e[e.length-1]={value:n.value+t.value,isHighlighted:n.isHighlighted}:e.push(t)}}}(n?[{value:n,isHighlighted:!1}]:[]);return t.forEach((function(e){var t=e.split(Nt);r.add({value:t[0],isHighlighted:!0}),""!==t[1]&&r.add({value:t[1],isHighlighted:!1})})),r.get()}function Rt(e){return function(e){if(Array.isArray(e))return Bt(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Bt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Bt(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Bt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Tt(e){var t=e.hit,n=e.attribute,r=Array.isArray(n)?n:[n],o=v(t,["_highlightResult"].concat(Rt(r),["value"]));return"string"!=typeof o&&(o=v(t,r)||""),Lt({highlightedValue:o})}var Ft={"&":"&","<":"<",">":">",""":'"',"'":"'"},Ut=new RegExp(/\w/i),Mt=/&(amp|quot|lt|gt|#39);/g,Ht=RegExp(Mt.source);function Vt(e,t){var n,r,o,i=e[t],u=(null===(n=e[t+1])||void 0===n?void 0:n.isHighlighted)||!0,a=(null===(r=e[t-1])||void 0===r?void 0:r.isHighlighted)||!0;return Ut.test((o=i.value)&&Ht.test(o)?o.replace(Mt,(function(e){return Ft[e]})):o)||a!==u?i.isHighlighted:a}function Wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Qt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Wt(Object(n),!0).forEach((function(t){$t(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Wt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $t(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function zt(e){return e.some((function(e){return e.isHighlighted}))?e.map((function(t,n){return Qt(Qt({},t),{},{isHighlighted:!Vt(e,n)})})):e.map((function(e){return Qt(Qt({},e),{},{isHighlighted:!1})}))}function Gt(e){return function(e){if(Array.isArray(e))return Kt(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Kt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Kt(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Kt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Jt(e){var t=e.hit,n=e.attribute,r=Array.isArray(n)?n:[n],o=v(t,["_snippetResult"].concat(Gt(r),["value"]));return"string"!=typeof o&&(o=v(t,r)||""),Lt({highlightedValue:o})}function Yt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Yt(Object(n),!0).forEach((function(t){Zt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Yt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Zt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var en=["params"];function tn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tn(Object(n),!0).forEach((function(t){rn(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function rn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function on(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function un(e){return function(e){if(Array.isArray(e))return an(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return an(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return an(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function an(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function cn(e){var t=e.createElement,n=e.Fragment;return function(e){var r,o=e.hit,i=e.attribute,u=e.tagName,a=void 0===u?"mark":u;return t(n,{},(r={hit:o,attribute:i},zt(Tt(r))).map((function(e,n){return e.isHighlighted?t(a,{key:n},e.value):e.value})))}}function ln(e){var t=e.createElement,n=e.Fragment;return function(e){var r,o=e.hit,i=e.attribute,u=e.tagName,a=void 0===u?"mark":u;return t(n,{},(r={hit:o,attribute:i},zt(Jt(r))).map((function(e,n){return e.isHighlighted?t(a,{key:n},e.value):e.value})))}}function sn(e){var t=e.createElement,n=e.Fragment;return function(e){var r=e.hit,o=e.attribute,i=e.tagName,u=void 0===i?"mark":i;return t(n,{},Jt({hit:r,attribute:o}).map((function(e,n){return e.isHighlighted?t(u,{key:n},e.value):e.value})))}}var pn=["classNames","container","getEnvironmentProps","getFormProps","getInputProps","getItemProps","getLabelProps","getListProps","getPanelProps","getRootProps","panelContainer","panelPlacement","render","renderNoResults","renderer","detachedMediaQuery","components","translations"],fn={clearButton:"aa-ClearButton",detachedCancelButton:"aa-DetachedCancelButton",detachedContainer:"aa-DetachedContainer",detachedFormContainer:"aa-DetachedFormContainer",detachedOverlay:"aa-DetachedOverlay",detachedSearchButton:"aa-DetachedSearchButton",detachedSearchButtonIcon:"aa-DetachedSearchButtonIcon",detachedSearchButtonPlaceholder:"aa-DetachedSearchButtonPlaceholder",form:"aa-Form",input:"aa-Input",inputWrapper:"aa-InputWrapper",inputWrapperPrefix:"aa-InputWrapperPrefix",inputWrapperSuffix:"aa-InputWrapperSuffix",item:"aa-Item",label:"aa-Label",list:"aa-List",loadingIndicator:"aa-LoadingIndicator",panel:"aa-Panel",panelLayout:"aa-PanelLayout aa-Panel--scrollable",root:"aa-Autocomplete",source:"aa-Source",sourceFooter:"aa-SourceFooter",sourceHeader:"aa-SourceHeader",sourceNoResults:"aa-SourceNoResults",submitButton:"aa-SubmitButton"},dn=function(e,t){!function(e,t,n){var r,o,i;nt.__&&nt.__(e,t),o=(r="function"==typeof n)?null:n&&n.__k||t.__k,i=[],Et(t,e=(!r&&n||t).__k=ft(vt,null,[e]),o||at,at,void 0!==t.ownerSVGElement,!r&&n?[n]:o?null:t.firstChild?tt.call(t.childNodes):null,i,!r&&n?n:o?o.__e:t.firstChild,r),At(i,e)}(e.children,t)},vn={createElement:ft,Fragment:vt};function mn(e){var t=e.panelPlacement,n=e.container,r=e.form,o=e.environment,i=n.getBoundingClientRect(),u=(o.pageYOffset||o.document.documentElement.scrollTop||o.document.body.scrollTop||0)+i.top+i.height;switch(t){case"start":return{top:u,left:i.left};case"end":return{top:u,right:o.document.documentElement.clientWidth-(i.left+i.width)};case"full-width":return{top:u,left:0,right:0,width:"unset",maxWidth:"unset"};case"input-wrapper-width":var a=r.getBoundingClientRect();return{top:u,left:a.left,right:o.document.documentElement.clientWidth-(a.left+a.width),width:"unset",maxWidth:"unset"};default:throw new Error("[Autocomplete] The `panelPlacement` value ".concat(JSON.stringify(t)," is not valid."))}}var hn=[{segment:"autocomplete-js",version:g}];var gn=function(e,t){function n(t){return e({searchClient:t.searchClient,queries:t.requests.map((function(e){return e.query}))}).then((function(e){return e.map((function(e,n){var r=t.requests[n];return{items:e,sourceId:r.sourceId,transformResponse:r.transformResponse}}))}))}return function(e){return function(r){return Xt(Xt({requesterId:t,execute:n},e),r)}}}((function(e){return function(e){var t=e.searchClient,n=e.queries,r=e.userAgents,o=void 0===r?[]:r;return"function"==typeof t.addAlgoliaAgent&&[].concat(un(y),un(o)).forEach((function(e){var n=e.segment,r=e.version;t.addAlgoliaAgent(n,r)})),t.search(n.map((function(e){var t=e.params;return nn(nn({},on(e,en)),{},{params:nn({hitsPerPage:5,highlightPreTag:qt,highlightPostTag:Nt},t)})}))).then((function(e){return e.results}))}(n(n({},e),{},{userAgents:hn}))}),"algolia");var yn=gn({transformResponse:function(e){return e.hits}});e.autocomplete=function(e){var t,r=function(){var e=[],t=[];function n(n){e.push(n);var r=n();t.push(r)}return{runEffect:n,cleanupEffects:function(){var e=t;t=[],e.forEach((function(e){e()}))},runEffects:function(){var t=e;e=[],t.forEach((function(e){n(e)}))}}}(),a=r.runEffect,c=r.cleanupEffects,p=r.runEffects,f=(t=[],{reactive:function(e){var n=e(),r={_fn:e,_ref:{current:n},get value(){return this._ref.current},set value(e){this._ref.current=e}};return t.push(r),r},runReactives:function(){t.forEach((function(e){e._ref.current=e._fn()}))}}),v=f.reactive,h=f.runReactives,g=l(!1),y=l(e),b=l(void 0),O=v((function(){return function(e){var t,r=e.classNames,o=e.container,i=e.getEnvironmentProps,a=e.getFormProps,c=e.getInputProps,l=e.getItemProps,s=e.getLabelProps,p=e.getListProps,f=e.getPanelProps,v=e.getRootProps,m=e.panelContainer,h=e.panelPlacement,g=e.render,y=e.renderNoResults,b=e.renderer,O=e.detachedMediaQuery,_=e.components,P=e.translations,j=u(e,pn),w="undefined"!=typeof window?window:{},S=Fe(w,o);S.tagName;var I,E,A,C=null!=b?b:vn,D={Highlight:(I=C,E=I.createElement,A=I.Fragment,function(e){var t=e.hit,n=e.attribute,r=e.tagName,o=void 0===r?"mark":r;return E(A,{},Tt({hit:t,attribute:n}).map((function(e,t){return e.isHighlighted?E(o,{key:t},e.value):e.value})))}),ReverseHighlight:cn(C),ReverseSnippet:ln(C),Snippet:sn(C)};return{renderer:{classNames:Ue(fn,null!=r?r:{}),container:S,getEnvironmentProps:null!=i?i:function(e){return e.props},getFormProps:null!=a?a:function(e){return e.props},getInputProps:null!=c?c:function(e){return e.props},getItemProps:null!=l?l:function(e){return e.props},getLabelProps:null!=s?s:function(e){return e.props},getListProps:null!=p?p:function(e){return e.props},getPanelProps:null!=f?f:function(e){return e.props},getRootProps:null!=v?v:function(e){return e.props},panelContainer:m?Fe(w,m):w.document.body,panelPlacement:null!=h?h:"input-wrapper-width",render:null!=g?g:dn,renderNoResults:y,renderer:C,detachedMediaQuery:null!=O?O:getComputedStyle(w.document.documentElement).getPropertyValue("--aa-detached-media-query"),components:n(n({},D),_),translations:n(n({},{clearButtonTitle:"Clear",detachedCancelButtonText:"Cancel",submitButtonTitle:"Submit"}),P)},core:n(n({},j),{},{id:null!==(t=j.id)&&void 0!==t?t:d(),environment:w})}}(y.current)})),_=v((function(){return O.value.core.environment.matchMedia(O.value.renderer.detachedMediaQuery).matches})),P=v((function(){return Be(n(n({},O.value.core),{},{onStateChange:function(e){var t,n,r;g.current=e.state.collections.some((function(e){return e.source.templates.noResults})),null===(t=b.current)||void 0===t||t.call(b,e),null===(n=(r=O.value.core).onStateChange)||void 0===n||n.call(r,e)},shouldPanelOpen:y.current.shouldPanelOpen||function(e){var t=e.state;if(_.value)return!0;var n=m(t)>0;if(!O.value.core.openOnFocus&&!t.query)return n;var r=Boolean(g.current||O.value.renderer.renderNoResults);return!n&&r||n},__autocomplete_metadata:{userAgents:hn,options:e}}))})),j=l(n({collections:[],completion:null,context:{},isOpen:!1,query:"",activeItemId:null,status:"idle"},O.value.core.initialState)),w={getEnvironmentProps:O.value.renderer.getEnvironmentProps,getFormProps:O.value.renderer.getFormProps,getInputProps:O.value.renderer.getInputProps,getItemProps:O.value.renderer.getItemProps,getLabelProps:O.value.renderer.getLabelProps,getListProps:O.value.renderer.getListProps,getPanelProps:O.value.renderer.getPanelProps,getRootProps:O.value.renderer.getRootProps},S={setActiveItemId:P.value.setActiveItemId,setQuery:P.value.setQuery,setCollections:P.value.setCollections,setIsOpen:P.value.setIsOpen,setStatus:P.value.setStatus,setContext:P.value.setContext,refresh:P.value.refresh},I=v((function(){return et({autocomplete:P.value,autocompleteScopeApi:S,classNames:O.value.renderer.classNames,environment:O.value.core.environment,isDetached:_.value,placeholder:O.value.core.placeholder,propGetters:w,setIsModalOpen:D,state:j.current,translations:O.value.renderer.translations})}));function E(){ze(I.value.panel,{style:_.value?{}:mn({panelPlacement:O.value.renderer.panelPlacement,container:I.value.root,form:I.value.form,environment:O.value.core.environment})})}function A(e){j.current=e;var t={autocomplete:P.value,autocompleteScopeApi:S,classNames:O.value.renderer.classNames,components:O.value.renderer.components,container:O.value.renderer.container,createElement:O.value.renderer.renderer.createElement,dom:I.value,Fragment:O.value.renderer.renderer.Fragment,panelContainer:_.value?I.value.detachedContainer:O.value.renderer.panelContainer,propGetters:w,state:j.current},r=!m(e)&&!g.current&&O.value.renderer.renderNoResults||O.value.renderer.render;!function(e){var t=e.autocomplete,r=e.autocompleteScopeApi,o=e.dom,i=e.propGetters,u=e.state;Ge(o.root,i.getRootProps(n({state:u,props:t.getRootProps({})},r))),Ge(o.input,i.getInputProps(n({state:u,props:t.getInputProps({inputElement:o.input}),inputElement:o.input},r))),ze(o.label,{hidden:"stalled"===u.status}),ze(o.loadingIndicator,{hidden:"stalled"!==u.status}),ze(o.clearButton,{hidden:!u.query})}(t),function(e,t){var r=t.autocomplete,o=t.autocompleteScopeApi,u=t.classNames,a=t.createElement,c=t.dom,l=t.Fragment,s=t.panelContainer,p=t.propGetters,f=t.state,d=t.components;if(f.isOpen){s.contains(c.panel)||"loading"===f.status||s.appendChild(c.panel),c.panel.classList.toggle("aa-Panel--stalled","stalled"===f.status);var v=f.collections.filter((function(e){var t=e.source,n=e.items;return t.templates.noResults||n.length>0})).map((function(e,t){var c=e.source,s=e.items;return a("section",{key:t,className:u.source,"data-autocomplete-source-id":c.sourceId},c.templates.header&&a("div",{className:u.sourceHeader},c.templates.header({components:d,createElement:a,Fragment:l,items:s,source:c,state:f})),c.templates.noResults&&0===s.length?a("div",{className:u.sourceNoResults},c.templates.noResults({components:d,createElement:a,Fragment:l,source:c,state:f})):a("ul",i({className:u.list},p.getListProps(n({state:f,props:r.getListProps({})},o))),s.map((function(e){var t=r.getItemProps({item:e,source:c});return a("li",i({key:t.id,className:u.item},p.getItemProps(n({state:f,props:t},o))),c.templates.item({components:d,createElement:a,Fragment:l,item:e,state:f}))}))),c.templates.footer&&a("div",{className:u.sourceFooter},c.templates.footer({components:d,createElement:a,Fragment:l,items:s,source:c,state:f})))})),m=a(l,null,a("div",{className:u.panelLayout},v),a("div",{className:"aa-GradientBottom"})),h=v.reduce((function(e,t){return e[t.props["data-autocomplete-source-id"]]=t,e}),{});e(n({children:m,state:f,sections:v,elements:h,createElement:a,Fragment:l,components:d},o),c.panel)}else s.contains(c.panel)&&s.removeChild(c.panel)}(r,t)}function C(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c(),y.current=He(O.value.renderer,O.value.core,{initialState:j.current},e),h(),p(),P.value.refresh().then((function(){A(j.current)}))}function D(e){requestAnimationFrame((function(){var t=O.value.core.environment.document.body.contains(I.value.detachedOverlay);e!==t&&(e?(O.value.core.environment.document.body.appendChild(I.value.detachedOverlay),O.value.core.environment.document.body.classList.add("aa-Detached"),I.value.input.focus()):(O.value.core.environment.document.body.removeChild(I.value.detachedOverlay),O.value.core.environment.document.body.classList.remove("aa-Detached"),P.value.setQuery(""),P.value.refresh()))}))}return a((function(){var e=P.value.getEnvironmentProps({formElement:I.value.form,panelElement:I.value.panel,inputElement:I.value.input});return ze(O.value.core.environment,e),function(){ze(O.value.core.environment,Object.keys(e).reduce((function(e,t){return n(n({},e),{},o({},t,void 0))}),{}))}})),a((function(){var e=_.value?O.value.core.environment.document.body:O.value.renderer.panelContainer,t=_.value?I.value.detachedOverlay:I.value.panel;return _.value&&j.current.isOpen&&D(!0),A(j.current),function(){e.contains(t)&&e.removeChild(t)}})),a((function(){var e=O.value.renderer.container;return e.appendChild(I.value.root),function(){e.removeChild(I.value.root)}})),a((function(){var e=s((function(e){A(e.state)}),0);return b.current=function(t){var n=t.state,r=t.prevState;(_.value&&r.isOpen!==n.isOpen&&D(n.isOpen),_.value||!n.isOpen||r.isOpen||E(),n.query!==r.query)&&O.value.core.environment.document.querySelectorAll(".aa-Panel--scrollable").forEach((function(e){0!==e.scrollTop&&(e.scrollTop=0)}));e({state:n})},function(){b.current=void 0}})),a((function(){var e=s((function(){var e=_.value;_.value=O.value.core.environment.matchMedia(O.value.renderer.detachedMediaQuery).matches,e!==_.value?C({}):requestAnimationFrame(E)}),20);return O.value.core.environment.addEventListener("resize",e),function(){O.value.core.environment.removeEventListener("resize",e)}})),a((function(){if(!_.value)return function(){};function e(e){I.value.detachedContainer.classList.toggle("aa-DetachedContainer--modal",e)}function t(t){e(t.matches)}var n=O.value.core.environment.matchMedia(getComputedStyle(O.value.core.environment.document.documentElement).getPropertyValue("--aa-detached-modal-media-query"));e(n.matches);var r=Boolean(n.addEventListener);return r?n.addEventListener("change",t):n.addListener(t),function(){r?n.removeEventListener("change",t):n.removeListener(t)}})),a((function(){return requestAnimationFrame(E),function(){}})),n(n({},S),{},{update:C,destroy:function(){c()}})},e.getAlgoliaFacets=function(e){var t=gn({transformResponse:function(e){return e.facetHits}}),r=e.queries.map((function(e){return n(n({},e),{},{type:"facet"})}));return t(n(n({},e),{},{queries:r}))},e.getAlgoliaResults=yn,Object.defineProperty(e,"__esModule",{value:!0})})); + diff --git a/public/site_libs/quarto-search/fuse.min.js b/public/site_libs/quarto-search/fuse.min.js new file mode 100644 index 0000000..ca37378 --- /dev/null +++ b/public/site_libs/quarto-search/fuse.min.js @@ -0,0 +1,9 @@ +/** + * Fuse.js v6.5.3 - Lightweight fuzzy-search (http://fusejs.io) + * + * Copyright (c) 2021 Kiro Risk (http://kiro.me) + * All Rights Reserved. Apache Software License 2.0 + * + * http://www.apache.org/licenses/LICENSE-2.0 + */ +var e,t;e=this,t=function(){"use strict";function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?e(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function n(e){return n="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},n(e)}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function o(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),t&&u(e,t)}function s(e){return s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},s(e)}function u(e,t){return u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},u(e,t)}function h(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=s(e);if(t){var i=s(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return h(this,n)}}function l(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function v(e){return Array.isArray?Array.isArray(e):"[object Array]"===b(e)}function g(e){return"string"==typeof e}function y(e){return"number"==typeof e}function p(e){return!0===e||!1===e||function(e){return m(e)&&null!==e}(e)&&"[object Boolean]"==b(e)}function m(e){return"object"===n(e)}function k(e){return null!=e}function M(e){return!e.trim().length}function b(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var x=function(e){return"Invalid value for key ".concat(e)},w=function(e){return"Pattern length exceeds max of ".concat(e,".")},L=Object.prototype.hasOwnProperty,S=function(){function e(t){var n=this;r(this,e),this._keys=[],this._keyMap={};var i=0;t.forEach((function(e){var t=_(e);i+=t.weight,n._keys.push(t),n._keyMap[t.id]=t,i+=t.weight})),this._keys.forEach((function(e){e.weight/=i}))}return o(e,[{key:"get",value:function(e){return this._keyMap[e]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function _(e){var t=null,n=null,r=null,i=1;if(g(e)||v(e))r=e,t=O(e),n=j(e);else{if(!L.call(e,"name"))throw new Error(function(e){return"Missing ".concat(e," property in key")}("name"));var o=e.name;if(r=o,L.call(e,"weight")&&(i=e.weight)<=0)throw new Error(function(e){return"Property 'weight' in key '".concat(e,"' must be a positive integer")}(o));t=O(o),n=j(o)}return{path:t,id:n,weight:i,src:r}}function O(e){return v(e)?e:e.split(".")}function j(e){return v(e)?e.join("."):e}var A={useExtendedSearch:!1,getFn:function(e,t){var n=[],r=!1;return function e(t,i,o){if(k(t))if(i[o]){var c=t[i[o]];if(!k(c))return;if(o===i.length-1&&(g(c)||y(c)||p(c)))n.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(c));else if(v(c)){r=!0;for(var a=0,s=c.length;a<s;a+=1)e(c[a],i,o+1)}else i.length&&e(c,i,o+1)}else n.push(t)}(e,g(t)?t.split("."):t,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},I=t(t(t(t({},{isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(e,t){return e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1}}),{includeMatches:!1,findAllMatches:!1,minMatchCharLength:1}),{location:0,threshold:.6,distance:100}),A),C=/[^ ]+/g;function E(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=new Map,r=Math.pow(10,t);return{get:function(t){var i=t.match(C).length;if(n.has(i))return n.get(i);var o=1/Math.pow(i,.5*e),c=parseFloat(Math.round(o*r)/r);return n.set(i,c),c},clear:function(){n.clear()}}}var $=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.getFn,i=void 0===n?I.getFn:n,o=t.fieldNormWeight,c=void 0===o?I.fieldNormWeight:o;r(this,e),this.norm=E(c,3),this.getFn=i,this.isCreated=!1,this.setIndexRecords()}return o(e,[{key:"setSources",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.docs=e}},{key:"setIndexRecords",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.records=e}},{key:"setKeys",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.keys=t,this._keysMap={},t.forEach((function(t,n){e._keysMap[t.id]=n}))}},{key:"create",value:function(){var e=this;!this.isCreated&&this.docs.length&&(this.isCreated=!0,g(this.docs[0])?this.docs.forEach((function(t,n){e._addString(t,n)})):this.docs.forEach((function(t,n){e._addObject(t,n)})),this.norm.clear())}},{key:"add",value:function(e){var t=this.size();g(e)?this._addString(e,t):this._addObject(e,t)}},{key:"removeAt",value:function(e){this.records.splice(e,1);for(var t=e,n=this.size();t<n;t+=1)this.records[t].i-=1}},{key:"getValueForItemAtKeyId",value:function(e,t){return e[this._keysMap[t]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(e,t){if(k(e)&&!M(e)){var n={v:e,i:t,n:this.norm.get(e)};this.records.push(n)}}},{key:"_addObject",value:function(e,t){var n=this,r={i:t,$:{}};this.keys.forEach((function(t,i){var o=n.getFn(e,t.path);if(k(o))if(v(o))!function(){for(var e=[],t=[{nestedArrIndex:-1,value:o}];t.length;){var c=t.pop(),a=c.nestedArrIndex,s=c.value;if(k(s))if(g(s)&&!M(s)){var u={v:s,i:a,n:n.norm.get(s)};e.push(u)}else v(s)&&s.forEach((function(e,n){t.push({nestedArrIndex:n,value:e})}))}r.$[i]=e}();else if(!M(o)){var c={v:o,n:n.norm.get(o)};r.$[i]=c}})),this.records.push(r)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function R(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.getFn,i=void 0===r?I.getFn:r,o=n.fieldNormWeight,c=void 0===o?I.fieldNormWeight:o,a=new $({getFn:i,fieldNormWeight:c});return a.setKeys(e.map(_)),a.setSources(t),a.create(),a}function F(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.errors,r=void 0===n?0:n,i=t.currentLocation,o=void 0===i?0:i,c=t.expectedLocation,a=void 0===c?0:c,s=t.distance,u=void 0===s?I.distance:s,h=t.ignoreLocation,f=void 0===h?I.ignoreLocation:h,l=r/e.length;if(f)return l;var d=Math.abs(a-o);return u?l+d/u:d?1:l}function N(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:I.minMatchCharLength,n=[],r=-1,i=-1,o=0,c=e.length;o<c;o+=1){var a=e[o];a&&-1===r?r=o:a||-1===r||((i=o-1)-r+1>=t&&n.push([r,i]),r=-1)}return e[o-1]&&o-r>=t&&n.push([r,o-1]),n}var P=32;function W(e){for(var t={},n=0,r=e.length;n<r;n+=1){var i=e.charAt(n);t[i]=(t[i]||0)|1<<r-n-1}return t}var T=function(){function e(t){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=i.location,c=void 0===o?I.location:o,a=i.threshold,s=void 0===a?I.threshold:a,u=i.distance,h=void 0===u?I.distance:u,f=i.includeMatches,l=void 0===f?I.includeMatches:f,d=i.findAllMatches,v=void 0===d?I.findAllMatches:d,g=i.minMatchCharLength,y=void 0===g?I.minMatchCharLength:g,p=i.isCaseSensitive,m=void 0===p?I.isCaseSensitive:p,k=i.ignoreLocation,M=void 0===k?I.ignoreLocation:k;if(r(this,e),this.options={location:c,threshold:s,distance:h,includeMatches:l,findAllMatches:v,minMatchCharLength:y,isCaseSensitive:m,ignoreLocation:M},this.pattern=m?t:t.toLowerCase(),this.chunks=[],this.pattern.length){var b=function(e,t){n.chunks.push({pattern:e,alphabet:W(e),startIndex:t})},x=this.pattern.length;if(x>P){for(var w=0,L=x%P,S=x-L;w<S;)b(this.pattern.substr(w,P),w),w+=P;if(L){var _=x-P;b(this.pattern.substr(_),_)}}else b(this.pattern,0)}}return o(e,[{key:"searchIn",value:function(e){var t=this.options,n=t.isCaseSensitive,r=t.includeMatches;if(n||(e=e.toLowerCase()),this.pattern===e){var i={isMatch:!0,score:0};return r&&(i.indices=[[0,e.length-1]]),i}var o=this.options,c=o.location,a=o.distance,s=o.threshold,u=o.findAllMatches,h=o.minMatchCharLength,f=o.ignoreLocation,d=[],v=0,g=!1;this.chunks.forEach((function(t){var n=t.pattern,i=t.alphabet,o=t.startIndex,y=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=r.location,o=void 0===i?I.location:i,c=r.distance,a=void 0===c?I.distance:c,s=r.threshold,u=void 0===s?I.threshold:s,h=r.findAllMatches,f=void 0===h?I.findAllMatches:h,l=r.minMatchCharLength,d=void 0===l?I.minMatchCharLength:l,v=r.includeMatches,g=void 0===v?I.includeMatches:v,y=r.ignoreLocation,p=void 0===y?I.ignoreLocation:y;if(t.length>P)throw new Error(w(P));for(var m,k=t.length,M=e.length,b=Math.max(0,Math.min(o,M)),x=u,L=b,S=d>1||g,_=S?Array(M):[];(m=e.indexOf(t,L))>-1;){var O=F(t,{currentLocation:m,expectedLocation:b,distance:a,ignoreLocation:p});if(x=Math.min(O,x),L=m+k,S)for(var j=0;j<k;)_[m+j]=1,j+=1}L=-1;for(var A=[],C=1,E=k+M,$=1<<k-1,R=0;R<k;R+=1){for(var W=0,T=E;W<T;)F(t,{errors:R,currentLocation:b+T,expectedLocation:b,distance:a,ignoreLocation:p})<=x?W=T:E=T,T=Math.floor((E-W)/2+W);E=T;var z=Math.max(1,b-T+1),D=f?M:Math.min(b+T,M)+k,K=Array(D+2);K[D+1]=(1<<R)-1;for(var q=D;q>=z;q-=1){var B=q-1,J=n[e.charAt(B)];if(S&&(_[B]=+!!J),K[q]=(K[q+1]<<1|1)&J,R&&(K[q]|=(A[q+1]|A[q])<<1|1|A[q+1]),K[q]&$&&(C=F(t,{errors:R,currentLocation:B,expectedLocation:b,distance:a,ignoreLocation:p}))<=x){if(x=C,(L=B)<=b)break;z=Math.max(1,2*b-L)}}if(F(t,{errors:R+1,currentLocation:b,expectedLocation:b,distance:a,ignoreLocation:p})>x)break;A=K}var U={isMatch:L>=0,score:Math.max(.001,C)};if(S){var V=N(_,d);V.length?g&&(U.indices=V):U.isMatch=!1}return U}(e,n,i,{location:c+o,distance:a,threshold:s,findAllMatches:u,minMatchCharLength:h,includeMatches:r,ignoreLocation:f}),p=y.isMatch,m=y.score,k=y.indices;p&&(g=!0),v+=m,p&&k&&(d=[].concat(l(d),l(k)))}));var y={isMatch:g,score:g?v/this.chunks.length:1};return g&&r&&(y.indices=d),y}}]),e}(),z=function(){function e(t){r(this,e),this.pattern=t}return o(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(e){return D(e,this.multiRegex)}},{key:"isSingleMatch",value:function(e){return D(e,this.singleRegex)}}]),e}();function D(e,t){var n=e.match(t);return n?n[1]:null}var K=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),n}(z),q=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),n}(z),B=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),n}(z),J=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),n}(z),U=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),n}(z),V=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),n}(z),G=function(e){a(n,e);var t=f(n);function n(e){var i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=o.location,a=void 0===c?I.location:c,s=o.threshold,u=void 0===s?I.threshold:s,h=o.distance,f=void 0===h?I.distance:h,l=o.includeMatches,d=void 0===l?I.includeMatches:l,v=o.findAllMatches,g=void 0===v?I.findAllMatches:v,y=o.minMatchCharLength,p=void 0===y?I.minMatchCharLength:y,m=o.isCaseSensitive,k=void 0===m?I.isCaseSensitive:m,M=o.ignoreLocation,b=void 0===M?I.ignoreLocation:M;return r(this,n),(i=t.call(this,e))._bitapSearch=new T(e,{location:a,threshold:u,distance:f,includeMatches:d,findAllMatches:g,minMatchCharLength:p,isCaseSensitive:k,ignoreLocation:b}),i}return o(n,[{key:"search",value:function(e){return this._bitapSearch.searchIn(e)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),n}(z),H=function(e){a(n,e);var t=f(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){for(var t,n=0,r=[],i=this.pattern.length;(t=e.indexOf(this.pattern,n))>-1;)n=t+i,r.push([t,n-1]);var o=!!r.length;return{isMatch:o,score:o?0:1,indices:r}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),n}(z),Q=[K,H,B,J,V,U,q,G],X=Q.length,Y=/ +(?=([^\"]*\"[^\"]*\")*[^\"]*$)/;function Z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.split("|").map((function(e){for(var n=e.trim().split(Y).filter((function(e){return e&&!!e.trim()})),r=[],i=0,o=n.length;i<o;i+=1){for(var c=n[i],a=!1,s=-1;!a&&++s<X;){var u=Q[s],h=u.isMultiMatch(c);h&&(r.push(new u(h,t)),a=!0)}if(!a)for(s=-1;++s<X;){var f=Q[s],l=f.isSingleMatch(c);if(l){r.push(new f(l,t));break}}}return r}))}var ee=new Set([G.type,H.type]),te=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.isCaseSensitive,o=void 0===i?I.isCaseSensitive:i,c=n.includeMatches,a=void 0===c?I.includeMatches:c,s=n.minMatchCharLength,u=void 0===s?I.minMatchCharLength:s,h=n.ignoreLocation,f=void 0===h?I.ignoreLocation:h,l=n.findAllMatches,d=void 0===l?I.findAllMatches:l,v=n.location,g=void 0===v?I.location:v,y=n.threshold,p=void 0===y?I.threshold:y,m=n.distance,k=void 0===m?I.distance:m;r(this,e),this.query=null,this.options={isCaseSensitive:o,includeMatches:a,minMatchCharLength:u,findAllMatches:d,ignoreLocation:f,location:g,threshold:p,distance:k},this.pattern=o?t:t.toLowerCase(),this.query=Z(this.pattern,this.options)}return o(e,[{key:"searchIn",value:function(e){var t=this.query;if(!t)return{isMatch:!1,score:1};var n=this.options,r=n.includeMatches;e=n.isCaseSensitive?e:e.toLowerCase();for(var i=0,o=[],c=0,a=0,s=t.length;a<s;a+=1){var u=t[a];o.length=0,i=0;for(var h=0,f=u.length;h<f;h+=1){var d=u[h],v=d.search(e),g=v.isMatch,y=v.indices,p=v.score;if(!g){c=0,i=0,o.length=0;break}if(i+=1,c+=p,r){var m=d.constructor.type;ee.has(m)?o=[].concat(l(o),l(y)):o.push(y)}}if(i){var k={isMatch:!0,score:c/i};return r&&(k.indices=o),k}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(e,t){return t.useExtendedSearch}}]),e}(),ne=[];function re(e,t){for(var n=0,r=ne.length;n<r;n+=1){var i=ne[n];if(i.condition(e,t))return new i(e,t)}return new T(e,t)}var ie="$and",oe="$or",ce="$path",ae="$val",se=function(e){return!(!e[ie]&&!e[oe])},ue=function(e){return!!e[ce]},he=function(e){return!v(e)&&m(e)&&!se(e)},fe=function(e){return c({},ie,Object.keys(e).map((function(t){return c({},t,e[t])})))};function le(e,t){var n=t.ignoreFieldNorm,r=void 0===n?I.ignoreFieldNorm:n;e.forEach((function(e){var t=1;e.matches.forEach((function(e){var n=e.key,i=e.norm,o=e.score,c=n?n.weight:null;t*=Math.pow(0===o&&c?Number.EPSILON:o,(c||1)*(r?1:i))})),e.score=t}))}function de(e,t){var n=e.matches;t.matches=[],k(n)&&n.forEach((function(e){if(k(e.indices)&&e.indices.length){var n={indices:e.indices,value:e.value};e.key&&(n.key=e.key.src),e.idx>-1&&(n.refIndex=e.idx),t.matches.push(n)}}))}function ve(e,t){t.score=e.score}function ge(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.includeMatches,i=void 0===r?I.includeMatches:r,o=n.includeScore,c=void 0===o?I.includeScore:o,a=[];return i&&a.push(de),c&&a.push(ve),e.map((function(e){var n=e.idx,r={item:t[n],refIndex:n};return a.length&&a.forEach((function(t){t(e,r)})),r}))}var ye=function(){function e(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2?arguments[2]:void 0;r(this,e),this.options=t(t({},I),i),this.options.useExtendedSearch,this._keyStore=new S(this.options.keys),this.setCollection(n,o)}return o(e,[{key:"setCollection",value:function(e,t){if(this._docs=e,t&&!(t instanceof $))throw new Error("Incorrect 'index' type");this._myIndex=t||R(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(e){k(e)&&(this._docs.push(e),this._myIndex.add(e))}},{key:"remove",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){return!1},t=[],n=0,r=this._docs.length;n<r;n+=1){var i=this._docs[n];e(i,n)&&(this.removeAt(n),n-=1,r-=1,t.push(i))}return t}},{key:"removeAt",value:function(e){this._docs.splice(e,1),this._myIndex.removeAt(e)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.limit,r=void 0===n?-1:n,i=this.options,o=i.includeMatches,c=i.includeScore,a=i.shouldSort,s=i.sortFn,u=i.ignoreFieldNorm,h=g(e)?g(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e);return le(h,{ignoreFieldNorm:u}),a&&h.sort(s),y(r)&&r>-1&&(h=h.slice(0,r)),ge(h,this._docs,{includeMatches:o,includeScore:c})}},{key:"_searchStringList",value:function(e){var t=re(e,this.options),n=this._myIndex.records,r=[];return n.forEach((function(e){var n=e.v,i=e.i,o=e.n;if(k(n)){var c=t.searchIn(n),a=c.isMatch,s=c.score,u=c.indices;a&&r.push({item:n,idx:i,matches:[{score:s,value:n,norm:o,indices:u}]})}})),r}},{key:"_searchLogical",value:function(e){var t=this,n=function(e,t){var n=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).auto,r=void 0===n||n,i=function e(n){var i=Object.keys(n),o=ue(n);if(!o&&i.length>1&&!se(n))return e(fe(n));if(he(n)){var c=o?n[ce]:i[0],a=o?n[ae]:n[c];if(!g(a))throw new Error(x(c));var s={keyId:j(c),pattern:a};return r&&(s.searcher=re(a,t)),s}var u={children:[],operator:i[0]};return i.forEach((function(t){var r=n[t];v(r)&&r.forEach((function(t){u.children.push(e(t))}))})),u};return se(e)||(e=fe(e)),i(e)}(e,this.options),r=function e(n,r,i){if(!n.children){var o=n.keyId,c=n.searcher,a=t._findMatches({key:t._keyStore.get(o),value:t._myIndex.getValueForItemAtKeyId(r,o),searcher:c});return a&&a.length?[{idx:i,item:r,matches:a}]:[]}for(var s=[],u=0,h=n.children.length;u<h;u+=1){var f=e(n.children[u],r,i);if(f.length)s.push.apply(s,l(f));else if(n.operator===ie)return[]}return s},i=this._myIndex.records,o={},c=[];return i.forEach((function(e){var t=e.$,i=e.i;if(k(t)){var a=r(n,t,i);a.length&&(o[i]||(o[i]={idx:i,item:t,matches:[]},c.push(o[i])),a.forEach((function(e){var t,n=e.matches;(t=o[i].matches).push.apply(t,l(n))})))}})),c}},{key:"_searchObjectList",value:function(e){var t=this,n=re(e,this.options),r=this._myIndex,i=r.keys,o=r.records,c=[];return o.forEach((function(e){var r=e.$,o=e.i;if(k(r)){var a=[];i.forEach((function(e,i){a.push.apply(a,l(t._findMatches({key:e,value:r[i],searcher:n})))})),a.length&&c.push({idx:o,item:r,matches:a})}})),c}},{key:"_findMatches",value:function(e){var t=e.key,n=e.value,r=e.searcher;if(!k(n))return[];var i=[];if(v(n))n.forEach((function(e){var n=e.v,o=e.i,c=e.n;if(k(n)){var a=r.searchIn(n),s=a.isMatch,u=a.score,h=a.indices;s&&i.push({score:u,key:t,value:n,idx:o,norm:c,indices:h})}}));else{var o=n.v,c=n.n,a=r.searchIn(o),s=a.isMatch,u=a.score,h=a.indices;s&&i.push({score:u,key:t,value:o,norm:c,indices:h})}return i}}]),e}();return ye.version="6.5.3",ye.createIndex=R,ye.parseIndex=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.getFn,r=void 0===n?I.getFn:n,i=t.fieldNormWeight,o=void 0===i?I.fieldNormWeight:i,c=e.keys,a=e.records,s=new $({getFn:r,fieldNormWeight:o});return s.setKeys(c),s.setIndexRecords(a),s},ye.config=I,function(){ne.push.apply(ne,arguments)}(te),ye},"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Fuse=t(); \ No newline at end of file diff --git a/public/site_libs/quarto-search/quarto-search.js b/public/site_libs/quarto-search/quarto-search.js new file mode 100644 index 0000000..6fd4b5b --- /dev/null +++ b/public/site_libs/quarto-search/quarto-search.js @@ -0,0 +1,1123 @@ +const kQueryArg = "q"; +const kResultsArg = "show-results"; + +// If items don't provide a URL, then both the navigator and the onSelect +// function aren't called (and therefore, the default implementation is used) +// +// We're using this sentinel URL to signal to those handlers that this +// item is a more item (along with the type) and can be handled appropriately +const kItemTypeMoreHref = "0767FDFD-0422-4E5A-BC8A-3BE11E5BBA05"; + +window.document.addEventListener("DOMContentLoaded", function (_event) { + // Ensure that search is available on this page. If it isn't, + // should return early and not do anything + var searchEl = window.document.getElementById("quarto-search"); + if (!searchEl) return; + + const { autocomplete } = window["@algolia/autocomplete-js"]; + + let quartoSearchOptions = {}; + let language = {}; + const searchOptionEl = window.document.getElementById( + "quarto-search-options" + ); + if (searchOptionEl) { + const jsonStr = searchOptionEl.textContent; + quartoSearchOptions = JSON.parse(jsonStr); + language = quartoSearchOptions.language; + } + + // note the search mode + if (quartoSearchOptions.type === "overlay") { + searchEl.classList.add("type-overlay"); + } else { + searchEl.classList.add("type-textbox"); + } + + // Used to determine highlighting behavior for this page + // A `q` query param is expected when the user follows a search + // to this page + const currentUrl = new URL(window.location); + const query = currentUrl.searchParams.get(kQueryArg); + const showSearchResults = currentUrl.searchParams.get(kResultsArg); + const mainEl = window.document.querySelector("main"); + + // highlight matches on the page + if (query !== null && mainEl) { + // perform any highlighting + highlight(query, mainEl); + + // fix up the URL to remove the q query param + const replacementUrl = new URL(window.location); + replacementUrl.searchParams.delete(kQueryArg); + window.history.replaceState({}, "", replacementUrl); + } + + // function to clear highlighting on the page when the search query changes + // (e.g. if the user edits the query or clears it) + let highlighting = true; + const resetHighlighting = (searchTerm) => { + if (mainEl && highlighting && query !== null && searchTerm !== query) { + clearHighlight(query, mainEl); + highlighting = false; + } + }; + + // Clear search highlighting when the user scrolls sufficiently + const resetFn = () => { + resetHighlighting(""); + window.removeEventListener("quarto-hrChanged", resetFn); + window.removeEventListener("quarto-sectionChanged", resetFn); + }; + + // Register this event after the initial scrolling and settling of events + // on the page + window.addEventListener("quarto-hrChanged", resetFn); + window.addEventListener("quarto-sectionChanged", resetFn); + + // Responsively switch to overlay mode if the search is present on the navbar + // Note that switching the sidebar to overlay mode requires more coordinate (not just + // the media query since we generate different HTML for sidebar overlays than we do + // for sidebar input UI) + const detachedMediaQuery = + quartoSearchOptions.type === "overlay" + ? "all" + : quartoSearchOptions.location === "navbar" + ? "(max-width: 991px)" + : "none"; + + // If configured, include the analytics client to send insights + const plugins = configurePlugins(quartoSearchOptions); + + let lastState = null; + const { setIsOpen } = autocomplete({ + container: searchEl, + detachedMediaQuery: detachedMediaQuery, + defaultActiveItemId: 0, + panelContainer: "#quarto-search-results", + panelPlacement: quartoSearchOptions["panel-placement"], + debug: false, + plugins, + classNames: { + form: "d-flex", + }, + translations: { + clearButtonTitle: language["search-clear-button-title"], + detachedCancelButtonText: language["search-detached-cancel-button-title"], + submitButtonTitle: language["search-submit-button-title"], + }, + initialState: { + query, + }, + getItemUrl({ item }) { + return item.href; + }, + onStateChange({ state }) { + // Perhaps reset highlighting + resetHighlighting(state.query); + + // If the panel just opened, ensure the panel is positioned properly + if (state.isOpen) { + if (lastState && !lastState.isOpen) { + setTimeout(() => { + positionPanel(quartoSearchOptions["panel-placement"]); + }, 150); + } + } + + // Perhaps show the copy link + showCopyLink(state.query, quartoSearchOptions); + + lastState = state; + }, + reshape({ sources, state }) { + return sources.map((source) => { + try { + const items = source.getItems(); + + // Validate the items + validateItems(items); + + // group the items by document + const groupedItems = new Map(); + items.forEach((item) => { + const hrefParts = item.href.split("#"); + const baseHref = hrefParts[0]; + const isDocumentItem = hrefParts.length === 1; + + const items = groupedItems.get(baseHref); + if (!items) { + groupedItems.set(baseHref, [item]); + } else { + // If the href for this item matches the document + // exactly, place this item first as it is the item that represents + // the document itself + if (isDocumentItem) { + items.unshift(item); + } else { + items.push(item); + } + groupedItems.set(baseHref, items); + } + }); + + const reshapedItems = []; + let count = 1; + for (const [_key, value] of groupedItems) { + const firstItem = value[0]; + reshapedItems.push({ + ...firstItem, + type: kItemTypeDoc, + }); + + const collapseMatches = quartoSearchOptions["collapse-after"]; + const collapseCount = + typeof collapseMatches === "number" ? collapseMatches : 1; + + if (value.length > 1) { + const target = `search-more-${count}`; + const isExpanded = + state.context.expanded && + state.context.expanded.includes(target); + + const remainingCount = value.length - collapseCount; + + for (let i = 1; i < value.length; i++) { + if (collapseMatches && i === collapseCount) { + reshapedItems.push({ + target, + title: isExpanded + ? language["search-hide-matches-text"] + : remainingCount === 1 + ? `${remainingCount} ${language["search-more-match-text"]}` + : `${remainingCount} ${language["search-more-matches-text"]}`, + type: kItemTypeMore, + href: kItemTypeMoreHref, + }); + } + + if (isExpanded || !collapseMatches || i < collapseCount) { + reshapedItems.push({ + ...value[i], + type: kItemTypeItem, + target, + }); + } + } + } + count += 1; + } + + return { + ...source, + getItems() { + return reshapedItems; + }, + }; + } catch (error) { + // Some form of error occurred + return { + ...source, + getItems() { + return [ + { + title: error.name || "An Error Occurred While Searching", + text: + error.message || + "An unknown error occurred while attempting to perform the requested search.", + type: kItemTypeError, + }, + ]; + }, + }; + } + }); + }, + navigator: { + navigate({ itemUrl }) { + if (itemUrl !== offsetURL(kItemTypeMoreHref)) { + window.location.assign(itemUrl); + } + }, + navigateNewTab({ itemUrl }) { + if (itemUrl !== offsetURL(kItemTypeMoreHref)) { + const windowReference = window.open(itemUrl, "_blank", "noopener"); + if (windowReference) { + windowReference.focus(); + } + } + }, + navigateNewWindow({ itemUrl }) { + if (itemUrl !== offsetURL(kItemTypeMoreHref)) { + window.open(itemUrl, "_blank", "noopener"); + } + }, + }, + getSources({ state, setContext, setActiveItemId, refresh }) { + return [ + { + sourceId: "documents", + getItemUrl({ item }) { + if (item.href) { + return offsetURL(item.href); + } else { + return undefined; + } + }, + onSelect({ + item, + state, + setContext, + setIsOpen, + setActiveItemId, + refresh, + }) { + if (item.type === kItemTypeMore) { + toggleExpanded(item, state, setContext, setActiveItemId, refresh); + + // Toggle more + setIsOpen(true); + } + }, + getItems({ query }) { + const limit = quartoSearchOptions.limit; + if (quartoSearchOptions.algolia) { + return algoliaSearch(query, limit, quartoSearchOptions.algolia); + } else { + // Fuse search options + const fuseSearchOptions = { + isCaseSensitive: false, + shouldSort: true, + minMatchCharLength: 2, + limit: limit, + }; + + return readSearchData().then(function (fuse) { + return fuseSearch(query, fuse, fuseSearchOptions); + }); + } + }, + templates: { + noResults({ createElement }) { + return createElement( + "div", + { class: "quarto-search-no-results" }, + language["search-no-results-text"] + ); + }, + header({ items, createElement }) { + // count the documents + const count = items.filter((item) => { + return item.type === kItemTypeDoc; + }).length; + + if (count > 0) { + return createElement( + "div", + { class: "search-result-header" }, + `${count} ${language["search-matching-documents-text"]}` + ); + } else { + return createElement( + "div", + { class: "search-result-header-no-results" }, + `` + ); + } + }, + footer({ _items, createElement }) { + if ( + quartoSearchOptions.algolia && + quartoSearchOptions.algolia["show-logo"] + ) { + const libDir = quartoSearchOptions.algolia["libDir"]; + const logo = createElement("img", { + src: offsetURL( + `${libDir}/quarto-search/search-by-algolia.svg` + ), + class: "algolia-search-logo", + }); + return createElement( + "a", + { href: "http://www.algolia.com/" }, + logo + ); + } + }, + + item({ item, createElement }) { + return renderItem( + item, + createElement, + state, + setActiveItemId, + setContext, + refresh + ); + }, + }, + }, + ]; + }, + }); + + // Remove the labeleledby attribute since it is pointing + // to a non-existent label + if (quartoSearchOptions.type === "overlay") { + const inputEl = window.document.querySelector( + "#quarto-search .aa-Autocomplete" + ); + if (inputEl) { + inputEl.removeAttribute("aria-labelledby"); + } + } + + // If the main document scrolls dismiss the search results + // (otherwise, since they're floating in the document they can scroll with the document) + window.document.body.onscroll = () => { + setIsOpen(false); + }; + + if (showSearchResults) { + setIsOpen(true); + focusSearchInput(); + } +}); + +function configurePlugins(quartoSearchOptions) { + const autocompletePlugins = []; + const algoliaOptions = quartoSearchOptions.algolia; + if ( + algoliaOptions && + algoliaOptions["analytics-events"] && + algoliaOptions["search-only-api-key"] && + algoliaOptions["application-id"] + ) { + const apiKey = algoliaOptions["search-only-api-key"]; + const appId = algoliaOptions["application-id"]; + + // Aloglia insights may not be loaded because they require cookie consent + // Use deferred loading so events will start being recorded when/if consent + // is granted. + const algoliaInsightsDeferredPlugin = deferredLoadPlugin(() => { + if ( + window.aa && + window["@algolia/autocomplete-plugin-algolia-insights"] + ) { + window.aa("init", { + appId, + apiKey, + useCookie: true, + }); + + const { createAlgoliaInsightsPlugin } = + window["@algolia/autocomplete-plugin-algolia-insights"]; + // Register the insights client + const algoliaInsightsPlugin = createAlgoliaInsightsPlugin({ + insightsClient: window.aa, + onItemsChange({ insights, insightsEvents }) { + const events = insightsEvents.map((event) => { + const maxEvents = event.objectIDs.slice(0, 20); + return { + ...event, + objectIDs: maxEvents, + }; + }); + + insights.viewedObjectIDs(...events); + }, + }); + return algoliaInsightsPlugin; + } + }); + + // Add the plugin + autocompletePlugins.push(algoliaInsightsDeferredPlugin); + return autocompletePlugins; + } +} + +// For plugins that may not load immediately, create a wrapper +// plugin and forward events and plugin data once the plugin +// is initialized. This is useful for cases like cookie consent +// which may prevent the analytics insights event plugin from initializing +// immediately. +function deferredLoadPlugin(createPlugin) { + let plugin = undefined; + let subscribeObj = undefined; + const wrappedPlugin = () => { + if (!plugin && subscribeObj) { + plugin = createPlugin(); + if (plugin && plugin.subscribe) { + plugin.subscribe(subscribeObj); + } + } + return plugin; + }; + + return { + subscribe: (obj) => { + subscribeObj = obj; + }, + onStateChange: (obj) => { + const plugin = wrappedPlugin(); + if (plugin && plugin.onStateChange) { + plugin.onStateChange(obj); + } + }, + onSubmit: (obj) => { + const plugin = wrappedPlugin(); + if (plugin && plugin.onSubmit) { + plugin.onSubmit(obj); + } + }, + onReset: (obj) => { + const plugin = wrappedPlugin(); + if (plugin && plugin.onReset) { + plugin.onReset(obj); + } + }, + getSources: (obj) => { + const plugin = wrappedPlugin(); + if (plugin && plugin.getSources) { + return plugin.getSources(obj); + } else { + return Promise.resolve([]); + } + }, + data: (obj) => { + const plugin = wrappedPlugin(); + if (plugin && plugin.data) { + plugin.data(obj); + } + }, + }; +} + +function validateItems(items) { + // Validate the first item + if (items.length > 0) { + const item = items[0]; + const missingFields = []; + if (item.href == undefined) { + missingFields.push("href"); + } + if (!item.title == undefined) { + missingFields.push("title"); + } + if (!item.text == undefined) { + missingFields.push("text"); + } + + if (missingFields.length === 1) { + throw { + name: `Error: Search index is missing the <code>${missingFields[0]}</code> field.`, + message: `The items being returned for this search do not include all the required fields. Please ensure that your index items include the <code>${missingFields[0]}</code> field or use <code>index-fields</code> in your <code>_quarto.yml</code> file to specify the field names.`, + }; + } else if (missingFields.length > 1) { + const missingFieldList = missingFields + .map((field) => { + return `<code>${field}</code>`; + }) + .join(", "); + + throw { + name: `Error: Search index is missing the following fields: ${missingFieldList}.`, + message: `The items being returned for this search do not include all the required fields. Please ensure that your index items includes the following fields: ${missingFieldList}, or use <code>index-fields</code> in your <code>_quarto.yml</code> file to specify the field names.`, + }; + } + } +} + +let lastQuery = null; +function showCopyLink(query, options) { + const language = options.language; + lastQuery = query; + // Insert share icon + const inputSuffixEl = window.document.body.querySelector( + ".aa-Form .aa-InputWrapperSuffix" + ); + + if (inputSuffixEl) { + let copyButtonEl = window.document.body.querySelector( + ".aa-Form .aa-InputWrapperSuffix .aa-CopyButton" + ); + + if (copyButtonEl === null) { + copyButtonEl = window.document.createElement("button"); + copyButtonEl.setAttribute("class", "aa-CopyButton"); + copyButtonEl.setAttribute("type", "button"); + copyButtonEl.setAttribute("title", language["search-copy-link-title"]); + copyButtonEl.onmousedown = (e) => { + e.preventDefault(); + e.stopPropagation(); + }; + + const linkIcon = "bi-clipboard"; + const checkIcon = "bi-check2"; + + const shareIconEl = window.document.createElement("i"); + shareIconEl.setAttribute("class", `bi ${linkIcon}`); + copyButtonEl.appendChild(shareIconEl); + inputSuffixEl.prepend(copyButtonEl); + + const clipboard = new window.ClipboardJS(".aa-CopyButton", { + text: function (_trigger) { + const copyUrl = new URL(window.location); + copyUrl.searchParams.set(kQueryArg, lastQuery); + copyUrl.searchParams.set(kResultsArg, "1"); + return copyUrl.toString(); + }, + }); + clipboard.on("success", function (e) { + // Focus the input + + // button target + const button = e.trigger; + const icon = button.querySelector("i.bi"); + + // flash "checked" + icon.classList.add(checkIcon); + icon.classList.remove(linkIcon); + setTimeout(function () { + icon.classList.remove(checkIcon); + icon.classList.add(linkIcon); + }, 1000); + }); + } + + // If there is a query, show the link icon + if (copyButtonEl) { + if (lastQuery && options["copy-button"]) { + copyButtonEl.style.display = "flex"; + } else { + copyButtonEl.style.display = "none"; + } + } + } +} + +/* Search Index Handling */ +// create the index +var fuseIndex = undefined; +async function readSearchData() { + // Initialize the search index on demand + if (fuseIndex === undefined) { + // create fuse index + const options = { + keys: [ + { name: "title", weight: 20 }, + { name: "section", weight: 20 }, + { name: "text", weight: 10 }, + ], + ignoreLocation: true, + threshold: 0.1, + }; + const fuse = new window.Fuse([], options); + + // fetch the main search.json + const response = await fetch(offsetURL("search.json")); + if (response.status == 200) { + return response.json().then(function (searchDocs) { + searchDocs.forEach(function (searchDoc) { + fuse.add(searchDoc); + }); + fuseIndex = fuse; + return fuseIndex; + }); + } else { + return Promise.reject( + new Error( + "Unexpected status from search index request: " + response.status + ) + ); + } + } + return fuseIndex; +} + +function inputElement() { + return window.document.body.querySelector(".aa-Form .aa-Input"); +} + +function focusSearchInput() { + setTimeout(() => { + const inputEl = inputElement(); + if (inputEl) { + inputEl.focus(); + } + }, 50); +} + +/* Panels */ +const kItemTypeDoc = "document"; +const kItemTypeMore = "document-more"; +const kItemTypeItem = "document-item"; +const kItemTypeError = "error"; + +function renderItem( + item, + createElement, + state, + setActiveItemId, + setContext, + refresh +) { + switch (item.type) { + case kItemTypeDoc: + return createDocumentCard( + createElement, + "file-richtext", + item.title, + item.section, + item.text, + item.href + ); + case kItemTypeMore: + return createMoreCard( + createElement, + item, + state, + setActiveItemId, + setContext, + refresh + ); + case kItemTypeItem: + return createSectionCard( + createElement, + item.section, + item.text, + item.href + ); + case kItemTypeError: + return createErrorCard(createElement, item.title, item.text); + default: + return undefined; + } +} + +function createDocumentCard(createElement, icon, title, section, text, href) { + const iconEl = createElement("i", { + class: `bi bi-${icon} search-result-icon`, + }); + const titleEl = createElement("p", { class: "search-result-title" }, title); + const titleContainerEl = createElement( + "div", + { class: "search-result-title-container" }, + [iconEl, titleEl] + ); + + const textEls = []; + if (section) { + const sectionEl = createElement( + "p", + { class: "search-result-section" }, + section + ); + textEls.push(sectionEl); + } + const descEl = createElement("p", { + class: "search-result-text", + dangerouslySetInnerHTML: { + __html: text, + }, + }); + textEls.push(descEl); + + const textContainerEl = createElement( + "div", + { class: "search-result-text-container" }, + textEls + ); + + const containerEl = createElement( + "div", + { + class: "search-result-container", + }, + [titleContainerEl, textContainerEl] + ); + + const linkEl = createElement( + "a", + { + href: offsetURL(href), + class: "search-result-link", + }, + containerEl + ); + + const classes = ["search-result-doc", "search-item"]; + if (!section) { + classes.push("document-selectable"); + } + + return createElement( + "div", + { + class: classes.join(" "), + }, + linkEl + ); +} + +function createMoreCard( + createElement, + item, + state, + setActiveItemId, + setContext, + refresh +) { + const moreCardEl = createElement( + "div", + { + class: "search-result-more search-item", + onClick: (e) => { + // Handle expanding the sections by adding the expanded + // section to the list of expanded sections + toggleExpanded(item, state, setContext, setActiveItemId, refresh); + e.stopPropagation(); + }, + }, + item.title + ); + + return moreCardEl; +} + +function toggleExpanded(item, state, setContext, setActiveItemId, refresh) { + const expanded = state.context.expanded || []; + if (expanded.includes(item.target)) { + setContext({ + expanded: expanded.filter((target) => target !== item.target), + }); + } else { + setContext({ expanded: [...expanded, item.target] }); + } + + refresh(); + setActiveItemId(item.__autocomplete_id); +} + +function createSectionCard(createElement, section, text, href) { + const sectionEl = createSection(createElement, section, text, href); + return createElement( + "div", + { + class: "search-result-doc-section search-item", + }, + sectionEl + ); +} + +function createSection(createElement, title, text, href) { + const descEl = createElement("p", { + class: "search-result-text", + dangerouslySetInnerHTML: { + __html: text, + }, + }); + + const titleEl = createElement("p", { class: "search-result-section" }, title); + const linkEl = createElement( + "a", + { + href: offsetURL(href), + class: "search-result-link", + }, + [titleEl, descEl] + ); + return linkEl; +} + +function createErrorCard(createElement, title, text) { + const descEl = createElement("p", { + class: "search-error-text", + dangerouslySetInnerHTML: { + __html: text, + }, + }); + + const titleEl = createElement("p", { + class: "search-error-title", + dangerouslySetInnerHTML: { + __html: `<i class="bi bi-exclamation-circle search-error-icon"></i> ${title}`, + }, + }); + const errorEl = createElement("div", { class: "search-error" }, [ + titleEl, + descEl, + ]); + return errorEl; +} + +function positionPanel(pos) { + const panelEl = window.document.querySelector( + "#quarto-search-results .aa-Panel" + ); + const inputEl = window.document.querySelector( + "#quarto-search .aa-Autocomplete" + ); + + if (panelEl && inputEl) { + panelEl.style.top = `${Math.round(panelEl.offsetTop)}px`; + if (pos === "start") { + panelEl.style.left = `${Math.round(inputEl.left)}px`; + } else { + panelEl.style.right = `${Math.round(inputEl.offsetRight)}px`; + } + } +} + +/* Highlighting */ +// highlighting functions +function highlightMatch(query, text) { + if (text) { + const start = text.toLowerCase().indexOf(query.toLowerCase()); + if (start !== -1) { + const startMark = "<mark class='search-match'>"; + const endMark = "</mark>"; + + const end = start + query.length; + text = + text.slice(0, start) + + startMark + + text.slice(start, end) + + endMark + + text.slice(end); + const startInfo = clipStart(text, start); + const endInfo = clipEnd( + text, + startInfo.position + startMark.length + endMark.length + ); + text = + startInfo.prefix + + text.slice(startInfo.position, endInfo.position) + + endInfo.suffix; + + return text; + } else { + return text; + } + } else { + return text; + } +} + +function clipStart(text, pos) { + const clipStart = pos - 50; + if (clipStart < 0) { + // This will just return the start of the string + return { + position: 0, + prefix: "", + }; + } else { + // We're clipping before the start of the string, walk backwards to the first space. + const spacePos = findSpace(text, pos, -1); + return { + position: spacePos.position, + prefix: "", + }; + } +} + +function clipEnd(text, pos) { + const clipEnd = pos + 200; + if (clipEnd > text.length) { + return { + position: text.length, + suffix: "", + }; + } else { + const spacePos = findSpace(text, clipEnd, 1); + return { + position: spacePos.position, + suffix: spacePos.clipped ? "…" : "", + }; + } +} + +function findSpace(text, start, step) { + let stepPos = start; + while (stepPos > -1 && stepPos < text.length) { + const char = text[stepPos]; + if (char === " " || char === "," || char === ":") { + return { + position: step === 1 ? stepPos : stepPos - step, + clipped: stepPos > 1 && stepPos < text.length, + }; + } + stepPos = stepPos + step; + } + + return { + position: stepPos - step, + clipped: false, + }; +} + +// removes highlighting as implemented by the mark tag +function clearHighlight(searchterm, el) { + const childNodes = el.childNodes; + for (let i = childNodes.length - 1; i >= 0; i--) { + const node = childNodes[i]; + if (node.nodeType === Node.ELEMENT_NODE) { + if ( + node.tagName === "MARK" && + node.innerText.toLowerCase() === searchterm.toLowerCase() + ) { + el.replaceChild(document.createTextNode(node.innerText), node); + } else { + clearHighlight(searchterm, node); + } + } + } +} + +// highlight matches +function highlight(term, el) { + const termRegex = new RegExp(term, "ig"); + const childNodes = el.childNodes; + + // walk back to front avoid mutating elements in front of us + for (let i = childNodes.length - 1; i >= 0; i--) { + const node = childNodes[i]; + + if (node.nodeType === Node.TEXT_NODE) { + // Search text nodes for text to highlight + const text = node.nodeValue; + + let startIndex = 0; + let matchIndex = text.search(termRegex); + if (matchIndex > -1) { + const markFragment = document.createDocumentFragment(); + while (matchIndex > -1) { + const prefix = text.slice(startIndex, matchIndex); + markFragment.appendChild(document.createTextNode(prefix)); + + const mark = document.createElement("mark"); + mark.appendChild( + document.createTextNode( + text.slice(matchIndex, matchIndex + term.length) + ) + ); + markFragment.appendChild(mark); + + startIndex = matchIndex + term.length; + matchIndex = text.slice(startIndex).search(new RegExp(term, "ig")); + if (matchIndex > -1) { + matchIndex = startIndex + matchIndex; + } + } + if (startIndex < text.length) { + markFragment.appendChild( + document.createTextNode(text.slice(startIndex, text.length)) + ); + } + + el.replaceChild(markFragment, node); + } + } else if (node.nodeType === Node.ELEMENT_NODE) { + // recurse through elements + highlight(term, node); + } + } +} + +/* Link Handling */ +// get the offset from this page for a given site root relative url +function offsetURL(url) { + var offset = getMeta("quarto:offset"); + return offset ? offset + url : url; +} + +// read a meta tag value +function getMeta(metaName) { + var metas = window.document.getElementsByTagName("meta"); + for (let i = 0; i < metas.length; i++) { + if (metas[i].getAttribute("name") === metaName) { + return metas[i].getAttribute("content"); + } + } + return ""; +} + +function algoliaSearch(query, limit, algoliaOptions) { + const { getAlgoliaResults } = window["@algolia/autocomplete-preset-algolia"]; + + const applicationId = algoliaOptions["application-id"]; + const searchOnlyApiKey = algoliaOptions["search-only-api-key"]; + const indexName = algoliaOptions["index-name"]; + const indexFields = algoliaOptions["index-fields"]; + const searchClient = window.algoliasearch(applicationId, searchOnlyApiKey); + const searchParams = algoliaOptions["params"]; + const searchAnalytics = !!algoliaOptions["analytics-events"]; + + return getAlgoliaResults({ + searchClient, + queries: [ + { + indexName: indexName, + query, + params: { + hitsPerPage: limit, + clickAnalytics: searchAnalytics, + ...searchParams, + }, + }, + ], + transformResponse: (response) => { + if (!indexFields) { + return response.hits.map((hit) => { + return hit.map((item) => { + return { + ...item, + text: highlightMatch(query, item.text), + }; + }); + }); + } else { + const remappedHits = response.hits.map((hit) => { + return hit.map((item) => { + const newItem = { ...item }; + ["href", "section", "title", "text"].forEach((keyName) => { + const mappedName = indexFields[keyName]; + if ( + mappedName && + item[mappedName] !== undefined && + mappedName !== keyName + ) { + newItem[keyName] = item[mappedName]; + delete newItem[mappedName]; + } + }); + newItem.text = highlightMatch(query, newItem.text); + return newItem; + }); + }); + return remappedHits; + } + }, + }); +} + +function fuseSearch(query, fuse, fuseOptions) { + return fuse.search(query, fuseOptions).map((result) => { + const addParam = (url, name, value) => { + const anchorParts = url.split("#"); + const baseUrl = anchorParts[0]; + const sep = baseUrl.search("\\?") > 0 ? "&" : "?"; + anchorParts[0] = baseUrl + sep + name + "=" + value; + return anchorParts.join("#"); + }; + + return { + title: result.item.title, + section: result.item.section, + href: addParam(result.item.href, kQueryArg, query), + text: highlightMatch(query, result.item.text), + }; + }); +} diff --git a/public/site_libs/revealjs/dist/reset.css b/public/site_libs/revealjs/dist/reset.css new file mode 100644 index 0000000..e238539 --- /dev/null +++ b/public/site_libs/revealjs/dist/reset.css @@ -0,0 +1,30 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v4.0 | 20180602 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +main, menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, main, menu, nav, section { + display: block; +} \ No newline at end of file diff --git a/public/site_libs/revealjs/dist/reveal.css b/public/site_libs/revealjs/dist/reveal.css new file mode 100644 index 0000000..c3a2ecb --- /dev/null +++ b/public/site_libs/revealjs/dist/reveal.css @@ -0,0 +1,8 @@ +/*! +* reveal.js 4.2.0 +* https://revealjs.com +* MIT licensed +* +* Copyright (C) 2011-2021 Hakim El Hattab, https://hakim.se +*/ +.reveal .r-stretch,.reveal .stretch{max-width:none;max-height:none}.reveal pre.r-stretch code,.reveal pre.stretch code{height:100%;max-height:100%;box-sizing:border-box}.reveal .r-fit-text{display:inline-block;white-space:nowrap}.reveal .r-stack{display:grid}.reveal .r-stack>*{grid-area:1/1;margin:auto}.reveal .r-hstack,.reveal .r-vstack{display:flex}.reveal .r-hstack img,.reveal .r-hstack video,.reveal .r-vstack img,.reveal .r-vstack video{min-width:0;min-height:0;-o-object-fit:contain;object-fit:contain}.reveal .r-vstack{flex-direction:column;align-items:center;justify-content:center}.reveal .r-hstack{flex-direction:row;align-items:center;justify-content:center}.reveal .items-stretch{align-items:stretch}.reveal .items-start{align-items:flex-start}.reveal .items-center{align-items:center}.reveal .items-end{align-items:flex-end}.reveal .justify-between{justify-content:space-between}.reveal .justify-around{justify-content:space-around}.reveal .justify-start{justify-content:flex-start}.reveal .justify-center{justify-content:center}.reveal .justify-end{justify-content:flex-end}html.reveal-full-page{width:100%;height:100%;height:100vh;height:calc(var(--vh,1vh) * 100);overflow:hidden}.reveal-viewport{height:100%;overflow:hidden;position:relative;line-height:1;margin:0;background-color:#fff;color:#000}.reveal .slides section .fragment{opacity:0;visibility:hidden;transition:all .2s ease;will-change:opacity}.reveal .slides section .fragment.visible{opacity:1;visibility:inherit}.reveal .slides section .fragment.disabled{transition:none}.reveal .slides section .fragment.grow{opacity:1;visibility:inherit}.reveal .slides section .fragment.grow.visible{transform:scale(1.3)}.reveal .slides section .fragment.shrink{opacity:1;visibility:inherit}.reveal .slides section .fragment.shrink.visible{transform:scale(.7)}.reveal .slides section .fragment.zoom-in{transform:scale(.1)}.reveal .slides section .fragment.zoom-in.visible{transform:none}.reveal .slides section .fragment.fade-out{opacity:1;visibility:inherit}.reveal .slides section .fragment.fade-out.visible{opacity:0;visibility:hidden}.reveal .slides section .fragment.semi-fade-out{opacity:1;visibility:inherit}.reveal .slides section .fragment.semi-fade-out.visible{opacity:.5;visibility:inherit}.reveal .slides section .fragment.strike{opacity:1;visibility:inherit}.reveal .slides section .fragment.strike.visible{text-decoration:line-through}.reveal .slides section .fragment.fade-up{transform:translate(0,40px)}.reveal .slides section .fragment.fade-up.visible{transform:translate(0,0)}.reveal .slides section .fragment.fade-down{transform:translate(0,-40px)}.reveal .slides section .fragment.fade-down.visible{transform:translate(0,0)}.reveal .slides section .fragment.fade-right{transform:translate(-40px,0)}.reveal .slides section .fragment.fade-right.visible{transform:translate(0,0)}.reveal .slides section .fragment.fade-left{transform:translate(40px,0)}.reveal .slides section .fragment.fade-left.visible{transform:translate(0,0)}.reveal .slides section .fragment.current-visible,.reveal .slides section .fragment.fade-in-then-out{opacity:0;visibility:hidden}.reveal .slides section .fragment.current-visible.current-fragment,.reveal .slides section .fragment.fade-in-then-out.current-fragment{opacity:1;visibility:inherit}.reveal .slides section .fragment.fade-in-then-semi-out{opacity:0;visibility:hidden}.reveal .slides section .fragment.fade-in-then-semi-out.visible{opacity:.5;visibility:inherit}.reveal .slides section .fragment.fade-in-then-semi-out.current-fragment{opacity:1;visibility:inherit}.reveal .slides section .fragment.highlight-blue,.reveal .slides section .fragment.highlight-current-blue,.reveal .slides section .fragment.highlight-current-green,.reveal .slides section .fragment.highlight-current-red,.reveal .slides section .fragment.highlight-green,.reveal .slides section .fragment.highlight-red{opacity:1;visibility:inherit}.reveal .slides section .fragment.highlight-red.visible{color:#ff2c2d}.reveal .slides section .fragment.highlight-green.visible{color:#17ff2e}.reveal .slides section .fragment.highlight-blue.visible{color:#1b91ff}.reveal .slides section .fragment.highlight-current-red.current-fragment{color:#ff2c2d}.reveal .slides section .fragment.highlight-current-green.current-fragment{color:#17ff2e}.reveal .slides section .fragment.highlight-current-blue.current-fragment{color:#1b91ff}.reveal:after{content:"";font-style:italic}.reveal iframe{z-index:1}.reveal a{position:relative}@keyframes bounce-right{0%,10%,25%,40%,50%{transform:translateX(0)}20%{transform:translateX(10px)}30%{transform:translateX(-5px)}}@keyframes bounce-left{0%,10%,25%,40%,50%{transform:translateX(0)}20%{transform:translateX(-10px)}30%{transform:translateX(5px)}}@keyframes bounce-down{0%,10%,25%,40%,50%{transform:translateY(0)}20%{transform:translateY(10px)}30%{transform:translateY(-5px)}}.reveal .controls{display:none;position:absolute;top:auto;bottom:12px;right:12px;left:auto;z-index:11;color:#000;pointer-events:none;font-size:10px}.reveal .controls button{position:absolute;padding:0;background-color:transparent;border:0;outline:0;cursor:pointer;color:currentColor;transform:scale(.9999);transition:color .2s ease,opacity .2s ease,transform .2s ease;z-index:2;pointer-events:auto;font-size:inherit;visibility:hidden;opacity:0;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.reveal .controls .controls-arrow:after,.reveal .controls .controls-arrow:before{content:"";position:absolute;top:0;left:0;width:2.6em;height:.5em;border-radius:.25em;background-color:currentColor;transition:all .15s ease,background-color .8s ease;transform-origin:.2em 50%;will-change:transform}.reveal .controls .controls-arrow{position:relative;width:3.6em;height:3.6em}.reveal .controls .controls-arrow:before{transform:translateX(.5em) translateY(1.55em) rotate(45deg)}.reveal .controls .controls-arrow:after{transform:translateX(.5em) translateY(1.55em) rotate(-45deg)}.reveal .controls .controls-arrow:hover:before{transform:translateX(.5em) translateY(1.55em) rotate(40deg)}.reveal .controls .controls-arrow:hover:after{transform:translateX(.5em) translateY(1.55em) rotate(-40deg)}.reveal .controls .controls-arrow:active:before{transform:translateX(.5em) translateY(1.55em) rotate(36deg)}.reveal .controls .controls-arrow:active:after{transform:translateX(.5em) translateY(1.55em) rotate(-36deg)}.reveal .controls .navigate-left{right:6.4em;bottom:3.2em;transform:translateX(-10px)}.reveal .controls .navigate-left.highlight{animation:bounce-left 2s 50 both ease-out}.reveal .controls .navigate-right{right:0;bottom:3.2em;transform:translateX(10px)}.reveal .controls .navigate-right .controls-arrow{transform:rotate(180deg)}.reveal .controls .navigate-right.highlight{animation:bounce-right 2s 50 both ease-out}.reveal .controls .navigate-up{right:3.2em;bottom:6.4em;transform:translateY(-10px)}.reveal .controls .navigate-up .controls-arrow{transform:rotate(90deg)}.reveal .controls .navigate-down{right:3.2em;bottom:-1.4em;padding-bottom:1.4em;transform:translateY(10px)}.reveal .controls .navigate-down .controls-arrow{transform:rotate(-90deg)}.reveal .controls .navigate-down.highlight{animation:bounce-down 2s 50 both ease-out}.reveal .controls[data-controls-back-arrows=faded] .navigate-up.enabled{opacity:.3}.reveal .controls[data-controls-back-arrows=faded] .navigate-up.enabled:hover{opacity:1}.reveal .controls[data-controls-back-arrows=hidden] .navigate-up.enabled{opacity:0;visibility:hidden}.reveal .controls .enabled{visibility:visible;opacity:.9;cursor:pointer;transform:none}.reveal .controls .enabled.fragmented{opacity:.5}.reveal .controls .enabled.fragmented:hover,.reveal .controls .enabled:hover{opacity:1}.reveal:not(.rtl) .controls[data-controls-back-arrows=faded] .navigate-left.enabled{opacity:.3}.reveal:not(.rtl) .controls[data-controls-back-arrows=faded] .navigate-left.enabled:hover{opacity:1}.reveal:not(.rtl) .controls[data-controls-back-arrows=hidden] .navigate-left.enabled{opacity:0;visibility:hidden}.reveal.rtl .controls[data-controls-back-arrows=faded] .navigate-right.enabled{opacity:.3}.reveal.rtl .controls[data-controls-back-arrows=faded] .navigate-right.enabled:hover{opacity:1}.reveal.rtl .controls[data-controls-back-arrows=hidden] .navigate-right.enabled{opacity:0;visibility:hidden}.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-down,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-up{display:none}.reveal:not(.has-vertical-slides) .controls .navigate-left,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-left{bottom:1.4em;right:5.5em}.reveal:not(.has-vertical-slides) .controls .navigate-right,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-right{bottom:1.4em;right:.5em}.reveal:not(.has-horizontal-slides) .controls .navigate-up{right:1.4em;bottom:5em}.reveal:not(.has-horizontal-slides) .controls .navigate-down{right:1.4em;bottom:.5em}.reveal.has-dark-background .controls{color:#fff}.reveal.has-light-background .controls{color:#000}.reveal.no-hover .controls .controls-arrow:active:before,.reveal.no-hover .controls .controls-arrow:hover:before{transform:translateX(.5em) translateY(1.55em) rotate(45deg)}.reveal.no-hover .controls .controls-arrow:active:after,.reveal.no-hover .controls .controls-arrow:hover:after{transform:translateX(.5em) translateY(1.55em) rotate(-45deg)}@media screen and (min-width:500px){.reveal .controls[data-controls-layout=edges]{top:0;right:0;bottom:0;left:0}.reveal .controls[data-controls-layout=edges] .navigate-down,.reveal .controls[data-controls-layout=edges] .navigate-left,.reveal .controls[data-controls-layout=edges] .navigate-right,.reveal .controls[data-controls-layout=edges] .navigate-up{bottom:auto;right:auto}.reveal .controls[data-controls-layout=edges] .navigate-left{top:50%;left:.8em;margin-top:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-right{top:50%;right:.8em;margin-top:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-up{top:.8em;left:50%;margin-left:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-down{bottom:-.3em;left:50%;margin-left:-1.8em}}.reveal .progress{position:absolute;display:none;height:3px;width:100%;bottom:0;left:0;z-index:10;background-color:rgba(0,0,0,.2);color:#fff}.reveal .progress:after{content:"";display:block;position:absolute;height:10px;width:100%;top:-10px}.reveal .progress span{display:block;height:100%;width:100%;background-color:currentColor;transition:transform .8s cubic-bezier(.26,.86,.44,.985);transform-origin:0 0;transform:scaleX(0)}.reveal .slide-number{position:absolute;display:block;right:8px;bottom:8px;z-index:31;font-family:Helvetica,sans-serif;font-size:12px;line-height:1;color:#fff;background-color:rgba(0,0,0,.4);padding:5px}.reveal .slide-number a{color:currentColor}.reveal .slide-number-delimiter{margin:0 3px}.reveal{position:relative;width:100%;height:100%;overflow:hidden;touch-action:pinch-zoom}.reveal.embedded{touch-action:pan-y}.reveal .slides{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0;margin:auto;pointer-events:none;overflow:visible;z-index:1;text-align:center;perspective:600px;perspective-origin:50% 40%}.reveal .slides>section{perspective:600px}.reveal .slides>section,.reveal .slides>section>section{display:none;position:absolute;width:100%;pointer-events:auto;z-index:10;transform-style:flat;transition:transform-origin .8s cubic-bezier(.26,.86,.44,.985),transform .8s cubic-bezier(.26,.86,.44,.985),visibility .8s cubic-bezier(.26,.86,.44,.985),opacity .8s cubic-bezier(.26,.86,.44,.985)}.reveal[data-transition-speed=fast] .slides section{transition-duration:.4s}.reveal[data-transition-speed=slow] .slides section{transition-duration:1.2s}.reveal .slides section[data-transition-speed=fast]{transition-duration:.4s}.reveal .slides section[data-transition-speed=slow]{transition-duration:1.2s}.reveal .slides>section.stack{padding-top:0;padding-bottom:0;pointer-events:none;height:100%}.reveal .slides>section.present,.reveal .slides>section>section.present{display:block;z-index:11;opacity:1}.reveal .slides>section:empty,.reveal .slides>section>section:empty,.reveal .slides>section>section[data-background-interactive],.reveal .slides>section[data-background-interactive]{pointer-events:none}.reveal.center,.reveal.center .slides,.reveal.center .slides section{min-height:0!important}.reveal .slides>section:not(.present),.reveal .slides>section>section:not(.present){pointer-events:none}.reveal.overview .slides>section,.reveal.overview .slides>section>section{pointer-events:auto}.reveal .slides>section.future,.reveal .slides>section.past,.reveal .slides>section>section.future,.reveal .slides>section>section.past{opacity:0}.reveal.slide section{-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal .slides>section[data-transition=slide].past,.reveal .slides>section[data-transition~=slide-out].past,.reveal.slide .slides>section:not([data-transition]).past{transform:translate(-150%,0)}.reveal .slides>section[data-transition=slide].future,.reveal .slides>section[data-transition~=slide-in].future,.reveal.slide .slides>section:not([data-transition]).future{transform:translate(150%,0)}.reveal .slides>section>section[data-transition=slide].past,.reveal .slides>section>section[data-transition~=slide-out].past,.reveal.slide .slides>section>section:not([data-transition]).past{transform:translate(0,-150%)}.reveal .slides>section>section[data-transition=slide].future,.reveal .slides>section>section[data-transition~=slide-in].future,.reveal.slide .slides>section>section:not([data-transition]).future{transform:translate(0,150%)}.reveal.linear section{-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal .slides>section[data-transition=linear].past,.reveal .slides>section[data-transition~=linear-out].past,.reveal.linear .slides>section:not([data-transition]).past{transform:translate(-150%,0)}.reveal .slides>section[data-transition=linear].future,.reveal .slides>section[data-transition~=linear-in].future,.reveal.linear .slides>section:not([data-transition]).future{transform:translate(150%,0)}.reveal .slides>section>section[data-transition=linear].past,.reveal .slides>section>section[data-transition~=linear-out].past,.reveal.linear .slides>section>section:not([data-transition]).past{transform:translate(0,-150%)}.reveal .slides>section>section[data-transition=linear].future,.reveal .slides>section>section[data-transition~=linear-in].future,.reveal.linear .slides>section>section:not([data-transition]).future{transform:translate(0,150%)}.reveal .slides section[data-transition=default].stack,.reveal.default .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=default].past,.reveal .slides>section[data-transition~=default-out].past,.reveal.default .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=default].future,.reveal .slides>section[data-transition~=default-in].future,.reveal.default .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=default].past,.reveal .slides>section>section[data-transition~=default-out].past,.reveal.default .slides>section>section:not([data-transition]).past{transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0)}.reveal .slides>section>section[data-transition=default].future,.reveal .slides>section>section[data-transition~=default-in].future,.reveal.default .slides>section>section:not([data-transition]).future{transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0)}.reveal .slides section[data-transition=convex].stack,.reveal.convex .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=convex].past,.reveal .slides>section[data-transition~=convex-out].past,.reveal.convex .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=convex].future,.reveal .slides>section[data-transition~=convex-in].future,.reveal.convex .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=convex].past,.reveal .slides>section>section[data-transition~=convex-out].past,.reveal.convex .slides>section>section:not([data-transition]).past{transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0)}.reveal .slides>section>section[data-transition=convex].future,.reveal .slides>section>section[data-transition~=convex-in].future,.reveal.convex .slides>section>section:not([data-transition]).future{transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0)}.reveal .slides section[data-transition=concave].stack,.reveal.concave .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=concave].past,.reveal .slides>section[data-transition~=concave-out].past,.reveal.concave .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=concave].future,.reveal .slides>section[data-transition~=concave-in].future,.reveal.concave .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=concave].past,.reveal .slides>section>section[data-transition~=concave-out].past,.reveal.concave .slides>section>section:not([data-transition]).past{transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0)}.reveal .slides>section>section[data-transition=concave].future,.reveal .slides>section>section[data-transition~=concave-in].future,.reveal.concave .slides>section>section:not([data-transition]).future{transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0)}.reveal .slides section[data-transition=zoom],.reveal.zoom .slides section:not([data-transition]){transition-timing-function:ease}.reveal .slides>section[data-transition=zoom].past,.reveal .slides>section[data-transition~=zoom-out].past,.reveal.zoom .slides>section:not([data-transition]).past{visibility:hidden;transform:scale(16)}.reveal .slides>section[data-transition=zoom].future,.reveal .slides>section[data-transition~=zoom-in].future,.reveal.zoom .slides>section:not([data-transition]).future{visibility:hidden;transform:scale(.2)}.reveal .slides>section>section[data-transition=zoom].past,.reveal .slides>section>section[data-transition~=zoom-out].past,.reveal.zoom .slides>section>section:not([data-transition]).past{transform:scale(16)}.reveal .slides>section>section[data-transition=zoom].future,.reveal .slides>section>section[data-transition~=zoom-in].future,.reveal.zoom .slides>section>section:not([data-transition]).future{transform:scale(.2)}.reveal.cube .slides{perspective:1300px}.reveal.cube .slides section{padding:30px;min-height:700px;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;transform-style:preserve-3d}.reveal.center.cube .slides section{min-height:0}.reveal.cube .slides section:not(.stack):before{content:"";position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);border-radius:4px;transform:translateZ(-20px)}.reveal.cube .slides section:not(.stack):after{content:"";position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0 0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);transform:translateZ(-90px) rotateX(65deg)}.reveal.cube .slides>section.stack{padding:0;background:0 0}.reveal.cube .slides>section.past{transform-origin:100% 0;transform:translate3d(-100%,0,0) rotateY(-90deg)}.reveal.cube .slides>section.future{transform-origin:0 0;transform:translate3d(100%,0,0) rotateY(90deg)}.reveal.cube .slides>section>section.past{transform-origin:0 100%;transform:translate3d(0,-100%,0) rotateX(90deg)}.reveal.cube .slides>section>section.future{transform-origin:0 0;transform:translate3d(0,100%,0) rotateX(-90deg)}.reveal.page .slides{perspective-origin:0 50%;perspective:3000px}.reveal.page .slides section{padding:30px;min-height:700px;box-sizing:border-box;transform-style:preserve-3d}.reveal.page .slides section.past{z-index:12}.reveal.page .slides section:not(.stack):before{content:"";position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);transform:translateZ(-20px)}.reveal.page .slides section:not(.stack):after{content:"";position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0 0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);-webkit-transform:translateZ(-90px) rotateX(65deg)}.reveal.page .slides>section.stack{padding:0;background:0 0}.reveal.page .slides>section.past{transform-origin:0 0;transform:translate3d(-40%,0,0) rotateY(-80deg)}.reveal.page .slides>section.future{transform-origin:100% 0;transform:translate3d(0,0,0)}.reveal.page .slides>section>section.past{transform-origin:0 0;transform:translate3d(0,-40%,0) rotateX(80deg)}.reveal.page .slides>section>section.future{transform-origin:0 100%;transform:translate3d(0,0,0)}.reveal .slides section[data-transition=fade],.reveal.fade .slides section:not([data-transition]),.reveal.fade .slides>section>section:not([data-transition]){transform:none;transition:opacity .5s}.reveal.fade.overview .slides section,.reveal.fade.overview .slides>section>section{transition:none}.reveal .slides section[data-transition=none],.reveal.none .slides section:not([data-transition]){transform:none;transition:none}.reveal .pause-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;visibility:hidden;opacity:0;z-index:100;transition:all 1s ease}.reveal .pause-overlay .resume-button{position:absolute;bottom:20px;right:20px;color:#ccc;border-radius:2px;padding:6px 14px;border:2px solid #ccc;font-size:16px;background:0 0;cursor:pointer}.reveal .pause-overlay .resume-button:hover{color:#fff;border-color:#fff}.reveal.paused .pause-overlay{visibility:visible;opacity:1}.reveal .no-transition,.reveal .no-transition *,.reveal .slides.disable-slide-transitions section{transition:none!important}.reveal .slides.disable-slide-transitions section{transform:none!important}.reveal .backgrounds{position:absolute;width:100%;height:100%;top:0;left:0;perspective:600px}.reveal .slide-background{display:none;position:absolute;width:100%;height:100%;opacity:0;visibility:hidden;overflow:hidden;background-color:rgba(0,0,0,0);transition:all .8s cubic-bezier(.26,.86,.44,.985)}.reveal .slide-background-content{position:absolute;width:100%;height:100%;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.reveal .slide-background.stack{display:block}.reveal .slide-background.present{opacity:1;visibility:visible;z-index:2}.print-pdf .reveal .slide-background{opacity:1!important;visibility:visible!important}.reveal .slide-background video{position:absolute;width:100%;height:100%;max-width:none;max-height:none;top:0;left:0;-o-object-fit:cover;object-fit:cover}.reveal .slide-background[data-background-size=contain] video{-o-object-fit:contain;object-fit:contain}.reveal>.backgrounds .slide-background[data-background-transition=none],.reveal[data-background-transition=none]>.backgrounds .slide-background:not([data-background-transition]){transition:none}.reveal>.backgrounds .slide-background[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background:not([data-background-transition]){opacity:1;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal>.backgrounds .slide-background.past[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background.past:not([data-background-transition]){transform:translate(-100%,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background.future:not([data-background-transition]){transform:translate(100%,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){transform:translate(0,-100%)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){transform:translate(0,100%)}.reveal>.backgrounds .slide-background.past[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(0,-100%,0) rotateX(90deg) translate3d(0,-100%,0)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(0,100%,0) rotateX(-90deg) translate3d(0,100%,0)}.reveal>.backgrounds .slide-background.past[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(0,-100%,0) rotateX(-90deg) translate3d(0,-100%,0)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(0,100%,0) rotateX(90deg) translate3d(0,100%,0)}.reveal>.backgrounds .slide-background[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background:not([data-background-transition]){transition-timing-function:ease}.reveal>.backgrounds .slide-background.past[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(16)}.reveal>.backgrounds .slide-background.future[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(.2)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(16)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(.2)}.reveal[data-transition-speed=fast]>.backgrounds .slide-background{transition-duration:.4s}.reveal[data-transition-speed=slow]>.backgrounds .slide-background{transition-duration:1.2s}.reveal [data-auto-animate-target^=unmatched]{will-change:opacity}.reveal section[data-auto-animate]:not(.stack):not([data-auto-animate=running]) [data-auto-animate-target^=unmatched]{opacity:0}.reveal.overview{perspective-origin:50% 50%;perspective:700px}.reveal.overview .slides{-moz-transform-style:preserve-3d}.reveal.overview .slides section{height:100%;top:0!important;opacity:1!important;overflow:hidden;visibility:visible!important;cursor:pointer;box-sizing:border-box}.reveal.overview .slides section.present,.reveal.overview .slides section:hover{outline:10px solid rgba(150,150,150,.4);outline-offset:10px}.reveal.overview .slides section .fragment{opacity:1;transition:none}.reveal.overview .slides section:after,.reveal.overview .slides section:before{display:none!important}.reveal.overview .slides>section.stack{padding:0;top:0!important;background:0 0;outline:0;overflow:visible}.reveal.overview .backgrounds{perspective:inherit;-moz-transform-style:preserve-3d}.reveal.overview .backgrounds .slide-background{opacity:1;visibility:visible;outline:10px solid rgba(150,150,150,.1);outline-offset:10px}.reveal.overview .backgrounds .slide-background.stack{overflow:visible}.reveal.overview .slides section,.reveal.overview-deactivating .slides section{transition:none}.reveal.overview .backgrounds .slide-background,.reveal.overview-deactivating .backgrounds .slide-background{transition:none}.reveal.rtl .slides,.reveal.rtl .slides h1,.reveal.rtl .slides h2,.reveal.rtl .slides h3,.reveal.rtl .slides h4,.reveal.rtl .slides h5,.reveal.rtl .slides h6{direction:rtl;font-family:sans-serif}.reveal.rtl code,.reveal.rtl pre{direction:ltr}.reveal.rtl ol,.reveal.rtl ul{text-align:right}.reveal.rtl .progress span{transform-origin:100% 0}.reveal.has-parallax-background .backgrounds{transition:all .8s ease}.reveal.has-parallax-background[data-transition-speed=fast] .backgrounds{transition-duration:.4s}.reveal.has-parallax-background[data-transition-speed=slow] .backgrounds{transition-duration:1.2s}.reveal>.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1000;background:rgba(0,0,0,.9);transition:all .3s ease}.reveal>.overlay .spinner{position:absolute;display:block;top:50%;left:50%;width:32px;height:32px;margin:-16px 0 0 -16px;z-index:10;background-image:url(data:image/gif;base64,R0lGODlhIAAgAPMAAJmZmf%2F%2F%2F6%2Bvr8nJybW1tcDAwOjo6Nvb26ioqKOjo7Ozs%2FLy8vz8%2FAAAAAAAAAAAACH%2FC05FVFNDQVBFMi4wAwEAAAAh%2FhpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh%2BQQJCgAAACwAAAAAIAAgAAAE5xDISWlhperN52JLhSSdRgwVo1ICQZRUsiwHpTJT4iowNS8vyW2icCF6k8HMMBkCEDskxTBDAZwuAkkqIfxIQyhBQBFvAQSDITM5VDW6XNE4KagNh6Bgwe60smQUB3d4Rz1ZBApnFASDd0hihh12BkE9kjAJVlycXIg7CQIFA6SlnJ87paqbSKiKoqusnbMdmDC2tXQlkUhziYtyWTxIfy6BE8WJt5YJvpJivxNaGmLHT0VnOgSYf0dZXS7APdpB309RnHOG5gDqXGLDaC457D1zZ%2FV%2FnmOM82XiHRLYKhKP1oZmADdEAAAh%2BQQJCgAAACwAAAAAIAAgAAAE6hDISWlZpOrNp1lGNRSdRpDUolIGw5RUYhhHukqFu8DsrEyqnWThGvAmhVlteBvojpTDDBUEIFwMFBRAmBkSgOrBFZogCASwBDEY%2FCZSg7GSE0gSCjQBMVG023xWBhklAnoEdhQEfyNqMIcKjhRsjEdnezB%2BA4k8gTwJhFuiW4dokXiloUepBAp5qaKpp6%2BHo7aWW54wl7obvEe0kRuoplCGepwSx2jJvqHEmGt6whJpGpfJCHmOoNHKaHx61WiSR92E4lbFoq%2BB6QDtuetcaBPnW6%2BO7wDHpIiK9SaVK5GgV543tzjgGcghAgAh%2BQQJCgAAACwAAAAAIAAgAAAE7hDISSkxpOrN5zFHNWRdhSiVoVLHspRUMoyUakyEe8PTPCATW9A14E0UvuAKMNAZKYUZCiBMuBakSQKG8G2FzUWox2AUtAQFcBKlVQoLgQReZhQlCIJesQXI5B0CBnUMOxMCenoCfTCEWBsJColTMANldx15BGs8B5wlCZ9Po6OJkwmRpnqkqnuSrayqfKmqpLajoiW5HJq7FL1Gr2mMMcKUMIiJgIemy7xZtJsTmsM4xHiKv5KMCXqfyUCJEonXPN2rAOIAmsfB3uPoAK%2B%2BG%2Bw48edZPK%2BM6hLJpQg484enXIdQFSS1u6UhksENEQAAIfkECQoAAAAsAAAAACAAIAAABOcQyEmpGKLqzWcZRVUQnZYg1aBSh2GUVEIQ2aQOE%2BG%2BcD4ntpWkZQj1JIiZIogDFFyHI0UxQwFugMSOFIPJftfVAEoZLBbcLEFhlQiqGp1Vd140AUklUN3eCA51C1EWMzMCezCBBmkxVIVHBWd3HHl9JQOIJSdSnJ0TDKChCwUJjoWMPaGqDKannasMo6WnM562R5YluZRwur0wpgqZE7NKUm%2BFNRPIhjBJxKZteWuIBMN4zRMIVIhffcgojwCF117i4nlLnY5ztRLsnOk%2BaV%2BoJY7V7m76PdkS4trKcdg0Zc0tTcKkRAAAIfkECQoAAAAsAAAAACAAIAAABO4QyEkpKqjqzScpRaVkXZWQEximw1BSCUEIlDohrft6cpKCk5xid5MNJTaAIkekKGQkWyKHkvhKsR7ARmitkAYDYRIbUQRQjWBwJRzChi9CRlBcY1UN4g0%2FVNB0AlcvcAYHRyZPdEQFYV8ccwR5HWxEJ02YmRMLnJ1xCYp0Y5idpQuhopmmC2KgojKasUQDk5BNAwwMOh2RtRq5uQuPZKGIJQIGwAwGf6I0JXMpC8C7kXWDBINFMxS4DKMAWVWAGYsAdNqW5uaRxkSKJOZKaU3tPOBZ4DuK2LATgJhkPJMgTwKCdFjyPHEnKxFCDhEAACH5BAkKAAAALAAAAAAgACAAAATzEMhJaVKp6s2nIkolIJ2WkBShpkVRWqqQrhLSEu9MZJKK9y1ZrqYK9WiClmvoUaF8gIQSNeF1Er4MNFn4SRSDARWroAIETg1iVwuHjYB1kYc1mwruwXKC9gmsJXliGxc%2BXiUCby9ydh1sOSdMkpMTBpaXBzsfhoc5l58Gm5yToAaZhaOUqjkDgCWNHAULCwOLaTmzswadEqggQwgHuQsHIoZCHQMMQgQGubVEcxOPFAcMDAYUA85eWARmfSRQCdcMe0zeP1AAygwLlJtPNAAL19DARdPzBOWSm1brJBi45soRAWQAAkrQIykShQ9wVhHCwCQCACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiRMDjI0Fd30%2FiI2UA5GSS5UDj2l6NoqgOgN4gksEBgYFf0FDqKgHnyZ9OX8HrgYHdHpcHQULXAS2qKpENRg7eAMLC7kTBaixUYFkKAzWAAnLC7FLVxLWDBLKCwaKTULgEwbLA4hJtOkSBNqITT3xEgfLpBtzE%2FjiuL04RGEBgwWhShRgQExHBAAh%2BQQJCgAAACwAAAAAIAAgAAAE7xDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfZiCqGk5dTESJeaOAlClzsJsqwiJwiqnFrb2nS9kmIcgEsjQydLiIlHehhpejaIjzh9eomSjZR%2BipslWIRLAgMDOR2DOqKogTB9pCUJBagDBXR6XB0EBkIIsaRsGGMMAxoDBgYHTKJiUYEGDAzHC9EACcUGkIgFzgwZ0QsSBcXHiQvOwgDdEwfFs0sDzt4S6BK4xYjkDOzn0unFeBzOBijIm1Dgmg5YFQwsCMjp1oJ8LyIAACH5BAkKAAAALAAAAAAgACAAAATwEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GGl6NoiPOH16iZKNlH6KmyWFOggHhEEvAwwMA0N9GBsEC6amhnVcEwavDAazGwIDaH1ipaYLBUTCGgQDA8NdHz0FpqgTBwsLqAbWAAnIA4FWKdMLGdYGEgraigbT0OITBcg5QwPT4xLrROZL6AuQAPUS7bxLpoWidY0JtxLHKhwwMJBTHgPKdEQAACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GAULDJCRiXo1CpGXDJOUjY%2BYip9DhToJA4RBLwMLCwVDfRgbBAaqqoZ1XBMHswsHtxtFaH1iqaoGNgAIxRpbFAgfPQSqpbgGBqUD1wBXeCYp1AYZ19JJOYgH1KwA4UBvQwXUBxPqVD9L3sbp2BNk2xvvFPJd%2BMFCN6HAAIKgNggY0KtEBAAh%2BQQJCgAAACwAAAAAIAAgAAAE6BDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfYIDMaAFdTESJeaEDAIMxYFqrOUaNW4E4ObYcCXaiBVEgULe0NJaxxtYksjh2NLkZISgDgJhHthkpU4mW6blRiYmZOlh4JWkDqILwUGBnE6TYEbCgevr0N1gH4At7gHiRpFaLNrrq8HNgAJA70AWxQIH1%2BvsYMDAzZQPC9VCNkDWUhGkuE5PxJNwiUK4UfLzOlD4WvzAHaoG9nxPi5d%2BjYUqfAhhykOFwJWiAAAIfkECQoAAAAsAAAAACAAIAAABPAQyElpUqnqzaciSoVkXVUMFaFSwlpOCcMYlErAavhOMnNLNo8KsZsMZItJEIDIFSkLGQoQTNhIsFehRww2CQLKF0tYGKYSg%2BygsZIuNqJksKgbfgIGepNo2cIUB3V1B3IvNiBYNQaDSTtfhhx0CwVPI0UJe0%2Bbm4g5VgcGoqOcnjmjqDSdnhgEoamcsZuXO1aWQy8KAwOAuTYYGwi7w5h%2BKr0SJ8MFihpNbx%2B4Erq7BYBuzsdiH1jCAzoSfl0rVirNbRXlBBlLX%2BBP0XJLAPGzTkAuAOqb0WT5AH7OcdCm5B8TgRwSRKIHQtaLCwg1RAAAOwAAAAAAAAAAAA%3D%3D);visibility:visible;opacity:.6;transition:all .3s ease}.reveal>.overlay header{position:absolute;left:0;top:0;width:100%;padding:5px;z-index:2;box-sizing:border-box}.reveal>.overlay header a{display:inline-block;width:40px;height:40px;line-height:36px;padding:0 10px;float:right;opacity:.6;box-sizing:border-box}.reveal>.overlay header a:hover{opacity:1}.reveal>.overlay header a .icon{display:inline-block;width:20px;height:20px;background-position:50% 50%;background-size:100%;background-repeat:no-repeat}.reveal>.overlay header a.close .icon{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABkklEQVRYR8WX4VHDMAxG6wnoJrABZQPYBCaBTWAD2g1gE5gg6OOsXuxIlr40d81dfrSJ9V4c2VLK7spHuTJ/5wpM07QXuXc5X0opX2tEJcadjHuV80li/FgxTIEK/5QBCICBD6xEhSMGHgQPgBgLiYVAB1dpSqKDawxTohFw4JSEA3clzgIBPCURwE2JucBR7rhPJJv5OpJwDX+SfDjgx1wACQeJG1aChP9K/IMmdZ8DtESV1WyP3Bt4MwM6sj4NMxMYiqUWHQu4KYA/SYkIjOsm3BXYWMKFDwU2khjCQ4ELJUJ4SmClRArOCmSXGuKma0fYD5CbzHxFpCSGAhfAVSSUGDUk2BWZaff2g6GE15BsBQ9nwmpIGDiyHQddwNTMKkbZaf9fajXQca1EX44puJZUsnY0ObGmITE3GVLCbEhQUjGVt146j6oasWN+49Vph2w1pZ5EansNZqKBm1txbU57iRRcZ86RWMDdWtBJUHBHwoQPi1GV+JCbntmvok7iTX4/Up9mgyTc/FJYDTcndgH/AA5A/CHsyEkVAAAAAElFTkSuQmCC)}.reveal>.overlay header a.external .icon{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAcElEQVRYR+2WSQoAIQwEzf8f7XiOMkUQxUPlGkM3hVmiQfQR9GYnH1SsAQlI4DiBqkCMoNb9y2e90IAEJPAcgdznU9+engMaeJ7Azh5Y1U67gAho4DqBqmB1buAf0MB1AlVBek83ZPkmJMGc1wAR+AAqod/B97TRpQAAAABJRU5ErkJggg==)}.reveal>.overlay .viewport{position:absolute;display:flex;top:50px;right:0;bottom:0;left:0}.reveal>.overlay.overlay-preview .viewport iframe{width:100%;height:100%;max-width:100%;max-height:100%;border:0;opacity:0;visibility:hidden;transition:all .3s ease}.reveal>.overlay.overlay-preview.loaded .viewport iframe{opacity:1;visibility:visible}.reveal>.overlay.overlay-preview.loaded .viewport-inner{position:absolute;z-index:-1;left:0;top:45%;width:100%;text-align:center;letter-spacing:normal}.reveal>.overlay.overlay-preview .x-frame-error{opacity:0;transition:opacity .3s ease .3s}.reveal>.overlay.overlay-preview.loaded .x-frame-error{opacity:1}.reveal>.overlay.overlay-preview.loaded .spinner{opacity:0;visibility:hidden;transform:scale(.2)}.reveal>.overlay.overlay-help .viewport{overflow:auto;color:#fff}.reveal>.overlay.overlay-help .viewport .viewport-inner{width:600px;margin:auto;padding:20px 20px 80px 20px;text-align:center;letter-spacing:normal}.reveal>.overlay.overlay-help .viewport .viewport-inner .title{font-size:20px}.reveal>.overlay.overlay-help .viewport .viewport-inner table{border:1px solid #fff;border-collapse:collapse;font-size:16px}.reveal>.overlay.overlay-help .viewport .viewport-inner table td,.reveal>.overlay.overlay-help .viewport .viewport-inner table th{width:200px;padding:14px;border:1px solid #fff;vertical-align:middle}.reveal>.overlay.overlay-help .viewport .viewport-inner table th{padding-top:20px;padding-bottom:20px}.reveal .playback{position:absolute;left:15px;bottom:20px;z-index:30;cursor:pointer;transition:all .4s ease;-webkit-tap-highlight-color:transparent}.reveal.overview .playback{opacity:0;visibility:hidden}.reveal .hljs{min-height:100%}.reveal .hljs table{margin:initial}.reveal .hljs-ln-code,.reveal .hljs-ln-numbers{padding:0;border:0}.reveal .hljs-ln-numbers{opacity:.6;padding-right:.75em;text-align:right;vertical-align:top}.reveal .hljs.has-highlights tr:not(.highlight-line){opacity:.4}.reveal .hljs:not(:first-child).fragment{position:absolute;top:0;left:0;width:100%;box-sizing:border-box}.reveal pre[data-auto-animate-target]{overflow:hidden}.reveal pre[data-auto-animate-target] code{height:100%}.reveal .roll{display:inline-block;line-height:1.2;overflow:hidden;vertical-align:top;perspective:400px;perspective-origin:50% 50%}.reveal .roll:hover{background:0 0;text-shadow:none}.reveal .roll span{display:block;position:relative;padding:0 2px;pointer-events:none;transition:all .4s ease;transform-origin:50% 0;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal .roll:hover span{background:rgba(0,0,0,.5);transform:translate3d(0,0,-45px) rotateX(90deg)}.reveal .roll span:after{content:attr(data-title);display:block;position:absolute;left:0;top:0;padding:0 2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:50% 0;transform:translate3d(0,110%,0) rotateX(-90deg)}.reveal aside.notes{display:none}.reveal .speaker-notes{display:none;position:absolute;width:33.3333333333%;height:100%;top:0;left:100%;padding:14px 18px 14px 18px;z-index:1;font-size:18px;line-height:1.4;border:1px solid rgba(0,0,0,.05);color:#222;background-color:#f5f5f5;overflow:auto;box-sizing:border-box;text-align:left;font-family:Helvetica,sans-serif;-webkit-overflow-scrolling:touch}.reveal .speaker-notes .notes-placeholder{color:#ccc;font-style:italic}.reveal .speaker-notes:focus{outline:0}.reveal .speaker-notes:before{content:"Speaker notes";display:block;margin-bottom:10px;opacity:.5}.reveal.show-notes{max-width:75%;overflow:visible}.reveal.show-notes .speaker-notes{display:block}@media screen and (min-width:1600px){.reveal .speaker-notes{font-size:20px}}@media screen and (max-width:1024px){.reveal.show-notes{border-left:0;max-width:none;max-height:70%;max-height:70vh;overflow:visible}.reveal.show-notes .speaker-notes{top:100%;left:0;width:100%;height:42.8571428571%;height:30vh;border:0}}@media screen and (max-width:600px){.reveal.show-notes{max-height:60%;max-height:60vh}.reveal.show-notes .speaker-notes{top:100%;height:66.6666666667%;height:40vh}.reveal .speaker-notes{font-size:14px}}.zoomed .reveal *,.zoomed .reveal :after,.zoomed .reveal :before{-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.zoomed .reveal .controls,.zoomed .reveal .progress{opacity:0}.zoomed .reveal .roll span{background:0 0}.zoomed .reveal .roll span:after{visibility:hidden}html.print-pdf *{-webkit-print-color-adjust:exact}html.print-pdf{width:100%;height:100%;overflow:visible}html.print-pdf body{margin:0 auto!important;border:0;padding:0;float:none!important;overflow:visible}html.print-pdf .nestedarrow,html.print-pdf .reveal .controls,html.print-pdf .reveal .playback,html.print-pdf .reveal .progress,html.print-pdf .reveal.overview,html.print-pdf .state-background{display:none!important}html.print-pdf .reveal pre code{overflow:hidden!important;font-family:Courier,"Courier New",monospace!important}html.print-pdf .reveal{width:auto!important;height:auto!important;overflow:hidden!important}html.print-pdf .reveal .slides{position:static;width:100%!important;height:auto!important;zoom:1!important;pointer-events:initial;left:auto;top:auto;margin:0!important;padding:0!important;overflow:visible;display:block;perspective:none;perspective-origin:50% 50%}html.print-pdf .reveal .slides .pdf-page{position:relative;overflow:hidden;z-index:1;page-break-after:always}html.print-pdf .reveal .slides section{visibility:visible!important;display:block!important;position:absolute!important;margin:0!important;padding:0!important;box-sizing:border-box!important;min-height:1px;opacity:1!important;transform-style:flat!important;transform:none!important}html.print-pdf .reveal section.stack{position:relative!important;margin:0!important;padding:0!important;page-break-after:avoid!important;height:auto!important;min-height:auto!important}html.print-pdf .reveal img{box-shadow:none}html.print-pdf .reveal .backgrounds{display:none}html.print-pdf .reveal .slide-background{display:block!important;position:absolute;top:0;left:0;width:100%;height:100%;z-index:auto!important}html.print-pdf .reveal.show-notes{max-width:none;max-height:none}html.print-pdf .reveal .speaker-notes-pdf{display:block;width:100%;height:auto;max-height:none;top:auto;right:auto;bottom:auto;left:auto;z-index:100}html.print-pdf .reveal .speaker-notes-pdf[data-layout=separate-page]{position:relative;color:inherit;background-color:transparent;padding:20px;page-break-after:always;border:0}html.print-pdf .reveal .slide-number-pdf{display:block;position:absolute;font-size:14px}html.print-pdf .aria-status{display:none}@media print{html:not(.print-pdf){background:#fff;width:auto;height:auto;overflow:visible}html:not(.print-pdf) body{background:#fff;font-size:20pt;width:auto;height:auto;border:0;margin:0 5%;padding:0;overflow:visible;float:none!important}html:not(.print-pdf) .controls,html:not(.print-pdf) .fork-reveal,html:not(.print-pdf) .nestedarrow,html:not(.print-pdf) .reveal .backgrounds,html:not(.print-pdf) .reveal .progress,html:not(.print-pdf) .reveal .slide-number,html:not(.print-pdf) .share-reveal,html:not(.print-pdf) .state-background{display:none!important}html:not(.print-pdf) body,html:not(.print-pdf) li,html:not(.print-pdf) p,html:not(.print-pdf) td{font-size:20pt!important;color:#000}html:not(.print-pdf) h1,html:not(.print-pdf) h2,html:not(.print-pdf) h3,html:not(.print-pdf) h4,html:not(.print-pdf) h5,html:not(.print-pdf) h6{color:#000!important;height:auto;line-height:normal;text-align:left;letter-spacing:normal}html:not(.print-pdf) h1{font-size:28pt!important}html:not(.print-pdf) h2{font-size:24pt!important}html:not(.print-pdf) h3{font-size:22pt!important}html:not(.print-pdf) h4{font-size:22pt!important;font-variant:small-caps}html:not(.print-pdf) h5{font-size:21pt!important}html:not(.print-pdf) h6{font-size:20pt!important;font-style:italic}html:not(.print-pdf) a:link,html:not(.print-pdf) a:visited{color:#000!important;font-weight:700;text-decoration:underline}html:not(.print-pdf) div,html:not(.print-pdf) ol,html:not(.print-pdf) p,html:not(.print-pdf) ul{visibility:visible;position:static;width:auto;height:auto;display:block;overflow:visible;margin:0;text-align:left!important}html:not(.print-pdf) .reveal pre,html:not(.print-pdf) .reveal table{margin-left:0;margin-right:0}html:not(.print-pdf) .reveal pre code{padding:20px}html:not(.print-pdf) .reveal blockquote{margin:20px 0}html:not(.print-pdf) .reveal .slides{position:static!important;width:auto!important;height:auto!important;left:0!important;top:0!important;margin-left:0!important;margin-top:0!important;padding:0!important;zoom:1!important;transform:none!important;overflow:visible!important;display:block!important;text-align:left!important;perspective:none;perspective-origin:50% 50%}html:not(.print-pdf) .reveal .slides section{visibility:visible!important;position:static!important;width:auto!important;height:auto!important;display:block!important;overflow:visible!important;left:0!important;top:0!important;margin-left:0!important;margin-top:0!important;padding:60px 20px!important;z-index:auto!important;opacity:1!important;page-break-after:always!important;transform-style:flat!important;transform:none!important;transition:none!important}html:not(.print-pdf) .reveal .slides section.stack{padding:0!important}html:not(.print-pdf) .reveal section:last-of-type{page-break-after:avoid!important}html:not(.print-pdf) .reveal section .fragment{opacity:1!important;visibility:visible!important;transform:none!important}html:not(.print-pdf) .reveal section img{display:block;margin:15px 0;background:#fff;border:1px solid #666;box-shadow:none}html:not(.print-pdf) .reveal section small{font-size:.8em}html:not(.print-pdf) .reveal .hljs{max-height:100%;white-space:pre-wrap;word-wrap:break-word;word-break:break-word;font-size:15pt}html:not(.print-pdf) .reveal .hljs .hljs-ln-numbers{white-space:nowrap}html:not(.print-pdf) .reveal .hljs td{font-size:inherit!important;color:inherit!important}} \ No newline at end of file diff --git a/public/site_libs/revealjs/dist/reveal.esm.js b/public/site_libs/revealjs/dist/reveal.esm.js new file mode 100644 index 0000000..a7bdd52 --- /dev/null +++ b/public/site_libs/revealjs/dist/reveal.esm.js @@ -0,0 +1,9 @@ +/*! +* reveal.js 4.2.0 +* https://revealjs.com +* MIT licensed +* +* Copyright (C) 2011-2021 Hakim El Hattab, https://hakim.se +*/ +const e=/registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/,t=/fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/,i=(e,t)=>{for(let i in t)e[i]=t[i];return e},a=(e,t)=>Array.from(e.querySelectorAll(t)),n=(e,t,i)=>{i?e.classList.add(t):e.classList.remove(t)},s=e=>{if("string"==typeof e){if("null"===e)return null;if("true"===e)return!0;if("false"===e)return!1;if(e.match(/^-?[\d\.]+$/))return parseFloat(e)}return e},r=(e,t)=>{e.style.transform=t},o=(e,t)=>{let i=e.matches||e.matchesSelector||e.msMatchesSelector;return!(!i||!i.call(e,t))},l=(e,t)=>{if("function"==typeof e.closest)return e.closest(t);for(;e;){if(o(e,t))return e;e=e.parentNode}return null},d=(e,t,i,a="")=>{let n=e.querySelectorAll("."+i);for(let t=0;t<n.length;t++){let i=n[t];if(i.parentNode===e)return i}let s=document.createElement(t);return s.className=i,s.innerHTML=a,e.appendChild(s),s},c=e=>{let t=document.createElement("style");return t.type="text/css",e&&e.length>0&&(t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))),document.head.appendChild(t),t},h=()=>{let e={};location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi,(t=>{e[t.split("=").shift()]=t.split("=").pop()}));for(let t in e){let i=e[t];e[t]=s(unescape(i))}return void 0!==e.dependencies&&delete e.dependencies,e},u=(e,t=0)=>{if(e){let i,a=e.style.height;return e.style.height="0px",e.parentNode.style.height="auto",i=t-e.parentNode.offsetHeight,e.style.height=a+"px",e.parentNode.style.removeProperty("height"),i}return t},g=navigator.userAgent,v=document.createElement("div"),p=/(iphone|ipod|ipad|android)/gi.test(g)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,m=/chrome/i.test(g)&&!/edge/i.test(g),f=/android/gi.test(g),b="zoom"in v.style&&!p&&(m||/Version\/[\d\.]+.*Safari/.test(g));var y={};Object.defineProperty(y,"__esModule",{value:!0});var w=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i)Object.prototype.hasOwnProperty.call(i,a)&&(e[a]=i[a])}return e},R=y.default=function(e){if(e){var t=function(e){return[].slice.call(e)},i=0,a=1,n=2,s=3,r=[],o=null,l="requestAnimationFrame"in e?function(){e.cancelAnimationFrame(o),o=e.requestAnimationFrame((function(){return c(r.filter((function(e){return e.dirty&&e.active})))}))}:function(){},d=function(e){return function(){r.forEach((function(t){return t.dirty=e})),l()}},c=function(e){e.filter((function(e){return!e.styleComputed})).forEach((function(e){e.styleComputed=v(e)})),e.filter(p).forEach(m);var t=e.filter(g);t.forEach(u),t.forEach((function(e){m(e),h(e)})),t.forEach(f)},h=function(e){return e.dirty=i},u=function(e){e.availableWidth=e.element.parentNode.clientWidth,e.currentWidth=e.element.scrollWidth,e.previousFontSize=e.currentFontSize,e.currentFontSize=Math.min(Math.max(e.minSize,e.availableWidth/e.currentWidth*e.previousFontSize),e.maxSize),e.whiteSpace=e.multiLine&&e.currentFontSize===e.minSize?"normal":"nowrap"},g=function(e){return e.dirty!==n||e.dirty===n&&e.element.parentNode.clientWidth!==e.availableWidth},v=function(t){var i=e.getComputedStyle(t.element,null);t.currentFontSize=parseFloat(i.getPropertyValue("font-size")),t.display=i.getPropertyValue("display"),t.whiteSpace=i.getPropertyValue("white-space")},p=function(e){var t=!1;return!e.preStyleTestCompleted&&(/inline-/.test(e.display)||(t=!0,e.display="inline-block"),"nowrap"!==e.whiteSpace&&(t=!0,e.whiteSpace="nowrap"),e.preStyleTestCompleted=!0,t)},m=function(e){e.element.style.whiteSpace=e.whiteSpace,e.element.style.display=e.display,e.element.style.fontSize=e.currentFontSize+"px"},f=function(e){e.element.dispatchEvent(new CustomEvent("fit",{detail:{oldValue:e.previousFontSize,newValue:e.currentFontSize,scaleFactor:e.currentFontSize/e.previousFontSize}}))},b=function(e,t){return function(){e.dirty=t,e.active&&l()}},y=function(e){return function(){r=r.filter((function(t){return t.element!==e.element})),e.observeMutations&&e.observer.disconnect(),e.element.style.whiteSpace=e.originalStyle.whiteSpace,e.element.style.display=e.originalStyle.display,e.element.style.fontSize=e.originalStyle.fontSize}},R=function(e){return function(){e.active||(e.active=!0,l())}},S=function(e){return function(){return e.active=!1}},A=function(e){e.observeMutations&&(e.observer=new MutationObserver(b(e,a)),e.observer.observe(e.element,e.observeMutations))},E={minSize:16,maxSize:512,multiLine:!0,observeMutations:"MutationObserver"in e&&{subtree:!0,childList:!0,characterData:!0}},k=null,L=function(){e.clearTimeout(k),k=e.setTimeout(d(n),P.observeWindowDelay)},x=["resize","orientationchange"];return Object.defineProperty(P,"observeWindow",{set:function(t){var i=(t?"add":"remove")+"EventListener";x.forEach((function(t){e[i](t,L)}))}}),P.observeWindow=!0,P.observeWindowDelay=100,P.fitAll=d(s),P}function C(e,t){var i=w({},E,t),a=e.map((function(e){var t=w({},i,{element:e,active:!0});return function(e){e.originalStyle={whiteSpace:e.element.style.whiteSpace,display:e.element.style.display,fontSize:e.element.style.fontSize},A(e),e.newbie=!0,e.dirty=!0,r.push(e)}(t),{element:e,fit:b(t,s),unfreeze:R(t),freeze:S(t),unsubscribe:y(t)}}));return l(),a}function P(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e?C(t(document.querySelectorAll(e)),i):C([e],i)[0]}}("undefined"==typeof window?null:window);class S{constructor(e){this.Reveal=e,this.startEmbeddedIframe=this.startEmbeddedIframe.bind(this)}shouldPreload(e){let t=this.Reveal.getConfig().preloadIframes;return"boolean"!=typeof t&&(t=e.hasAttribute("data-preload")),t}load(e,t={}){e.style.display=this.Reveal.getConfig().display,a(e,"img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((e=>{("IFRAME"!==e.tagName||this.shouldPreload(e))&&(e.setAttribute("src",e.getAttribute("data-src")),e.setAttribute("data-lazy-loaded",""),e.removeAttribute("data-src"))})),a(e,"video, audio").forEach((e=>{let t=0;a(e,"source[data-src]").forEach((e=>{e.setAttribute("src",e.getAttribute("data-src")),e.removeAttribute("data-src"),e.setAttribute("data-lazy-loaded",""),t+=1})),p&&"VIDEO"===e.tagName&&e.setAttribute("playsinline",""),t>0&&e.load()}));let i=e.slideBackgroundElement;if(i){i.style.display="block";let a=e.slideBackgroundContentElement,n=e.getAttribute("data-background-iframe");if(!1===i.hasAttribute("data-loaded")){i.setAttribute("data-loaded","true");let s=e.getAttribute("data-background-image"),r=e.getAttribute("data-background-video"),o=e.hasAttribute("data-background-video-loop"),l=e.hasAttribute("data-background-video-muted");if(s)/^data:/.test(s.trim())?a.style.backgroundImage=`url(${s.trim()})`:a.style.backgroundImage=s.split(",").map((e=>`url(${encodeURI(e.trim())})`)).join(",");else if(r&&!this.Reveal.isSpeakerNotes()){let e=document.createElement("video");o&&e.setAttribute("loop",""),l&&(e.muted=!0),p&&(e.muted=!0,e.setAttribute("playsinline","")),r.split(",").forEach((t=>{e.innerHTML+='<source src="'+t+'">'})),a.appendChild(e)}else if(n&&!0!==t.excludeIframes){let e=document.createElement("iframe");e.setAttribute("allowfullscreen",""),e.setAttribute("mozallowfullscreen",""),e.setAttribute("webkitallowfullscreen",""),e.setAttribute("allow","autoplay"),e.setAttribute("data-src",n),e.style.width="100%",e.style.height="100%",e.style.maxHeight="100%",e.style.maxWidth="100%",a.appendChild(e)}}let s=a.querySelector("iframe[data-src]");s&&this.shouldPreload(i)&&!/autoplay=(1|true|yes)/gi.test(n)&&s.getAttribute("src")!==n&&s.setAttribute("src",n)}this.layout(e)}layout(e){Array.from(e.querySelectorAll(".r-fit-text")).forEach((e=>{R(e,{minSize:24,maxSize:.8*this.Reveal.getConfig().height,observeMutations:!1,observeWindow:!1})}))}unload(e){e.style.display="none";let t=this.Reveal.getSlideBackground(e);t&&(t.style.display="none",a(t,"iframe[src]").forEach((e=>{e.removeAttribute("src")}))),a(e,"video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((e=>{e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")})),a(e,"video[data-lazy-loaded] source[src], audio source[src]").forEach((e=>{e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")}))}formatEmbeddedContent(){let e=(e,t,i)=>{a(this.Reveal.getSlidesElement(),"iframe["+e+'*="'+t+'"]').forEach((t=>{let a=t.getAttribute(e);a&&-1===a.indexOf(i)&&t.setAttribute(e,a+(/\?/.test(a)?"&":"?")+i)}))};e("src","youtube.com/embed/","enablejsapi=1"),e("data-src","youtube.com/embed/","enablejsapi=1"),e("src","player.vimeo.com/","api=1"),e("data-src","player.vimeo.com/","api=1")}startEmbeddedContent(e){e&&!this.Reveal.isSpeakerNotes()&&(a(e,'img[src$=".gif"]').forEach((e=>{e.setAttribute("src",e.getAttribute("src"))})),a(e,"video, audio").forEach((e=>{if(l(e,".fragment")&&!l(e,".fragment.visible"))return;let t=this.Reveal.getConfig().autoPlayMedia;if("boolean"!=typeof t&&(t=e.hasAttribute("data-autoplay")||!!l(e,".slide-background")),t&&"function"==typeof e.play)if(e.readyState>1)this.startEmbeddedMedia({target:e});else if(p){let t=e.play();t&&"function"==typeof t.catch&&!1===e.controls&&t.catch((()=>{e.controls=!0,e.addEventListener("play",(()=>{e.controls=!1}))}))}else e.removeEventListener("loadeddata",this.startEmbeddedMedia),e.addEventListener("loadeddata",this.startEmbeddedMedia)})),a(e,"iframe[src]").forEach((e=>{l(e,".fragment")&&!l(e,".fragment.visible")||this.startEmbeddedIframe({target:e})})),a(e,"iframe[data-src]").forEach((e=>{l(e,".fragment")&&!l(e,".fragment.visible")||e.getAttribute("src")!==e.getAttribute("data-src")&&(e.removeEventListener("load",this.startEmbeddedIframe),e.addEventListener("load",this.startEmbeddedIframe),e.setAttribute("src",e.getAttribute("data-src")))})))}startEmbeddedMedia(e){let t=!!l(e.target,"html"),i=!!l(e.target,".present");t&&i&&(e.target.currentTime=0,e.target.play()),e.target.removeEventListener("loadeddata",this.startEmbeddedMedia)}startEmbeddedIframe(e){let t=e.target;if(t&&t.contentWindow){let i=!!l(e.target,"html"),a=!!l(e.target,".present");if(i&&a){let e=this.Reveal.getConfig().autoPlayMedia;"boolean"!=typeof e&&(e=t.hasAttribute("data-autoplay")||!!l(t,".slide-background")),/youtube\.com\/embed\//.test(t.getAttribute("src"))&&e?t.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"):/player\.vimeo\.com\//.test(t.getAttribute("src"))&&e?t.contentWindow.postMessage('{"method":"play"}',"*"):t.contentWindow.postMessage("slide:start","*")}}}stopEmbeddedContent(e,t={}){t=i({unloadIframes:!0},t),e&&e.parentNode&&(a(e,"video, audio").forEach((e=>{e.hasAttribute("data-ignore")||"function"!=typeof e.pause||(e.setAttribute("data-paused-by-reveal",""),e.pause())})),a(e,"iframe").forEach((e=>{e.contentWindow&&e.contentWindow.postMessage("slide:stop","*"),e.removeEventListener("load",this.startEmbeddedIframe)})),a(e,'iframe[src*="youtube.com/embed/"]').forEach((e=>{!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")})),a(e,'iframe[src*="player.vimeo.com/"]').forEach((e=>{!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"method":"pause"}',"*")})),!0===t.unloadIframes&&a(e,"iframe[data-src]").forEach((e=>{e.setAttribute("src","about:blank"),e.removeAttribute("src")})))}}class A{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="slide-number",this.Reveal.getRevealElement().appendChild(this.element)}configure(e,t){let i="none";e.slideNumber&&!this.Reveal.isPrintingPDF()&&("all"===e.showSlideNumber||"speaker"===e.showSlideNumber&&this.Reveal.isSpeakerNotes())&&(i="block"),this.element.style.display=i}update(){this.Reveal.getConfig().slideNumber&&this.element&&(this.element.innerHTML=this.getSlideNumber())}getSlideNumber(e=this.Reveal.getCurrentSlide()){let t,i=this.Reveal.getConfig(),a="h.v";if("function"==typeof i.slideNumber)t=i.slideNumber(e);else{"string"==typeof i.slideNumber&&(a=i.slideNumber),/c/.test(a)||1!==this.Reveal.getHorizontalSlides().length||(a="c");let n=e&&"uncounted"===e.dataset.visibility?0:1;switch(t=[],a){case"c":t.push(this.Reveal.getSlidePastCount(e)+n);break;case"c/t":t.push(this.Reveal.getSlidePastCount(e)+n,"/",this.Reveal.getTotalSlides());break;default:let i=this.Reveal.getIndices(e);t.push(i.h+n);let s="h/v"===a?"/":".";this.Reveal.isVerticalSlide(e)&&t.push(s,i.v+1)}}let n="#"+this.Reveal.location.getHash(e);return this.formatNumber(t[0],t[1],t[2],n)}formatNumber(e,t,i,a="#"+this.Reveal.location.getHash()){return"number"!=typeof i||isNaN(i)?`<a href="${a}">\n\t\t\t\t\t<span class="slide-number-a">${e}</span>\n\t\t\t\t\t</a>`:`<a href="${a}">\n\t\t\t\t\t<span class="slide-number-a">${e}</span>\n\t\t\t\t\t<span class="slide-number-delimiter">${t}</span>\n\t\t\t\t\t<span class="slide-number-b">${i}</span>\n\t\t\t\t\t</a>`}}const E=e=>{let t=e.match(/^#([0-9a-f]{3})$/i);if(t&&t[1])return t=t[1],{r:17*parseInt(t.charAt(0),16),g:17*parseInt(t.charAt(1),16),b:17*parseInt(t.charAt(2),16)};let i=e.match(/^#([0-9a-f]{6})$/i);if(i&&i[1])return i=i[1],{r:parseInt(i.substr(0,2),16),g:parseInt(i.substr(2,2),16),b:parseInt(i.substr(4,2),16)};let a=e.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(a)return{r:parseInt(a[1],10),g:parseInt(a[2],10),b:parseInt(a[3],10)};let n=e.match(/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i);return n?{r:parseInt(n[1],10),g:parseInt(n[2],10),b:parseInt(n[3],10),a:parseFloat(n[4])}:null};class k{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="backgrounds",this.Reveal.getRevealElement().appendChild(this.element)}create(){this.element.innerHTML="",this.element.classList.add("no-transition"),this.Reveal.getHorizontalSlides().forEach((e=>{let t=this.createBackground(e,this.element);a(e,"section").forEach((e=>{this.createBackground(e,t),t.classList.add("stack")}))})),this.Reveal.getConfig().parallaxBackgroundImage?(this.element.style.backgroundImage='url("'+this.Reveal.getConfig().parallaxBackgroundImage+'")',this.element.style.backgroundSize=this.Reveal.getConfig().parallaxBackgroundSize,this.element.style.backgroundRepeat=this.Reveal.getConfig().parallaxBackgroundRepeat,this.element.style.backgroundPosition=this.Reveal.getConfig().parallaxBackgroundPosition,setTimeout((()=>{this.Reveal.getRevealElement().classList.add("has-parallax-background")}),1)):(this.element.style.backgroundImage="",this.Reveal.getRevealElement().classList.remove("has-parallax-background"))}createBackground(e,t){let i=document.createElement("div");i.className="slide-background "+e.className.replace(/present|past|future/,"");let a=document.createElement("div");return a.className="slide-background-content",i.appendChild(a),t.appendChild(i),e.slideBackgroundElement=i,e.slideBackgroundContentElement=a,this.sync(e),i}sync(e){const t=e.slideBackgroundElement,i=e.slideBackgroundContentElement,a={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundVideo:e.getAttribute("data-background-video"),backgroundIframe:e.getAttribute("data-background-iframe"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition"),backgroundOpacity:e.getAttribute("data-background-opacity")},n=e.hasAttribute("data-preload");e.classList.remove("has-dark-background"),e.classList.remove("has-light-background"),t.removeAttribute("data-loaded"),t.removeAttribute("data-background-hash"),t.removeAttribute("data-background-size"),t.removeAttribute("data-background-transition"),t.style.backgroundColor="",i.style.backgroundSize="",i.style.backgroundRepeat="",i.style.backgroundPosition="",i.style.backgroundImage="",i.style.opacity="",i.innerHTML="",a.background&&(/^(http|file|\/\/)/gi.test(a.background)||/\.(svg|png|jpg|jpeg|gif|bmp)([?#\s]|$)/gi.test(a.background)?e.setAttribute("data-background-image",a.background):t.style.background=a.background),(a.background||a.backgroundColor||a.backgroundImage||a.backgroundVideo||a.backgroundIframe)&&t.setAttribute("data-background-hash",a.background+a.backgroundSize+a.backgroundImage+a.backgroundVideo+a.backgroundIframe+a.backgroundColor+a.backgroundRepeat+a.backgroundPosition+a.backgroundTransition+a.backgroundOpacity),a.backgroundSize&&t.setAttribute("data-background-size",a.backgroundSize),a.backgroundColor&&(t.style.backgroundColor=a.backgroundColor),a.backgroundTransition&&t.setAttribute("data-background-transition",a.backgroundTransition),n&&t.setAttribute("data-preload",""),a.backgroundSize&&(i.style.backgroundSize=a.backgroundSize),a.backgroundRepeat&&(i.style.backgroundRepeat=a.backgroundRepeat),a.backgroundPosition&&(i.style.backgroundPosition=a.backgroundPosition),a.backgroundOpacity&&(i.style.opacity=a.backgroundOpacity);let s=a.backgroundColor;if(!s||!E(s)){let e=window.getComputedStyle(t);e&&e.backgroundColor&&(s=e.backgroundColor)}if(s){const t=E(s);t&&0!==t.a&&("string"==typeof(r=s)&&(r=E(r)),(r?(299*r.r+587*r.g+114*r.b)/1e3:null)<128?e.classList.add("has-dark-background"):e.classList.add("has-light-background"))}var r}update(e=!1){let t=this.Reveal.getCurrentSlide(),i=this.Reveal.getIndices(),n=null,s=this.Reveal.getConfig().rtl?"future":"past",r=this.Reveal.getConfig().rtl?"past":"future";if(Array.from(this.element.childNodes).forEach(((t,o)=>{t.classList.remove("past","present","future"),o<i.h?t.classList.add(s):o>i.h?t.classList.add(r):(t.classList.add("present"),n=t),(e||o===i.h)&&a(t,".slide-background").forEach(((e,t)=>{e.classList.remove("past","present","future"),t<i.v?e.classList.add("past"):t>i.v?e.classList.add("future"):(e.classList.add("present"),o===i.h&&(n=e))}))})),this.previousBackground&&this.Reveal.slideContent.stopEmbeddedContent(this.previousBackground,{unloadIframes:!this.Reveal.slideContent.shouldPreload(this.previousBackground)}),n){this.Reveal.slideContent.startEmbeddedContent(n);let e=n.querySelector(".slide-background-content");if(e){let t=e.style.backgroundImage||"";/\.gif/i.test(t)&&(e.style.backgroundImage="",window.getComputedStyle(e).opacity,e.style.backgroundImage=t)}let t=this.previousBackground?this.previousBackground.getAttribute("data-background-hash"):null,i=n.getAttribute("data-background-hash");i&&i===t&&n!==this.previousBackground&&this.element.classList.add("no-transition"),this.previousBackground=n}t&&["has-light-background","has-dark-background"].forEach((e=>{t.classList.contains(e)?this.Reveal.getRevealElement().classList.add(e):this.Reveal.getRevealElement().classList.remove(e)}),this),setTimeout((()=>{this.element.classList.remove("no-transition")}),1)}updateParallax(){let e=this.Reveal.getIndices();if(this.Reveal.getConfig().parallaxBackgroundImage){let t,i,a=this.Reveal.getHorizontalSlides(),n=this.Reveal.getVerticalSlides(),s=this.element.style.backgroundSize.split(" ");1===s.length?t=i=parseInt(s[0],10):(t=parseInt(s[0],10),i=parseInt(s[1],10));let r,o,l=this.element.offsetWidth,d=a.length;r="number"==typeof this.Reveal.getConfig().parallaxBackgroundHorizontal?this.Reveal.getConfig().parallaxBackgroundHorizontal:d>1?(t-l)/(d-1):0,o=r*e.h*-1;let c,h,u=this.element.offsetHeight,g=n.length;c="number"==typeof this.Reveal.getConfig().parallaxBackgroundVertical?this.Reveal.getConfig().parallaxBackgroundVertical:(i-u)/(g-1),h=g>0?c*e.v:0,this.element.style.backgroundPosition=o+"px "+-h+"px"}}}let L=0;class x{constructor(e){this.Reveal=e}run(e,t){this.reset();let i=this.Reveal.getSlides(),a=i.indexOf(t),n=i.indexOf(e);if(e.hasAttribute("data-auto-animate")&&t.hasAttribute("data-auto-animate")&&e.getAttribute("data-auto-animate-id")===t.getAttribute("data-auto-animate-id")&&!(a>n?t:e).hasAttribute("data-auto-animate-restart")){this.autoAnimateStyleSheet=this.autoAnimateStyleSheet||c();let i=this.getAutoAnimateOptions(t);e.dataset.autoAnimate="pending",t.dataset.autoAnimate="pending",i.slideDirection=a>n?"forward":"backward";let s=this.getAutoAnimatableElements(e,t).map((e=>this.autoAnimateElements(e.from,e.to,e.options||{},i,L++)));if("false"!==t.dataset.autoAnimateUnmatched&&!0===this.Reveal.getConfig().autoAnimateUnmatched){let e=.8*i.duration,a=.2*i.duration;this.getUnmatchedAutoAnimateElements(t).forEach((e=>{let t=this.getAutoAnimateOptions(e,i),a="unmatched";t.duration===i.duration&&t.delay===i.delay||(a="unmatched-"+L++,s.push(`[data-auto-animate="running"] [data-auto-animate-target="${a}"] { transition: opacity ${t.duration}s ease ${t.delay}s; }`)),e.dataset.autoAnimateTarget=a}),this),s.push(`[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity ${e}s ease ${a}s; }`)}this.autoAnimateStyleSheet.innerHTML=s.join(""),requestAnimationFrame((()=>{this.autoAnimateStyleSheet&&(getComputedStyle(this.autoAnimateStyleSheet).fontWeight,t.dataset.autoAnimate="running")})),this.Reveal.dispatchEvent({type:"autoanimate",data:{fromSlide:e,toSlide:t,sheet:this.autoAnimateStyleSheet}})}}reset(){a(this.Reveal.getRevealElement(),'[data-auto-animate]:not([data-auto-animate=""])').forEach((e=>{e.dataset.autoAnimate=""})),a(this.Reveal.getRevealElement(),"[data-auto-animate-target]").forEach((e=>{delete e.dataset.autoAnimateTarget})),this.autoAnimateStyleSheet&&this.autoAnimateStyleSheet.parentNode&&(this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet),this.autoAnimateStyleSheet=null)}autoAnimateElements(e,i,a,n,s){e.dataset.autoAnimateTarget="",i.dataset.autoAnimateTarget=s;let r=this.getAutoAnimateOptions(i,n);void 0!==a.delay&&(r.delay=a.delay),void 0!==a.duration&&(r.duration=a.duration),void 0!==a.easing&&(r.easing=a.easing);let o=this.getAutoAnimatableProperties("from",e,a),l=this.getAutoAnimatableProperties("to",i,a);if(i.classList.contains("fragment")&&(delete l.styles.opacity,e.classList.contains("fragment"))){(e.className.match(t)||[""])[0]===(i.className.match(t)||[""])[0]&&"forward"===n.slideDirection&&i.classList.add("visible","disabled")}if(!1!==a.translate||!1!==a.scale){let e=this.Reveal.getScale(),t={x:(o.x-l.x)/e,y:(o.y-l.y)/e,scaleX:o.width/l.width,scaleY:o.height/l.height};t.x=Math.round(1e3*t.x)/1e3,t.y=Math.round(1e3*t.y)/1e3,t.scaleX=Math.round(1e3*t.scaleX)/1e3,t.scaleX=Math.round(1e3*t.scaleX)/1e3;let i=!1!==a.translate&&(0!==t.x||0!==t.y),n=!1!==a.scale&&(0!==t.scaleX||0!==t.scaleY);if(i||n){let e=[];i&&e.push(`translate(${t.x}px, ${t.y}px)`),n&&e.push(`scale(${t.scaleX}, ${t.scaleY})`),o.styles.transform=e.join(" "),o.styles["transform-origin"]="top left",l.styles.transform="none"}}for(let e in l.styles){const t=l.styles[e],i=o.styles[e];t===i?delete l.styles[e]:(!0===t.explicitValue&&(l.styles[e]=t.value),!0===i.explicitValue&&(o.styles[e]=i.value))}let d="",c=Object.keys(l.styles);if(c.length>0){o.styles.transition="none",l.styles.transition=`all ${r.duration}s ${r.easing} ${r.delay}s`,l.styles["transition-property"]=c.join(", "),l.styles["will-change"]=c.join(", "),d='[data-auto-animate-target="'+s+'"] {'+Object.keys(o.styles).map((e=>e+": "+o.styles[e]+" !important;")).join("")+'}[data-auto-animate="running"] [data-auto-animate-target="'+s+'"] {'+Object.keys(l.styles).map((e=>e+": "+l.styles[e]+" !important;")).join("")+"}"}return d}getAutoAnimateOptions(e,t){let a={easing:this.Reveal.getConfig().autoAnimateEasing,duration:this.Reveal.getConfig().autoAnimateDuration,delay:0};if(a=i(a,t),e.parentNode){let t=l(e.parentNode,"[data-auto-animate-target]");t&&(a=this.getAutoAnimateOptions(t,a))}return e.dataset.autoAnimateEasing&&(a.easing=e.dataset.autoAnimateEasing),e.dataset.autoAnimateDuration&&(a.duration=parseFloat(e.dataset.autoAnimateDuration)),e.dataset.autoAnimateDelay&&(a.delay=parseFloat(e.dataset.autoAnimateDelay)),a}getAutoAnimatableProperties(e,t,i){let a=this.Reveal.getConfig(),n={styles:[]};if(!1!==i.translate||!1!==i.scale){let e;if("function"==typeof i.measure)e=i.measure(t);else if(a.center)e=t.getBoundingClientRect();else{let i=this.Reveal.getScale();e={x:t.offsetLeft*i,y:t.offsetTop*i,width:t.offsetWidth*i,height:t.offsetHeight*i}}n.x=e.x,n.y=e.y,n.width=e.width,n.height=e.height}const s=getComputedStyle(t);return(i.styles||a.autoAnimateStyles).forEach((t=>{let i;"string"==typeof t&&(t={property:t}),i=void 0!==t.from&&"from"===e?{value:t.from,explicitValue:!0}:void 0!==t.to&&"to"===e?{value:t.to,explicitValue:!0}:s[t.property],""!==i&&(n.styles[t.property]=i)})),n}getAutoAnimatableElements(e,t){let i=("function"==typeof this.Reveal.getConfig().autoAnimateMatcher?this.Reveal.getConfig().autoAnimateMatcher:this.getAutoAnimatePairs).call(this,e,t),a=[];return i.filter(((e,t)=>{if(-1===a.indexOf(e.to))return a.push(e.to),!0}))}getAutoAnimatePairs(e,t){let i=[];const a="h1, h2, h3, h4, h5, h6, p, li";return this.findAutoAnimateMatches(i,e,t,"[data-id]",(e=>e.nodeName+":::"+e.getAttribute("data-id"))),this.findAutoAnimateMatches(i,e,t,a,(e=>e.nodeName+":::"+e.innerText)),this.findAutoAnimateMatches(i,e,t,"img, video, iframe",(e=>e.nodeName+":::"+(e.getAttribute("src")||e.getAttribute("data-src")))),this.findAutoAnimateMatches(i,e,t,"pre",(e=>e.nodeName+":::"+e.innerText)),i.forEach((e=>{o(e.from,a)?e.options={scale:!1}:o(e.from,"pre")&&(e.options={scale:!1,styles:["width","height"]},this.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-code",(e=>e.textContent),{scale:!1,styles:[],measure:this.getLocalBoundingBox.bind(this)}),this.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-line[data-line-number]",(e=>e.getAttribute("data-line-number")),{scale:!1,styles:["width"],measure:this.getLocalBoundingBox.bind(this)}))}),this),i}getLocalBoundingBox(e){const t=this.Reveal.getScale();return{x:Math.round(e.offsetLeft*t*100)/100,y:Math.round(e.offsetTop*t*100)/100,width:Math.round(e.offsetWidth*t*100)/100,height:Math.round(e.offsetHeight*t*100)/100}}findAutoAnimateMatches(e,t,i,a,n,s){let r={},o={};[].slice.call(t.querySelectorAll(a)).forEach(((e,t)=>{const i=n(e);"string"==typeof i&&i.length&&(r[i]=r[i]||[],r[i].push(e))})),[].slice.call(i.querySelectorAll(a)).forEach(((t,i)=>{const a=n(t);let l;if(o[a]=o[a]||[],o[a].push(t),r[a]){const e=o[a].length-1,t=r[a].length-1;r[a][e]?(l=r[a][e],r[a][e]=null):r[a][t]&&(l=r[a][t],r[a][t]=null)}l&&e.push({from:l,to:t,options:s})}))}getUnmatchedAutoAnimateElements(e){return[].slice.call(e.children).reduce(((e,t)=>{const i=t.querySelector("[data-auto-animate-target]");return t.hasAttribute("data-auto-animate-target")||i||e.push(t),t.querySelector("[data-auto-animate-target]")&&(e=e.concat(this.getUnmatchedAutoAnimateElements(t))),e}),[])}}class C{constructor(e){this.Reveal=e}configure(e,t){!1===e.fragments?this.disable():!1===t.fragments&&this.enable()}disable(){a(this.Reveal.getSlidesElement(),".fragment").forEach((e=>{e.classList.add("visible"),e.classList.remove("current-fragment")}))}enable(){a(this.Reveal.getSlidesElement(),".fragment").forEach((e=>{e.classList.remove("visible"),e.classList.remove("current-fragment")}))}availableRoutes(){let e=this.Reveal.getCurrentSlide();if(e&&this.Reveal.getConfig().fragments){let t=e.querySelectorAll(".fragment:not(.disabled)"),i=e.querySelectorAll(".fragment:not(.disabled):not(.visible)");return{prev:t.length-i.length>0,next:!!i.length}}return{prev:!1,next:!1}}sort(e,t=!1){e=Array.from(e);let i=[],a=[],n=[];e.forEach((e=>{if(e.hasAttribute("data-fragment-index")){let t=parseInt(e.getAttribute("data-fragment-index"),10);i[t]||(i[t]=[]),i[t].push(e)}else a.push([e])})),i=i.concat(a);let s=0;return i.forEach((e=>{e.forEach((e=>{n.push(e),e.setAttribute("data-fragment-index",s)})),s++})),!0===t?i:n}sortAll(){this.Reveal.getHorizontalSlides().forEach((e=>{let t=a(e,"section");t.forEach(((e,t)=>{this.sort(e.querySelectorAll(".fragment"))}),this),0===t.length&&this.sort(e.querySelectorAll(".fragment"))}))}update(e,t){let i={shown:[],hidden:[]},a=this.Reveal.getCurrentSlide();if(a&&this.Reveal.getConfig().fragments&&(t=t||this.sort(a.querySelectorAll(".fragment"))).length){let n=0;if("number"!=typeof e){let t=this.sort(a.querySelectorAll(".fragment.visible")).pop();t&&(e=parseInt(t.getAttribute("data-fragment-index")||0,10))}Array.from(t).forEach(((t,a)=>{if(t.hasAttribute("data-fragment-index")&&(a=parseInt(t.getAttribute("data-fragment-index"),10)),n=Math.max(n,a),a<=e){let n=t.classList.contains("visible");t.classList.add("visible"),t.classList.remove("current-fragment"),a===e&&(this.Reveal.announceStatus(this.Reveal.getStatusText(t)),t.classList.add("current-fragment"),this.Reveal.slideContent.startEmbeddedContent(t)),n||(i.shown.push(t),this.Reveal.dispatchEvent({target:t,type:"visible",bubbles:!1}))}else{let e=t.classList.contains("visible");t.classList.remove("visible"),t.classList.remove("current-fragment"),e&&(this.Reveal.slideContent.stopEmbeddedContent(t),i.hidden.push(t),this.Reveal.dispatchEvent({target:t,type:"hidden",bubbles:!1}))}})),e="number"==typeof e?e:-1,e=Math.max(Math.min(e,n),-1),a.setAttribute("data-fragment",e)}return i}sync(e=this.Reveal.getCurrentSlide()){return this.sort(e.querySelectorAll(".fragment"))}goto(e,t=0){let i=this.Reveal.getCurrentSlide();if(i&&this.Reveal.getConfig().fragments){let a=this.sort(i.querySelectorAll(".fragment:not(.disabled)"));if(a.length){if("number"!=typeof e){let t=this.sort(i.querySelectorAll(".fragment:not(.disabled).visible")).pop();e=t?parseInt(t.getAttribute("data-fragment-index")||0,10):-1}e+=t;let n=this.update(e,a);return n.hidden.length&&this.Reveal.dispatchEvent({type:"fragmenthidden",data:{fragment:n.hidden[0],fragments:n.hidden}}),n.shown.length&&this.Reveal.dispatchEvent({type:"fragmentshown",data:{fragment:n.shown[0],fragments:n.shown}}),this.Reveal.controls.update(),this.Reveal.progress.update(),this.Reveal.getConfig().fragmentInURL&&this.Reveal.location.writeURL(),!(!n.shown.length&&!n.hidden.length)}}return!1}next(){return this.goto(null,1)}prev(){return this.goto(null,-1)}}class P{constructor(e){this.Reveal=e,this.active=!1,this.onSlideClicked=this.onSlideClicked.bind(this)}activate(){if(this.Reveal.getConfig().overview&&!this.isActive()){this.active=!0,this.Reveal.getRevealElement().classList.add("overview"),this.Reveal.cancelAutoSlide(),this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()),a(this.Reveal.getRevealElement(),".slides section").forEach((e=>{e.classList.contains("stack")||e.addEventListener("click",this.onSlideClicked,!0)}));const e=70,t=this.Reveal.getComputedSlideSize();this.overviewSlideWidth=t.width+e,this.overviewSlideHeight=t.height+e,this.Reveal.getConfig().rtl&&(this.overviewSlideWidth=-this.overviewSlideWidth),this.Reveal.updateSlidesVisibility(),this.layout(),this.update(),this.Reveal.layout();const i=this.Reveal.getIndices();this.Reveal.dispatchEvent({type:"overviewshown",data:{indexh:i.h,indexv:i.v,currentSlide:this.Reveal.getCurrentSlide()}})}}layout(){this.Reveal.getHorizontalSlides().forEach(((e,t)=>{e.setAttribute("data-index-h",t),r(e,"translate3d("+t*this.overviewSlideWidth+"px, 0, 0)"),e.classList.contains("stack")&&a(e,"section").forEach(((e,i)=>{e.setAttribute("data-index-h",t),e.setAttribute("data-index-v",i),r(e,"translate3d(0, "+i*this.overviewSlideHeight+"px, 0)")}))})),Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach(((e,t)=>{r(e,"translate3d("+t*this.overviewSlideWidth+"px, 0, 0)"),a(e,".slide-background").forEach(((e,t)=>{r(e,"translate3d(0, "+t*this.overviewSlideHeight+"px, 0)")}))}))}update(){const e=Math.min(window.innerWidth,window.innerHeight),t=Math.max(e/5,150)/e,i=this.Reveal.getIndices();this.Reveal.transformSlides({overview:["scale("+t+")","translateX("+-i.h*this.overviewSlideWidth+"px)","translateY("+-i.v*this.overviewSlideHeight+"px)"].join(" ")})}deactivate(){if(this.Reveal.getConfig().overview){this.active=!1,this.Reveal.getRevealElement().classList.remove("overview"),this.Reveal.getRevealElement().classList.add("overview-deactivating"),setTimeout((()=>{this.Reveal.getRevealElement().classList.remove("overview-deactivating")}),1),this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()),a(this.Reveal.getRevealElement(),".slides section").forEach((e=>{r(e,""),e.removeEventListener("click",this.onSlideClicked,!0)})),a(this.Reveal.getBackgroundsElement(),".slide-background").forEach((e=>{r(e,"")})),this.Reveal.transformSlides({overview:""});const e=this.Reveal.getIndices();this.Reveal.slide(e.h,e.v),this.Reveal.layout(),this.Reveal.cueAutoSlide(),this.Reveal.dispatchEvent({type:"overviewhidden",data:{indexh:e.h,indexv:e.v,currentSlide:this.Reveal.getCurrentSlide()}})}}toggle(e){"boolean"==typeof e?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}isActive(){return this.active}onSlideClicked(e){if(this.isActive()){e.preventDefault();let t=e.target;for(;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(this.deactivate(),t.nodeName.match(/section/gi))){let e=parseInt(t.getAttribute("data-index-h"),10),i=parseInt(t.getAttribute("data-index-v"),10);this.Reveal.slide(e,i)}}}}class N{constructor(e){this.Reveal=e,this.shortcuts={},this.bindings={},this.onDocumentKeyDown=this.onDocumentKeyDown.bind(this),this.onDocumentKeyPress=this.onDocumentKeyPress.bind(this)}configure(e,t){"linear"===e.navigationMode?(this.shortcuts["→ , ↓ , SPACE , N , L , J"]="Next slide",this.shortcuts["← , ↑ , P , H , K"]="Previous slide"):(this.shortcuts["N , SPACE"]="Next slide",this.shortcuts["P , Shift SPACE"]="Previous slide",this.shortcuts["← , H"]="Navigate left",this.shortcuts["→ , L"]="Navigate right",this.shortcuts["↑ , K"]="Navigate up",this.shortcuts["↓ , J"]="Navigate down"),this.shortcuts["Alt + ←/↑/→/↓"]="Navigate without fragments",this.shortcuts["Shift + ←/↑/→/↓"]="Jump to first/last slide",this.shortcuts["B , ."]="Pause",this.shortcuts.F="Fullscreen",this.shortcuts["ESC, O"]="Slide overview"}bind(){document.addEventListener("keydown",this.onDocumentKeyDown,!1),document.addEventListener("keypress",this.onDocumentKeyPress,!1)}unbind(){document.removeEventListener("keydown",this.onDocumentKeyDown,!1),document.removeEventListener("keypress",this.onDocumentKeyPress,!1)}addKeyBinding(e,t){"object"==typeof e&&e.keyCode?this.bindings[e.keyCode]={callback:t,key:e.key,description:e.description}:this.bindings[e]={callback:t,key:null,description:null}}removeKeyBinding(e){delete this.bindings[e]}triggerKey(e){this.onDocumentKeyDown({keyCode:e})}registerKeyboardShortcut(e,t){this.shortcuts[e]=t}getShortcuts(){return this.shortcuts}getBindings(){return this.bindings}onDocumentKeyPress(e){e.shiftKey&&63===e.charCode&&this.Reveal.toggleHelp()}onDocumentKeyDown(e){let t=this.Reveal.getConfig();if("function"==typeof t.keyboardCondition&&!1===t.keyboardCondition(e))return!0;if("focused"===t.keyboardCondition&&!this.Reveal.isFocused())return!0;let i=e.keyCode,a=!this.Reveal.isAutoSliding();this.Reveal.onUserInput(e);let n=document.activeElement&&!0===document.activeElement.isContentEditable,s=document.activeElement&&document.activeElement.tagName&&/input|textarea/i.test(document.activeElement.tagName),r=document.activeElement&&document.activeElement.className&&/speaker-notes/i.test(document.activeElement.className),o=!(-1!==[32,37,38,39,40,78,80].indexOf(e.keyCode)&&e.shiftKey||e.altKey)&&(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey);if(n||s||r||o)return;let l,d=[66,86,190,191];if("object"==typeof t.keyboard)for(l in t.keyboard)"togglePause"===t.keyboard[l]&&d.push(parseInt(l,10));if(this.Reveal.isPaused()&&-1===d.indexOf(i))return!1;let c="linear"===t.navigationMode||!this.Reveal.hasHorizontalSlides()||!this.Reveal.hasVerticalSlides(),h=!1;if("object"==typeof t.keyboard)for(l in t.keyboard)if(parseInt(l,10)===i){let i=t.keyboard[l];"function"==typeof i?i.apply(null,[e]):"string"==typeof i&&"function"==typeof this.Reveal[i]&&this.Reveal[i].call(),h=!0}if(!1===h)for(l in this.bindings)if(parseInt(l,10)===i){let t=this.bindings[l].callback;"function"==typeof t?t.apply(null,[e]):"string"==typeof t&&"function"==typeof this.Reveal[t]&&this.Reveal[t].call(),h=!0}!1===h&&(h=!0,80===i||33===i?this.Reveal.prev({skipFragments:e.altKey}):78===i||34===i?this.Reveal.next({skipFragments:e.altKey}):72===i||37===i?e.shiftKey?this.Reveal.slide(0):!this.Reveal.overview.isActive()&&c?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.left({skipFragments:e.altKey}):76===i||39===i?e.shiftKey?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):!this.Reveal.overview.isActive()&&c?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.right({skipFragments:e.altKey}):75===i||38===i?e.shiftKey?this.Reveal.slide(void 0,0):!this.Reveal.overview.isActive()&&c?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.up({skipFragments:e.altKey}):74===i||40===i?e.shiftKey?this.Reveal.slide(void 0,Number.MAX_VALUE):!this.Reveal.overview.isActive()&&c?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.down({skipFragments:e.altKey}):36===i?this.Reveal.slide(0):35===i?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):32===i?(this.Reveal.overview.isActive()&&this.Reveal.overview.deactivate(),e.shiftKey?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.next({skipFragments:e.altKey})):58===i||59===i||66===i||86===i||190===i||191===i?this.Reveal.togglePause():70===i?(e=>{let t=(e=e||document.documentElement).requestFullscreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen;t&&t.apply(e)})(t.embedded?this.Reveal.getViewportElement():document.documentElement):65===i?t.autoSlideStoppable&&this.Reveal.toggleAutoSlide(a):h=!1),h?e.preventDefault&&e.preventDefault():27!==i&&79!==i||(!1===this.Reveal.closeOverlay()&&this.Reveal.overview.toggle(),e.preventDefault&&e.preventDefault()),this.Reveal.cueAutoSlide()}}class M{constructor(e){this.Reveal=e,this.writeURLTimeout=0,this.onWindowHashChange=this.onWindowHashChange.bind(this)}bind(){window.addEventListener("hashchange",this.onWindowHashChange,!1)}unbind(){window.removeEventListener("hashchange",this.onWindowHashChange,!1)}getIndicesFromHash(e=window.location.hash){let t=e.replace(/^#\/?/,""),i=t.split("/");if(/^[0-9]*$/.test(i[0])||!t.length){const e=this.Reveal.getConfig();let t,a=e.hashOneBasedIndex?1:0,n=parseInt(i[0],10)-a||0,s=parseInt(i[1],10)-a||0;return e.fragmentInURL&&(t=parseInt(i[2],10),isNaN(t)&&(t=void 0)),{h:n,v:s,f:t}}{let e,i;/\/[-\d]+$/g.test(t)&&(i=parseInt(t.split("/").pop(),10),i=isNaN(i)?void 0:i,t=t.split("/").shift());try{e=document.getElementById(decodeURIComponent(t))}catch(e){}if(e)return{...this.Reveal.getIndices(e),f:i}}return null}readURL(){const e=this.Reveal.getIndices(),t=this.getIndicesFromHash();!t||t.h===e.h&&t.v===e.v&&void 0===t.f?this.Reveal.slide(e.h||0,e.v||0):this.Reveal.slide(t.h,t.v,t.f)}writeURL(e){let t=this.Reveal.getConfig(),i=this.Reveal.getCurrentSlide();if(clearTimeout(this.writeURLTimeout),"number"==typeof e)this.writeURLTimeout=setTimeout(this.writeURL,e);else if(i){let e=this.getHash();t.history?window.location.hash=e:t.hash&&("/"===e?window.history.replaceState(null,null,window.location.pathname+window.location.search):window.history.replaceState(null,null,"#"+e))}}getHash(e){let t="/",i=e||this.Reveal.getCurrentSlide(),a=i?i.getAttribute("id"):null;a&&(a=encodeURIComponent(a));let n=this.Reveal.getIndices(e);if(this.Reveal.getConfig().fragmentInURL||(n.f=void 0),"string"==typeof a&&a.length)t="/"+a,n.f>=0&&(t+="/"+n.f);else{let e=this.Reveal.getConfig().hashOneBasedIndex?1:0;(n.h>0||n.v>0||n.f>=0)&&(t+=n.h+e),(n.v>0||n.f>=0)&&(t+="/"+(n.v+e)),n.f>=0&&(t+="/"+n.f)}return t}onWindowHashChange(e){this.readURL()}}class D{constructor(e){this.Reveal=e,this.onNavigateLeftClicked=this.onNavigateLeftClicked.bind(this),this.onNavigateRightClicked=this.onNavigateRightClicked.bind(this),this.onNavigateUpClicked=this.onNavigateUpClicked.bind(this),this.onNavigateDownClicked=this.onNavigateDownClicked.bind(this),this.onNavigatePrevClicked=this.onNavigatePrevClicked.bind(this),this.onNavigateNextClicked=this.onNavigateNextClicked.bind(this)}render(){const e=this.Reveal.getConfig().rtl,t=this.Reveal.getRevealElement();this.element=document.createElement("aside"),this.element.className="controls",this.element.innerHTML=`<button class="navigate-left" aria-label="${e?"next slide":"previous slide"}"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-right" aria-label="${e?"previous slide":"next slide"}"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>`,this.Reveal.getRevealElement().appendChild(this.element),this.controlsLeft=a(t,".navigate-left"),this.controlsRight=a(t,".navigate-right"),this.controlsUp=a(t,".navigate-up"),this.controlsDown=a(t,".navigate-down"),this.controlsPrev=a(t,".navigate-prev"),this.controlsNext=a(t,".navigate-next"),this.controlsRightArrow=this.element.querySelector(".navigate-right"),this.controlsLeftArrow=this.element.querySelector(".navigate-left"),this.controlsDownArrow=this.element.querySelector(".navigate-down")}configure(e,t){this.element.style.display=e.controls?"block":"none",this.element.setAttribute("data-controls-layout",e.controlsLayout),this.element.setAttribute("data-controls-back-arrows",e.controlsBackArrows)}bind(){let e=["touchstart","click"];f&&(e=["touchstart"]),e.forEach((e=>{this.controlsLeft.forEach((t=>t.addEventListener(e,this.onNavigateLeftClicked,!1))),this.controlsRight.forEach((t=>t.addEventListener(e,this.onNavigateRightClicked,!1))),this.controlsUp.forEach((t=>t.addEventListener(e,this.onNavigateUpClicked,!1))),this.controlsDown.forEach((t=>t.addEventListener(e,this.onNavigateDownClicked,!1))),this.controlsPrev.forEach((t=>t.addEventListener(e,this.onNavigatePrevClicked,!1))),this.controlsNext.forEach((t=>t.addEventListener(e,this.onNavigateNextClicked,!1)))}))}unbind(){["touchstart","click"].forEach((e=>{this.controlsLeft.forEach((t=>t.removeEventListener(e,this.onNavigateLeftClicked,!1))),this.controlsRight.forEach((t=>t.removeEventListener(e,this.onNavigateRightClicked,!1))),this.controlsUp.forEach((t=>t.removeEventListener(e,this.onNavigateUpClicked,!1))),this.controlsDown.forEach((t=>t.removeEventListener(e,this.onNavigateDownClicked,!1))),this.controlsPrev.forEach((t=>t.removeEventListener(e,this.onNavigatePrevClicked,!1))),this.controlsNext.forEach((t=>t.removeEventListener(e,this.onNavigateNextClicked,!1)))}))}update(){let e=this.Reveal.availableRoutes();[...this.controlsLeft,...this.controlsRight,...this.controlsUp,...this.controlsDown,...this.controlsPrev,...this.controlsNext].forEach((e=>{e.classList.remove("enabled","fragmented"),e.setAttribute("disabled","disabled")})),e.left&&this.controlsLeft.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")})),e.right&&this.controlsRight.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")})),e.up&&this.controlsUp.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")})),e.down&&this.controlsDown.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.left||e.up)&&this.controlsPrev.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.right||e.down)&&this.controlsNext.forEach((e=>{e.classList.add("enabled"),e.removeAttribute("disabled")}));let t=this.Reveal.getCurrentSlide();if(t){let e=this.Reveal.fragments.availableRoutes();e.prev&&this.controlsPrev.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),e.next&&this.controlsNext.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),this.Reveal.isVerticalSlide(t)?(e.prev&&this.controlsUp.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),e.next&&this.controlsDown.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")}))):(e.prev&&this.controlsLeft.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),e.next&&this.controlsRight.forEach((e=>{e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})))}if(this.Reveal.getConfig().controlsTutorial){let t=this.Reveal.getIndices();!this.Reveal.hasNavigatedVertically()&&e.down?this.controlsDownArrow.classList.add("highlight"):(this.controlsDownArrow.classList.remove("highlight"),this.Reveal.getConfig().rtl?!this.Reveal.hasNavigatedHorizontally()&&e.left&&0===t.v?this.controlsLeftArrow.classList.add("highlight"):this.controlsLeftArrow.classList.remove("highlight"):!this.Reveal.hasNavigatedHorizontally()&&e.right&&0===t.v?this.controlsRightArrow.classList.add("highlight"):this.controlsRightArrow.classList.remove("highlight"))}}onNavigateLeftClicked(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.prev():this.Reveal.left()}onNavigateRightClicked(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.next():this.Reveal.right()}onNavigateUpClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.up()}onNavigateDownClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.down()}onNavigatePrevClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.prev()}onNavigateNextClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.next()}}class I{constructor(e){this.Reveal=e,this.onProgressClicked=this.onProgressClicked.bind(this)}render(){this.element=document.createElement("div"),this.element.className="progress",this.Reveal.getRevealElement().appendChild(this.element),this.bar=document.createElement("span"),this.element.appendChild(this.bar)}configure(e,t){this.element.style.display=e.progress?"block":"none"}bind(){this.Reveal.getConfig().progress&&this.element&&this.element.addEventListener("click",this.onProgressClicked,!1)}unbind(){this.Reveal.getConfig().progress&&this.element&&this.element.removeEventListener("click",this.onProgressClicked,!1)}update(){if(this.Reveal.getConfig().progress&&this.bar){let e=this.Reveal.getProgress();this.Reveal.getTotalSlides()<2&&(e=0),this.bar.style.transform="scaleX("+e+")"}}getMaxWidth(){return this.Reveal.getRevealElement().offsetWidth}onProgressClicked(e){this.Reveal.onUserInput(e),e.preventDefault();let t=this.Reveal.getSlides(),i=t.length,a=Math.floor(e.clientX/this.getMaxWidth()*i);this.Reveal.getConfig().rtl&&(a=i-a);let n=this.Reveal.getIndices(t[a]);this.Reveal.slide(n.h,n.v)}}class T{constructor(e){this.Reveal=e,this.lastMouseWheelStep=0,this.cursorHidden=!1,this.cursorInactiveTimeout=0,this.onDocumentCursorActive=this.onDocumentCursorActive.bind(this),this.onDocumentMouseScroll=this.onDocumentMouseScroll.bind(this)}configure(e,t){e.mouseWheel?(document.addEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.addEventListener("mousewheel",this.onDocumentMouseScroll,!1)):(document.removeEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.removeEventListener("mousewheel",this.onDocumentMouseScroll,!1)),e.hideInactiveCursor?(document.addEventListener("mousemove",this.onDocumentCursorActive,!1),document.addEventListener("mousedown",this.onDocumentCursorActive,!1)):(this.showCursor(),document.removeEventListener("mousemove",this.onDocumentCursorActive,!1),document.removeEventListener("mousedown",this.onDocumentCursorActive,!1))}showCursor(){this.cursorHidden&&(this.cursorHidden=!1,this.Reveal.getRevealElement().style.cursor="")}hideCursor(){!1===this.cursorHidden&&(this.cursorHidden=!0,this.Reveal.getRevealElement().style.cursor="none")}onDocumentCursorActive(e){this.showCursor(),clearTimeout(this.cursorInactiveTimeout),this.cursorInactiveTimeout=setTimeout(this.hideCursor.bind(this),this.Reveal.getConfig().hideCursorTime)}onDocumentMouseScroll(e){if(Date.now()-this.lastMouseWheelStep>1e3){this.lastMouseWheelStep=Date.now();let t=e.detail||-e.wheelDelta;t>0?this.Reveal.next():t<0&&this.Reveal.prev()}}}const z=(e,t)=>{const i=document.createElement("script");i.type="text/javascript",i.async=!1,i.defer=!1,i.src=e,"function"==typeof t&&(i.onload=i.onreadystatechange=e=>{("load"===e.type||/loaded|complete/.test(i.readyState))&&(i.onload=i.onreadystatechange=i.onerror=null,t())},i.onerror=e=>{i.onload=i.onreadystatechange=i.onerror=null,t(new Error("Failed loading script: "+i.src+"\n"+e))});const a=document.querySelector("head");a.insertBefore(i,a.lastChild)};class F{constructor(e){this.Reveal=e,this.state="idle",this.registeredPlugins={},this.asyncDependencies=[]}load(e,t){return this.state="loading",e.forEach(this.registerPlugin.bind(this)),new Promise((e=>{let i=[],a=0;if(t.forEach((e=>{e.condition&&!e.condition()||(e.async?this.asyncDependencies.push(e):i.push(e))})),i.length){a=i.length;const t=t=>{t&&"function"==typeof t.callback&&t.callback(),0==--a&&this.initPlugins().then(e)};i.forEach((e=>{"string"==typeof e.id?(this.registerPlugin(e),t(e)):"string"==typeof e.src?z(e.src,(()=>t(e))):(console.warn("Unrecognized plugin format",e),t())}))}else this.initPlugins().then(e)}))}initPlugins(){return new Promise((e=>{let t=Object.values(this.registeredPlugins),i=t.length;if(0===i)this.loadAsync().then(e);else{let a,n=()=>{0==--i?this.loadAsync().then(e):a()},s=0;a=()=>{let e=t[s++];if("function"==typeof e.init){let t=e.init(this.Reveal);t&&"function"==typeof t.then?t.then(n):n()}else n()},a()}}))}loadAsync(){return this.state="loaded",this.asyncDependencies.length&&this.asyncDependencies.forEach((e=>{z(e.src,e.callback)})),Promise.resolve()}registerPlugin(e){2===arguments.length&&"string"==typeof arguments[0]?(e=arguments[1]).id=arguments[0]:"function"==typeof e&&(e=e());let t=e.id;"string"!=typeof t?console.warn("Unrecognized plugin format; can't find plugin.id",e):void 0===this.registeredPlugins[t]?(this.registeredPlugins[t]=e,"loaded"===this.state&&"function"==typeof e.init&&e.init(this.Reveal)):console.warn('reveal.js: "'+t+'" plugin has already been registered')}hasPlugin(e){return!!this.registeredPlugins[e]}getPlugin(e){return this.registeredPlugins[e]}getRegisteredPlugins(){return this.registeredPlugins}}class H{constructor(e){this.Reveal=e}async setupPDF(){const e=this.Reveal.getConfig(),t=a(this.Reveal.getRevealElement(),".slides section"),i=e.slideNumber&&/all|print/i.test(e.showSlideNumber),n=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),s=Math.floor(n.width*(1+e.margin)),r=Math.floor(n.height*(1+e.margin)),o=n.width,l=n.height;await new Promise(requestAnimationFrame),c("@page{size:"+s+"px "+r+"px; margin: 0px;}"),c(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: "+o+"px; max-height:"+l+"px}"),document.documentElement.classList.add("print-pdf"),document.body.style.width=s+"px",document.body.style.height=r+"px",await new Promise(requestAnimationFrame),this.Reveal.layoutSlideContents(o,l),t.forEach((e=>this.Reveal.slideContent.layout(e))),await new Promise(requestAnimationFrame);const d=t.map((e=>e.scrollHeight)),h=[],u=t[0].parentNode;t.forEach((function(t,n){if(!1===t.classList.contains("stack")){let c=(s-o)/2,u=(r-l)/2;const g=d[n];let v=Math.max(Math.ceil(g/r),1);v=Math.min(v,e.pdfMaxPagesPerSlide),(1===v&&e.center||t.classList.contains("center"))&&(u=Math.max((r-g)/2,0));const p=document.createElement("div");if(h.push(p),p.className="pdf-page",p.style.height=(r+e.pdfPageHeightOffset)*v+"px",p.appendChild(t),t.style.left=c+"px",t.style.top=u+"px",t.style.width=o+"px",t.slideBackgroundElement&&p.insertBefore(t.slideBackgroundElement,t),e.showNotes){const i=this.Reveal.getSlideNotes(t);if(i){const t=8,a="string"==typeof e.showNotes?e.showNotes:"inline",n=document.createElement("div");n.classList.add("speaker-notes"),n.classList.add("speaker-notes-pdf"),n.setAttribute("data-layout",a),n.innerHTML=i,"separate-page"===a?h.push(n):(n.style.left=t+"px",n.style.bottom=t+"px",n.style.width=s-2*t+"px",p.appendChild(n))}}if(i){const e=n+1,t=document.createElement("div");t.classList.add("slide-number"),t.classList.add("slide-number-pdf"),t.innerHTML=e,p.appendChild(t)}if(e.pdfSeparateFragments){const e=this.Reveal.fragments.sort(p.querySelectorAll(".fragment"),!0);let t;e.forEach((function(e){t&&t.forEach((function(e){e.classList.remove("current-fragment")})),e.forEach((function(e){e.classList.add("visible","current-fragment")}),this);const i=p.cloneNode(!0);h.push(i),t=e}),this),e.forEach((function(e){e.forEach((function(e){e.classList.remove("visible","current-fragment")}))}))}else a(p,".fragment:not(.fade-out)").forEach((function(e){e.classList.add("visible")}))}}),this),await new Promise(requestAnimationFrame),h.forEach((e=>u.appendChild(e))),this.Reveal.dispatchEvent({type:"pdf-ready"})}isPrintingPDF(){return/print-pdf/gi.test(window.location.search)}}class B{constructor(e){this.Reveal=e,this.touchStartX=0,this.touchStartY=0,this.touchStartCount=0,this.touchCaptured=!1,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this)}bind(){let e=this.Reveal.getRevealElement();"onpointerdown"in window?(e.addEventListener("pointerdown",this.onPointerDown,!1),e.addEventListener("pointermove",this.onPointerMove,!1),e.addEventListener("pointerup",this.onPointerUp,!1)):window.navigator.msPointerEnabled?(e.addEventListener("MSPointerDown",this.onPointerDown,!1),e.addEventListener("MSPointerMove",this.onPointerMove,!1),e.addEventListener("MSPointerUp",this.onPointerUp,!1)):(e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1))}unbind(){let e=this.Reveal.getRevealElement();e.removeEventListener("pointerdown",this.onPointerDown,!1),e.removeEventListener("pointermove",this.onPointerMove,!1),e.removeEventListener("pointerup",this.onPointerUp,!1),e.removeEventListener("MSPointerDown",this.onPointerDown,!1),e.removeEventListener("MSPointerMove",this.onPointerMove,!1),e.removeEventListener("MSPointerUp",this.onPointerUp,!1),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1)}isSwipePrevented(e){if(o(e,"video, audio"))return!0;for(;e&&"function"==typeof e.hasAttribute;){if(e.hasAttribute("data-prevent-swipe"))return!0;e=e.parentNode}return!1}onTouchStart(e){if(this.isSwipePrevented(e.target))return!0;this.touchStartX=e.touches[0].clientX,this.touchStartY=e.touches[0].clientY,this.touchStartCount=e.touches.length}onTouchMove(e){if(this.isSwipePrevented(e.target))return!0;let t=this.Reveal.getConfig();if(this.touchCaptured)f&&e.preventDefault();else{this.Reveal.onUserInput(e);let i=e.touches[0].clientX,a=e.touches[0].clientY;if(1===e.touches.length&&2!==this.touchStartCount){let n=this.Reveal.availableRoutes({includeFragments:!0}),s=i-this.touchStartX,r=a-this.touchStartY;s>40&&Math.abs(s)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.next():this.Reveal.prev():this.Reveal.left()):s<-40&&Math.abs(s)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.prev():this.Reveal.next():this.Reveal.right()):r>40&&n.up?(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.prev():this.Reveal.up()):r<-40&&n.down&&(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.next():this.Reveal.down()),t.embedded?(this.touchCaptured||this.Reveal.isVerticalSlide())&&e.preventDefault():e.preventDefault()}}}onTouchEnd(e){this.touchCaptured=!1}onPointerDown(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchStart(e))}onPointerMove(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchMove(e))}onPointerUp(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchEnd(e))}}class q{constructor(e){this.Reveal=e,this.onRevealPointerDown=this.onRevealPointerDown.bind(this),this.onDocumentPointerDown=this.onDocumentPointerDown.bind(this)}configure(e,t){e.embedded?this.blur():(this.focus(),this.unbind())}bind(){this.Reveal.getConfig().embedded&&this.Reveal.getRevealElement().addEventListener("pointerdown",this.onRevealPointerDown,!1)}unbind(){this.Reveal.getRevealElement().removeEventListener("pointerdown",this.onRevealPointerDown,!1),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)}focus(){"focus"!==this.state&&(this.Reveal.getRevealElement().classList.add("focused"),document.addEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state="focus"}blur(){"blur"!==this.state&&(this.Reveal.getRevealElement().classList.remove("focused"),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state="blur"}isFocused(){return"focus"===this.state}onRevealPointerDown(e){this.focus()}onDocumentPointerDown(e){let t=l(e.target,".reveal");t&&t===this.Reveal.getRevealElement()||this.blur()}}class U{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="speaker-notes",this.element.setAttribute("data-prevent-swipe",""),this.element.setAttribute("tabindex","0"),this.Reveal.getRevealElement().appendChild(this.element)}configure(e,t){e.showNotes&&this.element.setAttribute("data-layout","string"==typeof e.showNotes?e.showNotes:"inline")}update(){this.Reveal.getConfig().showNotes&&this.element&&this.Reveal.getCurrentSlide()&&!this.Reveal.print.isPrintingPDF()&&(this.element.innerHTML=this.getSlideNotes()||'<span class="notes-placeholder">No notes on this slide.</span>')}updateVisibility(){this.Reveal.getConfig().showNotes&&this.hasNotes()&&!this.Reveal.print.isPrintingPDF()?this.Reveal.getRevealElement().classList.add("show-notes"):this.Reveal.getRevealElement().classList.remove("show-notes")}hasNotes(){return this.Reveal.getSlidesElement().querySelectorAll("[data-notes], aside.notes").length>0}isSpeakerNotesWindow(){return!!window.location.search.match(/receiver/gi)}getSlideNotes(e=this.Reveal.getCurrentSlide()){if(e.hasAttribute("data-notes"))return e.getAttribute("data-notes");let t=e.querySelector("aside.notes");return t?t.innerHTML:null}}class O{constructor(e,t){this.diameter=100,this.diameter2=this.diameter/2,this.thickness=6,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=e,this.progressCheck=t,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.canvas.style.width=this.diameter2+"px",this.canvas.style.height=this.diameter2+"px",this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}setPlaying(e){const t=this.playing;this.playing=e,!t&&this.playing?this.animate():this.render()}animate(){const e=this.progress;this.progress=this.progressCheck(),e>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&requestAnimationFrame(this.animate.bind(this))}render(){let e=this.playing?this.progress:0,t=this.diameter2-this.thickness,i=this.diameter2,a=this.diameter2,n=28;this.progressOffset+=.1*(1-this.progressOffset);const s=-Math.PI/2+e*(2*Math.PI),r=-Math.PI/2+this.progressOffset*(2*Math.PI);this.context.save(),this.context.clearRect(0,0,this.diameter,this.diameter),this.context.beginPath(),this.context.arc(i,a,t+4,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(i,a,t,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="rgba( 255, 255, 255, 0.2 )",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(i,a,t,r,s,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(i-14,a-14),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,10,n),this.context.fillRect(18,0,10,n)):(this.context.beginPath(),this.context.translate(4,0),this.context.moveTo(0,0),this.context.lineTo(24,14),this.context.lineTo(0,n),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()}on(e,t){this.canvas.addEventListener(e,t,!1)}off(e,t){this.canvas.removeEventListener(e,t,!1)}destroy(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)}}var W={width:960,height:700,margin:.04,minScale:.2,maxScale:2,controls:!0,controlsTutorial:!0,controlsLayout:"bottom-right",controlsBackArrows:"faded",progress:!0,slideNumber:!1,showSlideNumber:"all",hashOneBasedIndex:!1,hash:!1,respondToHashChanges:!0,history:!1,keyboard:!0,keyboardCondition:null,disableLayout:!1,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,navigationMode:"default",shuffle:!1,fragments:!0,fragmentInURL:!0,embedded:!1,help:!0,pause:!0,showNotes:!1,showHiddenSlides:!1,autoPlayMedia:null,preloadIframes:null,autoAnimate:!0,autoAnimateMatcher:null,autoAnimateEasing:"ease",autoAnimateDuration:1,autoAnimateUnmatched:!0,autoAnimateStyles:["opacity","color","background-color","padding","font-size","line-height","letter-spacing","border-width","border-color","border-radius","outline","outline-offset"],autoSlide:0,autoSlideStoppable:!0,autoSlideMethod:null,defaultTiming:null,mouseWheel:!1,previewLinks:!1,postMessage:!0,postMessageEvents:!1,focusBodyOnPageVisibilityChange:!0,transition:"slide",transitionSpeed:"default",backgroundTransition:"fade",parallaxBackgroundImage:"",parallaxBackgroundSize:"",parallaxBackgroundRepeat:"",parallaxBackgroundPosition:"",parallaxBackgroundHorizontal:null,parallaxBackgroundVertical:null,pdfMaxPagesPerSlide:Number.POSITIVE_INFINITY,pdfSeparateFragments:!0,pdfPageHeightOffset:-1,viewDistance:3,mobileViewDistance:2,display:"block",hideInactiveCursor:!0,hideCursorTime:5e3,dependencies:[],plugins:[]};function K(t,o){arguments.length<2&&(o=arguments[0],t=document.querySelector(".reveal"));const c={};let g,v,m,f,y,w={},R=!1,E={hasNavigatedHorizontally:!1,hasNavigatedVertically:!1},L=[],z=1,K={layout:"",overview:""},V={},$="idle",j=0,X=0,Y=-1,_=!1,J=new S(c),Q=new A(c),Z=new x(c),G=new k(c),ee=new C(c),te=new P(c),ie=new N(c),ae=new M(c),ne=new D(c),se=new I(c),re=new T(c),oe=new F(c),le=new H(c),de=new q(c),ce=new B(c),he=new U(c);function ue(e){if(!t)throw'Unable to find presentation root (<div class="reveal">).';if(V.wrapper=t,V.slides=t.querySelector(".slides"),!V.slides)throw'Unable to find slides container (<div class="slides">).';return w={...W,...w,...o,...e,...h()},ge(),window.addEventListener("load",Fe,!1),oe.load(w.plugins,w.dependencies).then(ve),new Promise((e=>c.on("ready",e)))}function ge(){!0===w.embedded?V.viewport=l(t,".reveal-viewport")||t:(V.viewport=document.body,document.documentElement.classList.add("reveal-full-page")),V.viewport.classList.add("reveal-viewport")}function ve(){R=!0,pe(),me(),Re(),we(),et(),Se(),ae.readURL(),G.update(!0),setTimeout((()=>{V.slides.classList.remove("no-transition"),V.wrapper.classList.add("ready"),Ce({type:"ready",data:{indexh:g,indexv:v,currentSlide:f}})}),1),le.isPrintingPDF()&&(Ee(),"complete"===document.readyState?le.setupPDF():window.addEventListener("load",(()=>{le.setupPDF()})))}function pe(){w.showHiddenSlides||a(V.wrapper,'section[data-visibility="hidden"]').forEach((e=>{e.parentNode.removeChild(e)}))}function me(){V.slides.classList.add("no-transition"),p?V.wrapper.classList.add("no-hover"):V.wrapper.classList.remove("no-hover"),G.render(),Q.render(),ne.render(),se.render(),he.render(),V.pauseOverlay=d(V.wrapper,"div","pause-overlay",w.controls?'<button class="resume-button">Resume presentation</button>':null),V.statusElement=fe(),V.wrapper.setAttribute("role","application")}function fe(){let e=V.wrapper.querySelector(".aria-status");return e||(e=document.createElement("div"),e.style.position="absolute",e.style.height="1px",e.style.width="1px",e.style.overflow="hidden",e.style.clip="rect( 1px, 1px, 1px, 1px )",e.classList.add("aria-status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true"),V.wrapper.appendChild(e)),e}function be(e){V.statusElement.textContent=e}function ye(e){let t="";if(3===e.nodeType)t+=e.textContent;else if(1===e.nodeType){let i=e.getAttribute("aria-hidden"),a="none"===window.getComputedStyle(e).display;"true"===i||a||Array.from(e.childNodes).forEach((e=>{t+=ye(e)}))}return t=t.trim(),""===t?"":t+" "}function we(){setInterval((()=>{0===V.wrapper.scrollTop&&0===V.wrapper.scrollLeft||(V.wrapper.scrollTop=0,V.wrapper.scrollLeft=0)}),1e3)}function Re(){w.postMessage&&window.addEventListener("message",(t=>{let i=t.data;if("string"==typeof i&&"{"===i.charAt(0)&&"}"===i.charAt(i.length-1)&&(i=JSON.parse(i),i.method&&"function"==typeof c[i.method]))if(!1===e.test(i.method)){const e=c[i.method].apply(c,i.args);Pe("callback",{method:i.method,result:e})}else console.warn('reveal.js: "'+i.method+'" is is blacklisted from the postMessage API')}),!1)}function Se(e){const t={...w};if("object"==typeof e&&i(w,e),!1===c.isReady())return;const a=V.wrapper.querySelectorAll(".slides section").length;V.wrapper.classList.remove(t.transition),V.wrapper.classList.add(w.transition),V.wrapper.setAttribute("data-transition-speed",w.transitionSpeed),V.wrapper.setAttribute("data-background-transition",w.backgroundTransition),V.viewport.style.setProperty("--slide-width",w.width+"px"),V.viewport.style.setProperty("--slide-height",w.height+"px"),w.shuffle&&tt(),n(V.wrapper,"embedded",w.embedded),n(V.wrapper,"rtl",w.rtl),n(V.wrapper,"center",w.center),!1===w.pause&&je(),w.previewLinks?(Ne(),Me("[data-preview-link=false]")):(Me(),Ne("[data-preview-link]:not([data-preview-link=false])")),Z.reset(),y&&(y.destroy(),y=null),a>1&&w.autoSlide&&w.autoSlideStoppable&&(y=new O(V.wrapper,(()=>Math.min(Math.max((Date.now()-Y)/j,0),1))),y.on("click",Ft),_=!1),"default"!==w.navigationMode?V.wrapper.setAttribute("data-navigation-mode",w.navigationMode):V.wrapper.removeAttribute("data-navigation-mode"),he.configure(w,t),de.configure(w,t),re.configure(w,t),ne.configure(w,t),se.configure(w,t),ie.configure(w,t),ee.configure(w,t),Q.configure(w,t),Ze()}function Ae(){window.addEventListener("resize",It,!1),w.touch&&ce.bind(),w.keyboard&&ie.bind(),w.progress&&se.bind(),w.respondToHashChanges&&ae.bind(),ne.bind(),de.bind(),V.slides.addEventListener("click",Dt,!1),V.slides.addEventListener("transitionend",Mt,!1),V.pauseOverlay.addEventListener("click",je,!1),w.focusBodyOnPageVisibilityChange&&document.addEventListener("visibilitychange",Tt,!1)}function Ee(){ce.unbind(),de.unbind(),ie.unbind(),ne.unbind(),se.unbind(),ae.unbind(),window.removeEventListener("resize",It,!1),V.slides.removeEventListener("click",Dt,!1),V.slides.removeEventListener("transitionend",Mt,!1),V.pauseOverlay.removeEventListener("click",je,!1)}function ke(e,i,a){t.addEventListener(e,i,a)}function Le(e,i,a){t.removeEventListener(e,i,a)}function xe(e){"string"==typeof e.layout&&(K.layout=e.layout),"string"==typeof e.overview&&(K.overview=e.overview),K.layout?r(V.slides,K.layout+" "+K.overview):r(V.slides,K.overview)}function Ce({target:e=V.wrapper,type:t,data:a,bubbles:n=!0}){let s=document.createEvent("HTMLEvents",1,2);return s.initEvent(t,n,!0),i(s,a),e.dispatchEvent(s),e===V.wrapper&&Pe(t),s}function Pe(e,t){if(w.postMessageEvents&&window.parent!==window.self){let a={namespace:"reveal",eventName:e,state:bt()};i(a,t),window.parent.postMessage(JSON.stringify(a),"*")}}function Ne(e="a"){Array.from(V.wrapper.querySelectorAll(e)).forEach((e=>{/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",zt,!1)}))}function Me(e="a"){Array.from(V.wrapper.querySelectorAll(e)).forEach((e=>{/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",zt,!1)}))}function De(e){ze(),V.overlay=document.createElement("div"),V.overlay.classList.add("overlay"),V.overlay.classList.add("overlay-preview"),V.wrapper.appendChild(V.overlay),V.overlay.innerHTML=`<header>\n\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t<a class="external" href="${e}" target="_blank"><span class="icon"></span></a>\n\t\t\t</header>\n\t\t\t<div class="spinner"></div>\n\t\t\t<div class="viewport">\n\t\t\t\t<iframe src="${e}"></iframe>\n\t\t\t\t<small class="viewport-inner">\n\t\t\t\t\t<span class="x-frame-error">Unable to load iframe. This is likely due to the site's policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>`,V.overlay.querySelector("iframe").addEventListener("load",(e=>{V.overlay.classList.add("loaded")}),!1),V.overlay.querySelector(".close").addEventListener("click",(e=>{ze(),e.preventDefault()}),!1),V.overlay.querySelector(".external").addEventListener("click",(e=>{ze()}),!1)}function Ie(e){"boolean"==typeof e?e?Te():ze():V.overlay?ze():Te()}function Te(){if(w.help){ze(),V.overlay=document.createElement("div"),V.overlay.classList.add("overlay"),V.overlay.classList.add("overlay-help"),V.wrapper.appendChild(V.overlay);let e='<p class="title">Keyboard Shortcuts</p><br/>',t=ie.getShortcuts(),i=ie.getBindings();e+="<table><th>KEY</th><th>ACTION</th>";for(let i in t)e+=`<tr><td>${i}</td><td>${t[i]}</td></tr>`;for(let t in i)i[t].key&&i[t].description&&(e+=`<tr><td>${i[t].key}</td><td>${i[t].description}</td></tr>`);e+="</table>",V.overlay.innerHTML=`\n\t\t\t\t<header>\n\t\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class="viewport">\n\t\t\t\t\t<div class="viewport-inner">${e}</div>\n\t\t\t\t</div>\n\t\t\t`,V.overlay.querySelector(".close").addEventListener("click",(e=>{ze(),e.preventDefault()}),!1)}}function ze(){return!!V.overlay&&(V.overlay.parentNode.removeChild(V.overlay),V.overlay=null,!0)}function Fe(){if(V.wrapper&&!le.isPrintingPDF()){if(!w.disableLayout){p&&!w.embedded&&document.documentElement.style.setProperty("--vh",.01*window.innerHeight+"px");const e=Be(),t=z;He(w.width,w.height),V.slides.style.width=e.width+"px",V.slides.style.height=e.height+"px",z=Math.min(e.presentationWidth/e.width,e.presentationHeight/e.height),z=Math.max(z,w.minScale),z=Math.min(z,w.maxScale),1===z?(V.slides.style.zoom="",V.slides.style.left="",V.slides.style.top="",V.slides.style.bottom="",V.slides.style.right="",xe({layout:""})):z>1&&b&&window.devicePixelRatio<2?(V.slides.style.zoom=z,V.slides.style.left="",V.slides.style.top="",V.slides.style.bottom="",V.slides.style.right="",xe({layout:""})):(V.slides.style.zoom="",V.slides.style.left="50%",V.slides.style.top="50%",V.slides.style.bottom="auto",V.slides.style.right="auto",xe({layout:"translate(-50%, -50%) scale("+z+")"}));const i=Array.from(V.wrapper.querySelectorAll(".slides section"));for(let t=0,a=i.length;t<a;t++){const a=i[t];"none"!==a.style.display&&(w.center||a.classList.contains("center")?a.classList.contains("stack")?a.style.top=0:a.style.top=Math.max((e.height-a.scrollHeight)/2,0)+"px":a.style.top="")}t!==z&&Ce({type:"resize",data:{oldScale:t,scale:z,size:e}})}se.update(),G.updateParallax(),te.isActive()&&te.update()}}function He(e,t){a(V.slides,"section > .stretch, section > .r-stretch").forEach((i=>{let a=u(i,t);if(/(img|video)/gi.test(i.nodeName)){const t=i.naturalWidth||i.videoWidth,n=i.naturalHeight||i.videoHeight,s=Math.min(e/t,a/n);i.style.width=t*s+"px",i.style.height=n*s+"px"}else i.style.width=e+"px",i.style.height=a+"px"}))}function Be(e,t){const i={width:w.width,height:w.height,presentationWidth:e||V.wrapper.offsetWidth,presentationHeight:t||V.wrapper.offsetHeight};return i.presentationWidth-=i.presentationWidth*w.margin,i.presentationHeight-=i.presentationHeight*w.margin,"string"==typeof i.width&&/%$/.test(i.width)&&(i.width=parseInt(i.width,10)/100*i.presentationWidth),"string"==typeof i.height&&/%$/.test(i.height)&&(i.height=parseInt(i.height,10)/100*i.presentationHeight),i}function qe(e,t){"object"==typeof e&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function Ue(e){if("object"==typeof e&&"function"==typeof e.setAttribute&&e.classList.contains("stack")){const t=e.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(e.getAttribute(t)||0,10)}return 0}function Oe(e=f){return e&&e.parentNode&&!!e.parentNode.nodeName.match(/section/i)}function We(){return!(!f||!Oe(f))&&!f.nextElementSibling}function Ke(){return 0===g&&0===v}function Ve(){return!!f&&(!f.nextElementSibling&&(!Oe(f)||!f.parentNode.nextElementSibling))}function $e(){if(w.pause){const e=V.wrapper.classList.contains("paused");Rt(),V.wrapper.classList.add("paused"),!1===e&&Ce({type:"paused"})}}function je(){const e=V.wrapper.classList.contains("paused");V.wrapper.classList.remove("paused"),wt(),e&&Ce({type:"resumed"})}function Xe(e){"boolean"==typeof e?e?$e():je():Ye()?je():$e()}function Ye(){return V.wrapper.classList.contains("paused")}function _e(e){"boolean"==typeof e?e?At():St():_?At():St()}function Je(){return!(!j||_)}function Qe(e,t,i,a){if(Ce({type:"beforeslidechange",data:{indexh:void 0===e?g:e,indexv:void 0===t?v:t,origin:a}}).defaultPrevented)return;m=f;const n=V.wrapper.querySelectorAll(".slides>section");if(0===n.length)return;void 0!==t||te.isActive()||(t=Ue(n[e])),m&&m.parentNode&&m.parentNode.classList.contains("stack")&&qe(m.parentNode,v);const s=L.concat();L.length=0;let r=g||0,o=v||0;g=it(".slides>section",void 0===e?g:e),v=it(".slides>section.present>section",void 0===t?v:t);let l=g!==r||v!==o;l||(m=null);let d=n[g],c=d.querySelectorAll("section");f=c[v]||d;let h=!1;l&&m&&f&&!te.isActive()&&(m.hasAttribute("data-auto-animate")&&f.hasAttribute("data-auto-animate")&&m.getAttribute("data-auto-animate-id")===f.getAttribute("data-auto-animate-id")&&!(g>r||v>o?f:m).hasAttribute("data-auto-animate-restart")&&(h=!0,V.slides.classList.add("disable-slide-transitions")),$="running"),at(),Fe(),te.isActive()&&te.update(),void 0!==i&&ee.goto(i),m&&m!==f&&(m.classList.remove("present"),m.setAttribute("aria-hidden","true"),Ke()&&setTimeout((()=>{ht().forEach((e=>{qe(e,0)}))}),0));e:for(let e=0,t=L.length;e<t;e++){for(let t=0;t<s.length;t++)if(s[t]===L[e]){s.splice(t,1);continue e}V.viewport.classList.add(L[e]),Ce({type:L[e]})}for(;s.length;)V.viewport.classList.remove(s.pop());l&&Ce({type:"slidechanged",data:{indexh:g,indexv:v,previousSlide:m,currentSlide:f,origin:a}}),!l&&m||(J.stopEmbeddedContent(m),J.startEmbeddedContent(f)),requestAnimationFrame((()=>{be(ye(f))})),se.update(),ne.update(),he.update(),G.update(),G.updateParallax(),Q.update(),ee.update(),ae.writeURL(),wt(),h&&(setTimeout((()=>{V.slides.classList.remove("disable-slide-transitions")}),0),w.autoAnimate&&Z.run(m,f))}function Ze(){Ee(),Ae(),Fe(),j=w.autoSlide,wt(),G.create(),ae.writeURL(),ee.sortAll(),ne.update(),se.update(),at(),he.update(),he.updateVisibility(),G.update(!0),Q.update(),J.formatEmbeddedContent(),!1===w.autoPlayMedia?J.stopEmbeddedContent(f,{unloadIframes:!1}):J.startEmbeddedContent(f),te.isActive()&&te.layout()}function Ge(e=f){G.sync(e),ee.sync(e),J.load(e),G.update(),he.update()}function et(){dt().forEach((e=>{a(e,"section").forEach(((e,t)=>{t>0&&(e.classList.remove("present"),e.classList.remove("past"),e.classList.add("future"),e.setAttribute("aria-hidden","true"))}))}))}function tt(e=dt()){e.forEach(((t,i)=>{let a=e[Math.floor(Math.random()*e.length)];a.parentNode===t.parentNode&&t.parentNode.insertBefore(t,a);let n=t.querySelectorAll("section");n.length&&tt(n)}))}function it(e,t){let i=a(V.wrapper,e),n=i.length,s=le.isPrintingPDF();if(n){w.loop&&(t%=n)<0&&(t=n+t),t=Math.max(Math.min(t,n-1),0);for(let e=0;e<n;e++){let n=i[e],r=w.rtl&&!Oe(n);n.classList.remove("past"),n.classList.remove("present"),n.classList.remove("future"),n.setAttribute("hidden",""),n.setAttribute("aria-hidden","true"),n.querySelector("section")&&n.classList.add("stack"),s?n.classList.add("present"):e<t?(n.classList.add(r?"future":"past"),w.fragments&&a(n,".fragment").forEach((e=>{e.classList.add("visible"),e.classList.remove("current-fragment")}))):e>t&&(n.classList.add(r?"past":"future"),w.fragments&&a(n,".fragment.visible").forEach((e=>{e.classList.remove("visible","current-fragment")})))}let e=i[t],r=e.classList.contains("present");e.classList.add("present"),e.removeAttribute("hidden"),e.removeAttribute("aria-hidden"),r||Ce({target:e,type:"visible",bubbles:!1});let o=e.getAttribute("data-state");o&&(L=L.concat(o.split(" ")))}else t=0;return t}function at(){let e,t,i=dt(),n=i.length;if(n&&void 0!==g){let s=te.isActive()?10:w.viewDistance;p&&(s=te.isActive()?6:w.mobileViewDistance),le.isPrintingPDF()&&(s=Number.MAX_VALUE);for(let r=0;r<n;r++){let o=i[r],l=a(o,"section"),d=l.length;if(e=Math.abs((g||0)-r)||0,w.loop&&(e=Math.abs(((g||0)-r)%(n-s))||0),e<s?J.load(o):J.unload(o),d){let i=Ue(o);for(let a=0;a<d;a++){let n=l[a];t=r===(g||0)?Math.abs((v||0)-a):Math.abs(a-i),e+t<s?J.load(n):J.unload(n)}}}gt()?V.wrapper.classList.add("has-vertical-slides"):V.wrapper.classList.remove("has-vertical-slides"),ut()?V.wrapper.classList.add("has-horizontal-slides"):V.wrapper.classList.remove("has-horizontal-slides")}}function nt({includeFragments:e=!1}={}){let t=V.wrapper.querySelectorAll(".slides>section"),i=V.wrapper.querySelectorAll(".slides>section.present>section"),a={left:g>0,right:g<t.length-1,up:v>0,down:v<i.length-1};if(w.loop&&(t.length>1&&(a.left=!0,a.right=!0),i.length>1&&(a.up=!0,a.down=!0)),t.length>1&&"linear"===w.navigationMode&&(a.right=a.right||a.down,a.left=a.left||a.up),!0===e){let e=ee.availableRoutes();a.left=a.left||e.prev,a.up=a.up||e.prev,a.down=a.down||e.next,a.right=a.right||e.next}if(w.rtl){let e=a.left;a.left=a.right,a.right=e}return a}function st(e=f){let t=dt(),i=0;e:for(let a=0;a<t.length;a++){let n=t[a],s=n.querySelectorAll("section");for(let t=0;t<s.length;t++){if(s[t]===e)break e;"uncounted"!==s[t].dataset.visibility&&i++}if(n===e)break;!1===n.classList.contains("stack")&&"uncounted"!==n.dataset.visibility&&i++}return i}function rt(){let e=pt(),t=st();if(f){let e=f.querySelectorAll(".fragment");if(e.length>0){let i=.9;t+=f.querySelectorAll(".fragment.visible").length/e.length*i}}return Math.min(t/(e-1),1)}function ot(e){let t,i=g,n=v;if(e){let t=Oe(e),s=t?e.parentNode:e,r=dt();i=Math.max(r.indexOf(s),0),n=void 0,t&&(n=Math.max(a(e.parentNode,"section").indexOf(e),0))}if(!e&&f){if(f.querySelectorAll(".fragment").length>0){let e=f.querySelector(".current-fragment");t=e&&e.hasAttribute("data-fragment-index")?parseInt(e.getAttribute("data-fragment-index"),10):f.querySelectorAll(".fragment.visible").length-1}}return{h:i,v:n,f:t}}function lt(){return a(V.wrapper,'.slides section:not(.stack):not([data-visibility="uncounted"])')}function dt(){return a(V.wrapper,".slides>section")}function ct(){return a(V.wrapper,".slides>section>section")}function ht(){return a(V.wrapper,".slides>section.stack")}function ut(){return dt().length>1}function gt(){return ct().length>1}function vt(){return lt().map((e=>{let t={};for(let i=0;i<e.attributes.length;i++){let a=e.attributes[i];t[a.name]=a.value}return t}))}function pt(){return lt().length}function mt(e,t){let i=dt()[e],a=i&&i.querySelectorAll("section");return a&&a.length&&"number"==typeof t?a?a[t]:void 0:i}function ft(e,t){let i="number"==typeof e?mt(e,t):e;if(i)return i.slideBackgroundElement}function bt(){let e=ot();return{indexh:e.h,indexv:e.v,indexf:e.f,paused:Ye(),overview:te.isActive()}}function yt(e){if("object"==typeof e){Qe(s(e.indexh),s(e.indexv),s(e.indexf));let t=s(e.paused),i=s(e.overview);"boolean"==typeof t&&t!==Ye()&&Xe(t),"boolean"==typeof i&&i!==te.isActive()&&te.toggle(i)}}function wt(){if(Rt(),f&&!1!==w.autoSlide){let e=f.querySelector(".current-fragment");e||(e=f.querySelector(".fragment"));let t=e?e.getAttribute("data-autoslide"):null,i=f.parentNode?f.parentNode.getAttribute("data-autoslide"):null,n=f.getAttribute("data-autoslide");t?j=parseInt(t,10):n?j=parseInt(n,10):i?j=parseInt(i,10):(j=w.autoSlide,0===f.querySelectorAll(".fragment").length&&a(f,"video, audio").forEach((e=>{e.hasAttribute("data-autoplay")&&j&&1e3*e.duration/e.playbackRate>j&&(j=1e3*e.duration/e.playbackRate+1e3)}))),!j||_||Ye()||te.isActive()||Ve()&&!ee.availableRoutes().next&&!0!==w.loop||(X=setTimeout((()=>{"function"==typeof w.autoSlideMethod?w.autoSlideMethod():Pt(),wt()}),j),Y=Date.now()),y&&y.setPlaying(-1!==X)}}function Rt(){clearTimeout(X),X=-1}function St(){j&&!_&&(_=!0,Ce({type:"autoslidepaused"}),clearTimeout(X),y&&y.setPlaying(!1))}function At(){j&&_&&(_=!1,Ce({type:"autoslideresumed"}),wt())}function Et({skipFragments:e=!1}={}){E.hasNavigatedHorizontally=!0,w.rtl?(te.isActive()||e||!1===ee.next())&&nt().left&&Qe(g+1,"grid"===w.navigationMode?v:void 0):(te.isActive()||e||!1===ee.prev())&&nt().left&&Qe(g-1,"grid"===w.navigationMode?v:void 0)}function kt({skipFragments:e=!1}={}){E.hasNavigatedHorizontally=!0,w.rtl?(te.isActive()||e||!1===ee.prev())&&nt().right&&Qe(g-1,"grid"===w.navigationMode?v:void 0):(te.isActive()||e||!1===ee.next())&&nt().right&&Qe(g+1,"grid"===w.navigationMode?v:void 0)}function Lt({skipFragments:e=!1}={}){(te.isActive()||e||!1===ee.prev())&&nt().up&&Qe(g,v-1)}function xt({skipFragments:e=!1}={}){E.hasNavigatedVertically=!0,(te.isActive()||e||!1===ee.next())&&nt().down&&Qe(g,v+1)}function Ct({skipFragments:e=!1}={}){if(e||!1===ee.prev())if(nt().up)Lt({skipFragments:e});else{let t;if(t=w.rtl?a(V.wrapper,".slides>section.future").pop():a(V.wrapper,".slides>section.past").pop(),t&&t.classList.contains("stack")){let e=t.querySelectorAll("section").length-1||void 0;Qe(g-1,e)}else Et({skipFragments:e})}}function Pt({skipFragments:e=!1}={}){if(E.hasNavigatedHorizontally=!0,E.hasNavigatedVertically=!0,e||!1===ee.next()){let t=nt();t.down&&t.right&&w.loop&&We()&&(t.down=!1),t.down?xt({skipFragments:e}):w.rtl?Et({skipFragments:e}):kt({skipFragments:e})}}function Nt(e){w.autoSlideStoppable&&St()}function Mt(e){"running"===$&&/section/gi.test(e.target.nodeName)&&($="idle",Ce({type:"slidetransitionend",data:{indexh:g,indexv:v,previousSlide:m,currentSlide:f}}))}function Dt(e){const t=l(e.target,'a[href^="#"]');if(t){const i=t.getAttribute("href"),a=ae.getIndicesFromHash(i);a&&(c.slide(a.h,a.v,a.f),e.preventDefault())}}function It(e){Fe()}function Tt(e){!1===document.hidden&&document.activeElement!==document.body&&("function"==typeof document.activeElement.blur&&document.activeElement.blur(),document.body.focus())}function zt(e){if(e.currentTarget&&e.currentTarget.hasAttribute("href")){let t=e.currentTarget.getAttribute("href");t&&(De(t),e.preventDefault())}}function Ft(e){Ve()&&!1===w.loop?(Qe(0,0),At()):_?At():St()}const Ht={VERSION:"4.2.0",initialize:ue,configure:Se,sync:Ze,syncSlide:Ge,syncFragments:ee.sync.bind(ee),slide:Qe,left:Et,right:kt,up:Lt,down:xt,prev:Ct,next:Pt,navigateLeft:Et,navigateRight:kt,navigateUp:Lt,navigateDown:xt,navigatePrev:Ct,navigateNext:Pt,navigateFragment:ee.goto.bind(ee),prevFragment:ee.prev.bind(ee),nextFragment:ee.next.bind(ee),on:ke,off:Le,addEventListener:ke,removeEventListener:Le,layout:Fe,shuffle:tt,availableRoutes:nt,availableFragments:ee.availableRoutes.bind(ee),toggleHelp:Ie,toggleOverview:te.toggle.bind(te),togglePause:Xe,toggleAutoSlide:_e,isFirstSlide:Ke,isLastSlide:Ve,isLastVerticalSlide:We,isVerticalSlide:Oe,isPaused:Ye,isAutoSliding:Je,isSpeakerNotes:he.isSpeakerNotesWindow.bind(he),isOverview:te.isActive.bind(te),isFocused:de.isFocused.bind(de),isPrintingPDF:le.isPrintingPDF.bind(le),isReady:()=>R,loadSlide:J.load.bind(J),unloadSlide:J.unload.bind(J),showPreview:De,hidePreview:ze,addEventListeners:Ae,removeEventListeners:Ee,dispatchEvent:Ce,getState:bt,setState:yt,getProgress:rt,getIndices:ot,getSlidesAttributes:vt,getSlidePastCount:st,getTotalSlides:pt,getSlide:mt,getPreviousSlide:()=>m,getCurrentSlide:()=>f,getSlideBackground:ft,getSlideNotes:he.getSlideNotes.bind(he),getSlides:lt,getHorizontalSlides:dt,getVerticalSlides:ct,hasHorizontalSlides:ut,hasVerticalSlides:gt,hasNavigatedHorizontally:()=>E.hasNavigatedHorizontally,hasNavigatedVertically:()=>E.hasNavigatedVertically,addKeyBinding:ie.addKeyBinding.bind(ie),removeKeyBinding:ie.removeKeyBinding.bind(ie),triggerKey:ie.triggerKey.bind(ie),registerKeyboardShortcut:ie.registerKeyboardShortcut.bind(ie),getComputedSlideSize:Be,getScale:()=>z,getConfig:()=>w,getQueryHash:h,getRevealElement:()=>t,getSlidesElement:()=>V.slides,getViewportElement:()=>V.viewport,getBackgroundsElement:()=>G.element,registerPlugin:oe.registerPlugin.bind(oe),hasPlugin:oe.hasPlugin.bind(oe),getPlugin:oe.getPlugin.bind(oe),getPlugins:oe.getRegisteredPlugins.bind(oe)};return i(c,{...Ht,announceStatus:be,getStatusText:ye,print:le,focus:de,progress:se,controls:ne,location:ae,overview:te,fragments:ee,slideContent:J,slideNumber:Q,onUserInput:Nt,closeOverlay:ze,updateSlidesVisibility:at,layoutSlideContents:He,transformSlides:xe,cueAutoSlide:wt,cancelAutoSlide:Rt}),Ht}let V=K,$=[];V.initialize=e=>(Object.assign(V,new K(document.querySelector(".reveal"),e)),$.map((e=>e(V))),V.initialize()),["configure","on","off","addEventListener","removeEventListener","registerPlugin"].forEach((e=>{V[e]=(...t)=>{$.push((i=>i[e].call(null,...t)))}})),V.isReady=()=>!1,V.VERSION="4.2.0";export default V; +//# sourceMappingURL=reveal.esm.js.map diff --git a/public/site_libs/revealjs/dist/reveal.esm.js.map b/public/site_libs/revealjs/dist/reveal.esm.js.map new file mode 100644 index 0000000..c8bd3c1 --- /dev/null +++ b/public/site_libs/revealjs/dist/reveal.esm.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reveal.esm.js","sources":["../js/utils/constants.js","../js/utils/util.js","../js/utils/device.js","../node_modules/fitty/dist/fitty.module.js","../js/controllers/slidecontent.js","../js/controllers/slidenumber.js","../js/utils/color.js","../js/controllers/backgrounds.js","../js/controllers/autoanimate.js","../js/controllers/fragments.js","../js/controllers/overview.js","../js/controllers/keyboard.js","../js/controllers/location.js","../js/controllers/controls.js","../js/controllers/progress.js","../js/controllers/pointer.js","../js/utils/loader.js","../js/controllers/plugins.js","../js/controllers/print.js","../js/controllers/touch.js","../js/controllers/focus.js","../js/controllers/notes.js","../js/components/playback.js","../js/config.js","../js/reveal.js","../js/index.js"],"sourcesContent":["\nexport const SLIDES_SELECTOR = '.slides section';\nexport const HORIZONTAL_SLIDES_SELECTOR = '.slides>section';\nexport const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section';\n\n// Methods that may not be invoked via the postMessage API\nexport const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/;\n\n// Regex for retrieving the fragment style from a class attribute\nexport const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/;","/**\n * Extend object a with the properties of object b.\n * If there's a conflict, object b takes precedence.\n *\n * @param {object} a\n * @param {object} b\n */\nexport const extend = ( a, b ) => {\n\n\tfor( let i in b ) {\n\t\ta[ i ] = b[ i ];\n\t}\n\n\treturn a;\n\n}\n\n/**\n * querySelectorAll but returns an Array.\n */\nexport const queryAll = ( el, selector ) => {\n\n\treturn Array.from( el.querySelectorAll( selector ) );\n\n}\n\n/**\n * classList.toggle() with cross browser support\n */\nexport const toggleClass = ( el, className, value ) => {\n\tif( value ) {\n\t\tel.classList.add( className );\n\t}\n\telse {\n\t\tel.classList.remove( className );\n\t}\n}\n\n/**\n * Utility for deserializing a value.\n *\n * @param {*} value\n * @return {*}\n */\nexport const deserialize = ( value ) => {\n\n\tif( typeof value === 'string' ) {\n\t\tif( value === 'null' ) return null;\n\t\telse if( value === 'true' ) return true;\n\t\telse if( value === 'false' ) return false;\n\t\telse if( value.match( /^-?[\\d\\.]+$/ ) ) return parseFloat( value );\n\t}\n\n\treturn value;\n\n}\n\n/**\n * Measures the distance in pixels between point a\n * and point b.\n *\n * @param {object} a point with x/y properties\n * @param {object} b point with x/y properties\n *\n * @return {number}\n */\nexport const distanceBetween = ( a, b ) => {\n\n\tlet dx = a.x - b.x,\n\t\tdy = a.y - b.y;\n\n\treturn Math.sqrt( dx*dx + dy*dy );\n\n}\n\n/**\n * Applies a CSS transform to the target element.\n *\n * @param {HTMLElement} element\n * @param {string} transform\n */\nexport const transformElement = ( element, transform ) => {\n\n\telement.style.transform = transform;\n\n}\n\n/**\n * Element.matches with IE support.\n *\n * @param {HTMLElement} target The element to match\n * @param {String} selector The CSS selector to match\n * the element against\n *\n * @return {Boolean}\n */\nexport const matches = ( target, selector ) => {\n\n\tlet matchesMethod = target.matches || target.matchesSelector || target.msMatchesSelector;\n\n\treturn !!( matchesMethod && matchesMethod.call( target, selector ) );\n\n}\n\n/**\n * Find the closest parent that matches the given\n * selector.\n *\n * @param {HTMLElement} target The child element\n * @param {String} selector The CSS selector to match\n * the parents against\n *\n * @return {HTMLElement} The matched parent or null\n * if no matching parent was found\n */\nexport const closest = ( target, selector ) => {\n\n\t// Native Element.closest\n\tif( typeof target.closest === 'function' ) {\n\t\treturn target.closest( selector );\n\t}\n\n\t// Polyfill\n\twhile( target ) {\n\t\tif( matches( target, selector ) ) {\n\t\t\treturn target;\n\t\t}\n\n\t\t// Keep searching\n\t\ttarget = target.parentNode;\n\t}\n\n\treturn null;\n\n}\n\n/**\n * Handling the fullscreen functionality via the fullscreen API\n *\n * @see http://fullscreen.spec.whatwg.org/\n * @see https://developer.mozilla.org/en-US/docs/DOM/Using_fullscreen_mode\n */\nexport const enterFullscreen = element => {\n\n\telement = element || document.documentElement;\n\n\t// Check which implementation is available\n\tlet requestMethod = element.requestFullscreen ||\n\t\t\t\t\t\telement.webkitRequestFullscreen ||\n\t\t\t\t\t\telement.webkitRequestFullScreen ||\n\t\t\t\t\t\telement.mozRequestFullScreen ||\n\t\t\t\t\t\telement.msRequestFullscreen;\n\n\tif( requestMethod ) {\n\t\trequestMethod.apply( element );\n\t}\n\n}\n\n/**\n * Creates an HTML element and returns a reference to it.\n * If the element already exists the existing instance will\n * be returned.\n *\n * @param {HTMLElement} container\n * @param {string} tagname\n * @param {string} classname\n * @param {string} innerHTML\n *\n * @return {HTMLElement}\n */\nexport const createSingletonNode = ( container, tagname, classname, innerHTML='' ) => {\n\n\t// Find all nodes matching the description\n\tlet nodes = container.querySelectorAll( '.' + classname );\n\n\t// Check all matches to find one which is a direct child of\n\t// the specified container\n\tfor( let i = 0; i < nodes.length; i++ ) {\n\t\tlet testNode = nodes[i];\n\t\tif( testNode.parentNode === container ) {\n\t\t\treturn testNode;\n\t\t}\n\t}\n\n\t// If no node was found, create it now\n\tlet node = document.createElement( tagname );\n\tnode.className = classname;\n\tnode.innerHTML = innerHTML;\n\tcontainer.appendChild( node );\n\n\treturn node;\n\n}\n\n/**\n * Injects the given CSS styles into the DOM.\n *\n * @param {string} value\n */\nexport const createStyleSheet = ( value ) => {\n\n\tlet tag = document.createElement( 'style' );\n\ttag.type = 'text/css';\n\n\tif( value && value.length > 0 ) {\n\t\tif( tag.styleSheet ) {\n\t\t\ttag.styleSheet.cssText = value;\n\t\t}\n\t\telse {\n\t\t\ttag.appendChild( document.createTextNode( value ) );\n\t\t}\n\t}\n\n\tdocument.head.appendChild( tag );\n\n\treturn tag;\n\n}\n\n/**\n * Returns a key:value hash of all query params.\n */\nexport const getQueryHash = () => {\n\n\tlet query = {};\n\n\tlocation.search.replace( /[A-Z0-9]+?=([\\w\\.%-]*)/gi, a => {\n\t\tquery[ a.split( '=' ).shift() ] = a.split( '=' ).pop();\n\t} );\n\n\t// Basic deserialization\n\tfor( let i in query ) {\n\t\tlet value = query[ i ];\n\n\t\tquery[ i ] = deserialize( unescape( value ) );\n\t}\n\n\t// Do not accept new dependencies via query config to avoid\n\t// the potential of malicious script injection\n\tif( typeof query['dependencies'] !== 'undefined' ) delete query['dependencies'];\n\n\treturn query;\n\n}\n\n/**\n * Returns the remaining height within the parent of the\n * target element.\n *\n * remaining height = [ configured parent height ] - [ current parent height ]\n *\n * @param {HTMLElement} element\n * @param {number} [height]\n */\nexport const getRemainingHeight = ( element, height = 0 ) => {\n\n\tif( element ) {\n\t\tlet newHeight, oldHeight = element.style.height;\n\n\t\t// Change the .stretch element height to 0 in order find the height of all\n\t\t// the other elements\n\t\telement.style.height = '0px';\n\n\t\t// In Overview mode, the parent (.slide) height is set of 700px.\n\t\t// Restore it temporarily to its natural height.\n\t\telement.parentNode.style.height = 'auto';\n\n\t\tnewHeight = height - element.parentNode.offsetHeight;\n\n\t\t// Restore the old height, just in case\n\t\telement.style.height = oldHeight + 'px';\n\n\t\t// Clear the parent (.slide) height. .removeProperty works in IE9+\n\t\telement.parentNode.style.removeProperty('height');\n\n\t\treturn newHeight;\n\t}\n\n\treturn height;\n\n}","const UA = navigator.userAgent;\nconst testElement = document.createElement( 'div' );\n\nexport const isMobile = /(iphone|ipod|ipad|android)/gi.test( UA ) ||\n\t\t\t\t\t\t( navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 ); // iPadOS\n\nexport const isChrome = /chrome/i.test( UA ) && !/edge/i.test( UA );\n\nexport const isAndroid = /android/gi.test( UA );\n\n// Flags if we should use zoom instead of transform to scale\n// up slides. Zoom produces crisper results but has a lot of\n// xbrowser quirks so we only use it in whitelisted browsers.\nexport const supportsZoom = 'zoom' in testElement.style && !isMobile &&\n\t\t\t\t( isChrome || /Version\\/[\\d\\.]+.*Safari/.test( UA ) );","/*\n * fitty v2.3.3 - Snugly resizes text to fit its parent container\n * Copyright (c) 2020 Rik Schennink <rik@pqina.nl> (https://pqina.nl/)\n */\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports.default = function (w) {\n\n // no window, early exit\n if (!w) return;\n\n // node list to array helper method\n var toArray = function toArray(nl) {\n return [].slice.call(nl);\n };\n\n // states\n var DrawState = {\n IDLE: 0,\n DIRTY_CONTENT: 1,\n DIRTY_LAYOUT: 2,\n DIRTY: 3\n };\n\n // all active fitty elements\n var fitties = [];\n\n // group all redraw calls till next frame, we cancel each frame request when a new one comes in. If no support for request animation frame, this is an empty function and supports for fitty stops.\n var redrawFrame = null;\n var requestRedraw = 'requestAnimationFrame' in w ? function () {\n w.cancelAnimationFrame(redrawFrame);\n redrawFrame = w.requestAnimationFrame(function () {\n return redraw(fitties.filter(function (f) {\n return f.dirty && f.active;\n }));\n });\n } : function () {};\n\n // sets all fitties to dirty so they are redrawn on the next redraw loop, then calls redraw\n var redrawAll = function redrawAll(type) {\n return function () {\n fitties.forEach(function (f) {\n return f.dirty = type;\n });\n requestRedraw();\n };\n };\n\n // redraws fitties so they nicely fit their parent container\n var redraw = function redraw(fitties) {\n\n // getting info from the DOM at this point should not trigger a reflow, let's gather as much intel as possible before triggering a reflow\n\n // check if styles of all fitties have been computed\n fitties.filter(function (f) {\n return !f.styleComputed;\n }).forEach(function (f) {\n f.styleComputed = computeStyle(f);\n });\n\n // restyle elements that require pre-styling, this triggers a reflow, please try to prevent by adding CSS rules (see docs)\n fitties.filter(shouldPreStyle).forEach(applyStyle);\n\n // we now determine which fitties should be redrawn\n var fittiesToRedraw = fitties.filter(shouldRedraw);\n\n // we calculate final styles for these fitties\n fittiesToRedraw.forEach(calculateStyles);\n\n // now we apply the calculated styles from our previous loop\n fittiesToRedraw.forEach(function (f) {\n applyStyle(f);\n markAsClean(f);\n });\n\n // now we dispatch events for all restyled fitties\n fittiesToRedraw.forEach(dispatchFitEvent);\n };\n\n var markAsClean = function markAsClean(f) {\n return f.dirty = DrawState.IDLE;\n };\n\n var calculateStyles = function calculateStyles(f) {\n\n // get available width from parent node\n f.availableWidth = f.element.parentNode.clientWidth;\n\n // the space our target element uses\n f.currentWidth = f.element.scrollWidth;\n\n // remember current font size\n f.previousFontSize = f.currentFontSize;\n\n // let's calculate the new font size\n f.currentFontSize = Math.min(Math.max(f.minSize, f.availableWidth / f.currentWidth * f.previousFontSize), f.maxSize);\n\n // if allows wrapping, only wrap when at minimum font size (otherwise would break container)\n f.whiteSpace = f.multiLine && f.currentFontSize === f.minSize ? 'normal' : 'nowrap';\n };\n\n // should always redraw if is not dirty layout, if is dirty layout, only redraw if size has changed\n var shouldRedraw = function shouldRedraw(f) {\n return f.dirty !== DrawState.DIRTY_LAYOUT || f.dirty === DrawState.DIRTY_LAYOUT && f.element.parentNode.clientWidth !== f.availableWidth;\n };\n\n // every fitty element is tested for invalid styles\n var computeStyle = function computeStyle(f) {\n\n // get style properties\n var style = w.getComputedStyle(f.element, null);\n\n // get current font size in pixels (if we already calculated it, use the calculated version)\n f.currentFontSize = parseFloat(style.getPropertyValue('font-size'));\n\n // get display type and wrap mode\n f.display = style.getPropertyValue('display');\n f.whiteSpace = style.getPropertyValue('white-space');\n };\n\n // determines if this fitty requires initial styling, can be prevented by applying correct styles through CSS\n var shouldPreStyle = function shouldPreStyle(f) {\n\n var preStyle = false;\n\n // if we already tested for prestyling we don't have to do it again\n if (f.preStyleTestCompleted) return false;\n\n // should have an inline style, if not, apply\n if (!/inline-/.test(f.display)) {\n preStyle = true;\n f.display = 'inline-block';\n }\n\n // to correctly calculate dimensions the element should have whiteSpace set to nowrap\n if (f.whiteSpace !== 'nowrap') {\n preStyle = true;\n f.whiteSpace = 'nowrap';\n }\n\n // we don't have to do this twice\n f.preStyleTestCompleted = true;\n\n return preStyle;\n };\n\n // apply styles to single fitty\n var applyStyle = function applyStyle(f) {\n f.element.style.whiteSpace = f.whiteSpace;\n f.element.style.display = f.display;\n f.element.style.fontSize = f.currentFontSize + 'px';\n };\n\n // dispatch a fit event on a fitty\n var dispatchFitEvent = function dispatchFitEvent(f) {\n f.element.dispatchEvent(new CustomEvent('fit', {\n detail: {\n oldValue: f.previousFontSize,\n newValue: f.currentFontSize,\n scaleFactor: f.currentFontSize / f.previousFontSize\n }\n }));\n };\n\n // fit method, marks the fitty as dirty and requests a redraw (this will also redraw any other fitty marked as dirty)\n var fit = function fit(f, type) {\n return function () {\n f.dirty = type;\n if (!f.active) return;\n requestRedraw();\n };\n };\n\n var init = function init(f) {\n\n // save some of the original CSS properties before we change them\n f.originalStyle = {\n whiteSpace: f.element.style.whiteSpace,\n display: f.element.style.display,\n fontSize: f.element.style.fontSize\n };\n\n // should we observe DOM mutations\n observeMutations(f);\n\n // this is a new fitty so we need to validate if it's styles are in order\n f.newbie = true;\n\n // because it's a new fitty it should also be dirty, we want it to redraw on the first loop\n f.dirty = true;\n\n // we want to be able to update this fitty\n fitties.push(f);\n };\n\n var destroy = function destroy(f) {\n return function () {\n\n // remove from fitties array\n fitties = fitties.filter(function (_) {\n return _.element !== f.element;\n });\n\n // stop observing DOM\n if (f.observeMutations) f.observer.disconnect();\n\n // reset the CSS properties we changes\n f.element.style.whiteSpace = f.originalStyle.whiteSpace;\n f.element.style.display = f.originalStyle.display;\n f.element.style.fontSize = f.originalStyle.fontSize;\n };\n };\n\n // add a new fitty, does not redraw said fitty\n var subscribe = function subscribe(f) {\n return function () {\n if (f.active) return;\n f.active = true;\n requestRedraw();\n };\n };\n\n // remove an existing fitty\n var unsubscribe = function unsubscribe(f) {\n return function () {\n return f.active = false;\n };\n };\n\n var observeMutations = function observeMutations(f) {\n\n // no observing?\n if (!f.observeMutations) return;\n\n // start observing mutations\n f.observer = new MutationObserver(fit(f, DrawState.DIRTY_CONTENT));\n\n // start observing\n f.observer.observe(f.element, f.observeMutations);\n };\n\n // default mutation observer settings\n var mutationObserverDefaultSetting = {\n subtree: true,\n childList: true,\n characterData: true\n };\n\n // default fitty options\n var defaultOptions = {\n minSize: 16,\n maxSize: 512,\n multiLine: true,\n observeMutations: 'MutationObserver' in w ? mutationObserverDefaultSetting : false\n };\n\n // array of elements in, fitty instances out\n function fittyCreate(elements, options) {\n\n // set options object\n var fittyOptions = _extends({}, defaultOptions, options);\n\n // create fitties\n var publicFitties = elements.map(function (element) {\n\n // create fitty instance\n var f = _extends({}, fittyOptions, {\n\n // internal options for this fitty\n element: element,\n active: true\n });\n\n // initialise this fitty\n init(f);\n\n // expose API\n return {\n element: element,\n fit: fit(f, DrawState.DIRTY),\n unfreeze: subscribe(f),\n freeze: unsubscribe(f),\n unsubscribe: destroy(f)\n };\n });\n\n // call redraw on newly initiated fitties\n requestRedraw();\n\n // expose fitties\n return publicFitties;\n }\n\n // fitty creation function\n function fitty(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\n // if target is a string\n return typeof target === 'string' ?\n\n // treat it as a querySelector\n fittyCreate(toArray(document.querySelectorAll(target)), options) :\n\n // create single fitty\n fittyCreate([target], options)[0];\n }\n\n // handles viewport changes, redraws all fitties, but only does so after a timeout\n var resizeDebounce = null;\n var onWindowResized = function onWindowResized() {\n w.clearTimeout(resizeDebounce);\n resizeDebounce = w.setTimeout(redrawAll(DrawState.DIRTY_LAYOUT), fitty.observeWindowDelay);\n };\n\n // define observe window property, so when we set it to true or false events are automatically added and removed\n var events = ['resize', 'orientationchange'];\n Object.defineProperty(fitty, 'observeWindow', {\n set: function set(enabled) {\n var method = (enabled ? 'add' : 'remove') + 'EventListener';\n events.forEach(function (e) {\n w[method](e, onWindowResized);\n });\n }\n });\n\n // fitty global properties (by setting observeWindow to true the events above get added)\n fitty.observeWindow = true;\n fitty.observeWindowDelay = 100;\n\n // public fit all method, will force redraw no matter what\n fitty.fitAll = redrawAll(DrawState.DIRTY);\n\n // export our fitty function, we don't want to keep it to our selves\n return fitty;\n}(typeof window === 'undefined' ? null : window);","import { HORIZONTAL_SLIDES_SELECTOR, VERTICAL_SLIDES_SELECTOR } from '../utils/constants.js'\nimport { extend, queryAll, closest } from '../utils/util.js'\nimport { isMobile } from '../utils/device.js'\n\nimport fitty from 'fitty';\n\n/**\n * Handles loading, unloading and playback of slide\n * content such as images, videos and iframes.\n */\nexport default class SlideContent {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.startEmbeddedIframe = this.startEmbeddedIframe.bind( this );\n\n\t}\n\n\t/**\n\t * Should the given element be preloaded?\n\t * Decides based on local element attributes and global config.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tshouldPreload( element ) {\n\n\t\t// Prefer an explicit global preload setting\n\t\tlet preload = this.Reveal.getConfig().preloadIframes;\n\n\t\t// If no global setting is available, fall back on the element's\n\t\t// own preload setting\n\t\tif( typeof preload !== 'boolean' ) {\n\t\t\tpreload = element.hasAttribute( 'data-preload' );\n\t\t}\n\n\t\treturn preload;\n\t}\n\n\t/**\n\t * Called when the given slide is within the configured view\n\t * distance. Shows the slide element and loads any content\n\t * that is set to load lazily (data-src).\n\t *\n\t * @param {HTMLElement} slide Slide to show\n\t */\n\tload( slide, options = {} ) {\n\n\t\t// Show the slide element\n\t\tslide.style.display = this.Reveal.getConfig().display;\n\n\t\t// Media elements with data-src attributes\n\t\tqueryAll( slide, 'img[data-src], video[data-src], audio[data-src], iframe[data-src]' ).forEach( element => {\n\t\t\tif( element.tagName !== 'IFRAME' || this.shouldPreload( element ) ) {\n\t\t\t\telement.setAttribute( 'src', element.getAttribute( 'data-src' ) );\n\t\t\t\telement.setAttribute( 'data-lazy-loaded', '' );\n\t\t\t\telement.removeAttribute( 'data-src' );\n\t\t\t}\n\t\t} );\n\n\t\t// Media elements with <source> children\n\t\tqueryAll( slide, 'video, audio' ).forEach( media => {\n\t\t\tlet sources = 0;\n\n\t\t\tqueryAll( media, 'source[data-src]' ).forEach( source => {\n\t\t\t\tsource.setAttribute( 'src', source.getAttribute( 'data-src' ) );\n\t\t\t\tsource.removeAttribute( 'data-src' );\n\t\t\t\tsource.setAttribute( 'data-lazy-loaded', '' );\n\t\t\t\tsources += 1;\n\t\t\t} );\n\n\t\t\t// Enable inline video playback in mobile Safari\n\t\t\tif( isMobile && media.tagName === 'VIDEO' ) {\n\t\t\t\tmedia.setAttribute( 'playsinline', '' );\n\t\t\t}\n\n\t\t\t// If we rewrote sources for this video/audio element, we need\n\t\t\t// to manually tell it to load from its new origin\n\t\t\tif( sources > 0 ) {\n\t\t\t\tmedia.load();\n\t\t\t}\n\t\t} );\n\n\n\t\t// Show the corresponding background element\n\t\tlet background = slide.slideBackgroundElement;\n\t\tif( background ) {\n\t\t\tbackground.style.display = 'block';\n\n\t\t\tlet backgroundContent = slide.slideBackgroundContentElement;\n\t\t\tlet backgroundIframe = slide.getAttribute( 'data-background-iframe' );\n\n\t\t\t// If the background contains media, load it\n\t\t\tif( background.hasAttribute( 'data-loaded' ) === false ) {\n\t\t\t\tbackground.setAttribute( 'data-loaded', 'true' );\n\n\t\t\t\tlet backgroundImage = slide.getAttribute( 'data-background-image' ),\n\t\t\t\t\tbackgroundVideo = slide.getAttribute( 'data-background-video' ),\n\t\t\t\t\tbackgroundVideoLoop = slide.hasAttribute( 'data-background-video-loop' ),\n\t\t\t\t\tbackgroundVideoMuted = slide.hasAttribute( 'data-background-video-muted' );\n\n\t\t\t\t// Images\n\t\t\t\tif( backgroundImage ) {\n\t\t\t\t\t// base64\n\t\t\t\t\tif( /^data:/.test( backgroundImage.trim() ) ) {\n\t\t\t\t\t\tbackgroundContent.style.backgroundImage = `url(${backgroundImage.trim()})`;\n\t\t\t\t\t}\n\t\t\t\t\t// URL(s)\n\t\t\t\t\telse {\n\t\t\t\t\t\tbackgroundContent.style.backgroundImage = backgroundImage.split( ',' ).map( background => {\n\t\t\t\t\t\t\treturn `url(${encodeURI(background.trim())})`;\n\t\t\t\t\t\t}).join( ',' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Videos\n\t\t\t\telse if ( backgroundVideo && !this.Reveal.isSpeakerNotes() ) {\n\t\t\t\t\tlet video = document.createElement( 'video' );\n\n\t\t\t\t\tif( backgroundVideoLoop ) {\n\t\t\t\t\t\tvideo.setAttribute( 'loop', '' );\n\t\t\t\t\t}\n\n\t\t\t\t\tif( backgroundVideoMuted ) {\n\t\t\t\t\t\tvideo.muted = true;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Enable inline playback in mobile Safari\n\t\t\t\t\t//\n\t\t\t\t\t// Mute is required for video to play when using\n\t\t\t\t\t// swipe gestures to navigate since they don't\n\t\t\t\t\t// count as direct user actions :'(\n\t\t\t\t\tif( isMobile ) {\n\t\t\t\t\t\tvideo.muted = true;\n\t\t\t\t\t\tvideo.setAttribute( 'playsinline', '' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Support comma separated lists of video sources\n\t\t\t\t\tbackgroundVideo.split( ',' ).forEach( source => {\n\t\t\t\t\t\tvideo.innerHTML += '<source src=\"'+ source +'\">';\n\t\t\t\t\t} );\n\n\t\t\t\t\tbackgroundContent.appendChild( video );\n\t\t\t\t}\n\t\t\t\t// Iframes\n\t\t\t\telse if( backgroundIframe && options.excludeIframes !== true ) {\n\t\t\t\t\tlet iframe = document.createElement( 'iframe' );\n\t\t\t\t\tiframe.setAttribute( 'allowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'mozallowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'webkitallowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'allow', 'autoplay' );\n\n\t\t\t\t\tiframe.setAttribute( 'data-src', backgroundIframe );\n\n\t\t\t\t\tiframe.style.width = '100%';\n\t\t\t\t\tiframe.style.height = '100%';\n\t\t\t\t\tiframe.style.maxHeight = '100%';\n\t\t\t\t\tiframe.style.maxWidth = '100%';\n\n\t\t\t\t\tbackgroundContent.appendChild( iframe );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Start loading preloadable iframes\n\t\t\tlet backgroundIframeElement = backgroundContent.querySelector( 'iframe[data-src]' );\n\t\t\tif( backgroundIframeElement ) {\n\n\t\t\t\t// Check if this iframe is eligible to be preloaded\n\t\t\t\tif( this.shouldPreload( background ) && !/autoplay=(1|true|yes)/gi.test( backgroundIframe ) ) {\n\t\t\t\t\tif( backgroundIframeElement.getAttribute( 'src' ) !== backgroundIframe ) {\n\t\t\t\t\t\tbackgroundIframeElement.setAttribute( 'src', backgroundIframe );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\tthis.layout( slide );\n\n\t}\n\n\t/**\n\t * Applies JS-dependent layout helpers for the given slide,\n\t * if there are any.\n\t */\n\tlayout( slide ) {\n\n\t\t// Autosize text with the r-fit-text class based on the\n\t\t// size of its container. This needs to happen after the\n\t\t// slide is visible in order to measure the text.\n\t\tArray.from( slide.querySelectorAll( '.r-fit-text' ) ).forEach( element => {\n\t\t\tfitty( element, {\n\t\t\t\tminSize: 24,\n\t\t\t\tmaxSize: this.Reveal.getConfig().height * 0.8,\n\t\t\t\tobserveMutations: false,\n\t\t\t\tobserveWindow: false\n\t\t\t} );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Unloads and hides the given slide. This is called when the\n\t * slide is moved outside of the configured view distance.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tunload( slide ) {\n\n\t\t// Hide the slide element\n\t\tslide.style.display = 'none';\n\n\t\t// Hide the corresponding background element\n\t\tlet background = this.Reveal.getSlideBackground( slide );\n\t\tif( background ) {\n\t\t\tbackground.style.display = 'none';\n\n\t\t\t// Unload any background iframes\n\t\t\tqueryAll( background, 'iframe[src]' ).forEach( element => {\n\t\t\t\telement.removeAttribute( 'src' );\n\t\t\t} );\n\t\t}\n\n\t\t// Reset lazy-loaded media elements with src attributes\n\t\tqueryAll( slide, 'video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]' ).forEach( element => {\n\t\t\telement.setAttribute( 'data-src', element.getAttribute( 'src' ) );\n\t\t\telement.removeAttribute( 'src' );\n\t\t} );\n\n\t\t// Reset lazy-loaded media elements with <source> children\n\t\tqueryAll( slide, 'video[data-lazy-loaded] source[src], audio source[src]' ).forEach( source => {\n\t\t\tsource.setAttribute( 'data-src', source.getAttribute( 'src' ) );\n\t\t\tsource.removeAttribute( 'src' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Enforces origin-specific format rules for embedded media.\n\t */\n\tformatEmbeddedContent() {\n\n\t\tlet _appendParamToIframeSource = ( sourceAttribute, sourceURL, param ) => {\n\t\t\tqueryAll( this.Reveal.getSlidesElement(), 'iframe['+ sourceAttribute +'*=\"'+ sourceURL +'\"]' ).forEach( el => {\n\t\t\t\tlet src = el.getAttribute( sourceAttribute );\n\t\t\t\tif( src && src.indexOf( param ) === -1 ) {\n\t\t\t\t\tel.setAttribute( sourceAttribute, src + ( !/\\?/.test( src ) ? '?' : '&' ) + param );\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\t// YouTube frames must include \"?enablejsapi=1\"\n\t\t_appendParamToIframeSource( 'src', 'youtube.com/embed/', 'enablejsapi=1' );\n\t\t_appendParamToIframeSource( 'data-src', 'youtube.com/embed/', 'enablejsapi=1' );\n\n\t\t// Vimeo frames must include \"?api=1\"\n\t\t_appendParamToIframeSource( 'src', 'player.vimeo.com/', 'api=1' );\n\t\t_appendParamToIframeSource( 'data-src', 'player.vimeo.com/', 'api=1' );\n\n\t}\n\n\t/**\n\t * Start playback of any embedded content inside of\n\t * the given element.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tstartEmbeddedContent( element ) {\n\n\t\tif( element && !this.Reveal.isSpeakerNotes() ) {\n\n\t\t\t// Restart GIFs\n\t\t\tqueryAll( element, 'img[src$=\".gif\"]' ).forEach( el => {\n\t\t\t\t// Setting the same unchanged source like this was confirmed\n\t\t\t\t// to work in Chrome, FF & Safari\n\t\t\t\tel.setAttribute( 'src', el.getAttribute( 'src' ) );\n\t\t\t} );\n\n\t\t\t// HTML5 media elements\n\t\t\tqueryAll( element, 'video, audio' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Prefer an explicit global autoplay setting\n\t\t\t\tlet autoplay = this.Reveal.getConfig().autoPlayMedia;\n\n\t\t\t\t// If no global setting is available, fall back on the element's\n\t\t\t\t// own autoplay setting\n\t\t\t\tif( typeof autoplay !== 'boolean' ) {\n\t\t\t\t\tautoplay = el.hasAttribute( 'data-autoplay' ) || !!closest( el, '.slide-background' );\n\t\t\t\t}\n\n\t\t\t\tif( autoplay && typeof el.play === 'function' ) {\n\n\t\t\t\t\t// If the media is ready, start playback\n\t\t\t\t\tif( el.readyState > 1 ) {\n\t\t\t\t\t\tthis.startEmbeddedMedia( { target: el } );\n\t\t\t\t\t}\n\t\t\t\t\t// Mobile devices never fire a loaded event so instead\n\t\t\t\t\t// of waiting, we initiate playback\n\t\t\t\t\telse if( isMobile ) {\n\t\t\t\t\t\tlet promise = el.play();\n\n\t\t\t\t\t\t// If autoplay does not work, ensure that the controls are visible so\n\t\t\t\t\t\t// that the viewer can start the media on their own\n\t\t\t\t\t\tif( promise && typeof promise.catch === 'function' && el.controls === false ) {\n\t\t\t\t\t\t\tpromise.catch( () => {\n\t\t\t\t\t\t\t\tel.controls = true;\n\n\t\t\t\t\t\t\t\t// Once the video does start playing, hide the controls again\n\t\t\t\t\t\t\t\tel.addEventListener( 'play', () => {\n\t\t\t\t\t\t\t\t\tel.controls = false;\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// If the media isn't loaded, wait before playing\n\t\t\t\t\telse {\n\t\t\t\t\t\tel.removeEventListener( 'loadeddata', this.startEmbeddedMedia ); // remove first to avoid dupes\n\t\t\t\t\t\tel.addEventListener( 'loadeddata', this.startEmbeddedMedia );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Normal iframes\n\t\t\tqueryAll( element, 'iframe[src]' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.startEmbeddedIframe( { target: el } );\n\t\t\t} );\n\n\t\t\t// Lazy loading iframes\n\t\t\tqueryAll( element, 'iframe[data-src]' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif( el.getAttribute( 'src' ) !== el.getAttribute( 'data-src' ) ) {\n\t\t\t\t\tel.removeEventListener( 'load', this.startEmbeddedIframe ); // remove first to avoid dupes\n\t\t\t\t\tel.addEventListener( 'load', this.startEmbeddedIframe );\n\t\t\t\t\tel.setAttribute( 'src', el.getAttribute( 'data-src' ) );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Starts playing an embedded video/audio element after\n\t * it has finished loading.\n\t *\n\t * @param {object} event\n\t */\n\tstartEmbeddedMedia( event ) {\n\n\t\tlet isAttachedToDOM = !!closest( event.target, 'html' ),\n\t\t\tisVisible \t\t= !!closest( event.target, '.present' );\n\n\t\tif( isAttachedToDOM && isVisible ) {\n\t\t\tevent.target.currentTime = 0;\n\t\t\tevent.target.play();\n\t\t}\n\n\t\tevent.target.removeEventListener( 'loadeddata', this.startEmbeddedMedia );\n\n\t}\n\n\t/**\n\t * \"Starts\" the content of an embedded iframe using the\n\t * postMessage API.\n\t *\n\t * @param {object} event\n\t */\n\tstartEmbeddedIframe( event ) {\n\n\t\tlet iframe = event.target;\n\n\t\tif( iframe && iframe.contentWindow ) {\n\n\t\t\tlet isAttachedToDOM = !!closest( event.target, 'html' ),\n\t\t\t\tisVisible \t\t= !!closest( event.target, '.present' );\n\n\t\t\tif( isAttachedToDOM && isVisible ) {\n\n\t\t\t\t// Prefer an explicit global autoplay setting\n\t\t\t\tlet autoplay = this.Reveal.getConfig().autoPlayMedia;\n\n\t\t\t\t// If no global setting is available, fall back on the element's\n\t\t\t\t// own autoplay setting\n\t\t\t\tif( typeof autoplay !== 'boolean' ) {\n\t\t\t\t\tautoplay = iframe.hasAttribute( 'data-autoplay' ) || !!closest( iframe, '.slide-background' );\n\t\t\t\t}\n\n\t\t\t\t// YouTube postMessage API\n\t\t\t\tif( /youtube\\.com\\/embed\\//.test( iframe.getAttribute( 'src' ) ) && autoplay ) {\n\t\t\t\t\tiframe.contentWindow.postMessage( '{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*' );\n\t\t\t\t}\n\t\t\t\t// Vimeo postMessage API\n\t\t\t\telse if( /player\\.vimeo\\.com\\//.test( iframe.getAttribute( 'src' ) ) && autoplay ) {\n\t\t\t\t\tiframe.contentWindow.postMessage( '{\"method\":\"play\"}', '*' );\n\t\t\t\t}\n\t\t\t\t// Generic postMessage API\n\t\t\t\telse {\n\t\t\t\t\tiframe.contentWindow.postMessage( 'slide:start', '*' );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Stop playback of any embedded content inside of\n\t * the targeted slide.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tstopEmbeddedContent( element, options = {} ) {\n\n\t\toptions = extend( {\n\t\t\t// Defaults\n\t\t\tunloadIframes: true\n\t\t}, options );\n\n\t\tif( element && element.parentNode ) {\n\t\t\t// HTML5 media elements\n\t\t\tqueryAll( element, 'video, audio' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && typeof el.pause === 'function' ) {\n\t\t\t\t\tel.setAttribute('data-paused-by-reveal', '');\n\t\t\t\t\tel.pause();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Generic postMessage API for non-lazy loaded iframes\n\t\t\tqueryAll( element, 'iframe' ).forEach( el => {\n\t\t\t\tif( el.contentWindow ) el.contentWindow.postMessage( 'slide:stop', '*' );\n\t\t\t\tel.removeEventListener( 'load', this.startEmbeddedIframe );\n\t\t\t});\n\n\t\t\t// YouTube postMessage API\n\t\t\tqueryAll( element, 'iframe[src*=\"youtube.com/embed/\"]' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && el.contentWindow && typeof el.contentWindow.postMessage === 'function' ) {\n\t\t\t\t\tel.contentWindow.postMessage( '{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*' );\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Vimeo postMessage API\n\t\t\tqueryAll( element, 'iframe[src*=\"player.vimeo.com/\"]' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && el.contentWindow && typeof el.contentWindow.postMessage === 'function' ) {\n\t\t\t\t\tel.contentWindow.postMessage( '{\"method\":\"pause\"}', '*' );\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif( options.unloadIframes === true ) {\n\t\t\t\t// Unload lazy-loaded iframes\n\t\t\t\tqueryAll( element, 'iframe[data-src]' ).forEach( el => {\n\t\t\t\t\t// Only removing the src doesn't actually unload the frame\n\t\t\t\t\t// in all browsers (Firefox) so we set it to blank first\n\t\t\t\t\tel.setAttribute( 'src', 'about:blank' );\n\t\t\t\t\tel.removeAttribute( 'src' );\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t}\n\n}","/**\n * Handles the display of reveal.js' optional slide number.\n */\nexport default class SlideNumber {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'slide-number';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tlet slideNumberDisplay = 'none';\n\t\tif( config.slideNumber && !this.Reveal.isPrintingPDF() ) {\n\t\t\tif( config.showSlideNumber === 'all' ) {\n\t\t\t\tslideNumberDisplay = 'block';\n\t\t\t}\n\t\t\telse if( config.showSlideNumber === 'speaker' && this.Reveal.isSpeakerNotes() ) {\n\t\t\t\tslideNumberDisplay = 'block';\n\t\t\t}\n\t\t}\n\n\t\tthis.element.style.display = slideNumberDisplay;\n\n\t}\n\n\t/**\n\t * Updates the slide number to match the current slide.\n\t */\n\tupdate() {\n\n\t\t// Update slide number if enabled\n\t\tif( this.Reveal.getConfig().slideNumber && this.element ) {\n\t\t\tthis.element.innerHTML = this.getSlideNumber();\n\t\t}\n\n\t}\n\n\t/**\n\t * Returns the HTML string corresponding to the current slide\n\t * number, including formatting.\n\t */\n\tgetSlideNumber( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\t\tlet value;\n\t\tlet format = 'h.v';\n\n\t\tif ( typeof config.slideNumber === 'function' ) {\n\t\t\tvalue = config.slideNumber( slide );\n\t\t} else {\n\t\t\t// Check if a custom number format is available\n\t\t\tif( typeof config.slideNumber === 'string' ) {\n\t\t\t\tformat = config.slideNumber;\n\t\t\t}\n\n\t\t\t// If there are ONLY vertical slides in this deck, always use\n\t\t\t// a flattened slide number\n\t\t\tif( !/c/.test( format ) && this.Reveal.getHorizontalSlides().length === 1 ) {\n\t\t\t\tformat = 'c';\n\t\t\t}\n\n\t\t\t// Offset the current slide number by 1 to make it 1-indexed\n\t\t\tlet horizontalOffset = slide && slide.dataset.visibility === 'uncounted' ? 0 : 1;\n\n\t\t\tvalue = [];\n\t\t\tswitch( format ) {\n\t\t\t\tcase 'c':\n\t\t\t\t\tvalue.push( this.Reveal.getSlidePastCount( slide ) + horizontalOffset );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'c/t':\n\t\t\t\t\tvalue.push( this.Reveal.getSlidePastCount( slide ) + horizontalOffset, '/', this.Reveal.getTotalSlides() );\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tlet indices = this.Reveal.getIndices( slide );\n\t\t\t\t\tvalue.push( indices.h + horizontalOffset );\n\t\t\t\t\tlet sep = format === 'h/v' ? '/' : '.';\n\t\t\t\t\tif( this.Reveal.isVerticalSlide( slide ) ) value.push( sep, indices.v + 1 );\n\t\t\t}\n\t\t}\n\n\t\tlet url = '#' + this.Reveal.location.getHash( slide );\n\t\treturn this.formatNumber( value[0], value[1], value[2], url );\n\n\t}\n\n\t/**\n\t * Applies HTML formatting to a slide number before it's\n\t * written to the DOM.\n\t *\n\t * @param {number} a Current slide\n\t * @param {string} delimiter Character to separate slide numbers\n\t * @param {(number|*)} b Total slides\n\t * @param {HTMLElement} [url='#'+locationHash()] The url to link to\n\t * @return {string} HTML string fragment\n\t */\n\tformatNumber( a, delimiter, b, url = '#' + this.Reveal.location.getHash() ) {\n\n\t\tif( typeof b === 'number' && !isNaN( b ) ) {\n\t\t\treturn `<a href=\"${url}\">\n\t\t\t\t\t<span class=\"slide-number-a\">${a}</span>\n\t\t\t\t\t<span class=\"slide-number-delimiter\">${delimiter}</span>\n\t\t\t\t\t<span class=\"slide-number-b\">${b}</span>\n\t\t\t\t\t</a>`;\n\t\t}\n\t\telse {\n\t\t\treturn `<a href=\"${url}\">\n\t\t\t\t\t<span class=\"slide-number-a\">${a}</span>\n\t\t\t\t\t</a>`;\n\t\t}\n\n\t}\n\n}","/**\n * Converts various color input formats to an {r:0,g:0,b:0} object.\n *\n * @param {string} color The string representation of a color\n * @example\n * colorToRgb('#000');\n * @example\n * colorToRgb('#000000');\n * @example\n * colorToRgb('rgb(0,0,0)');\n * @example\n * colorToRgb('rgba(0,0,0)');\n *\n * @return {{r: number, g: number, b: number, [a]: number}|null}\n */\nexport const colorToRgb = ( color ) => {\n\n\tlet hex3 = color.match( /^#([0-9a-f]{3})$/i );\n\tif( hex3 && hex3[1] ) {\n\t\thex3 = hex3[1];\n\t\treturn {\n\t\t\tr: parseInt( hex3.charAt( 0 ), 16 ) * 0x11,\n\t\t\tg: parseInt( hex3.charAt( 1 ), 16 ) * 0x11,\n\t\t\tb: parseInt( hex3.charAt( 2 ), 16 ) * 0x11\n\t\t};\n\t}\n\n\tlet hex6 = color.match( /^#([0-9a-f]{6})$/i );\n\tif( hex6 && hex6[1] ) {\n\t\thex6 = hex6[1];\n\t\treturn {\n\t\t\tr: parseInt( hex6.substr( 0, 2 ), 16 ),\n\t\t\tg: parseInt( hex6.substr( 2, 2 ), 16 ),\n\t\t\tb: parseInt( hex6.substr( 4, 2 ), 16 )\n\t\t};\n\t}\n\n\tlet rgb = color.match( /^rgb\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\)$/i );\n\tif( rgb ) {\n\t\treturn {\n\t\t\tr: parseInt( rgb[1], 10 ),\n\t\t\tg: parseInt( rgb[2], 10 ),\n\t\t\tb: parseInt( rgb[3], 10 )\n\t\t};\n\t}\n\n\tlet rgba = color.match( /^rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\,\\s*([\\d]+|[\\d]*.[\\d]+)\\s*\\)$/i );\n\tif( rgba ) {\n\t\treturn {\n\t\t\tr: parseInt( rgba[1], 10 ),\n\t\t\tg: parseInt( rgba[2], 10 ),\n\t\t\tb: parseInt( rgba[3], 10 ),\n\t\t\ta: parseFloat( rgba[4] )\n\t\t};\n\t}\n\n\treturn null;\n\n}\n\n/**\n * Calculates brightness on a scale of 0-255.\n *\n * @param {string} color See colorToRgb for supported formats.\n * @see {@link colorToRgb}\n */\nexport const colorBrightness = ( color ) => {\n\n\tif( typeof color === 'string' ) color = colorToRgb( color );\n\n\tif( color ) {\n\t\treturn ( color.r * 299 + color.g * 587 + color.b * 114 ) / 1000;\n\t}\n\n\treturn null;\n\n}","import { queryAll } from '../utils/util.js'\nimport { colorToRgb, colorBrightness } from '../utils/color.js'\n\n/**\n * Creates and updates slide backgrounds.\n */\nexport default class Backgrounds {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'backgrounds';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Creates the slide background elements and appends them\n\t * to the background container. One element is created per\n\t * slide no matter if the given slide has visible background.\n\t */\n\tcreate() {\n\n\t\t// Clear prior backgrounds\n\t\tthis.element.innerHTML = '';\n\t\tthis.element.classList.add( 'no-transition' );\n\n\t\t// Iterate over all horizontal slides\n\t\tthis.Reveal.getHorizontalSlides().forEach( slideh => {\n\n\t\t\tlet backgroundStack = this.createBackground( slideh, this.element );\n\n\t\t\t// Iterate over all vertical slides\n\t\t\tqueryAll( slideh, 'section' ).forEach( slidev => {\n\n\t\t\t\tthis.createBackground( slidev, backgroundStack );\n\n\t\t\t\tbackgroundStack.classList.add( 'stack' );\n\n\t\t\t} );\n\n\t\t} );\n\n\t\t// Add parallax background if specified\n\t\tif( this.Reveal.getConfig().parallaxBackgroundImage ) {\n\n\t\t\tthis.element.style.backgroundImage = 'url(\"' + this.Reveal.getConfig().parallaxBackgroundImage + '\")';\n\t\t\tthis.element.style.backgroundSize = this.Reveal.getConfig().parallaxBackgroundSize;\n\t\t\tthis.element.style.backgroundRepeat = this.Reveal.getConfig().parallaxBackgroundRepeat;\n\t\t\tthis.element.style.backgroundPosition = this.Reveal.getConfig().parallaxBackgroundPosition;\n\n\t\t\t// Make sure the below properties are set on the element - these properties are\n\t\t\t// needed for proper transitions to be set on the element via CSS. To remove\n\t\t\t// annoying background slide-in effect when the presentation starts, apply\n\t\t\t// these properties after short time delay\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.Reveal.getRevealElement().classList.add( 'has-parallax-background' );\n\t\t\t}, 1 );\n\n\t\t}\n\t\telse {\n\n\t\t\tthis.element.style.backgroundImage = '';\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'has-parallax-background' );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Creates a background for the given slide.\n\t *\n\t * @param {HTMLElement} slide\n\t * @param {HTMLElement} container The element that the background\n\t * should be appended to\n\t * @return {HTMLElement} New background div\n\t */\n\tcreateBackground( slide, container ) {\n\n\t\t// Main slide background element\n\t\tlet element = document.createElement( 'div' );\n\t\telement.className = 'slide-background ' + slide.className.replace( /present|past|future/, '' );\n\n\t\t// Inner background element that wraps images/videos/iframes\n\t\tlet contentElement = document.createElement( 'div' );\n\t\tcontentElement.className = 'slide-background-content';\n\n\t\telement.appendChild( contentElement );\n\t\tcontainer.appendChild( element );\n\n\t\tslide.slideBackgroundElement = element;\n\t\tslide.slideBackgroundContentElement = contentElement;\n\n\t\t// Syncs the background to reflect all current background settings\n\t\tthis.sync( slide );\n\n\t\treturn element;\n\n\t}\n\n\t/**\n\t * Renders all of the visual properties of a slide background\n\t * based on the various background attributes.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tsync( slide ) {\n\n\t\tconst element = slide.slideBackgroundElement,\n\t\t\tcontentElement = slide.slideBackgroundContentElement;\n\n\t\tconst data = {\n\t\t\tbackground: slide.getAttribute( 'data-background' ),\n\t\t\tbackgroundSize: slide.getAttribute( 'data-background-size' ),\n\t\t\tbackgroundImage: slide.getAttribute( 'data-background-image' ),\n\t\t\tbackgroundVideo: slide.getAttribute( 'data-background-video' ),\n\t\t\tbackgroundIframe: slide.getAttribute( 'data-background-iframe' ),\n\t\t\tbackgroundColor: slide.getAttribute( 'data-background-color' ),\n\t\t\tbackgroundRepeat: slide.getAttribute( 'data-background-repeat' ),\n\t\t\tbackgroundPosition: slide.getAttribute( 'data-background-position' ),\n\t\t\tbackgroundTransition: slide.getAttribute( 'data-background-transition' ),\n\t\t\tbackgroundOpacity: slide.getAttribute( 'data-background-opacity' ),\n\t\t};\n\n\t\tconst dataPreload = slide.hasAttribute( 'data-preload' );\n\n\t\t// Reset the prior background state in case this is not the\n\t\t// initial sync\n\t\tslide.classList.remove( 'has-dark-background' );\n\t\tslide.classList.remove( 'has-light-background' );\n\n\t\telement.removeAttribute( 'data-loaded' );\n\t\telement.removeAttribute( 'data-background-hash' );\n\t\telement.removeAttribute( 'data-background-size' );\n\t\telement.removeAttribute( 'data-background-transition' );\n\t\telement.style.backgroundColor = '';\n\n\t\tcontentElement.style.backgroundSize = '';\n\t\tcontentElement.style.backgroundRepeat = '';\n\t\tcontentElement.style.backgroundPosition = '';\n\t\tcontentElement.style.backgroundImage = '';\n\t\tcontentElement.style.opacity = '';\n\t\tcontentElement.innerHTML = '';\n\n\t\tif( data.background ) {\n\t\t\t// Auto-wrap image urls in url(...)\n\t\t\tif( /^(http|file|\\/\\/)/gi.test( data.background ) || /\\.(svg|png|jpg|jpeg|gif|bmp)([?#\\s]|$)/gi.test( data.background ) ) {\n\t\t\t\tslide.setAttribute( 'data-background-image', data.background );\n\t\t\t}\n\t\t\telse {\n\t\t\t\telement.style.background = data.background;\n\t\t\t}\n\t\t}\n\n\t\t// Create a hash for this combination of background settings.\n\t\t// This is used to determine when two slide backgrounds are\n\t\t// the same.\n\t\tif( data.background || data.backgroundColor || data.backgroundImage || data.backgroundVideo || data.backgroundIframe ) {\n\t\t\telement.setAttribute( 'data-background-hash', data.background +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundSize +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundImage +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundVideo +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundIframe +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundColor +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundRepeat +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundPosition +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundTransition +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundOpacity );\n\t\t}\n\n\t\t// Additional and optional background properties\n\t\tif( data.backgroundSize ) element.setAttribute( 'data-background-size', data.backgroundSize );\n\t\tif( data.backgroundColor ) element.style.backgroundColor = data.backgroundColor;\n\t\tif( data.backgroundTransition ) element.setAttribute( 'data-background-transition', data.backgroundTransition );\n\n\t\tif( dataPreload ) element.setAttribute( 'data-preload', '' );\n\n\t\t// Background image options are set on the content wrapper\n\t\tif( data.backgroundSize ) contentElement.style.backgroundSize = data.backgroundSize;\n\t\tif( data.backgroundRepeat ) contentElement.style.backgroundRepeat = data.backgroundRepeat;\n\t\tif( data.backgroundPosition ) contentElement.style.backgroundPosition = data.backgroundPosition;\n\t\tif( data.backgroundOpacity ) contentElement.style.opacity = data.backgroundOpacity;\n\n\t\t// If this slide has a background color, we add a class that\n\t\t// signals if it is light or dark. If the slide has no background\n\t\t// color, no class will be added\n\t\tlet contrastColor = data.backgroundColor;\n\n\t\t// If no bg color was found, or it cannot be converted by colorToRgb, check the computed background\n\t\tif( !contrastColor || !colorToRgb( contrastColor ) ) {\n\t\t\tlet computedBackgroundStyle = window.getComputedStyle( element );\n\t\t\tif( computedBackgroundStyle && computedBackgroundStyle.backgroundColor ) {\n\t\t\t\tcontrastColor = computedBackgroundStyle.backgroundColor;\n\t\t\t}\n\t\t}\n\n\t\tif( contrastColor ) {\n\t\t\tconst rgb = colorToRgb( contrastColor );\n\n\t\t\t// Ignore fully transparent backgrounds. Some browsers return\n\t\t\t// rgba(0,0,0,0) when reading the computed background color of\n\t\t\t// an element with no background\n\t\t\tif( rgb && rgb.a !== 0 ) {\n\t\t\t\tif( colorBrightness( contrastColor ) < 128 ) {\n\t\t\t\t\tslide.classList.add( 'has-dark-background' );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tslide.classList.add( 'has-light-background' );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the background elements to reflect the current\n\t * slide.\n\t *\n\t * @param {boolean} includeAll If true, the backgrounds of\n\t * all vertical slides (not just the present) will be updated.\n\t */\n\tupdate( includeAll = false ) {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tlet indices = this.Reveal.getIndices();\n\n\t\tlet currentBackground = null;\n\n\t\t// Reverse past/future classes when in RTL mode\n\t\tlet horizontalPast = this.Reveal.getConfig().rtl ? 'future' : 'past',\n\t\t\thorizontalFuture = this.Reveal.getConfig().rtl ? 'past' : 'future';\n\n\t\t// Update the classes of all backgrounds to match the\n\t\t// states of their slides (past/present/future)\n\t\tArray.from( this.element.childNodes ).forEach( ( backgroundh, h ) => {\n\n\t\t\tbackgroundh.classList.remove( 'past', 'present', 'future' );\n\n\t\t\tif( h < indices.h ) {\n\t\t\t\tbackgroundh.classList.add( horizontalPast );\n\t\t\t}\n\t\t\telse if ( h > indices.h ) {\n\t\t\t\tbackgroundh.classList.add( horizontalFuture );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbackgroundh.classList.add( 'present' );\n\n\t\t\t\t// Store a reference to the current background element\n\t\t\t\tcurrentBackground = backgroundh;\n\t\t\t}\n\n\t\t\tif( includeAll || h === indices.h ) {\n\t\t\t\tqueryAll( backgroundh, '.slide-background' ).forEach( ( backgroundv, v ) => {\n\n\t\t\t\t\tbackgroundv.classList.remove( 'past', 'present', 'future' );\n\n\t\t\t\t\tif( v < indices.v ) {\n\t\t\t\t\t\tbackgroundv.classList.add( 'past' );\n\t\t\t\t\t}\n\t\t\t\t\telse if ( v > indices.v ) {\n\t\t\t\t\t\tbackgroundv.classList.add( 'future' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tbackgroundv.classList.add( 'present' );\n\n\t\t\t\t\t\t// Only if this is the present horizontal and vertical slide\n\t\t\t\t\t\tif( h === indices.h ) currentBackground = backgroundv;\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\t\t\t}\n\n\t\t} );\n\n\t\t// Stop content inside of previous backgrounds\n\t\tif( this.previousBackground ) {\n\n\t\t\tthis.Reveal.slideContent.stopEmbeddedContent( this.previousBackground, { unloadIframes: !this.Reveal.slideContent.shouldPreload( this.previousBackground ) } );\n\n\t\t}\n\n\t\t// Start content in the current background\n\t\tif( currentBackground ) {\n\n\t\t\tthis.Reveal.slideContent.startEmbeddedContent( currentBackground );\n\n\t\t\tlet currentBackgroundContent = currentBackground.querySelector( '.slide-background-content' );\n\t\t\tif( currentBackgroundContent ) {\n\n\t\t\t\tlet backgroundImageURL = currentBackgroundContent.style.backgroundImage || '';\n\n\t\t\t\t// Restart GIFs (doesn't work in Firefox)\n\t\t\t\tif( /\\.gif/i.test( backgroundImageURL ) ) {\n\t\t\t\t\tcurrentBackgroundContent.style.backgroundImage = '';\n\t\t\t\t\twindow.getComputedStyle( currentBackgroundContent ).opacity;\n\t\t\t\t\tcurrentBackgroundContent.style.backgroundImage = backgroundImageURL;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// Don't transition between identical backgrounds. This\n\t\t\t// prevents unwanted flicker.\n\t\t\tlet previousBackgroundHash = this.previousBackground ? this.previousBackground.getAttribute( 'data-background-hash' ) : null;\n\t\t\tlet currentBackgroundHash = currentBackground.getAttribute( 'data-background-hash' );\n\t\t\tif( currentBackgroundHash && currentBackgroundHash === previousBackgroundHash && currentBackground !== this.previousBackground ) {\n\t\t\t\tthis.element.classList.add( 'no-transition' );\n\t\t\t}\n\n\t\t\tthis.previousBackground = currentBackground;\n\n\t\t}\n\n\t\t// If there's a background brightness flag for this slide,\n\t\t// bubble it to the .reveal container\n\t\tif( currentSlide ) {\n\t\t\t[ 'has-light-background', 'has-dark-background' ].forEach( classToBubble => {\n\t\t\t\tif( currentSlide.classList.contains( classToBubble ) ) {\n\t\t\t\t\tthis.Reveal.getRevealElement().classList.add( classToBubble );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.getRevealElement().classList.remove( classToBubble );\n\t\t\t\t}\n\t\t\t}, this );\n\t\t}\n\n\t\t// Allow the first background to apply without transition\n\t\tsetTimeout( () => {\n\t\t\tthis.element.classList.remove( 'no-transition' );\n\t\t}, 1 );\n\n\t}\n\n\t/**\n\t * Updates the position of the parallax background based\n\t * on the current slide index.\n\t */\n\tupdateParallax() {\n\n\t\tlet indices = this.Reveal.getIndices();\n\n\t\tif( this.Reveal.getConfig().parallaxBackgroundImage ) {\n\n\t\t\tlet horizontalSlides = this.Reveal.getHorizontalSlides(),\n\t\t\t\tverticalSlides = this.Reveal.getVerticalSlides();\n\n\t\t\tlet backgroundSize = this.element.style.backgroundSize.split( ' ' ),\n\t\t\t\tbackgroundWidth, backgroundHeight;\n\n\t\t\tif( backgroundSize.length === 1 ) {\n\t\t\t\tbackgroundWidth = backgroundHeight = parseInt( backgroundSize[0], 10 );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbackgroundWidth = parseInt( backgroundSize[0], 10 );\n\t\t\t\tbackgroundHeight = parseInt( backgroundSize[1], 10 );\n\t\t\t}\n\n\t\t\tlet slideWidth = this.element.offsetWidth,\n\t\t\t\thorizontalSlideCount = horizontalSlides.length,\n\t\t\t\thorizontalOffsetMultiplier,\n\t\t\t\thorizontalOffset;\n\n\t\t\tif( typeof this.Reveal.getConfig().parallaxBackgroundHorizontal === 'number' ) {\n\t\t\t\thorizontalOffsetMultiplier = this.Reveal.getConfig().parallaxBackgroundHorizontal;\n\t\t\t}\n\t\t\telse {\n\t\t\t\thorizontalOffsetMultiplier = horizontalSlideCount > 1 ? ( backgroundWidth - slideWidth ) / ( horizontalSlideCount-1 ) : 0;\n\t\t\t}\n\n\t\t\thorizontalOffset = horizontalOffsetMultiplier * indices.h * -1;\n\n\t\t\tlet slideHeight = this.element.offsetHeight,\n\t\t\t\tverticalSlideCount = verticalSlides.length,\n\t\t\t\tverticalOffsetMultiplier,\n\t\t\t\tverticalOffset;\n\n\t\t\tif( typeof this.Reveal.getConfig().parallaxBackgroundVertical === 'number' ) {\n\t\t\t\tverticalOffsetMultiplier = this.Reveal.getConfig().parallaxBackgroundVertical;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tverticalOffsetMultiplier = ( backgroundHeight - slideHeight ) / ( verticalSlideCount-1 );\n\t\t\t}\n\n\t\t\tverticalOffset = verticalSlideCount > 0 ? verticalOffsetMultiplier * indices.v : 0;\n\n\t\t\tthis.element.style.backgroundPosition = horizontalOffset + 'px ' + -verticalOffset + 'px';\n\n\t\t}\n\n\t}\n\n}\n","import { queryAll, extend, createStyleSheet, matches, closest } from '../utils/util.js'\nimport { FRAGMENT_STYLE_REGEX } from '../utils/constants.js'\n\n// Counter used to generate unique IDs for auto-animated elements\nlet autoAnimateCounter = 0;\n\n/**\n * Automatically animates matching elements across\n * slides with the [data-auto-animate] attribute.\n */\nexport default class AutoAnimate {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Runs an auto-animation between the given slides.\n\t *\n\t * @param {HTMLElement} fromSlide\n\t * @param {HTMLElement} toSlide\n\t */\n\trun( fromSlide, toSlide ) {\n\n\t\t// Clean up after prior animations\n\t\tthis.reset();\n\n\t\tlet allSlides = this.Reveal.getSlides();\n\t\tlet toSlideIndex = allSlides.indexOf( toSlide );\n\t\tlet fromSlideIndex = allSlides.indexOf( fromSlide );\n\n\t\t// Ensure that both slides are auto-animate targets with the same data-auto-animate-id value\n\t\t// (including null if absent on both) and that data-auto-animate-restart isn't set on the\n\t\t// physically latter slide (independent of slide direction)\n\t\tif( fromSlide.hasAttribute( 'data-auto-animate' ) && toSlide.hasAttribute( 'data-auto-animate' )\n\t\t\t\t&& fromSlide.getAttribute( 'data-auto-animate-id' ) === toSlide.getAttribute( 'data-auto-animate-id' ) \n\t\t\t\t&& !( toSlideIndex > fromSlideIndex ? toSlide : fromSlide ).hasAttribute( 'data-auto-animate-restart' ) ) {\n\n\t\t\t// Create a new auto-animate sheet\n\t\t\tthis.autoAnimateStyleSheet = this.autoAnimateStyleSheet || createStyleSheet();\n\n\t\t\tlet animationOptions = this.getAutoAnimateOptions( toSlide );\n\n\t\t\t// Set our starting state\n\t\t\tfromSlide.dataset.autoAnimate = 'pending';\n\t\t\ttoSlide.dataset.autoAnimate = 'pending';\n\n\t\t\t// Flag the navigation direction, needed for fragment buildup\n\t\t\tanimationOptions.slideDirection = toSlideIndex > fromSlideIndex ? 'forward' : 'backward';\n\n\t\t\t// Inject our auto-animate styles for this transition\n\t\t\tlet css = this.getAutoAnimatableElements( fromSlide, toSlide ).map( elements => {\n\t\t\t\treturn this.autoAnimateElements( elements.from, elements.to, elements.options || {}, animationOptions, autoAnimateCounter++ );\n\t\t\t} );\n\n\t\t\t// Animate unmatched elements, if enabled\n\t\t\tif( toSlide.dataset.autoAnimateUnmatched !== 'false' && this.Reveal.getConfig().autoAnimateUnmatched === true ) {\n\n\t\t\t\t// Our default timings for unmatched elements\n\t\t\t\tlet defaultUnmatchedDuration = animationOptions.duration * 0.8,\n\t\t\t\t\tdefaultUnmatchedDelay = animationOptions.duration * 0.2;\n\n\t\t\t\tthis.getUnmatchedAutoAnimateElements( toSlide ).forEach( unmatchedElement => {\n\n\t\t\t\t\tlet unmatchedOptions = this.getAutoAnimateOptions( unmatchedElement, animationOptions );\n\t\t\t\t\tlet id = 'unmatched';\n\n\t\t\t\t\t// If there is a duration or delay set specifically for this\n\t\t\t\t\t// element our unmatched elements should adhere to those\n\t\t\t\t\tif( unmatchedOptions.duration !== animationOptions.duration || unmatchedOptions.delay !== animationOptions.delay ) {\n\t\t\t\t\t\tid = 'unmatched-' + autoAnimateCounter++;\n\t\t\t\t\t\tcss.push( `[data-auto-animate=\"running\"] [data-auto-animate-target=\"${id}\"] { transition: opacity ${unmatchedOptions.duration}s ease ${unmatchedOptions.delay}s; }` );\n\t\t\t\t\t}\n\n\t\t\t\t\tunmatchedElement.dataset.autoAnimateTarget = id;\n\n\t\t\t\t}, this );\n\n\t\t\t\t// Our default transition for unmatched elements\n\t\t\t\tcss.push( `[data-auto-animate=\"running\"] [data-auto-animate-target=\"unmatched\"] { transition: opacity ${defaultUnmatchedDuration}s ease ${defaultUnmatchedDelay}s; }` );\n\n\t\t\t}\n\n\t\t\t// Setting the whole chunk of CSS at once is the most\n\t\t\t// efficient way to do this. Using sheet.insertRule\n\t\t\t// is multiple factors slower.\n\t\t\tthis.autoAnimateStyleSheet.innerHTML = css.join( '' );\n\n\t\t\t// Start the animation next cycle\n\t\t\trequestAnimationFrame( () => {\n\t\t\t\tif( this.autoAnimateStyleSheet ) {\n\t\t\t\t\t// This forces our newly injected styles to be applied in Firefox\n\t\t\t\t\tgetComputedStyle( this.autoAnimateStyleSheet ).fontWeight;\n\n\t\t\t\t\ttoSlide.dataset.autoAnimate = 'running';\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'autoanimate',\n\t\t\t\tdata: {\n\t\t\t\t\tfromSlide,\n\t\t\t\t\ttoSlide,\n\t\t\t\t\tsheet: this.autoAnimateStyleSheet\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Rolls back all changes that we've made to the DOM so\n\t * that as part of animating.\n\t */\n\treset() {\n\n\t\t// Reset slides\n\t\tqueryAll( this.Reveal.getRevealElement(), '[data-auto-animate]:not([data-auto-animate=\"\"])' ).forEach( element => {\n\t\t\telement.dataset.autoAnimate = '';\n\t\t} );\n\n\t\t// Reset elements\n\t\tqueryAll( this.Reveal.getRevealElement(), '[data-auto-animate-target]' ).forEach( element => {\n\t\t\tdelete element.dataset.autoAnimateTarget;\n\t\t} );\n\n\t\t// Remove the animation sheet\n\t\tif( this.autoAnimateStyleSheet && this.autoAnimateStyleSheet.parentNode ) {\n\t\t\tthis.autoAnimateStyleSheet.parentNode.removeChild( this.autoAnimateStyleSheet );\n\t\t\tthis.autoAnimateStyleSheet = null;\n\t\t}\n\n\t}\n\n\t/**\n\t * Creates a FLIP animation where the `to` element starts out\n\t * in the `from` element position and animates to its original\n\t * state.\n\t *\n\t * @param {HTMLElement} from\n\t * @param {HTMLElement} to\n\t * @param {Object} elementOptions Options for this element pair\n\t * @param {Object} animationOptions Options set at the slide level\n\t * @param {String} id Unique ID that we can use to identify this\n\t * auto-animate element in the DOM\n\t */\n\tautoAnimateElements( from, to, elementOptions, animationOptions, id ) {\n\n\t\t// 'from' elements are given a data-auto-animate-target with no value,\n\t\t// 'to' elements are are given a data-auto-animate-target with an ID\n\t\tfrom.dataset.autoAnimateTarget = '';\n\t\tto.dataset.autoAnimateTarget = id;\n\n\t\t// Each element may override any of the auto-animate options\n\t\t// like transition easing, duration and delay via data-attributes\n\t\tlet options = this.getAutoAnimateOptions( to, animationOptions );\n\n\t\t// If we're using a custom element matcher the element options\n\t\t// may contain additional transition overrides\n\t\tif( typeof elementOptions.delay !== 'undefined' ) options.delay = elementOptions.delay;\n\t\tif( typeof elementOptions.duration !== 'undefined' ) options.duration = elementOptions.duration;\n\t\tif( typeof elementOptions.easing !== 'undefined' ) options.easing = elementOptions.easing;\n\n\t\tlet fromProps = this.getAutoAnimatableProperties( 'from', from, elementOptions ),\n\t\t\ttoProps = this.getAutoAnimatableProperties( 'to', to, elementOptions );\n\n\t\t// Maintain fragment visibility for matching elements when\n\t\t// we're navigating forwards, this way the viewer won't need\n\t\t// to step through the same fragments twice\n\t\tif( to.classList.contains( 'fragment' ) ) {\n\n\t\t\t// Don't auto-animate the opacity of fragments to avoid\n\t\t\t// conflicts with fragment animations\n\t\t\tdelete toProps.styles['opacity'];\n\n\t\t\tif( from.classList.contains( 'fragment' ) ) {\n\n\t\t\t\tlet fromFragmentStyle = ( from.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];\n\t\t\t\tlet toFragmentStyle = ( to.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];\n\n\t\t\t\t// Only skip the fragment if the fragment animation style\n\t\t\t\t// remains unchanged\n\t\t\t\tif( fromFragmentStyle === toFragmentStyle && animationOptions.slideDirection === 'forward' ) {\n\t\t\t\t\tto.classList.add( 'visible', 'disabled' );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t// If translation and/or scaling are enabled, css transform\n\t\t// the 'to' element so that it matches the position and size\n\t\t// of the 'from' element\n\t\tif( elementOptions.translate !== false || elementOptions.scale !== false ) {\n\n\t\t\tlet presentationScale = this.Reveal.getScale();\n\n\t\t\tlet delta = {\n\t\t\t\tx: ( fromProps.x - toProps.x ) / presentationScale,\n\t\t\t\ty: ( fromProps.y - toProps.y ) / presentationScale,\n\t\t\t\tscaleX: fromProps.width / toProps.width,\n\t\t\t\tscaleY: fromProps.height / toProps.height\n\t\t\t};\n\n\t\t\t// Limit decimal points to avoid 0.0001px blur and stutter\n\t\t\tdelta.x = Math.round( delta.x * 1000 ) / 1000;\n\t\t\tdelta.y = Math.round( delta.y * 1000 ) / 1000;\n\t\t\tdelta.scaleX = Math.round( delta.scaleX * 1000 ) / 1000;\n\t\t\tdelta.scaleX = Math.round( delta.scaleX * 1000 ) / 1000;\n\n\t\t\tlet translate = elementOptions.translate !== false && ( delta.x !== 0 || delta.y !== 0 ),\n\t\t\t\tscale = elementOptions.scale !== false && ( delta.scaleX !== 0 || delta.scaleY !== 0 );\n\n\t\t\t// No need to transform if nothing's changed\n\t\t\tif( translate || scale ) {\n\n\t\t\t\tlet transform = [];\n\n\t\t\t\tif( translate ) transform.push( `translate(${delta.x}px, ${delta.y}px)` );\n\t\t\t\tif( scale ) transform.push( `scale(${delta.scaleX}, ${delta.scaleY})` );\n\n\t\t\t\tfromProps.styles['transform'] = transform.join( ' ' );\n\t\t\t\tfromProps.styles['transform-origin'] = 'top left';\n\n\t\t\t\ttoProps.styles['transform'] = 'none';\n\n\t\t\t}\n\n\t\t}\n\n\t\t// Delete all unchanged 'to' styles\n\t\tfor( let propertyName in toProps.styles ) {\n\t\t\tconst toValue = toProps.styles[propertyName];\n\t\t\tconst fromValue = fromProps.styles[propertyName];\n\n\t\t\tif( toValue === fromValue ) {\n\t\t\t\tdelete toProps.styles[propertyName];\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// If these property values were set via a custom matcher providing\n\t\t\t\t// an explicit 'from' and/or 'to' value, we always inject those values.\n\t\t\t\tif( toValue.explicitValue === true ) {\n\t\t\t\t\ttoProps.styles[propertyName] = toValue.value;\n\t\t\t\t}\n\n\t\t\t\tif( fromValue.explicitValue === true ) {\n\t\t\t\t\tfromProps.styles[propertyName] = fromValue.value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet css = '';\n\n\t\tlet toStyleProperties = Object.keys( toProps.styles );\n\n\t\t// Only create animate this element IF at least one style\n\t\t// property has changed\n\t\tif( toStyleProperties.length > 0 ) {\n\n\t\t\t// Instantly move to the 'from' state\n\t\t\tfromProps.styles['transition'] = 'none';\n\n\t\t\t// Animate towards the 'to' state\n\t\t\ttoProps.styles['transition'] = `all ${options.duration}s ${options.easing} ${options.delay}s`;\n\t\t\ttoProps.styles['transition-property'] = toStyleProperties.join( ', ' );\n\t\t\ttoProps.styles['will-change'] = toStyleProperties.join( ', ' );\n\n\t\t\t// Build up our custom CSS. We need to override inline styles\n\t\t\t// so we need to make our styles vErY IMPORTANT!1!!\n\t\t\tlet fromCSS = Object.keys( fromProps.styles ).map( propertyName => {\n\t\t\t\treturn propertyName + ': ' + fromProps.styles[propertyName] + ' !important;';\n\t\t\t} ).join( '' );\n\n\t\t\tlet toCSS = Object.keys( toProps.styles ).map( propertyName => {\n\t\t\t\treturn propertyName + ': ' + toProps.styles[propertyName] + ' !important;';\n\t\t\t} ).join( '' );\n\n\t\t\tcss = \t'[data-auto-animate-target=\"'+ id +'\"] {'+ fromCSS +'}' +\n\t\t\t\t\t'[data-auto-animate=\"running\"] [data-auto-animate-target=\"'+ id +'\"] {'+ toCSS +'}';\n\n\t\t}\n\n\t\treturn css;\n\n\t}\n\n\t/**\n\t * Returns the auto-animate options for the given element.\n\t *\n\t * @param {HTMLElement} element Element to pick up options\n\t * from, either a slide or an animation target\n\t * @param {Object} [inheritedOptions] Optional set of existing\n\t * options\n\t */\n\tgetAutoAnimateOptions( element, inheritedOptions ) {\n\n\t\tlet options = {\n\t\t\teasing: this.Reveal.getConfig().autoAnimateEasing,\n\t\t\tduration: this.Reveal.getConfig().autoAnimateDuration,\n\t\t\tdelay: 0\n\t\t};\n\n\t\toptions = extend( options, inheritedOptions );\n\n\t\t// Inherit options from parent elements\n\t\tif( element.parentNode ) {\n\t\t\tlet autoAnimatedParent = closest( element.parentNode, '[data-auto-animate-target]' );\n\t\t\tif( autoAnimatedParent ) {\n\t\t\t\toptions = this.getAutoAnimateOptions( autoAnimatedParent, options );\n\t\t\t}\n\t\t}\n\n\t\tif( element.dataset.autoAnimateEasing ) {\n\t\t\toptions.easing = element.dataset.autoAnimateEasing;\n\t\t}\n\n\t\tif( element.dataset.autoAnimateDuration ) {\n\t\t\toptions.duration = parseFloat( element.dataset.autoAnimateDuration );\n\t\t}\n\n\t\tif( element.dataset.autoAnimateDelay ) {\n\t\t\toptions.delay = parseFloat( element.dataset.autoAnimateDelay );\n\t\t}\n\n\t\treturn options;\n\n\t}\n\n\t/**\n\t * Returns an object containing all of the properties\n\t * that can be auto-animated for the given element and\n\t * their current computed values.\n\t *\n\t * @param {String} direction 'from' or 'to'\n\t */\n\tgetAutoAnimatableProperties( direction, element, elementOptions ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\tlet properties = { styles: [] };\n\n\t\t// Position and size\n\t\tif( elementOptions.translate !== false || elementOptions.scale !== false ) {\n\t\t\tlet bounds;\n\n\t\t\t// Custom auto-animate may optionally return a custom tailored\n\t\t\t// measurement function\n\t\t\tif( typeof elementOptions.measure === 'function' ) {\n\t\t\t\tbounds = elementOptions.measure( element );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif( config.center ) {\n\t\t\t\t\t// More precise, but breaks when used in combination\n\t\t\t\t\t// with zoom for scaling the deck ¯\\_(ツ)_/¯\n\t\t\t\t\tbounds = element.getBoundingClientRect();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet scale = this.Reveal.getScale();\n\t\t\t\t\tbounds = {\n\t\t\t\t\t\tx: element.offsetLeft * scale,\n\t\t\t\t\t\ty: element.offsetTop * scale,\n\t\t\t\t\t\twidth: element.offsetWidth * scale,\n\t\t\t\t\t\theight: element.offsetHeight * scale\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tproperties.x = bounds.x;\n\t\t\tproperties.y = bounds.y;\n\t\t\tproperties.width = bounds.width;\n\t\t\tproperties.height = bounds.height;\n\t\t}\n\n\t\tconst computedStyles = getComputedStyle( element );\n\n\t\t// CSS styles\n\t\t( elementOptions.styles || config.autoAnimateStyles ).forEach( style => {\n\t\t\tlet value;\n\n\t\t\t// `style` is either the property name directly, or an object\n\t\t\t// definition of a style property\n\t\t\tif( typeof style === 'string' ) style = { property: style };\n\n\t\t\tif( typeof style.from !== 'undefined' && direction === 'from' ) {\n\t\t\t\tvalue = { value: style.from, explicitValue: true };\n\t\t\t}\n\t\t\telse if( typeof style.to !== 'undefined' && direction === 'to' ) {\n\t\t\t\tvalue = { value: style.to, explicitValue: true };\n\t\t\t}\n\t\t\telse {\n\t\t\t\tvalue = computedStyles[style.property];\n\t\t\t}\n\n\t\t\tif( value !== '' ) {\n\t\t\t\tproperties.styles[style.property] = value;\n\t\t\t}\n\t\t} );\n\n\t\treturn properties;\n\n\t}\n\n\t/**\n\t * Get a list of all element pairs that we can animate\n\t * between the given slides.\n\t *\n\t * @param {HTMLElement} fromSlide\n\t * @param {HTMLElement} toSlide\n\t *\n\t * @return {Array} Each value is an array where [0] is\n\t * the element we're animating from and [1] is the\n\t * element we're animating to\n\t */\n\tgetAutoAnimatableElements( fromSlide, toSlide ) {\n\n\t\tlet matcher = typeof this.Reveal.getConfig().autoAnimateMatcher === 'function' ? this.Reveal.getConfig().autoAnimateMatcher : this.getAutoAnimatePairs;\n\n\t\tlet pairs = matcher.call( this, fromSlide, toSlide );\n\n\t\tlet reserved = [];\n\n\t\t// Remove duplicate pairs\n\t\treturn pairs.filter( ( pair, index ) => {\n\t\t\tif( reserved.indexOf( pair.to ) === -1 ) {\n\t\t\t\treserved.push( pair.to );\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Identifies matching elements between slides.\n\t *\n\t * You can specify a custom matcher function by using\n\t * the `autoAnimateMatcher` config option.\n\t */\n\tgetAutoAnimatePairs( fromSlide, toSlide ) {\n\n\t\tlet pairs = [];\n\n\t\tconst codeNodes = 'pre';\n\t\tconst textNodes = 'h1, h2, h3, h4, h5, h6, p, li';\n\t\tconst mediaNodes = 'img, video, iframe';\n\n\t\t// Eplicit matches via data-id\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, '[data-id]', node => {\n\t\t\treturn node.nodeName + ':::' + node.getAttribute( 'data-id' );\n\t\t} );\n\n\t\t// Text\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, textNodes, node => {\n\t\t\treturn node.nodeName + ':::' + node.innerText;\n\t\t} );\n\n\t\t// Media\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, mediaNodes, node => {\n\t\t\treturn node.nodeName + ':::' + ( node.getAttribute( 'src' ) || node.getAttribute( 'data-src' ) );\n\t\t} );\n\n\t\t// Code\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, codeNodes, node => {\n\t\t\treturn node.nodeName + ':::' + node.innerText;\n\t\t} );\n\n\t\tpairs.forEach( pair => {\n\n\t\t\t// Disable scale transformations on text nodes, we transition\n\t\t\t// each individual text property instead\n\t\t\tif( matches( pair.from, textNodes ) ) {\n\t\t\t\tpair.options = { scale: false };\n\t\t\t}\n\t\t\t// Animate individual lines of code\n\t\t\telse if( matches( pair.from, codeNodes ) ) {\n\n\t\t\t\t// Transition the code block's width and height instead of scaling\n\t\t\t\t// to prevent its content from being squished\n\t\t\t\tpair.options = { scale: false, styles: [ 'width', 'height' ] };\n\n\t\t\t\t// Lines of code\n\t\t\t\tthis.findAutoAnimateMatches( pairs, pair.from, pair.to, '.hljs .hljs-ln-code', node => {\n\t\t\t\t\treturn node.textContent;\n\t\t\t\t}, {\n\t\t\t\t\tscale: false,\n\t\t\t\t\tstyles: [],\n\t\t\t\t\tmeasure: this.getLocalBoundingBox.bind( this )\n\t\t\t\t} );\n\n\t\t\t\t// Line numbers\n\t\t\t\tthis.findAutoAnimateMatches( pairs, pair.from, pair.to, '.hljs .hljs-ln-line[data-line-number]', node => {\n\t\t\t\t\treturn node.getAttribute( 'data-line-number' );\n\t\t\t\t}, {\n\t\t\t\t\tscale: false,\n\t\t\t\t\tstyles: [ 'width' ],\n\t\t\t\t\tmeasure: this.getLocalBoundingBox.bind( this )\n\t\t\t\t} );\n\n\t\t\t}\n\n\t\t}, this );\n\n\t\treturn pairs;\n\n\t}\n\n\t/**\n\t * Helper method which returns a bounding box based on\n\t * the given elements offset coordinates.\n\t *\n\t * @param {HTMLElement} element\n\t * @return {Object} x, y, width, height\n\t */\n\tgetLocalBoundingBox( element ) {\n\n\t\tconst presentationScale = this.Reveal.getScale();\n\n\t\treturn {\n\t\t\tx: Math.round( ( element.offsetLeft * presentationScale ) * 100 ) / 100,\n\t\t\ty: Math.round( ( element.offsetTop * presentationScale ) * 100 ) / 100,\n\t\t\twidth: Math.round( ( element.offsetWidth * presentationScale ) * 100 ) / 100,\n\t\t\theight: Math.round( ( element.offsetHeight * presentationScale ) * 100 ) / 100\n\t\t};\n\n\t}\n\n\t/**\n\t * Finds matching elements between two slides.\n\t *\n\t * @param {Array} pairs \tList of pairs to push matches to\n\t * @param {HTMLElement} fromScope Scope within the from element exists\n\t * @param {HTMLElement} toScope Scope within the to element exists\n\t * @param {String} selector CSS selector of the element to match\n\t * @param {Function} serializer A function that accepts an element and returns\n\t * a stringified ID based on its contents\n\t * @param {Object} animationOptions Optional config options for this pair\n\t */\n\tfindAutoAnimateMatches( pairs, fromScope, toScope, selector, serializer, animationOptions ) {\n\n\t\tlet fromMatches = {};\n\t\tlet toMatches = {};\n\n\t\t[].slice.call( fromScope.querySelectorAll( selector ) ).forEach( ( element, i ) => {\n\t\t\tconst key = serializer( element );\n\t\t\tif( typeof key === 'string' && key.length ) {\n\t\t\t\tfromMatches[key] = fromMatches[key] || [];\n\t\t\t\tfromMatches[key].push( element );\n\t\t\t}\n\t\t} );\n\n\t\t[].slice.call( toScope.querySelectorAll( selector ) ).forEach( ( element, i ) => {\n\t\t\tconst key = serializer( element );\n\t\t\ttoMatches[key] = toMatches[key] || [];\n\t\t\ttoMatches[key].push( element );\n\n\t\t\tlet fromElement;\n\n\t\t\t// Retrieve the 'from' element\n\t\t\tif( fromMatches[key] ) {\n\t\t\t\tconst pimaryIndex = toMatches[key].length - 1;\n\t\t\t\tconst secondaryIndex = fromMatches[key].length - 1;\n\n\t\t\t\t// If there are multiple identical from elements, retrieve\n\t\t\t\t// the one at the same index as our to-element.\n\t\t\t\tif( fromMatches[key][ pimaryIndex ] ) {\n\t\t\t\t\tfromElement = fromMatches[key][ pimaryIndex ];\n\t\t\t\t\tfromMatches[key][ pimaryIndex ] = null;\n\t\t\t\t}\n\t\t\t\t// If there are no matching from-elements at the same index,\n\t\t\t\t// use the last one.\n\t\t\t\telse if( fromMatches[key][ secondaryIndex ] ) {\n\t\t\t\t\tfromElement = fromMatches[key][ secondaryIndex ];\n\t\t\t\t\tfromMatches[key][ secondaryIndex ] = null;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If we've got a matching pair, push it to the list of pairs\n\t\t\tif( fromElement ) {\n\t\t\t\tpairs.push({\n\t\t\t\t\tfrom: fromElement,\n\t\t\t\t\tto: element,\n\t\t\t\t\toptions: animationOptions\n\t\t\t\t});\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Returns a all elements within the given scope that should\n\t * be considered unmatched in an auto-animate transition. If\n\t * fading of unmatched elements is turned on, these elements\n\t * will fade when going between auto-animate slides.\n\t *\n\t * Note that parents of auto-animate targets are NOT considerd\n\t * unmatched since fading them would break the auto-animation.\n\t *\n\t * @param {HTMLElement} rootElement\n\t * @return {Array}\n\t */\n\tgetUnmatchedAutoAnimateElements( rootElement ) {\n\n\t\treturn [].slice.call( rootElement.children ).reduce( ( result, element ) => {\n\n\t\t\tconst containsAnimatedElements = element.querySelector( '[data-auto-animate-target]' );\n\n\t\t\t// The element is unmatched if\n\t\t\t// - It is not an auto-animate target\n\t\t\t// - It does not contain any auto-animate targets\n\t\t\tif( !element.hasAttribute( 'data-auto-animate-target' ) && !containsAnimatedElements ) {\n\t\t\t\tresult.push( element );\n\t\t\t}\n\n\t\t\tif( element.querySelector( '[data-auto-animate-target]' ) ) {\n\t\t\t\tresult = result.concat( this.getUnmatchedAutoAnimateElements( element ) );\n\t\t\t}\n\n\t\t\treturn result;\n\n\t\t}, [] );\n\n\t}\n\n}\n","import { extend, queryAll } from '../utils/util.js'\n\n/**\n * Handles sorting and navigation of slide fragments.\n * Fragments are elements within a slide that are\n * revealed/animated incrementally.\n */\nexport default class Fragments {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.fragments === false ) {\n\t\t\tthis.disable();\n\t\t}\n\t\telse if( oldConfig.fragments === false ) {\n\t\t\tthis.enable();\n\t\t}\n\n\t}\n\n\t/**\n\t * If fragments are disabled in the deck, they should all be\n\t * visible rather than stepped through.\n\t */\n\tdisable() {\n\n\t\tqueryAll( this.Reveal.getSlidesElement(), '.fragment' ).forEach( element => {\n\t\t\telement.classList.add( 'visible' );\n\t\t\telement.classList.remove( 'current-fragment' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Reverse of #disable(). Only called if fragments have\n\t * previously been disabled.\n\t */\n\tenable() {\n\n\t\tqueryAll( this.Reveal.getSlidesElement(), '.fragment' ).forEach( element => {\n\t\t\telement.classList.remove( 'visible' );\n\t\t\telement.classList.remove( 'current-fragment' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Returns an object describing the available fragment\n\t * directions.\n\t *\n\t * @return {{prev: boolean, next: boolean}}\n\t */\n\tavailableRoutes() {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\t\t\tlet fragments = currentSlide.querySelectorAll( '.fragment:not(.disabled)' );\n\t\t\tlet hiddenFragments = currentSlide.querySelectorAll( '.fragment:not(.disabled):not(.visible)' );\n\n\t\t\treturn {\n\t\t\t\tprev: fragments.length - hiddenFragments.length > 0,\n\t\t\t\tnext: !!hiddenFragments.length\n\t\t\t};\n\t\t}\n\t\telse {\n\t\t\treturn { prev: false, next: false };\n\t\t}\n\n\t}\n\n\t/**\n\t * Return a sorted fragments list, ordered by an increasing\n\t * \"data-fragment-index\" attribute.\n\t *\n\t * Fragments will be revealed in the order that they are returned by\n\t * this function, so you can use the index attributes to control the\n\t * order of fragment appearance.\n\t *\n\t * To maintain a sensible default fragment order, fragments are presumed\n\t * to be passed in document order. This function adds a \"fragment-index\"\n\t * attribute to each node if such an attribute is not already present,\n\t * and sets that attribute to an integer value which is the position of\n\t * the fragment within the fragments list.\n\t *\n\t * @param {object[]|*} fragments\n\t * @param {boolean} grouped If true the returned array will contain\n\t * nested arrays for all fragments with the same index\n\t * @return {object[]} sorted Sorted array of fragments\n\t */\n\tsort( fragments, grouped = false ) {\n\n\t\tfragments = Array.from( fragments );\n\n\t\tlet ordered = [],\n\t\t\tunordered = [],\n\t\t\tsorted = [];\n\n\t\t// Group ordered and unordered elements\n\t\tfragments.forEach( fragment => {\n\t\t\tif( fragment.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\tlet index = parseInt( fragment.getAttribute( 'data-fragment-index' ), 10 );\n\n\t\t\t\tif( !ordered[index] ) {\n\t\t\t\t\tordered[index] = [];\n\t\t\t\t}\n\n\t\t\t\tordered[index].push( fragment );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tunordered.push( [ fragment ] );\n\t\t\t}\n\t\t} );\n\n\t\t// Append fragments without explicit indices in their\n\t\t// DOM order\n\t\tordered = ordered.concat( unordered );\n\n\t\t// Manually count the index up per group to ensure there\n\t\t// are no gaps\n\t\tlet index = 0;\n\n\t\t// Push all fragments in their sorted order to an array,\n\t\t// this flattens the groups\n\t\tordered.forEach( group => {\n\t\t\tgroup.forEach( fragment => {\n\t\t\t\tsorted.push( fragment );\n\t\t\t\tfragment.setAttribute( 'data-fragment-index', index );\n\t\t\t} );\n\n\t\t\tindex ++;\n\t\t} );\n\n\t\treturn grouped === true ? ordered : sorted;\n\n\t}\n\n\t/**\n\t * Sorts and formats all of fragments in the\n\t * presentation.\n\t */\n\tsortAll() {\n\n\t\tthis.Reveal.getHorizontalSlides().forEach( horizontalSlide => {\n\n\t\t\tlet verticalSlides = queryAll( horizontalSlide, 'section' );\n\t\t\tverticalSlides.forEach( ( verticalSlide, y ) => {\n\n\t\t\t\tthis.sort( verticalSlide.querySelectorAll( '.fragment' ) );\n\n\t\t\t}, this );\n\n\t\t\tif( verticalSlides.length === 0 ) this.sort( horizontalSlide.querySelectorAll( '.fragment' ) );\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Refreshes the fragments on the current slide so that they\n\t * have the appropriate classes (.visible + .current-fragment).\n\t *\n\t * @param {number} [index] The index of the current fragment\n\t * @param {array} [fragments] Array containing all fragments\n\t * in the current slide\n\t *\n\t * @return {{shown: array, hidden: array}}\n\t */\n\tupdate( index, fragments ) {\n\n\t\tlet changedFragments = {\n\t\t\tshown: [],\n\t\t\thidden: []\n\t\t};\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\n\t\t\tfragments = fragments || this.sort( currentSlide.querySelectorAll( '.fragment' ) );\n\n\t\t\tif( fragments.length ) {\n\n\t\t\t\tlet maxIndex = 0;\n\n\t\t\t\tif( typeof index !== 'number' ) {\n\t\t\t\t\tlet currentFragment = this.sort( currentSlide.querySelectorAll( '.fragment.visible' ) ).pop();\n\t\t\t\t\tif( currentFragment ) {\n\t\t\t\t\t\tindex = parseInt( currentFragment.getAttribute( 'data-fragment-index' ) || 0, 10 );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tArray.from( fragments ).forEach( ( el, i ) => {\n\n\t\t\t\t\tif( el.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\t\t\ti = parseInt( el.getAttribute( 'data-fragment-index' ), 10 );\n\t\t\t\t\t}\n\n\t\t\t\t\tmaxIndex = Math.max( maxIndex, i );\n\n\t\t\t\t\t// Visible fragments\n\t\t\t\t\tif( i <= index ) {\n\t\t\t\t\t\tlet wasVisible = el.classList.contains( 'visible' )\n\t\t\t\t\t\tel.classList.add( 'visible' );\n\t\t\t\t\t\tel.classList.remove( 'current-fragment' );\n\n\t\t\t\t\t\tif( i === index ) {\n\t\t\t\t\t\t\t// Announce the fragments one by one to the Screen Reader\n\t\t\t\t\t\t\tthis.Reveal.announceStatus( this.Reveal.getStatusText( el ) );\n\n\t\t\t\t\t\t\tel.classList.add( 'current-fragment' );\n\t\t\t\t\t\t\tthis.Reveal.slideContent.startEmbeddedContent( el );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif( !wasVisible ) {\n\t\t\t\t\t\t\tchangedFragments.shown.push( el )\n\t\t\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\t\t\ttarget: el,\n\t\t\t\t\t\t\t\ttype: 'visible',\n\t\t\t\t\t\t\t\tbubbles: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Hidden fragments\n\t\t\t\t\telse {\n\t\t\t\t\t\tlet wasVisible = el.classList.contains( 'visible' )\n\t\t\t\t\t\tel.classList.remove( 'visible' );\n\t\t\t\t\t\tel.classList.remove( 'current-fragment' );\n\n\t\t\t\t\t\tif( wasVisible ) {\n\t\t\t\t\t\t\tthis.Reveal.slideContent.stopEmbeddedContent( el );\n\t\t\t\t\t\t\tchangedFragments.hidden.push( el );\n\t\t\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\t\t\ttarget: el,\n\t\t\t\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\t\t\t\tbubbles: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\n\t\t\t\t// Write the current fragment index to the slide <section>.\n\t\t\t\t// This can be used by end users to apply styles based on\n\t\t\t\t// the current fragment index.\n\t\t\t\tindex = typeof index === 'number' ? index : -1;\n\t\t\t\tindex = Math.max( Math.min( index, maxIndex ), -1 );\n\t\t\t\tcurrentSlide.setAttribute( 'data-fragment', index );\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn changedFragments;\n\n\t}\n\n\t/**\n\t * Formats the fragments on the given slide so that they have\n\t * valid indices. Call this if fragments are changed in the DOM\n\t * after reveal.js has already initialized.\n\t *\n\t * @param {HTMLElement} slide\n\t * @return {Array} a list of the HTML fragments that were synced\n\t */\n\tsync( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\treturn this.sort( slide.querySelectorAll( '.fragment' ) );\n\n\t}\n\n\t/**\n\t * Navigate to the specified slide fragment.\n\t *\n\t * @param {?number} index The index of the fragment that\n\t * should be shown, -1 means all are invisible\n\t * @param {number} offset Integer offset to apply to the\n\t * fragment index\n\t *\n\t * @return {boolean} true if a change was made in any\n\t * fragments visibility as part of this call\n\t */\n\tgoto( index, offset = 0 ) {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\n\t\t\tlet fragments = this.sort( currentSlide.querySelectorAll( '.fragment:not(.disabled)' ) );\n\t\t\tif( fragments.length ) {\n\n\t\t\t\t// If no index is specified, find the current\n\t\t\t\tif( typeof index !== 'number' ) {\n\t\t\t\t\tlet lastVisibleFragment = this.sort( currentSlide.querySelectorAll( '.fragment:not(.disabled).visible' ) ).pop();\n\n\t\t\t\t\tif( lastVisibleFragment ) {\n\t\t\t\t\t\tindex = parseInt( lastVisibleFragment.getAttribute( 'data-fragment-index' ) || 0, 10 );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tindex = -1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Apply the offset if there is one\n\t\t\t\tindex += offset;\n\n\t\t\t\tlet changedFragments = this.update( index, fragments );\n\n\t\t\t\tif( changedFragments.hidden.length ) {\n\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\ttype: 'fragmenthidden',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tfragment: changedFragments.hidden[0],\n\t\t\t\t\t\t\tfragments: changedFragments.hidden\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif( changedFragments.shown.length ) {\n\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\ttype: 'fragmentshown',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tfragment: changedFragments.shown[0],\n\t\t\t\t\t\t\tfragments: changedFragments.shown\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tthis.Reveal.controls.update();\n\t\t\t\tthis.Reveal.progress.update();\n\n\t\t\t\tif( this.Reveal.getConfig().fragmentInURL ) {\n\t\t\t\t\tthis.Reveal.location.writeURL();\n\t\t\t\t}\n\n\t\t\t\treturn !!( changedFragments.shown.length || changedFragments.hidden.length );\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Navigate to the next slide fragment.\n\t *\n\t * @return {boolean} true if there was a next fragment,\n\t * false otherwise\n\t */\n\tnext() {\n\n\t\treturn this.goto( null, 1 );\n\n\t}\n\n\t/**\n\t * Navigate to the previous slide fragment.\n\t *\n\t * @return {boolean} true if there was a previous fragment,\n\t * false otherwise\n\t */\n\tprev() {\n\n\t\treturn this.goto( null, -1 );\n\n\t}\n\n}","import { SLIDES_SELECTOR } from '../utils/constants.js'\nimport { extend, queryAll, transformElement } from '../utils/util.js'\n\n/**\n * Handles all logic related to the overview mode\n * (birds-eye view of all slides).\n */\nexport default class Overview {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.active = false;\n\n\t\tthis.onSlideClicked = this.onSlideClicked.bind( this );\n\n\t}\n\n\t/**\n\t * Displays the overview of slides (quick nav) by scaling\n\t * down and arranging all slide elements.\n\t */\n\tactivate() {\n\n\t\t// Only proceed if enabled in config\n\t\tif( this.Reveal.getConfig().overview && !this.isActive() ) {\n\n\t\t\tthis.active = true;\n\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'overview' );\n\n\t\t\t// Don't auto-slide while in overview mode\n\t\t\tthis.Reveal.cancelAutoSlide();\n\n\t\t\t// Move the backgrounds element into the slide container to\n\t\t\t// that the same scaling is applied\n\t\t\tthis.Reveal.getSlidesElement().appendChild( this.Reveal.getBackgroundsElement() );\n\n\t\t\t// Clicking on an overview slide navigates to it\n\t\t\tqueryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR ).forEach( slide => {\n\t\t\t\tif( !slide.classList.contains( 'stack' ) ) {\n\t\t\t\t\tslide.addEventListener( 'click', this.onSlideClicked, true );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Calculate slide sizes\n\t\t\tconst margin = 70;\n\t\t\tconst slideSize = this.Reveal.getComputedSlideSize();\n\t\t\tthis.overviewSlideWidth = slideSize.width + margin;\n\t\t\tthis.overviewSlideHeight = slideSize.height + margin;\n\n\t\t\t// Reverse in RTL mode\n\t\t\tif( this.Reveal.getConfig().rtl ) {\n\t\t\t\tthis.overviewSlideWidth = -this.overviewSlideWidth;\n\t\t\t}\n\n\t\t\tthis.Reveal.updateSlidesVisibility();\n\n\t\t\tthis.layout();\n\t\t\tthis.update();\n\n\t\t\tthis.Reveal.layout();\n\n\t\t\tconst indices = this.Reveal.getIndices();\n\n\t\t\t// Notify observers of the overview showing\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'overviewshown',\n\t\t\t\tdata: {\n\t\t\t\t\t'indexh': indices.h,\n\t\t\t\t\t'indexv': indices.v,\n\t\t\t\t\t'currentSlide': this.Reveal.getCurrentSlide()\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Uses CSS transforms to position all slides in a grid for\n\t * display inside of the overview mode.\n\t */\n\tlayout() {\n\n\t\t// Layout slides\n\t\tthis.Reveal.getHorizontalSlides().forEach( ( hslide, h ) => {\n\t\t\thslide.setAttribute( 'data-index-h', h );\n\t\t\ttransformElement( hslide, 'translate3d(' + ( h * this.overviewSlideWidth ) + 'px, 0, 0)' );\n\n\t\t\tif( hslide.classList.contains( 'stack' ) ) {\n\n\t\t\t\tqueryAll( hslide, 'section' ).forEach( ( vslide, v ) => {\n\t\t\t\t\tvslide.setAttribute( 'data-index-h', h );\n\t\t\t\t\tvslide.setAttribute( 'data-index-v', v );\n\n\t\t\t\t\ttransformElement( vslide, 'translate3d(0, ' + ( v * this.overviewSlideHeight ) + 'px, 0)' );\n\t\t\t\t} );\n\n\t\t\t}\n\t\t} );\n\n\t\t// Layout slide backgrounds\n\t\tArray.from( this.Reveal.getBackgroundsElement().childNodes ).forEach( ( hbackground, h ) => {\n\t\t\ttransformElement( hbackground, 'translate3d(' + ( h * this.overviewSlideWidth ) + 'px, 0, 0)' );\n\n\t\t\tqueryAll( hbackground, '.slide-background' ).forEach( ( vbackground, v ) => {\n\t\t\t\ttransformElement( vbackground, 'translate3d(0, ' + ( v * this.overviewSlideHeight ) + 'px, 0)' );\n\t\t\t} );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Moves the overview viewport to the current slides.\n\t * Called each time the current slide changes.\n\t */\n\tupdate() {\n\n\t\tconst vmin = Math.min( window.innerWidth, window.innerHeight );\n\t\tconst scale = Math.max( vmin / 5, 150 ) / vmin;\n\t\tconst indices = this.Reveal.getIndices();\n\n\t\tthis.Reveal.transformSlides( {\n\t\t\toverview: [\n\t\t\t\t'scale('+ scale +')',\n\t\t\t\t'translateX('+ ( -indices.h * this.overviewSlideWidth ) +'px)',\n\t\t\t\t'translateY('+ ( -indices.v * this.overviewSlideHeight ) +'px)'\n\t\t\t].join( ' ' )\n\t\t} );\n\n\t}\n\n\t/**\n\t * Exits the slide overview and enters the currently\n\t * active slide.\n\t */\n\tdeactivate() {\n\n\t\t// Only proceed if enabled in config\n\t\tif( this.Reveal.getConfig().overview ) {\n\n\t\t\tthis.active = false;\n\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'overview' );\n\n\t\t\t// Temporarily add a class so that transitions can do different things\n\t\t\t// depending on whether they are exiting/entering overview, or just\n\t\t\t// moving from slide to slide\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'overview-deactivating' );\n\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.Reveal.getRevealElement().classList.remove( 'overview-deactivating' );\n\t\t\t}, 1 );\n\n\t\t\t// Move the background element back out\n\t\t\tthis.Reveal.getRevealElement().appendChild( this.Reveal.getBackgroundsElement() );\n\n\t\t\t// Clean up changes made to slides\n\t\t\tqueryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR ).forEach( slide => {\n\t\t\t\ttransformElement( slide, '' );\n\n\t\t\t\tslide.removeEventListener( 'click', this.onSlideClicked, true );\n\t\t\t} );\n\n\t\t\t// Clean up changes made to backgrounds\n\t\t\tqueryAll( this.Reveal.getBackgroundsElement(), '.slide-background' ).forEach( background => {\n\t\t\t\ttransformElement( background, '' );\n\t\t\t} );\n\n\t\t\tthis.Reveal.transformSlides( { overview: '' } );\n\n\t\t\tconst indices = this.Reveal.getIndices();\n\n\t\t\tthis.Reveal.slide( indices.h, indices.v );\n\t\t\tthis.Reveal.layout();\n\t\t\tthis.Reveal.cueAutoSlide();\n\n\t\t\t// Notify observers of the overview hiding\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'overviewhidden',\n\t\t\t\tdata: {\n\t\t\t\t\t'indexh': indices.h,\n\t\t\t\t\t'indexv': indices.v,\n\t\t\t\t\t'currentSlide': this.Reveal.getCurrentSlide()\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\t}\n\n\t/**\n\t * Toggles the slide overview mode on and off.\n\t *\n\t * @param {Boolean} [override] Flag which overrides the\n\t * toggle logic and forcibly sets the desired state. True means\n\t * overview is open, false means it's closed.\n\t */\n\ttoggle( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? this.activate() : this.deactivate();\n\t\t}\n\t\telse {\n\t\t\tthis.isActive() ? this.deactivate() : this.activate();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if the overview is currently active.\n\t *\n\t * @return {Boolean} true if the overview is active,\n\t * false otherwise\n\t */\n\tisActive() {\n\n\t\treturn this.active;\n\n\t}\n\n\t/**\n\t * Invoked when a slide is and we're in the overview.\n\t *\n\t * @param {object} event\n\t */\n\tonSlideClicked( event ) {\n\n\t\tif( this.isActive() ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tlet element = event.target;\n\n\t\t\twhile( element && !element.nodeName.match( /section/gi ) ) {\n\t\t\t\telement = element.parentNode;\n\t\t\t}\n\n\t\t\tif( element && !element.classList.contains( 'disabled' ) ) {\n\n\t\t\t\tthis.deactivate();\n\n\t\t\t\tif( element.nodeName.match( /section/gi ) ) {\n\t\t\t\t\tlet h = parseInt( element.getAttribute( 'data-index-h' ), 10 ),\n\t\t\t\t\t\tv = parseInt( element.getAttribute( 'data-index-v' ), 10 );\n\n\t\t\t\t\tthis.Reveal.slide( h, v );\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t}\n\n}","import { enterFullscreen } from '../utils/util.js'\n\n/**\n * Handles all reveal.js keyboard interactions.\n */\nexport default class Keyboard {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// A key:value map of keyboard keys and descriptions of\n\t\t// the actions they trigger\n\t\tthis.shortcuts = {};\n\n\t\t// Holds custom key code mappings\n\t\tthis.bindings = {};\n\n\t\tthis.onDocumentKeyDown = this.onDocumentKeyDown.bind( this );\n\t\tthis.onDocumentKeyPress = this.onDocumentKeyPress.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.navigationMode === 'linear' ) {\n\t\t\tthis.shortcuts['→ , ↓ , SPACE , N , L , J'] = 'Next slide';\n\t\t\tthis.shortcuts['← , ↑ , P , H , K'] = 'Previous slide';\n\t\t}\n\t\telse {\n\t\t\tthis.shortcuts['N , SPACE'] = 'Next slide';\n\t\t\tthis.shortcuts['P , Shift SPACE'] = 'Previous slide';\n\t\t\tthis.shortcuts['← , H'] = 'Navigate left';\n\t\t\tthis.shortcuts['→ , L'] = 'Navigate right';\n\t\t\tthis.shortcuts['↑ , K'] = 'Navigate up';\n\t\t\tthis.shortcuts['↓ , J'] = 'Navigate down';\n\t\t}\n\n\t\tthis.shortcuts['Alt + ←/↑/→/↓'] = 'Navigate without fragments';\n\t\tthis.shortcuts['Shift + ←/↑/→/↓'] = 'Jump to first/last slide';\n\t\tthis.shortcuts['B , .'] = 'Pause';\n\t\tthis.shortcuts['F'] = 'Fullscreen';\n\t\tthis.shortcuts['ESC, O'] = 'Slide overview';\n\n\t}\n\n\t/**\n\t * Starts listening for keyboard events.\n\t */\n\tbind() {\n\n\t\tdocument.addEventListener( 'keydown', this.onDocumentKeyDown, false );\n\t\tdocument.addEventListener( 'keypress', this.onDocumentKeyPress, false );\n\n\t}\n\n\t/**\n\t * Stops listening for keyboard events.\n\t */\n\tunbind() {\n\n\t\tdocument.removeEventListener( 'keydown', this.onDocumentKeyDown, false );\n\t\tdocument.removeEventListener( 'keypress', this.onDocumentKeyPress, false );\n\n\t}\n\n\t/**\n\t * Add a custom key binding with optional description to\n\t * be added to the help screen.\n\t */\n\taddKeyBinding( binding, callback ) {\n\n\t\tif( typeof binding === 'object' && binding.keyCode ) {\n\t\t\tthis.bindings[binding.keyCode] = {\n\t\t\t\tcallback: callback,\n\t\t\t\tkey: binding.key,\n\t\t\t\tdescription: binding.description\n\t\t\t};\n\t\t}\n\t\telse {\n\t\t\tthis.bindings[binding] = {\n\t\t\t\tcallback: callback,\n\t\t\t\tkey: null,\n\t\t\t\tdescription: null\n\t\t\t};\n\t\t}\n\n\t}\n\n\t/**\n\t * Removes the specified custom key binding.\n\t */\n\tremoveKeyBinding( keyCode ) {\n\n\t\tdelete this.bindings[keyCode];\n\n\t}\n\n\t/**\n\t * Programmatically triggers a keyboard event\n\t *\n\t * @param {int} keyCode\n\t */\n\ttriggerKey( keyCode ) {\n\n\t\tthis.onDocumentKeyDown( { keyCode } );\n\n\t}\n\n\t/**\n\t * Registers a new shortcut to include in the help overlay\n\t *\n\t * @param {String} key\n\t * @param {String} value\n\t */\n\tregisterKeyboardShortcut( key, value ) {\n\n\t\tthis.shortcuts[key] = value;\n\n\t}\n\n\tgetShortcuts() {\n\n\t\treturn this.shortcuts;\n\n\t}\n\n\tgetBindings() {\n\n\t\treturn this.bindings;\n\n\t}\n\n\t/**\n\t * Handler for the document level 'keypress' event.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentKeyPress( event ) {\n\n\t\t// Check if the pressed key is question mark\n\t\tif( event.shiftKey && event.charCode === 63 ) {\n\t\t\tthis.Reveal.toggleHelp();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the document level 'keydown' event.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentKeyDown( event ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\t// If there's a condition specified and it returns false,\n\t\t// ignore this event\n\t\tif( typeof config.keyboardCondition === 'function' && config.keyboardCondition(event) === false ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// If keyboardCondition is set, only capture keyboard events\n\t\t// for embedded decks when they are focused\n\t\tif( config.keyboardCondition === 'focused' && !this.Reveal.isFocused() ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Shorthand\n\t\tlet keyCode = event.keyCode;\n\n\t\t// Remember if auto-sliding was paused so we can toggle it\n\t\tlet autoSlideWasPaused = !this.Reveal.isAutoSliding();\n\n\t\tthis.Reveal.onUserInput( event );\n\n\t\t// Is there a focused element that could be using the keyboard?\n\t\tlet activeElementIsCE = document.activeElement && document.activeElement.isContentEditable === true;\n\t\tlet activeElementIsInput = document.activeElement && document.activeElement.tagName && /input|textarea/i.test( document.activeElement.tagName );\n\t\tlet activeElementIsNotes = document.activeElement && document.activeElement.className && /speaker-notes/i.test( document.activeElement.className);\n\n\t\t// Whitelist certain modifiers for slide navigation shortcuts\n\t\tlet isNavigationKey = [32, 37, 38, 39, 40, 78, 80].indexOf( event.keyCode ) !== -1;\n\n\t\t// Prevent all other events when a modifier is pressed\n\t\tlet unusedModifier = \t!( isNavigationKey && event.shiftKey || event.altKey ) &&\n\t\t\t\t\t\t\t\t( event.shiftKey || event.altKey || event.ctrlKey || event.metaKey );\n\n\t\t// Disregard the event if there's a focused element or a\n\t\t// keyboard modifier key is present\n\t\tif( activeElementIsCE || activeElementIsInput || activeElementIsNotes || unusedModifier ) return;\n\n\t\t// While paused only allow resume keyboard events; 'b', 'v', '.'\n\t\tlet resumeKeyCodes = [66,86,190,191];\n\t\tlet key;\n\n\t\t// Custom key bindings for togglePause should be able to resume\n\t\tif( typeof config.keyboard === 'object' ) {\n\t\t\tfor( key in config.keyboard ) {\n\t\t\t\tif( config.keyboard[key] === 'togglePause' ) {\n\t\t\t\t\tresumeKeyCodes.push( parseInt( key, 10 ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif( this.Reveal.isPaused() && resumeKeyCodes.indexOf( keyCode ) === -1 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Use linear navigation if we're configured to OR if\n\t\t// the presentation is one-dimensional\n\t\tlet useLinearMode = config.navigationMode === 'linear' || !this.Reveal.hasHorizontalSlides() || !this.Reveal.hasVerticalSlides();\n\n\t\tlet triggered = false;\n\n\t\t// 1. User defined key bindings\n\t\tif( typeof config.keyboard === 'object' ) {\n\n\t\t\tfor( key in config.keyboard ) {\n\n\t\t\t\t// Check if this binding matches the pressed key\n\t\t\t\tif( parseInt( key, 10 ) === keyCode ) {\n\n\t\t\t\t\tlet value = config.keyboard[ key ];\n\n\t\t\t\t\t// Callback function\n\t\t\t\t\tif( typeof value === 'function' ) {\n\t\t\t\t\t\tvalue.apply( null, [ event ] );\n\t\t\t\t\t}\n\t\t\t\t\t// String shortcuts to reveal.js API\n\t\t\t\t\telse if( typeof value === 'string' && typeof this.Reveal[ value ] === 'function' ) {\n\t\t\t\t\t\tthis.Reveal[ value ].call();\n\t\t\t\t\t}\n\n\t\t\t\t\ttriggered = true;\n\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t// 2. Registered custom key bindings\n\t\tif( triggered === false ) {\n\n\t\t\tfor( key in this.bindings ) {\n\n\t\t\t\t// Check if this binding matches the pressed key\n\t\t\t\tif( parseInt( key, 10 ) === keyCode ) {\n\n\t\t\t\t\tlet action = this.bindings[ key ].callback;\n\n\t\t\t\t\t// Callback function\n\t\t\t\t\tif( typeof action === 'function' ) {\n\t\t\t\t\t\taction.apply( null, [ event ] );\n\t\t\t\t\t}\n\t\t\t\t\t// String shortcuts to reveal.js API\n\t\t\t\t\telse if( typeof action === 'string' && typeof this.Reveal[ action ] === 'function' ) {\n\t\t\t\t\t\tthis.Reveal[ action ].call();\n\t\t\t\t\t}\n\n\t\t\t\t\ttriggered = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// 3. System defined key bindings\n\t\tif( triggered === false ) {\n\n\t\t\t// Assume true and try to prove false\n\t\t\ttriggered = true;\n\n\t\t\t// P, PAGE UP\n\t\t\tif( keyCode === 80 || keyCode === 33 ) {\n\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t}\n\t\t\t// N, PAGE DOWN\n\t\t\telse if( keyCode === 78 || keyCode === 34 ) {\n\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t}\n\t\t\t// H, LEFT\n\t\t\telse if( keyCode === 72 || keyCode === 37 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( 0 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.left({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// L, RIGHT\n\t\t\telse if( keyCode === 76 || keyCode === 39 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( this.Reveal.getHorizontalSlides().length - 1 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.right({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// K, UP\n\t\t\telse if( keyCode === 75 || keyCode === 38 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( undefined, 0 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.up({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// J, DOWN\n\t\t\telse if( keyCode === 74 || keyCode === 40 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( undefined, Number.MAX_VALUE );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.down({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// HOME\n\t\t\telse if( keyCode === 36 ) {\n\t\t\t\tthis.Reveal.slide( 0 );\n\t\t\t}\n\t\t\t// END\n\t\t\telse if( keyCode === 35 ) {\n\t\t\t\tthis.Reveal.slide( this.Reveal.getHorizontalSlides().length - 1 );\n\t\t\t}\n\t\t\t// SPACE\n\t\t\telse if( keyCode === 32 ) {\n\t\t\t\tif( this.Reveal.overview.isActive() ) {\n\t\t\t\t\tthis.Reveal.overview.deactivate();\n\t\t\t\t}\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// TWO-SPOT, SEMICOLON, B, V, PERIOD, LOGITECH PRESENTER TOOLS \"BLACK SCREEN\" BUTTON\n\t\t\telse if( keyCode === 58 || keyCode === 59 || keyCode === 66 || keyCode === 86 || keyCode === 190 || keyCode === 191 ) {\n\t\t\t\tthis.Reveal.togglePause();\n\t\t\t}\n\t\t\t// F\n\t\t\telse if( keyCode === 70 ) {\n\t\t\t\tenterFullscreen( config.embedded ? this.Reveal.getViewportElement() : document.documentElement );\n\t\t\t}\n\t\t\t// A\n\t\t\telse if( keyCode === 65 ) {\n\t\t\t\tif ( config.autoSlideStoppable ) {\n\t\t\t\t\tthis.Reveal.toggleAutoSlide( autoSlideWasPaused );\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\ttriggered = false;\n\t\t\t}\n\n\t\t}\n\n\t\t// If the input resulted in a triggered action we should prevent\n\t\t// the browsers default behavior\n\t\tif( triggered ) {\n\t\t\tevent.preventDefault && event.preventDefault();\n\t\t}\n\t\t// ESC or O key\n\t\telse if( keyCode === 27 || keyCode === 79 ) {\n\t\t\tif( this.Reveal.closeOverlay() === false ) {\n\t\t\t\tthis.Reveal.overview.toggle();\n\t\t\t}\n\n\t\t\tevent.preventDefault && event.preventDefault();\n\t\t}\n\n\t\t// If auto-sliding is enabled we need to cue up\n\t\t// another timeout\n\t\tthis.Reveal.cueAutoSlide();\n\n\t}\n\n}","/**\n * Reads and writes the URL based on reveal.js' current state.\n */\nexport default class Location {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Delays updates to the URL due to a Chrome thumbnailer bug\n\t\tthis.writeURLTimeout = 0;\n\n\t\tthis.onWindowHashChange = this.onWindowHashChange.bind( this );\n\n\t}\n\n\tbind() {\n\n\t\twindow.addEventListener( 'hashchange', this.onWindowHashChange, false );\n\n\t}\n\n\tunbind() {\n\n\t\twindow.removeEventListener( 'hashchange', this.onWindowHashChange, false );\n\n\t}\n\n\t/**\n\t * Returns the slide indices for the given hash link.\n\t *\n\t * @param {string} [hash] the hash string that we want to\n\t * find the indices for\n\t *\n\t * @returns slide indices or null\n\t */\n\tgetIndicesFromHash( hash=window.location.hash ) {\n\n\t\t// Attempt to parse the hash as either an index or name\n\t\tlet name = hash.replace( /^#\\/?/, '' );\n\t\tlet bits = name.split( '/' );\n\n\t\t// If the first bit is not fully numeric and there is a name we\n\t\t// can assume that this is a named link\n\t\tif( !/^[0-9]*$/.test( bits[0] ) && name.length ) {\n\t\t\tlet element;\n\n\t\t\tlet f;\n\n\t\t\t// Parse named links with fragments (#/named-link/2)\n\t\t\tif( /\\/[-\\d]+$/g.test( name ) ) {\n\t\t\t\tf = parseInt( name.split( '/' ).pop(), 10 );\n\t\t\t\tf = isNaN(f) ? undefined : f;\n\t\t\t\tname = name.split( '/' ).shift();\n\t\t\t}\n\n\t\t\t// Ensure the named link is a valid HTML ID attribute\n\t\t\ttry {\n\t\t\t\telement = document.getElementById( decodeURIComponent( name ) );\n\t\t\t}\n\t\t\tcatch ( error ) { }\n\n\t\t\tif( element ) {\n\t\t\t\treturn { ...this.Reveal.getIndices( element ), f };\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tconst config = this.Reveal.getConfig();\n\t\t\tlet hashIndexBase = config.hashOneBasedIndex ? 1 : 0;\n\n\t\t\t// Read the index components of the hash\n\t\t\tlet h = ( parseInt( bits[0], 10 ) - hashIndexBase ) || 0,\n\t\t\t\tv = ( parseInt( bits[1], 10 ) - hashIndexBase ) || 0,\n\t\t\t\tf;\n\n\t\t\tif( config.fragmentInURL ) {\n\t\t\t\tf = parseInt( bits[2], 10 );\n\t\t\t\tif( isNaN( f ) ) {\n\t\t\t\t\tf = undefined;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn { h, v, f };\n\t\t}\n\n\t\t// The hash couldn't be parsed or no matching named link was found\n\t\treturn null\n\n\t}\n\n\t/**\n\t * Reads the current URL (hash) and navigates accordingly.\n\t */\n\treadURL() {\n\n\t\tconst currentIndices = this.Reveal.getIndices();\n\t\tconst newIndices = this.getIndicesFromHash();\n\n\t\tif( newIndices && ( newIndices.h !== currentIndices.h || newIndices.v !== currentIndices.v || newIndices.f !== undefined ) ) {\n\t\t\tthis.Reveal.slide( newIndices.h, newIndices.v, newIndices.f );\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.slide( currentIndices.h || 0, currentIndices.v || 0 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the page URL (hash) to reflect the current\n\t * state.\n\t *\n\t * @param {number} delay The time in ms to wait before\n\t * writing the hash\n\t */\n\twriteURL( delay ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\n\t\t// Make sure there's never more than one timeout running\n\t\tclearTimeout( this.writeURLTimeout );\n\n\t\t// If a delay is specified, timeout this call\n\t\tif( typeof delay === 'number' ) {\n\t\t\tthis.writeURLTimeout = setTimeout( this.writeURL, delay );\n\t\t}\n\t\telse if( currentSlide ) {\n\n\t\t\tlet hash = this.getHash();\n\n\t\t\t// If we're configured to push to history OR the history\n\t\t\t// API is not avaialble.\n\t\t\tif( config.history ) {\n\t\t\t\twindow.location.hash = hash;\n\t\t\t}\n\t\t\t// If we're configured to reflect the current slide in the\n\t\t\t// URL without pushing to history.\n\t\t\telse if( config.hash ) {\n\t\t\t\t// If the hash is empty, don't add it to the URL\n\t\t\t\tif( hash === '/' ) {\n\t\t\t\t\twindow.history.replaceState( null, null, window.location.pathname + window.location.search );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\twindow.history.replaceState( null, null, '#' + hash );\n\t\t\t\t}\n\t\t\t}\n\t\t\t// UPDATE: The below nuking of all hash changes breaks\n\t\t\t// anchors on pages where reveal.js is running. Removed\n\t\t\t// in 4.0. Why was it here in the first place? ¯\\_(ツ)_/¯\n\t\t\t//\n\t\t\t// If history and hash are both disabled, a hash may still\n\t\t\t// be added to the URL by clicking on a href with a hash\n\t\t\t// target. Counter this by always removing the hash.\n\t\t\t// else {\n\t\t\t// \twindow.history.replaceState( null, null, window.location.pathname + window.location.search );\n\t\t\t// }\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Return a hash URL that will resolve to the given slide location.\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide to link to\n\t */\n\tgetHash( slide ) {\n\n\t\tlet url = '/';\n\n\t\t// Attempt to create a named link based on the slide's ID\n\t\tlet s = slide || this.Reveal.getCurrentSlide();\n\t\tlet id = s ? s.getAttribute( 'id' ) : null;\n\t\tif( id ) {\n\t\t\tid = encodeURIComponent( id );\n\t\t}\n\n\t\tlet index = this.Reveal.getIndices( slide );\n\t\tif( !this.Reveal.getConfig().fragmentInURL ) {\n\t\t\tindex.f = undefined;\n\t\t}\n\n\t\t// If the current slide has an ID, use that as a named link,\n\t\t// but we don't support named links with a fragment index\n\t\tif( typeof id === 'string' && id.length ) {\n\t\t\turl = '/' + id;\n\n\t\t\t// If there is also a fragment, append that at the end\n\t\t\t// of the named link, like: #/named-link/2\n\t\t\tif( index.f >= 0 ) url += '/' + index.f;\n\t\t}\n\t\t// Otherwise use the /h/v index\n\t\telse {\n\t\t\tlet hashIndexBase = this.Reveal.getConfig().hashOneBasedIndex ? 1 : 0;\n\t\t\tif( index.h > 0 || index.v > 0 || index.f >= 0 ) url += index.h + hashIndexBase;\n\t\t\tif( index.v > 0 || index.f >= 0 ) url += '/' + (index.v + hashIndexBase );\n\t\t\tif( index.f >= 0 ) url += '/' + index.f;\n\t\t}\n\n\t\treturn url;\n\n\t}\n\n\t/**\n\t * Handler for the window level 'hashchange' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tonWindowHashChange( event ) {\n\n\t\tthis.readURL();\n\n\t}\n\n}","import { queryAll } from '../utils/util.js'\nimport { isAndroid } from '../utils/device.js'\n\n/**\n * Manages our presentation controls. This includes both\n * the built-in control arrows as well as event monitoring\n * of any elements within the presentation with either of the\n * following helper classes:\n * - .navigate-up\n * - .navigate-right\n * - .navigate-down\n * - .navigate-left\n * - .navigate-next\n * - .navigate-prev\n */\nexport default class Controls {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onNavigateLeftClicked = this.onNavigateLeftClicked.bind( this );\n\t\tthis.onNavigateRightClicked = this.onNavigateRightClicked.bind( this );\n\t\tthis.onNavigateUpClicked = this.onNavigateUpClicked.bind( this );\n\t\tthis.onNavigateDownClicked = this.onNavigateDownClicked.bind( this );\n\t\tthis.onNavigatePrevClicked = this.onNavigatePrevClicked.bind( this );\n\t\tthis.onNavigateNextClicked = this.onNavigateNextClicked.bind( this );\n\n\t}\n\n\trender() {\n\n\t\tconst rtl = this.Reveal.getConfig().rtl;\n\t\tconst revealElement = this.Reveal.getRevealElement();\n\n\t\tthis.element = document.createElement( 'aside' );\n\t\tthis.element.className = 'controls';\n\t\tthis.element.innerHTML =\n\t\t\t`<button class=\"navigate-left\" aria-label=\"${ rtl ? 'next slide' : 'previous slide' }\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-right\" aria-label=\"${ rtl ? 'previous slide' : 'next slide' }\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-up\" aria-label=\"above slide\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-down\" aria-label=\"below slide\"><div class=\"controls-arrow\"></div></button>`;\n\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t\t// There can be multiple instances of controls throughout the page\n\t\tthis.controlsLeft = queryAll( revealElement, '.navigate-left' );\n\t\tthis.controlsRight = queryAll( revealElement, '.navigate-right' );\n\t\tthis.controlsUp = queryAll( revealElement, '.navigate-up' );\n\t\tthis.controlsDown = queryAll( revealElement, '.navigate-down' );\n\t\tthis.controlsPrev = queryAll( revealElement, '.navigate-prev' );\n\t\tthis.controlsNext = queryAll( revealElement, '.navigate-next' );\n\n\t\t// The left, right and down arrows in the standard reveal.js controls\n\t\tthis.controlsRightArrow = this.element.querySelector( '.navigate-right' );\n\t\tthis.controlsLeftArrow = this.element.querySelector( '.navigate-left' );\n\t\tthis.controlsDownArrow = this.element.querySelector( '.navigate-down' );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tthis.element.style.display = config.controls ? 'block' : 'none';\n\n\t\tthis.element.setAttribute( 'data-controls-layout', config.controlsLayout );\n\t\tthis.element.setAttribute( 'data-controls-back-arrows', config.controlsBackArrows );\n\n\t}\n\n\tbind() {\n\n\t\t// Listen to both touch and click events, in case the device\n\t\t// supports both\n\t\tlet pointerEvents = [ 'touchstart', 'click' ];\n\n\t\t// Only support touch for Android, fixes double navigations in\n\t\t// stock browser\n\t\tif( isAndroid ) {\n\t\t\tpointerEvents = [ 'touchstart' ];\n\t\t}\n\n\t\tpointerEvents.forEach( eventName => {\n\t\t\tthis.controlsLeft.forEach( el => el.addEventListener( eventName, this.onNavigateLeftClicked, false ) );\n\t\t\tthis.controlsRight.forEach( el => el.addEventListener( eventName, this.onNavigateRightClicked, false ) );\n\t\t\tthis.controlsUp.forEach( el => el.addEventListener( eventName, this.onNavigateUpClicked, false ) );\n\t\t\tthis.controlsDown.forEach( el => el.addEventListener( eventName, this.onNavigateDownClicked, false ) );\n\t\t\tthis.controlsPrev.forEach( el => el.addEventListener( eventName, this.onNavigatePrevClicked, false ) );\n\t\t\tthis.controlsNext.forEach( el => el.addEventListener( eventName, this.onNavigateNextClicked, false ) );\n\t\t} );\n\n\t}\n\n\tunbind() {\n\n\t\t[ 'touchstart', 'click' ].forEach( eventName => {\n\t\t\tthis.controlsLeft.forEach( el => el.removeEventListener( eventName, this.onNavigateLeftClicked, false ) );\n\t\t\tthis.controlsRight.forEach( el => el.removeEventListener( eventName, this.onNavigateRightClicked, false ) );\n\t\t\tthis.controlsUp.forEach( el => el.removeEventListener( eventName, this.onNavigateUpClicked, false ) );\n\t\t\tthis.controlsDown.forEach( el => el.removeEventListener( eventName, this.onNavigateDownClicked, false ) );\n\t\t\tthis.controlsPrev.forEach( el => el.removeEventListener( eventName, this.onNavigatePrevClicked, false ) );\n\t\t\tthis.controlsNext.forEach( el => el.removeEventListener( eventName, this.onNavigateNextClicked, false ) );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Updates the state of all control/navigation arrows.\n\t */\n\tupdate() {\n\n\t\tlet routes = this.Reveal.availableRoutes();\n\n\t\t// Remove the 'enabled' class from all directions\n\t\t[...this.controlsLeft, ...this.controlsRight, ...this.controlsUp, ...this.controlsDown, ...this.controlsPrev, ...this.controlsNext].forEach( node => {\n\t\t\tnode.classList.remove( 'enabled', 'fragmented' );\n\n\t\t\t// Set 'disabled' attribute on all directions\n\t\t\tnode.setAttribute( 'disabled', 'disabled' );\n\t\t} );\n\n\t\t// Add the 'enabled' class to the available routes; remove 'disabled' attribute to enable buttons\n\t\tif( routes.left ) this.controlsLeft.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.right ) this.controlsRight.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.up ) this.controlsUp.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.down ) this.controlsDown.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t// Prev/next buttons\n\t\tif( routes.left || routes.up ) this.controlsPrev.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.right || routes.down ) this.controlsNext.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t// Highlight fragment directions\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide ) {\n\n\t\t\tlet fragmentsRoutes = this.Reveal.fragments.availableRoutes();\n\n\t\t\t// Always apply fragment decorator to prev/next buttons\n\t\t\tif( fragmentsRoutes.prev ) this.controlsPrev.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\tif( fragmentsRoutes.next ) this.controlsNext.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t\t// Apply fragment decorators to directional buttons based on\n\t\t\t// what slide axis they are in\n\t\t\tif( this.Reveal.isVerticalSlide( currentSlide ) ) {\n\t\t\t\tif( fragmentsRoutes.prev ) this.controlsUp.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t\tif( fragmentsRoutes.next ) this.controlsDown.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif( fragmentsRoutes.prev ) this.controlsLeft.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t\tif( fragmentsRoutes.next ) this.controlsRight.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t}\n\n\t\t}\n\n\t\tif( this.Reveal.getConfig().controlsTutorial ) {\n\n\t\t\tlet indices = this.Reveal.getIndices();\n\n\t\t\t// Highlight control arrows with an animation to ensure\n\t\t\t// that the viewer knows how to navigate\n\t\t\tif( !this.Reveal.hasNavigatedVertically() && routes.down ) {\n\t\t\t\tthis.controlsDownArrow.classList.add( 'highlight' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.controlsDownArrow.classList.remove( 'highlight' );\n\n\t\t\t\tif( this.Reveal.getConfig().rtl ) {\n\n\t\t\t\t\tif( !this.Reveal.hasNavigatedHorizontally() && routes.left && indices.v === 0 ) {\n\t\t\t\t\t\tthis.controlsLeftArrow.classList.add( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.controlsLeftArrow.classList.remove( 'highlight' );\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\n\t\t\t\t\tif( !this.Reveal.hasNavigatedHorizontally() && routes.right && indices.v === 0 ) {\n\t\t\t\t\t\tthis.controlsRightArrow.classList.add( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.controlsRightArrow.classList.remove( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Event handlers for navigation control buttons.\n\t */\n\tonNavigateLeftClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tif( this.Reveal.getConfig().navigationMode === 'linear' ) {\n\t\t\tthis.Reveal.prev();\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.left();\n\t\t}\n\n\t}\n\n\tonNavigateRightClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tif( this.Reveal.getConfig().navigationMode === 'linear' ) {\n\t\t\tthis.Reveal.next();\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.right();\n\t\t}\n\n\t}\n\n\tonNavigateUpClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.up();\n\n\t}\n\n\tonNavigateDownClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.down();\n\n\t}\n\n\tonNavigatePrevClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.prev();\n\n\t}\n\n\tonNavigateNextClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.next();\n\n\t}\n\n\n}","/**\n * Creates a visual progress bar for the presentation.\n */\nexport default class Progress {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onProgressClicked = this.onProgressClicked.bind( this );\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'progress';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t\tthis.bar = document.createElement( 'span' );\n\t\tthis.element.appendChild( this.bar );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tthis.element.style.display = config.progress ? 'block' : 'none';\n\n\t}\n\n\tbind() {\n\n\t\tif( this.Reveal.getConfig().progress && this.element ) {\n\t\t\tthis.element.addEventListener( 'click', this.onProgressClicked, false );\n\t\t}\n\n\t}\n\n\tunbind() {\n\n\t\tif ( this.Reveal.getConfig().progress && this.element ) {\n\t\t\tthis.element.removeEventListener( 'click', this.onProgressClicked, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the progress bar to reflect the current slide.\n\t */\n\tupdate() {\n\n\t\t// Update progress if enabled\n\t\tif( this.Reveal.getConfig().progress && this.bar ) {\n\n\t\t\tlet scale = this.Reveal.getProgress();\n\n\t\t\t// Don't fill the progress bar if there's only one slide\n\t\t\tif( this.Reveal.getTotalSlides() < 2 ) {\n\t\t\t\tscale = 0;\n\t\t\t}\n\n\t\t\tthis.bar.style.transform = 'scaleX('+ scale +')';\n\n\t\t}\n\n\t}\n\n\tgetMaxWidth() {\n\n\t\treturn this.Reveal.getRevealElement().offsetWidth;\n\n\t}\n\n\t/**\n\t * Clicking on the progress bar results in a navigation to the\n\t * closest approximate horizontal slide using this equation:\n\t *\n\t * ( clickX / presentationWidth ) * numberOfSlides\n\t *\n\t * @param {object} event\n\t */\n\tonProgressClicked( event ) {\n\n\t\tthis.Reveal.onUserInput( event );\n\n\t\tevent.preventDefault();\n\n\t\tlet slides = this.Reveal.getSlides();\n\t\tlet slidesTotal = slides.length;\n\t\tlet slideIndex = Math.floor( ( event.clientX / this.getMaxWidth() ) * slidesTotal );\n\n\t\tif( this.Reveal.getConfig().rtl ) {\n\t\t\tslideIndex = slidesTotal - slideIndex;\n\t\t}\n\n\t\tlet targetIndices = this.Reveal.getIndices(slides[slideIndex]);\n\t\tthis.Reveal.slide( targetIndices.h, targetIndices.v );\n\n\t}\n\n\n}","/**\n * Handles hiding of the pointer/cursor when inactive.\n */\nexport default class Pointer {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Throttles mouse wheel navigation\n\t\tthis.lastMouseWheelStep = 0;\n\n\t\t// Is the mouse pointer currently hidden from view\n\t\tthis.cursorHidden = false;\n\n\t\t// Timeout used to determine when the cursor is inactive\n\t\tthis.cursorInactiveTimeout = 0;\n\n\t\tthis.onDocumentCursorActive = this.onDocumentCursorActive.bind( this );\n\t\tthis.onDocumentMouseScroll = this.onDocumentMouseScroll.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.mouseWheel ) {\n\t\t\tdocument.addEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF\n\t\t\tdocument.addEventListener( 'mousewheel', this.onDocumentMouseScroll, false );\n\t\t}\n\t\telse {\n\t\t\tdocument.removeEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF\n\t\t\tdocument.removeEventListener( 'mousewheel', this.onDocumentMouseScroll, false );\n\t\t}\n\n\t\t// Auto-hide the mouse pointer when its inactive\n\t\tif( config.hideInactiveCursor ) {\n\t\t\tdocument.addEventListener( 'mousemove', this.onDocumentCursorActive, false );\n\t\t\tdocument.addEventListener( 'mousedown', this.onDocumentCursorActive, false );\n\t\t}\n\t\telse {\n\t\t\tthis.showCursor();\n\n\t\t\tdocument.removeEventListener( 'mousemove', this.onDocumentCursorActive, false );\n\t\t\tdocument.removeEventListener( 'mousedown', this.onDocumentCursorActive, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Shows the mouse pointer after it has been hidden with\n\t * #hideCursor.\n\t */\n\tshowCursor() {\n\n\t\tif( this.cursorHidden ) {\n\t\t\tthis.cursorHidden = false;\n\t\t\tthis.Reveal.getRevealElement().style.cursor = '';\n\t\t}\n\n\t}\n\n\t/**\n\t * Hides the mouse pointer when it's on top of the .reveal\n\t * container.\n\t */\n\thideCursor() {\n\n\t\tif( this.cursorHidden === false ) {\n\t\t\tthis.cursorHidden = true;\n\t\t\tthis.Reveal.getRevealElement().style.cursor = 'none';\n\t\t}\n\n\t}\n\n\t/**\n\t * Called whenever there is mouse input at the document level\n\t * to determine if the cursor is active or not.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentCursorActive( event ) {\n\n\t\tthis.showCursor();\n\n\t\tclearTimeout( this.cursorInactiveTimeout );\n\n\t\tthis.cursorInactiveTimeout = setTimeout( this.hideCursor.bind( this ), this.Reveal.getConfig().hideCursorTime );\n\n\t}\n\n\t/**\n\t * Handles mouse wheel scrolling, throttled to avoid skipping\n\t * multiple slides.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentMouseScroll( event ) {\n\n\t\tif( Date.now() - this.lastMouseWheelStep > 1000 ) {\n\n\t\t\tthis.lastMouseWheelStep = Date.now();\n\n\t\t\tlet delta = event.detail || -event.wheelDelta;\n\t\t\tif( delta > 0 ) {\n\t\t\t\tthis.Reveal.next();\n\t\t\t}\n\t\t\telse if( delta < 0 ) {\n\t\t\t\tthis.Reveal.prev();\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}","/**\n * Loads a JavaScript file from the given URL and executes it.\n *\n * @param {string} url Address of the .js file to load\n * @param {function} callback Method to invoke when the script\n * has loaded and executed\n */\nexport const loadScript = ( url, callback ) => {\n\n\tconst script = document.createElement( 'script' );\n\tscript.type = 'text/javascript';\n\tscript.async = false;\n\tscript.defer = false;\n\tscript.src = url;\n\n\tif( typeof callback === 'function' ) {\n\n\t\t// Success callback\n\t\tscript.onload = script.onreadystatechange = event => {\n\t\t\tif( event.type === 'load' || /loaded|complete/.test( script.readyState ) ) {\n\n\t\t\t\t// Kill event listeners\n\t\t\t\tscript.onload = script.onreadystatechange = script.onerror = null;\n\n\t\t\t\tcallback();\n\n\t\t\t}\n\t\t};\n\n\t\t// Error callback\n\t\tscript.onerror = err => {\n\n\t\t\t// Kill event listeners\n\t\t\tscript.onload = script.onreadystatechange = script.onerror = null;\n\n\t\t\tcallback( new Error( 'Failed loading script: ' + script.src + '\\n' + err ) );\n\n\t\t};\n\n\t}\n\n\t// Append the script at the end of <head>\n\tconst head = document.querySelector( 'head' );\n\thead.insertBefore( script, head.lastChild );\n\n}","import { loadScript } from '../utils/loader.js'\n\n/**\n * Manages loading and registering of reveal.js plugins.\n */\nexport default class Plugins {\n\n\tconstructor( reveal ) {\n\n\t\tthis.Reveal = reveal;\n\n\t\t// Flags our current state (idle -> loading -> loaded)\n\t\tthis.state = 'idle';\n\n\t\t// An id:instance map of currently registed plugins\n\t\tthis.registeredPlugins = {};\n\n\t\tthis.asyncDependencies = [];\n\n\t}\n\n\t/**\n\t * Loads reveal.js dependencies, registers and\n\t * initializes plugins.\n\t *\n\t * Plugins are direct references to a reveal.js plugin\n\t * object that we register and initialize after any\n\t * synchronous dependencies have loaded.\n\t *\n\t * Dependencies are defined via the 'dependencies' config\n\t * option and will be loaded prior to starting reveal.js.\n\t * Some dependencies may have an 'async' flag, if so they\n\t * will load after reveal.js has been started up.\n\t */\n\tload( plugins, dependencies ) {\n\n\t\tthis.state = 'loading';\n\n\t\tplugins.forEach( this.registerPlugin.bind( this ) );\n\n\t\treturn new Promise( resolve => {\n\n\t\t\tlet scripts = [],\n\t\t\t\tscriptsToLoad = 0;\n\n\t\t\tdependencies.forEach( s => {\n\t\t\t\t// Load if there's no condition or the condition is truthy\n\t\t\t\tif( !s.condition || s.condition() ) {\n\t\t\t\t\tif( s.async ) {\n\t\t\t\t\t\tthis.asyncDependencies.push( s );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tscripts.push( s );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tif( scripts.length ) {\n\t\t\t\tscriptsToLoad = scripts.length;\n\n\t\t\t\tconst scriptLoadedCallback = (s) => {\n\t\t\t\t\tif( s && typeof s.callback === 'function' ) s.callback();\n\n\t\t\t\t\tif( --scriptsToLoad === 0 ) {\n\t\t\t\t\t\tthis.initPlugins().then( resolve );\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\t// Load synchronous scripts\n\t\t\t\tscripts.forEach( s => {\n\t\t\t\t\tif( typeof s.id === 'string' ) {\n\t\t\t\t\t\tthis.registerPlugin( s );\n\t\t\t\t\t\tscriptLoadedCallback( s );\n\t\t\t\t\t}\n\t\t\t\t\telse if( typeof s.src === 'string' ) {\n\t\t\t\t\t\tloadScript( s.src, () => scriptLoadedCallback(s) );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tconsole.warn( 'Unrecognized plugin format', s );\n\t\t\t\t\t\tscriptLoadedCallback();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.initPlugins().then( resolve );\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Initializes our plugins and waits for them to be ready\n\t * before proceeding.\n\t */\n\tinitPlugins() {\n\n\t\treturn new Promise( resolve => {\n\n\t\t\tlet pluginValues = Object.values( this.registeredPlugins );\n\t\t\tlet pluginsToInitialize = pluginValues.length;\n\n\t\t\t// If there are no plugins, skip this step\n\t\t\tif( pluginsToInitialize === 0 ) {\n\t\t\t\tthis.loadAsync().then( resolve );\n\t\t\t}\n\t\t\t// ... otherwise initialize plugins\n\t\t\telse {\n\n\t\t\t\tlet initNextPlugin;\n\n\t\t\t\tlet afterPlugInitialized = () => {\n\t\t\t\t\tif( --pluginsToInitialize === 0 ) {\n\t\t\t\t\t\tthis.loadAsync().then( resolve );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tinitNextPlugin();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tlet i = 0;\n\n\t\t\t\t// Initialize plugins serially\n\t\t\t\tinitNextPlugin = () => {\n\n\t\t\t\t\tlet plugin = pluginValues[i++];\n\n\t\t\t\t\t// If the plugin has an 'init' method, invoke it\n\t\t\t\t\tif( typeof plugin.init === 'function' ) {\n\t\t\t\t\t\tlet promise = plugin.init( this.Reveal );\n\n\t\t\t\t\t\t// If the plugin returned a Promise, wait for it\n\t\t\t\t\t\tif( promise && typeof promise.then === 'function' ) {\n\t\t\t\t\t\t\tpromise.then( afterPlugInitialized );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tafterPlugInitialized();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tafterPlugInitialized();\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tinitNextPlugin();\n\n\t\t\t}\n\n\t\t} )\n\n\t}\n\n\t/**\n\t * Loads all async reveal.js dependencies.\n\t */\n\tloadAsync() {\n\n\t\tthis.state = 'loaded';\n\n\t\tif( this.asyncDependencies.length ) {\n\t\t\tthis.asyncDependencies.forEach( s => {\n\t\t\t\tloadScript( s.src, s.callback );\n\t\t\t} );\n\t\t}\n\n\t\treturn Promise.resolve();\n\n\t}\n\n\t/**\n\t * Registers a new plugin with this reveal.js instance.\n\t *\n\t * reveal.js waits for all regisered plugins to initialize\n\t * before considering itself ready, as long as the plugin\n\t * is registered before calling `Reveal.initialize()`.\n\t */\n\tregisterPlugin( plugin ) {\n\n\t\t// Backwards compatibility to make reveal.js ~3.9.0\n\t\t// plugins work with reveal.js 4.0.0\n\t\tif( arguments.length === 2 && typeof arguments[0] === 'string' ) {\n\t\t\tplugin = arguments[1];\n\t\t\tplugin.id = arguments[0];\n\t\t}\n\t\t// Plugin can optionally be a function which we call\n\t\t// to create an instance of the plugin\n\t\telse if( typeof plugin === 'function' ) {\n\t\t\tplugin = plugin();\n\t\t}\n\n\t\tlet id = plugin.id;\n\n\t\tif( typeof id !== 'string' ) {\n\t\t\tconsole.warn( 'Unrecognized plugin format; can\\'t find plugin.id', plugin );\n\t\t}\n\t\telse if( this.registeredPlugins[id] === undefined ) {\n\t\t\tthis.registeredPlugins[id] = plugin;\n\n\t\t\t// If a plugin is registered after reveal.js is loaded,\n\t\t\t// initialize it right away\n\t\t\tif( this.state === 'loaded' && typeof plugin.init === 'function' ) {\n\t\t\t\tplugin.init( this.Reveal );\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tconsole.warn( 'reveal.js: \"'+ id +'\" plugin has already been registered' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if a specific plugin has been registered.\n\t *\n\t * @param {String} id Unique plugin identifier\n\t */\n\thasPlugin( id ) {\n\n\t\treturn !!this.registeredPlugins[id];\n\n\t}\n\n\t/**\n\t * Returns the specific plugin instance, if a plugin\n\t * with the given ID has been registered.\n\t *\n\t * @param {String} id Unique plugin identifier\n\t */\n\tgetPlugin( id ) {\n\n\t\treturn this.registeredPlugins[id];\n\n\t}\n\n\tgetRegisteredPlugins() {\n\n\t\treturn this.registeredPlugins;\n\n\t}\n\n}\n","import { SLIDES_SELECTOR } from '../utils/constants.js'\nimport { queryAll, createStyleSheet } from '../utils/util.js'\n\n/**\n * Setups up our presentation for printing/exporting to PDF.\n */\nexport default class Print {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Configures the presentation for printing to a static\n\t * PDF.\n\t */\n\tasync setupPDF() {\n\n\t\tconst config = this.Reveal.getConfig();\n\t\tconst slides = queryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR )\n\n\t\t// Compute slide numbers now, before we start duplicating slides\n\t\tconst doingSlideNumbers = config.slideNumber && /all|print/i.test( config.showSlideNumber );\n\n\t\tconst slideSize = this.Reveal.getComputedSlideSize( window.innerWidth, window.innerHeight );\n\n\t\t// Dimensions of the PDF pages\n\t\tconst pageWidth = Math.floor( slideSize.width * ( 1 + config.margin ) ),\n\t\t\tpageHeight = Math.floor( slideSize.height * ( 1 + config.margin ) );\n\n\t\t// Dimensions of slides within the pages\n\t\tconst slideWidth = slideSize.width,\n\t\t\tslideHeight = slideSize.height;\n\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\t// Let the browser know what page size we want to print\n\t\tcreateStyleSheet( '@page{size:'+ pageWidth +'px '+ pageHeight +'px; margin: 0px;}' );\n\n\t\t// Limit the size of certain elements to the dimensions of the slide\n\t\tcreateStyleSheet( '.reveal section>img, .reveal section>video, .reveal section>iframe{max-width: '+ slideWidth +'px; max-height:'+ slideHeight +'px}' );\n\n\t\tdocument.documentElement.classList.add( 'print-pdf' );\n\t\tdocument.body.style.width = pageWidth + 'px';\n\t\tdocument.body.style.height = pageHeight + 'px';\n\n\t\t// Make sure stretch elements fit on slide\n\t\tawait new Promise( requestAnimationFrame );\n\t\tthis.Reveal.layoutSlideContents( slideWidth, slideHeight );\n\n\t\t// Re-run the slide layout so that r-fit-text is applied based on\n\t\t// the printed slide size\n\t\tslides.forEach( slide => this.Reveal.slideContent.layout( slide ) );\n\n\t\t// Batch scrollHeight access to prevent layout thrashing\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\tconst slideScrollHeights = slides.map( slide => slide.scrollHeight );\n\n\t\tconst pages = [];\n\t\tconst pageContainer = slides[0].parentNode;\n\n\t\t// Slide and slide background layout\n\t\tslides.forEach( function( slide, index ) {\n\n\t\t\t// Vertical stacks are not centred since their section\n\t\t\t// children will be\n\t\t\tif( slide.classList.contains( 'stack' ) === false ) {\n\t\t\t\t// Center the slide inside of the page, giving the slide some margin\n\t\t\t\tlet left = ( pageWidth - slideWidth ) / 2;\n\t\t\t\tlet top = ( pageHeight - slideHeight ) / 2;\n\n\t\t\t\tconst contentHeight = slideScrollHeights[ index ];\n\t\t\t\tlet numberOfPages = Math.max( Math.ceil( contentHeight / pageHeight ), 1 );\n\n\t\t\t\t// Adhere to configured pages per slide limit\n\t\t\t\tnumberOfPages = Math.min( numberOfPages, config.pdfMaxPagesPerSlide );\n\n\t\t\t\t// Center slides vertically\n\t\t\t\tif( numberOfPages === 1 && config.center || slide.classList.contains( 'center' ) ) {\n\t\t\t\t\ttop = Math.max( ( pageHeight - contentHeight ) / 2, 0 );\n\t\t\t\t}\n\n\t\t\t\t// Wrap the slide in a page element and hide its overflow\n\t\t\t\t// so that no page ever flows onto another\n\t\t\t\tconst page = document.createElement( 'div' );\n\t\t\t\tpages.push( page );\n\n\t\t\t\tpage.className = 'pdf-page';\n\t\t\t\tpage.style.height = ( ( pageHeight + config.pdfPageHeightOffset ) * numberOfPages ) + 'px';\n\t\t\t\tpage.appendChild( slide );\n\n\t\t\t\t// Position the slide inside of the page\n\t\t\t\tslide.style.left = left + 'px';\n\t\t\t\tslide.style.top = top + 'px';\n\t\t\t\tslide.style.width = slideWidth + 'px';\n\n\t\t\t\tif( slide.slideBackgroundElement ) {\n\t\t\t\t\tpage.insertBefore( slide.slideBackgroundElement, slide );\n\t\t\t\t}\n\n\t\t\t\t// Inject notes if `showNotes` is enabled\n\t\t\t\tif( config.showNotes ) {\n\n\t\t\t\t\t// Are there notes for this slide?\n\t\t\t\t\tconst notes = this.Reveal.getSlideNotes( slide );\n\t\t\t\t\tif( notes ) {\n\n\t\t\t\t\t\tconst notesSpacing = 8;\n\t\t\t\t\t\tconst notesLayout = typeof config.showNotes === 'string' ? config.showNotes : 'inline';\n\t\t\t\t\t\tconst notesElement = document.createElement( 'div' );\n\t\t\t\t\t\tnotesElement.classList.add( 'speaker-notes' );\n\t\t\t\t\t\tnotesElement.classList.add( 'speaker-notes-pdf' );\n\t\t\t\t\t\tnotesElement.setAttribute( 'data-layout', notesLayout );\n\t\t\t\t\t\tnotesElement.innerHTML = notes;\n\n\t\t\t\t\t\tif( notesLayout === 'separate-page' ) {\n\t\t\t\t\t\t\tpages.push( notesElement );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnotesElement.style.left = notesSpacing + 'px';\n\t\t\t\t\t\t\tnotesElement.style.bottom = notesSpacing + 'px';\n\t\t\t\t\t\t\tnotesElement.style.width = ( pageWidth - notesSpacing*2 ) + 'px';\n\t\t\t\t\t\t\tpage.appendChild( notesElement );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t// Inject slide numbers if `slideNumbers` are enabled\n\t\t\t\tif( doingSlideNumbers ) {\n\t\t\t\t\tconst slideNumber = index + 1;\n\t\t\t\t\tconst numberElement = document.createElement( 'div' );\n\t\t\t\t\tnumberElement.classList.add( 'slide-number' );\n\t\t\t\t\tnumberElement.classList.add( 'slide-number-pdf' );\n\t\t\t\t\tnumberElement.innerHTML = slideNumber;\n\t\t\t\t\tpage.appendChild( numberElement );\n\t\t\t\t}\n\n\t\t\t\t// Copy page and show fragments one after another\n\t\t\t\tif( config.pdfSeparateFragments ) {\n\n\t\t\t\t\t// Each fragment 'group' is an array containing one or more\n\t\t\t\t\t// fragments. Multiple fragments that appear at the same time\n\t\t\t\t\t// are part of the same group.\n\t\t\t\t\tconst fragmentGroups = this.Reveal.fragments.sort( page.querySelectorAll( '.fragment' ), true );\n\n\t\t\t\t\tlet previousFragmentStep;\n\n\t\t\t\t\tfragmentGroups.forEach( function( fragments ) {\n\n\t\t\t\t\t\t// Remove 'current-fragment' from the previous group\n\t\t\t\t\t\tif( previousFragmentStep ) {\n\t\t\t\t\t\t\tpreviousFragmentStep.forEach( function( fragment ) {\n\t\t\t\t\t\t\t\tfragment.classList.remove( 'current-fragment' );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Show the fragments for the current index\n\t\t\t\t\t\tfragments.forEach( function( fragment ) {\n\t\t\t\t\t\t\tfragment.classList.add( 'visible', 'current-fragment' );\n\t\t\t\t\t\t}, this );\n\n\t\t\t\t\t\t// Create a separate page for the current fragment state\n\t\t\t\t\t\tconst clonedPage = page.cloneNode( true );\n\t\t\t\t\t\tpages.push( clonedPage );\n\n\t\t\t\t\t\tpreviousFragmentStep = fragments;\n\n\t\t\t\t\t}, this );\n\n\t\t\t\t\t// Reset the first/original page so that all fragments are hidden\n\t\t\t\t\tfragmentGroups.forEach( function( fragments ) {\n\t\t\t\t\t\tfragments.forEach( function( fragment ) {\n\t\t\t\t\t\t\tfragment.classList.remove( 'visible', 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\t\t\t\t// Show all fragments\n\t\t\t\telse {\n\t\t\t\t\tqueryAll( page, '.fragment:not(.fade-out)' ).forEach( function( fragment ) {\n\t\t\t\t\t\tfragment.classList.add( 'visible' );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}, this );\n\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\tpages.forEach( page => pageContainer.appendChild( page ) );\n\n\t\t// Notify subscribers that the PDF layout is good to go\n\t\tthis.Reveal.dispatchEvent({ type: 'pdf-ready' });\n\n\t}\n\n\t/**\n\t * Checks if this instance is being used to print a PDF.\n\t */\n\tisPrintingPDF() {\n\n\t\treturn ( /print-pdf/gi ).test( window.location.search );\n\n\t}\n\n}\n","import { isAndroid } from '../utils/device.js'\nimport { matches } from '../utils/util.js'\n\nconst SWIPE_THRESHOLD = 40;\n\n/**\n * Controls all touch interactions and navigations for\n * a presentation.\n */\nexport default class Touch {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Holds information about the currently ongoing touch interaction\n\t\tthis.touchStartX = 0;\n\t\tthis.touchStartY = 0;\n\t\tthis.touchStartCount = 0;\n\t\tthis.touchCaptured = false;\n\n\t\tthis.onPointerDown = this.onPointerDown.bind( this );\n\t\tthis.onPointerMove = this.onPointerMove.bind( this );\n\t\tthis.onPointerUp = this.onPointerUp.bind( this );\n\t\tthis.onTouchStart = this.onTouchStart.bind( this );\n\t\tthis.onTouchMove = this.onTouchMove.bind( this );\n\t\tthis.onTouchEnd = this.onTouchEnd.bind( this );\n\n\t}\n\n\t/**\n\t *\n\t */\n\tbind() {\n\n\t\tlet revealElement = this.Reveal.getRevealElement();\n\n\t\tif( 'onpointerdown' in window ) {\n\t\t\t// Use W3C pointer events\n\t\t\trevealElement.addEventListener( 'pointerdown', this.onPointerDown, false );\n\t\t\trevealElement.addEventListener( 'pointermove', this.onPointerMove, false );\n\t\t\trevealElement.addEventListener( 'pointerup', this.onPointerUp, false );\n\t\t}\n\t\telse if( window.navigator.msPointerEnabled ) {\n\t\t\t// IE 10 uses prefixed version of pointer events\n\t\t\trevealElement.addEventListener( 'MSPointerDown', this.onPointerDown, false );\n\t\t\trevealElement.addEventListener( 'MSPointerMove', this.onPointerMove, false );\n\t\t\trevealElement.addEventListener( 'MSPointerUp', this.onPointerUp, false );\n\t\t}\n\t\telse {\n\t\t\t// Fall back to touch events\n\t\t\trevealElement.addEventListener( 'touchstart', this.onTouchStart, false );\n\t\t\trevealElement.addEventListener( 'touchmove', this.onTouchMove, false );\n\t\t\trevealElement.addEventListener( 'touchend', this.onTouchEnd, false );\n\t\t}\n\n\t}\n\n\t/**\n\t *\n\t */\n\tunbind() {\n\n\t\tlet revealElement = this.Reveal.getRevealElement();\n\n\t\trevealElement.removeEventListener( 'pointerdown', this.onPointerDown, false );\n\t\trevealElement.removeEventListener( 'pointermove', this.onPointerMove, false );\n\t\trevealElement.removeEventListener( 'pointerup', this.onPointerUp, false );\n\n\t\trevealElement.removeEventListener( 'MSPointerDown', this.onPointerDown, false );\n\t\trevealElement.removeEventListener( 'MSPointerMove', this.onPointerMove, false );\n\t\trevealElement.removeEventListener( 'MSPointerUp', this.onPointerUp, false );\n\n\t\trevealElement.removeEventListener( 'touchstart', this.onTouchStart, false );\n\t\trevealElement.removeEventListener( 'touchmove', this.onTouchMove, false );\n\t\trevealElement.removeEventListener( 'touchend', this.onTouchEnd, false );\n\n\t}\n\n\t/**\n\t * Checks if the target element prevents the triggering of\n\t * swipe navigation.\n\t */\n\tisSwipePrevented( target ) {\n\n\t\t// Prevent accidental swipes when scrubbing timelines\n\t\tif( matches( target, 'video, audio' ) ) return true;\n\n\t\twhile( target && typeof target.hasAttribute === 'function' ) {\n\t\t\tif( target.hasAttribute( 'data-prevent-swipe' ) ) return true;\n\t\t\ttarget = target.parentNode;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Handler for the 'touchstart' event, enables support for\n\t * swipe and pinch gestures.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchStart( event ) {\n\n\t\tif( this.isSwipePrevented( event.target ) ) return true;\n\n\t\tthis.touchStartX = event.touches[0].clientX;\n\t\tthis.touchStartY = event.touches[0].clientY;\n\t\tthis.touchStartCount = event.touches.length;\n\n\t}\n\n\t/**\n\t * Handler for the 'touchmove' event.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchMove( event ) {\n\n\t\tif( this.isSwipePrevented( event.target ) ) return true;\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\t// Each touch should only trigger one action\n\t\tif( !this.touchCaptured ) {\n\t\t\tthis.Reveal.onUserInput( event );\n\n\t\t\tlet currentX = event.touches[0].clientX;\n\t\t\tlet currentY = event.touches[0].clientY;\n\n\t\t\t// There was only one touch point, look for a swipe\n\t\t\tif( event.touches.length === 1 && this.touchStartCount !== 2 ) {\n\n\t\t\t\tlet availableRoutes = this.Reveal.availableRoutes({ includeFragments: true });\n\n\t\t\t\tlet deltaX = currentX - this.touchStartX,\n\t\t\t\t\tdeltaY = currentY - this.touchStartY;\n\n\t\t\t\tif( deltaX > SWIPE_THRESHOLD && Math.abs( deltaX ) > Math.abs( deltaY ) ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tif( config.rtl ) {\n\t\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.left();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaX < -SWIPE_THRESHOLD && Math.abs( deltaX ) > Math.abs( deltaY ) ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tif( config.rtl ) {\n\t\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.right();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaY > SWIPE_THRESHOLD && availableRoutes.up ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.up();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaY < -SWIPE_THRESHOLD && availableRoutes.down ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.down();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// If we're embedded, only block touch events if they have\n\t\t\t\t// triggered an action\n\t\t\t\tif( config.embedded ) {\n\t\t\t\t\tif( this.touchCaptured || this.Reveal.isVerticalSlide() ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Not embedded? Block them all to avoid needless tossing\n\t\t\t\t// around of the viewport in iOS\n\t\t\t\telse {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t\t// There's a bug with swiping on some Android devices unless\n\t\t// the default action is always prevented\n\t\telse if( isAndroid ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the 'touchend' event.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchEnd( event ) {\n\n\t\tthis.touchCaptured = false;\n\n\t}\n\n\t/**\n\t * Convert pointer down to touch start.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerDown( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchStart( event );\n\t\t}\n\n\t}\n\n\t/**\n\t * Convert pointer move to touch move.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerMove( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchMove( event );\n\t\t}\n\n\t}\n\n\t/**\n\t * Convert pointer up to touch end.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerUp( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchEnd( event );\n\t\t}\n\n\t}\n\n}","import { closest } from '../utils/util.js'\n\n/**\n * Manages focus when a presentation is embedded. This\n * helps us only capture keyboard from the presentation\n * a user is currently interacting with in a page where\n * multiple presentations are embedded.\n */\n\nconst STATE_FOCUS = 'focus';\nconst STATE_BLUR = 'blur';\n\nexport default class Focus {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onRevealPointerDown = this.onRevealPointerDown.bind( this );\n\t\tthis.onDocumentPointerDown = this.onDocumentPointerDown.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.embedded ) {\n\t\t\tthis.blur();\n\t\t}\n\t\telse {\n\t\t\tthis.focus();\n\t\t\tthis.unbind();\n\t\t}\n\n\t}\n\n\tbind() {\n\n\t\tif( this.Reveal.getConfig().embedded ) {\n\t\t\tthis.Reveal.getRevealElement().addEventListener( 'pointerdown', this.onRevealPointerDown, false );\n\t\t}\n\n\t}\n\n\tunbind() {\n\n\t\tthis.Reveal.getRevealElement().removeEventListener( 'pointerdown', this.onRevealPointerDown, false );\n\t\tdocument.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\n\t}\n\n\tfocus() {\n\n\t\tif( this.state !== STATE_FOCUS ) {\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'focused' );\n\t\t\tdocument.addEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\t\t}\n\n\t\tthis.state = STATE_FOCUS;\n\n\t}\n\n\tblur() {\n\n\t\tif( this.state !== STATE_BLUR ) {\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'focused' );\n\t\t\tdocument.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\t\t}\n\n\t\tthis.state = STATE_BLUR;\n\n\t}\n\n\tisFocused() {\n\n\t\treturn this.state === STATE_FOCUS;\n\n\t}\n\n\tonRevealPointerDown( event ) {\n\n\t\tthis.focus();\n\n\t}\n\n\tonDocumentPointerDown( event ) {\n\n\t\tlet revealElement = closest( event.target, '.reveal' );\n\t\tif( !revealElement || revealElement !== this.Reveal.getRevealElement() ) {\n\t\t\tthis.blur();\n\t\t}\n\n\t}\n\n}","/**\n * Handles the showing and \n */\nexport default class Notes {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'speaker-notes';\n\t\tthis.element.setAttribute( 'data-prevent-swipe', '' );\n\t\tthis.element.setAttribute( 'tabindex', '0' );\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.showNotes ) {\n\t\t\tthis.element.setAttribute( 'data-layout', typeof config.showNotes === 'string' ? config.showNotes : 'inline' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Pick up notes from the current slide and display them\n\t * to the viewer.\n\t *\n\t * @see {@link config.showNotes}\n\t */\n\tupdate() {\n\n\t\tif( this.Reveal.getConfig().showNotes && this.element && this.Reveal.getCurrentSlide() && !this.Reveal.print.isPrintingPDF() ) {\n\n\t\t\tthis.element.innerHTML = this.getSlideNotes() || '<span class=\"notes-placeholder\">No notes on this slide.</span>';\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the visibility of the speaker notes sidebar that\n\t * is used to share annotated slides. The notes sidebar is\n\t * only visible if showNotes is true and there are notes on\n\t * one or more slides in the deck.\n\t */\n\tupdateVisibility() {\n\n\t\tif( this.Reveal.getConfig().showNotes && this.hasNotes() && !this.Reveal.print.isPrintingPDF() ) {\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'show-notes' );\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'show-notes' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if there are speaker notes for ANY slide in the\n\t * presentation.\n\t */\n\thasNotes() {\n\n\t\treturn this.Reveal.getSlidesElement().querySelectorAll( '[data-notes], aside.notes' ).length > 0;\n\n\t}\n\n\t/**\n\t * Checks if this presentation is running inside of the\n\t * speaker notes window.\n\t *\n\t * @return {boolean}\n\t */\n\tisSpeakerNotesWindow() {\n\n\t\treturn !!window.location.search.match( /receiver/gi );\n\n\t}\n\n\t/**\n\t * Retrieves the speaker notes from a slide. Notes can be\n\t * defined in two ways:\n\t * 1. As a data-notes attribute on the slide <section>\n\t * 2. As an <aside class=\"notes\"> inside of the slide\n\t *\n\t * @param {HTMLElement} [slide=currentSlide]\n\t * @return {(string|null)}\n\t */\n\tgetSlideNotes( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\t// Notes can be specified via the data-notes attribute...\n\t\tif( slide.hasAttribute( 'data-notes' ) ) {\n\t\t\treturn slide.getAttribute( 'data-notes' );\n\t\t}\n\n\t\t// ... or using an <aside class=\"notes\"> element\n\t\tlet notesElement = slide.querySelector( 'aside.notes' );\n\t\tif( notesElement ) {\n\t\t\treturn notesElement.innerHTML;\n\t\t}\n\n\t\treturn null;\n\n\t}\n\n}","/**\n * UI component that lets the use control auto-slide\n * playback via play/pause.\n */\nexport default class Playback {\n\n\t/**\n\t * @param {HTMLElement} container The component will append\n\t * itself to this\n\t * @param {function} progressCheck A method which will be\n\t * called frequently to get the current playback progress on\n\t * a range of 0-1\n\t */\n\tconstructor( container, progressCheck ) {\n\n\t\t// Cosmetics\n\t\tthis.diameter = 100;\n\t\tthis.diameter2 = this.diameter/2;\n\t\tthis.thickness = 6;\n\n\t\t// Flags if we are currently playing\n\t\tthis.playing = false;\n\n\t\t// Current progress on a 0-1 range\n\t\tthis.progress = 0;\n\n\t\t// Used to loop the animation smoothly\n\t\tthis.progressOffset = 1;\n\n\t\tthis.container = container;\n\t\tthis.progressCheck = progressCheck;\n\n\t\tthis.canvas = document.createElement( 'canvas' );\n\t\tthis.canvas.className = 'playback';\n\t\tthis.canvas.width = this.diameter;\n\t\tthis.canvas.height = this.diameter;\n\t\tthis.canvas.style.width = this.diameter2 + 'px';\n\t\tthis.canvas.style.height = this.diameter2 + 'px';\n\t\tthis.context = this.canvas.getContext( '2d' );\n\n\t\tthis.container.appendChild( this.canvas );\n\n\t\tthis.render();\n\n\t}\n\n\tsetPlaying( value ) {\n\n\t\tconst wasPlaying = this.playing;\n\n\t\tthis.playing = value;\n\n\t\t// Start repainting if we weren't already\n\t\tif( !wasPlaying && this.playing ) {\n\t\t\tthis.animate();\n\t\t}\n\t\telse {\n\t\t\tthis.render();\n\t\t}\n\n\t}\n\n\tanimate() {\n\n\t\tconst progressBefore = this.progress;\n\n\t\tthis.progress = this.progressCheck();\n\n\t\t// When we loop, offset the progress so that it eases\n\t\t// smoothly rather than immediately resetting\n\t\tif( progressBefore > 0.8 && this.progress < 0.2 ) {\n\t\t\tthis.progressOffset = this.progress;\n\t\t}\n\n\t\tthis.render();\n\n\t\tif( this.playing ) {\n\t\t\trequestAnimationFrame( this.animate.bind( this ) );\n\t\t}\n\n\t}\n\n\t/**\n\t * Renders the current progress and playback state.\n\t */\n\trender() {\n\n\t\tlet progress = this.playing ? this.progress : 0,\n\t\t\tradius = ( this.diameter2 ) - this.thickness,\n\t\t\tx = this.diameter2,\n\t\t\ty = this.diameter2,\n\t\t\ticonSize = 28;\n\n\t\t// Ease towards 1\n\t\tthis.progressOffset += ( 1 - this.progressOffset ) * 0.1;\n\n\t\tconst endAngle = ( - Math.PI / 2 ) + ( progress * ( Math.PI * 2 ) );\n\t\tconst startAngle = ( - Math.PI / 2 ) + ( this.progressOffset * ( Math.PI * 2 ) );\n\n\t\tthis.context.save();\n\t\tthis.context.clearRect( 0, 0, this.diameter, this.diameter );\n\n\t\t// Solid background color\n\t\tthis.context.beginPath();\n\t\tthis.context.arc( x, y, radius + 4, 0, Math.PI * 2, false );\n\t\tthis.context.fillStyle = 'rgba( 0, 0, 0, 0.4 )';\n\t\tthis.context.fill();\n\n\t\t// Draw progress track\n\t\tthis.context.beginPath();\n\t\tthis.context.arc( x, y, radius, 0, Math.PI * 2, false );\n\t\tthis.context.lineWidth = this.thickness;\n\t\tthis.context.strokeStyle = 'rgba( 255, 255, 255, 0.2 )';\n\t\tthis.context.stroke();\n\n\t\tif( this.playing ) {\n\t\t\t// Draw progress on top of track\n\t\t\tthis.context.beginPath();\n\t\t\tthis.context.arc( x, y, radius, startAngle, endAngle, false );\n\t\t\tthis.context.lineWidth = this.thickness;\n\t\t\tthis.context.strokeStyle = '#fff';\n\t\t\tthis.context.stroke();\n\t\t}\n\n\t\tthis.context.translate( x - ( iconSize / 2 ), y - ( iconSize / 2 ) );\n\n\t\t// Draw play/pause icons\n\t\tif( this.playing ) {\n\t\t\tthis.context.fillStyle = '#fff';\n\t\t\tthis.context.fillRect( 0, 0, iconSize / 2 - 4, iconSize );\n\t\t\tthis.context.fillRect( iconSize / 2 + 4, 0, iconSize / 2 - 4, iconSize );\n\t\t}\n\t\telse {\n\t\t\tthis.context.beginPath();\n\t\t\tthis.context.translate( 4, 0 );\n\t\t\tthis.context.moveTo( 0, 0 );\n\t\t\tthis.context.lineTo( iconSize - 4, iconSize / 2 );\n\t\t\tthis.context.lineTo( 0, iconSize );\n\t\t\tthis.context.fillStyle = '#fff';\n\t\t\tthis.context.fill();\n\t\t}\n\n\t\tthis.context.restore();\n\n\t}\n\n\ton( type, listener ) {\n\t\tthis.canvas.addEventListener( type, listener, false );\n\t}\n\n\toff( type, listener ) {\n\t\tthis.canvas.removeEventListener( type, listener, false );\n\t}\n\n\tdestroy() {\n\n\t\tthis.playing = false;\n\n\t\tif( this.canvas.parentNode ) {\n\t\t\tthis.container.removeChild( this.canvas );\n\t\t}\n\n\t}\n\n}","/**\n * The default reveal.js config object.\n */\nexport default {\n\n\t// The \"normal\" size of the presentation, aspect ratio will be preserved\n\t// when the presentation is scaled to fit different resolutions\n\twidth: 960,\n\theight: 700,\n\n\t// Factor of the display size that should remain empty around the content\n\tmargin: 0.04,\n\n\t// Bounds for smallest/largest possible scale to apply to content\n\tminScale: 0.2,\n\tmaxScale: 2.0,\n\n\t// Display presentation control arrows\n\tcontrols: true,\n\n\t// Help the user learn the controls by providing hints, for example by\n\t// bouncing the down arrow when they first encounter a vertical slide\n\tcontrolsTutorial: true,\n\n\t// Determines where controls appear, \"edges\" or \"bottom-right\"\n\tcontrolsLayout: 'bottom-right',\n\n\t// Visibility rule for backwards navigation arrows; \"faded\", \"hidden\"\n\t// or \"visible\"\n\tcontrolsBackArrows: 'faded',\n\n\t// Display a presentation progress bar\n\tprogress: true,\n\n\t// Display the page number of the current slide\n\t// - true: Show slide number\n\t// - false: Hide slide number\n\t//\n\t// Can optionally be set as a string that specifies the number formatting:\n\t// - \"h.v\":\t Horizontal . vertical slide number (default)\n\t// - \"h/v\":\t Horizontal / vertical slide number\n\t// - \"c\":\t Flattened slide number\n\t// - \"c/t\":\t Flattened slide number / total slides\n\t//\n\t// Alternatively, you can provide a function that returns the slide\n\t// number for the current slide. The function should take in a slide\n\t// object and return an array with one string [slideNumber] or\n\t// three strings [n1,delimiter,n2]. See #formatSlideNumber().\n\tslideNumber: false,\n\n\t// Can be used to limit the contexts in which the slide number appears\n\t// - \"all\": Always show the slide number\n\t// - \"print\": Only when printing to PDF\n\t// - \"speaker\": Only in the speaker view\n\tshowSlideNumber: 'all',\n\n\t// Use 1 based indexing for # links to match slide number (default is zero\n\t// based)\n\thashOneBasedIndex: false,\n\n\t// Add the current slide number to the URL hash so that reloading the\n\t// page/copying the URL will return you to the same slide\n\thash: false,\n\n\t// Flags if we should monitor the hash and change slides accordingly\n\trespondToHashChanges: true,\n\n\t// Push each slide change to the browser history. Implies `hash: true`\n\thistory: false,\n\n\t// Enable keyboard shortcuts for navigation\n\tkeyboard: true,\n\n\t// Optional function that blocks keyboard events when retuning false\n\t//\n\t// If you set this to 'focused', we will only capture keyboard events\n\t// for embedded decks when they are in focus\n\tkeyboardCondition: null,\n\n\t// Disables the default reveal.js slide layout (scaling and centering)\n\t// so that you can use custom CSS layout\n\tdisableLayout: false,\n\n\t// Enable the slide overview mode\n\toverview: true,\n\n\t// Vertical centering of slides\n\tcenter: true,\n\n\t// Enables touch navigation on devices with touch input\n\ttouch: true,\n\n\t// Loop the presentation\n\tloop: false,\n\n\t// Change the presentation direction to be RTL\n\trtl: false,\n\n\t// Changes the behavior of our navigation directions.\n\t//\n\t// \"default\"\n\t// Left/right arrow keys step between horizontal slides, up/down\n\t// arrow keys step between vertical slides. Space key steps through\n\t// all slides (both horizontal and vertical).\n\t//\n\t// \"linear\"\n\t// Removes the up/down arrows. Left/right arrows step through all\n\t// slides (both horizontal and vertical).\n\t//\n\t// \"grid\"\n\t// When this is enabled, stepping left/right from a vertical stack\n\t// to an adjacent vertical stack will land you at the same vertical\n\t// index.\n\t//\n\t// Consider a deck with six slides ordered in two vertical stacks:\n\t// 1.1 2.1\n\t// 1.2 2.2\n\t// 1.3 2.3\n\t//\n\t// If you're on slide 1.3 and navigate right, you will normally move\n\t// from 1.3 -> 2.1. If \"grid\" is used, the same navigation takes you\n\t// from 1.3 -> 2.3.\n\tnavigationMode: 'default',\n\n\t// Randomizes the order of slides each time the presentation loads\n\tshuffle: false,\n\n\t// Turns fragments on and off globally\n\tfragments: true,\n\n\t// Flags whether to include the current fragment in the URL,\n\t// so that reloading brings you to the same fragment position\n\tfragmentInURL: true,\n\n\t// Flags if the presentation is running in an embedded mode,\n\t// i.e. contained within a limited portion of the screen\n\tembedded: false,\n\n\t// Flags if we should show a help overlay when the question-mark\n\t// key is pressed\n\thelp: true,\n\n\t// Flags if it should be possible to pause the presentation (blackout)\n\tpause: true,\n\n\t// Flags if speaker notes should be visible to all viewers\n\tshowNotes: false,\n\n\t// Flags if slides with data-visibility=\"hidden\" should be kep visible\n\tshowHiddenSlides: false,\n\n\t// Global override for autoplaying embedded media (video/audio/iframe)\n\t// - null: Media will only autoplay if data-autoplay is present\n\t// - true: All media will autoplay, regardless of individual setting\n\t// - false: No media will autoplay, regardless of individual setting\n\tautoPlayMedia: null,\n\n\t// Global override for preloading lazy-loaded iframes\n\t// - null: Iframes with data-src AND data-preload will be loaded when within\n\t// the viewDistance, iframes with only data-src will be loaded when visible\n\t// - true: All iframes with data-src will be loaded when within the viewDistance\n\t// - false: All iframes with data-src will be loaded only when visible\n\tpreloadIframes: null,\n\n\t// Can be used to globally disable auto-animation\n\tautoAnimate: true,\n\n\t// Optionally provide a custom element matcher that will be\n\t// used to dictate which elements we can animate between.\n\tautoAnimateMatcher: null,\n\n\t// Default settings for our auto-animate transitions, can be\n\t// overridden per-slide or per-element via data arguments\n\tautoAnimateEasing: 'ease',\n\tautoAnimateDuration: 1.0,\n\tautoAnimateUnmatched: true,\n\n\t// CSS properties that can be auto-animated. Position & scale\n\t// is matched separately so there's no need to include styles\n\t// like top/right/bottom/left, width/height or margin.\n\tautoAnimateStyles: [\n\t\t'opacity',\n\t\t'color',\n\t\t'background-color',\n\t\t'padding',\n\t\t'font-size',\n\t\t'line-height',\n\t\t'letter-spacing',\n\t\t'border-width',\n\t\t'border-color',\n\t\t'border-radius',\n\t\t'outline',\n\t\t'outline-offset'\n\t],\n\n\t// Controls automatic progression to the next slide\n\t// - 0: Auto-sliding only happens if the data-autoslide HTML attribute\n\t// is present on the current slide or fragment\n\t// - 1+: All slides will progress automatically at the given interval\n\t// - false: No auto-sliding, even if data-autoslide is present\n\tautoSlide: 0,\n\n\t// Stop auto-sliding after user input\n\tautoSlideStoppable: true,\n\n\t// Use this method for navigation when auto-sliding (defaults to navigateNext)\n\tautoSlideMethod: null,\n\n\t// Specify the average time in seconds that you think you will spend\n\t// presenting each slide. This is used to show a pacing timer in the\n\t// speaker view\n\tdefaultTiming: null,\n\n\t// Enable slide navigation via mouse wheel\n\tmouseWheel: false,\n\n\t// Opens links in an iframe preview overlay\n\t// Add `data-preview-link` and `data-preview-link=\"false\"` to customise each link\n\t// individually\n\tpreviewLinks: false,\n\n\t// Exposes the reveal.js API through window.postMessage\n\tpostMessage: true,\n\n\t// Dispatches all reveal.js events to the parent window through postMessage\n\tpostMessageEvents: false,\n\n\t// Focuses body when page changes visibility to ensure keyboard shortcuts work\n\tfocusBodyOnPageVisibilityChange: true,\n\n\t// Transition style\n\ttransition: 'slide', // none/fade/slide/convex/concave/zoom\n\n\t// Transition speed\n\ttransitionSpeed: 'default', // default/fast/slow\n\n\t// Transition style for full page slide backgrounds\n\tbackgroundTransition: 'fade', // none/fade/slide/convex/concave/zoom\n\n\t// Parallax background image\n\tparallaxBackgroundImage: '', // CSS syntax, e.g. \"a.jpg\"\n\n\t// Parallax background size\n\tparallaxBackgroundSize: '', // CSS syntax, e.g. \"3000px 2000px\"\n\n\t// Parallax background repeat\n\tparallaxBackgroundRepeat: '', // repeat/repeat-x/repeat-y/no-repeat/initial/inherit\n\n\t// Parallax background position\n\tparallaxBackgroundPosition: '', // CSS syntax, e.g. \"top left\"\n\n\t// Amount of pixels to move the parallax background per slide step\n\tparallaxBackgroundHorizontal: null,\n\tparallaxBackgroundVertical: null,\n\n\t// The maximum number of pages a single slide can expand onto when printing\n\t// to PDF, unlimited by default\n\tpdfMaxPagesPerSlide: Number.POSITIVE_INFINITY,\n\n\t// Prints each fragment on a separate slide\n\tpdfSeparateFragments: true,\n\n\t// Offset used to reduce the height of content within exported PDF pages.\n\t// This exists to account for environment differences based on how you\n\t// print to PDF. CLI printing options, like phantomjs and wkpdf, can end\n\t// on precisely the total height of the document whereas in-browser\n\t// printing has to end one pixel before.\n\tpdfPageHeightOffset: -1,\n\n\t// Number of slides away from the current that are visible\n\tviewDistance: 3,\n\n\t// Number of slides away from the current that are visible on mobile\n\t// devices. It is advisable to set this to a lower number than\n\t// viewDistance in order to save resources.\n\tmobileViewDistance: 2,\n\n\t// The display mode that will be used to show slides\n\tdisplay: 'block',\n\n\t// Hide cursor if inactive\n\thideInactiveCursor: true,\n\n\t// Time before the cursor is hidden (in ms)\n\thideCursorTime: 5000,\n\n\t// Script dependencies to load\n\tdependencies: [],\n\n\t// Plugin objects to register and use for this presentation\n\tplugins: []\n\n}","import SlideContent from './controllers/slidecontent.js'\nimport SlideNumber from './controllers/slidenumber.js'\nimport Backgrounds from './controllers/backgrounds.js'\nimport AutoAnimate from './controllers/autoanimate.js'\nimport Fragments from './controllers/fragments.js'\nimport Overview from './controllers/overview.js'\nimport Keyboard from './controllers/keyboard.js'\nimport Location from './controllers/location.js'\nimport Controls from './controllers/controls.js'\nimport Progress from './controllers/progress.js'\nimport Pointer from './controllers/pointer.js'\nimport Plugins from './controllers/plugins.js'\nimport Print from './controllers/print.js'\nimport Touch from './controllers/touch.js'\nimport Focus from './controllers/focus.js'\nimport Notes from './controllers/notes.js'\nimport Playback from './components/playback.js'\nimport defaultConfig from './config.js'\nimport * as Util from './utils/util.js'\nimport * as Device from './utils/device.js'\nimport {\n\tSLIDES_SELECTOR,\n\tHORIZONTAL_SLIDES_SELECTOR,\n\tVERTICAL_SLIDES_SELECTOR,\n\tPOST_MESSAGE_METHOD_BLACKLIST\n} from './utils/constants.js'\n\n// The reveal.js version\nexport const VERSION = '4.2.0';\n\n/**\n * reveal.js\n * https://revealjs.com\n * MIT licensed\n *\n * Copyright (C) 2011-2021 Hakim El Hattab, https://hakim.se\n */\nexport default function( revealElement, options ) {\n\n\t// Support initialization with no args, one arg\n\t// [options] or two args [revealElement, options]\n\tif( arguments.length < 2 ) {\n\t\toptions = arguments[0];\n\t\trevealElement = document.querySelector( '.reveal' );\n\t}\n\n\tconst Reveal = {};\n\n\t// Configuration defaults, can be overridden at initialization time\n\tlet config = {},\n\n\t\t// Flags if reveal.js is loaded (has dispatched the 'ready' event)\n\t\tready = false,\n\n\t\t// The horizontal and vertical index of the currently active slide\n\t\tindexh,\n\t\tindexv,\n\n\t\t// The previous and current slide HTML elements\n\t\tpreviousSlide,\n\t\tcurrentSlide,\n\n\t\t// Remember which directions that the user has navigated towards\n\t\tnavigationHistory = {\n\t\t\thasNavigatedHorizontally: false,\n\t\t\thasNavigatedVertically: false\n\t\t},\n\n\t\t// Slides may have a data-state attribute which we pick up and apply\n\t\t// as a class to the body. This list contains the combined state of\n\t\t// all current slides.\n\t\tstate = [],\n\n\t\t// The current scale of the presentation (see width/height config)\n\t\tscale = 1,\n\n\t\t// CSS transform that is currently applied to the slides container,\n\t\t// split into two groups\n\t\tslidesTransform = { layout: '', overview: '' },\n\n\t\t// Cached references to DOM elements\n\t\tdom = {},\n\n\t\t// Flags if the interaction event listeners are bound\n\t\teventsAreBound = false,\n\n\t\t// The current slide transition state; idle or running\n\t\ttransition = 'idle',\n\n\t\t// The current auto-slide duration\n\t\tautoSlide = 0,\n\n\t\t// Auto slide properties\n\t\tautoSlidePlayer,\n\t\tautoSlideTimeout = 0,\n\t\tautoSlideStartTime = -1,\n\t\tautoSlidePaused = false,\n\n\t\t// Controllers for different aspects of our presentation. They're\n\t\t// all given direct references to this Reveal instance since there\n\t\t// may be multiple presentations running in parallel.\n\t\tslideContent = new SlideContent( Reveal ),\n\t\tslideNumber = new SlideNumber( Reveal ),\n\t\tautoAnimate = new AutoAnimate( Reveal ),\n\t\tbackgrounds = new Backgrounds( Reveal ),\n\t\tfragments = new Fragments( Reveal ),\n\t\toverview = new Overview( Reveal ),\n\t\tkeyboard = new Keyboard( Reveal ),\n\t\tlocation = new Location( Reveal ),\n\t\tcontrols = new Controls( Reveal ),\n\t\tprogress = new Progress( Reveal ),\n\t\tpointer = new Pointer( Reveal ),\n\t\tplugins = new Plugins( Reveal ),\n\t\tprint = new Print( Reveal ),\n\t\tfocus = new Focus( Reveal ),\n\t\ttouch = new Touch( Reveal ),\n\t\tnotes = new Notes( Reveal );\n\n\t/**\n\t * Starts up the presentation.\n\t */\n\tfunction initialize( initOptions ) {\n\n\t\tif( !revealElement ) throw 'Unable to find presentation root (<div class=\"reveal\">).';\n\n\t\t// Cache references to key DOM elements\n\t\tdom.wrapper = revealElement;\n\t\tdom.slides = revealElement.querySelector( '.slides' );\n\n\t\tif( !dom.slides ) throw 'Unable to find slides container (<div class=\"slides\">).';\n\n\t\t// Compose our config object in order of increasing precedence:\n\t\t// 1. Default reveal.js options\n\t\t// 2. Options provided via Reveal.configure() prior to\n\t\t// initialization\n\t\t// 3. Options passed to the Reveal constructor\n\t\t// 4. Options passed to Reveal.initialize\n\t\t// 5. Query params\n\t\tconfig = { ...defaultConfig, ...config, ...options, ...initOptions, ...Util.getQueryHash() };\n\n\t\tsetViewport();\n\n\t\t// Force a layout when the whole page, incl fonts, has loaded\n\t\twindow.addEventListener( 'load', layout, false );\n\n\t\t// Register plugins and load dependencies, then move on to #start()\n\t\tplugins.load( config.plugins, config.dependencies ).then( start );\n\n\t\treturn new Promise( resolve => Reveal.on( 'ready', resolve ) );\n\n\t}\n\n\t/**\n\t * Encase the presentation in a reveal.js viewport. The\n\t * extent of the viewport differs based on configuration.\n\t */\n\tfunction setViewport() {\n\n\t\t// Embedded decks use the reveal element as their viewport\n\t\tif( config.embedded === true ) {\n\t\t\tdom.viewport = Util.closest( revealElement, '.reveal-viewport' ) || revealElement;\n\t\t}\n\t\t// Full-page decks use the body as their viewport\n\t\telse {\n\t\t\tdom.viewport = document.body;\n\t\t\tdocument.documentElement.classList.add( 'reveal-full-page' );\n\t\t}\n\n\t\tdom.viewport.classList.add( 'reveal-viewport' );\n\n\t}\n\n\t/**\n\t * Starts up reveal.js by binding input events and navigating\n\t * to the current URL deeplink if there is one.\n\t */\n\tfunction start() {\n\n\t\tready = true;\n\n\t\t// Remove slides hidden with data-visibility\n\t\tremoveHiddenSlides();\n\n\t\t// Make sure we've got all the DOM elements we need\n\t\tsetupDOM();\n\n\t\t// Listen to messages posted to this window\n\t\tsetupPostMessage();\n\n\t\t// Prevent the slides from being scrolled out of view\n\t\tsetupScrollPrevention();\n\n\t\t// Resets all vertical slides so that only the first is visible\n\t\tresetVerticalSlides();\n\n\t\t// Updates the presentation to match the current configuration values\n\t\tconfigure();\n\n\t\t// Read the initial hash\n\t\tlocation.readURL();\n\n\t\t// Create slide backgrounds\n\t\tbackgrounds.update( true );\n\n\t\t// Notify listeners that the presentation is ready but use a 1ms\n\t\t// timeout to ensure it's not fired synchronously after #initialize()\n\t\tsetTimeout( () => {\n\t\t\t// Enable transitions now that we're loaded\n\t\t\tdom.slides.classList.remove( 'no-transition' );\n\n\t\t\tdom.wrapper.classList.add( 'ready' );\n\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'ready',\n\t\t\t\tdata: {\n\t\t\t\t\tindexh,\n\t\t\t\t\tindexv,\n\t\t\t\t\tcurrentSlide\n\t\t\t\t}\n\t\t\t});\n\t\t}, 1 );\n\n\t\t// Special setup and config is required when printing to PDF\n\t\tif( print.isPrintingPDF() ) {\n\t\t\tremoveEventListeners();\n\n\t\t\t// The document needs to have loaded for the PDF layout\n\t\t\t// measurements to be accurate\n\t\t\tif( document.readyState === 'complete' ) {\n\t\t\t\tprint.setupPDF();\n\t\t\t}\n\t\t\telse {\n\t\t\t\twindow.addEventListener( 'load', () => {\n\t\t\t\t\tprint.setupPDF();\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Removes all slides with data-visibility=\"hidden\". This\n\t * is done right before the rest of the presentation is\n\t * initialized.\n\t *\n\t * If you want to show all hidden slides, initialize\n\t * reveal.js with showHiddenSlides set to true.\n\t */\n\tfunction removeHiddenSlides() {\n\n\t\tif( !config.showHiddenSlides ) {\n\t\t\tUtil.queryAll( dom.wrapper, 'section[data-visibility=\"hidden\"]' ).forEach( slide => {\n\t\t\t\tslide.parentNode.removeChild( slide );\n\t\t\t} );\n\t\t}\n\n\t}\n\n\t/**\n\t * Finds and stores references to DOM elements which are\n\t * required by the presentation. If a required element is\n\t * not found, it is created.\n\t */\n\tfunction setupDOM() {\n\n\t\t// Prevent transitions while we're loading\n\t\tdom.slides.classList.add( 'no-transition' );\n\n\t\tif( Device.isMobile ) {\n\t\t\tdom.wrapper.classList.add( 'no-hover' );\n\t\t}\n\t\telse {\n\t\t\tdom.wrapper.classList.remove( 'no-hover' );\n\t\t}\n\n\t\tbackgrounds.render();\n\t\tslideNumber.render();\n\t\tcontrols.render();\n\t\tprogress.render();\n\t\tnotes.render();\n\n\t\t// Overlay graphic which is displayed during the paused mode\n\t\tdom.pauseOverlay = Util.createSingletonNode( dom.wrapper, 'div', 'pause-overlay', config.controls ? '<button class=\"resume-button\">Resume presentation</button>' : null );\n\n\t\tdom.statusElement = createStatusElement();\n\n\t\tdom.wrapper.setAttribute( 'role', 'application' );\n\t}\n\n\t/**\n\t * Creates a hidden div with role aria-live to announce the\n\t * current slide content. Hide the div off-screen to make it\n\t * available only to Assistive Technologies.\n\t *\n\t * @return {HTMLElement}\n\t */\n\tfunction createStatusElement() {\n\n\t\tlet statusElement = dom.wrapper.querySelector( '.aria-status' );\n\t\tif( !statusElement ) {\n\t\t\tstatusElement = document.createElement( 'div' );\n\t\t\tstatusElement.style.position = 'absolute';\n\t\t\tstatusElement.style.height = '1px';\n\t\t\tstatusElement.style.width = '1px';\n\t\t\tstatusElement.style.overflow = 'hidden';\n\t\t\tstatusElement.style.clip = 'rect( 1px, 1px, 1px, 1px )';\n\t\t\tstatusElement.classList.add( 'aria-status' );\n\t\t\tstatusElement.setAttribute( 'aria-live', 'polite' );\n\t\t\tstatusElement.setAttribute( 'aria-atomic','true' );\n\t\t\tdom.wrapper.appendChild( statusElement );\n\t\t}\n\t\treturn statusElement;\n\n\t}\n\n\t/**\n\t * Announces the given text to screen readers.\n\t */\n\tfunction announceStatus( value ) {\n\n\t\tdom.statusElement.textContent = value;\n\n\t}\n\n\t/**\n\t * Converts the given HTML element into a string of text\n\t * that can be announced to a screen reader. Hidden\n\t * elements are excluded.\n\t */\n\tfunction getStatusText( node ) {\n\n\t\tlet text = '';\n\n\t\t// Text node\n\t\tif( node.nodeType === 3 ) {\n\t\t\ttext += node.textContent;\n\t\t}\n\t\t// Element node\n\t\telse if( node.nodeType === 1 ) {\n\n\t\t\tlet isAriaHidden = node.getAttribute( 'aria-hidden' );\n\t\t\tlet isDisplayHidden = window.getComputedStyle( node )['display'] === 'none';\n\t\t\tif( isAriaHidden !== 'true' && !isDisplayHidden ) {\n\n\t\t\t\tArray.from( node.childNodes ).forEach( child => {\n\t\t\t\t\ttext += getStatusText( child );\n\t\t\t\t} );\n\n\t\t\t}\n\n\t\t}\n\n\t\ttext = text.trim();\n\n\t\treturn text === '' ? '' : text + ' ';\n\n\t}\n\n\t/**\n\t * This is an unfortunate necessity. Some actions – such as\n\t * an input field being focused in an iframe or using the\n\t * keyboard to expand text selection beyond the bounds of\n\t * a slide – can trigger our content to be pushed out of view.\n\t * This scrolling can not be prevented by hiding overflow in\n\t * CSS (we already do) so we have to resort to repeatedly\n\t * checking if the slides have been offset :(\n\t */\n\tfunction setupScrollPrevention() {\n\n\t\tsetInterval( () => {\n\t\t\tif( dom.wrapper.scrollTop !== 0 || dom.wrapper.scrollLeft !== 0 ) {\n\t\t\t\tdom.wrapper.scrollTop = 0;\n\t\t\t\tdom.wrapper.scrollLeft = 0;\n\t\t\t}\n\t\t}, 1000 );\n\n\t}\n\n\t/**\n\t * Registers a listener to postMessage events, this makes it\n\t * possible to call all reveal.js API methods from another\n\t * window. For example:\n\t *\n\t * revealWindow.postMessage( JSON.stringify({\n\t * method: 'slide',\n\t * args: [ 2 ]\n\t * }), '*' );\n\t */\n\tfunction setupPostMessage() {\n\n\t\tif( config.postMessage ) {\n\t\t\twindow.addEventListener( 'message', event => {\n\t\t\t\tlet data = event.data;\n\n\t\t\t\t// Make sure we're dealing with JSON\n\t\t\t\tif( typeof data === 'string' && data.charAt( 0 ) === '{' && data.charAt( data.length - 1 ) === '}' ) {\n\t\t\t\t\tdata = JSON.parse( data );\n\n\t\t\t\t\t// Check if the requested method can be found\n\t\t\t\t\tif( data.method && typeof Reveal[data.method] === 'function' ) {\n\n\t\t\t\t\t\tif( POST_MESSAGE_METHOD_BLACKLIST.test( data.method ) === false ) {\n\n\t\t\t\t\t\t\tconst result = Reveal[data.method].apply( Reveal, data.args );\n\n\t\t\t\t\t\t\t// Dispatch a postMessage event with the returned value from\n\t\t\t\t\t\t\t// our method invocation for getter functions\n\t\t\t\t\t\t\tdispatchPostMessage( 'callback', { method: data.method, result: result } );\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconsole.warn( 'reveal.js: \"'+ data.method +'\" is is blacklisted from the postMessage API' );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Applies the configuration settings from the config\n\t * object. May be called multiple times.\n\t *\n\t * @param {object} options\n\t */\n\tfunction configure( options ) {\n\n\t\tconst oldConfig = { ...config }\n\n\t\t// New config options may be passed when this method\n\t\t// is invoked through the API after initialization\n\t\tif( typeof options === 'object' ) Util.extend( config, options );\n\n\t\t// Abort if reveal.js hasn't finished loading, config\n\t\t// changes will be applied automatically once ready\n\t\tif( Reveal.isReady() === false ) return;\n\n\t\tconst numberOfSlides = dom.wrapper.querySelectorAll( SLIDES_SELECTOR ).length;\n\n\t\t// The transition is added as a class on the .reveal element\n\t\tdom.wrapper.classList.remove( oldConfig.transition );\n\t\tdom.wrapper.classList.add( config.transition );\n\n\t\tdom.wrapper.setAttribute( 'data-transition-speed', config.transitionSpeed );\n\t\tdom.wrapper.setAttribute( 'data-background-transition', config.backgroundTransition );\n\n\t\t// Expose our configured slide dimensions as custom props\n\t\tdom.viewport.style.setProperty( '--slide-width', config.width + 'px' );\n\t\tdom.viewport.style.setProperty( '--slide-height', config.height + 'px' );\n\n\t\tif( config.shuffle ) {\n\t\t\tshuffle();\n\t\t}\n\n\t\tUtil.toggleClass( dom.wrapper, 'embedded', config.embedded );\n\t\tUtil.toggleClass( dom.wrapper, 'rtl', config.rtl );\n\t\tUtil.toggleClass( dom.wrapper, 'center', config.center );\n\n\t\t// Exit the paused mode if it was configured off\n\t\tif( config.pause === false ) {\n\t\t\tresume();\n\t\t}\n\n\t\t// Iframe link previews\n\t\tif( config.previewLinks ) {\n\t\t\tenablePreviewLinks();\n\t\t\tdisablePreviewLinks( '[data-preview-link=false]' );\n\t\t}\n\t\telse {\n\t\t\tdisablePreviewLinks();\n\t\t\tenablePreviewLinks( '[data-preview-link]:not([data-preview-link=false])' );\n\t\t}\n\n\t\t// Reset all changes made by auto-animations\n\t\tautoAnimate.reset();\n\n\t\t// Remove existing auto-slide controls\n\t\tif( autoSlidePlayer ) {\n\t\t\tautoSlidePlayer.destroy();\n\t\t\tautoSlidePlayer = null;\n\t\t}\n\n\t\t// Generate auto-slide controls if needed\n\t\tif( numberOfSlides > 1 && config.autoSlide && config.autoSlideStoppable ) {\n\t\t\tautoSlidePlayer = new Playback( dom.wrapper, () => {\n\t\t\t\treturn Math.min( Math.max( ( Date.now() - autoSlideStartTime ) / autoSlide, 0 ), 1 );\n\t\t\t} );\n\n\t\t\tautoSlidePlayer.on( 'click', onAutoSlidePlayerClick );\n\t\t\tautoSlidePaused = false;\n\t\t}\n\n\t\t// Add the navigation mode to the DOM so we can adjust styling\n\t\tif( config.navigationMode !== 'default' ) {\n\t\t\tdom.wrapper.setAttribute( 'data-navigation-mode', config.navigationMode );\n\t\t}\n\t\telse {\n\t\t\tdom.wrapper.removeAttribute( 'data-navigation-mode' );\n\t\t}\n\n\t\tnotes.configure( config, oldConfig );\n\t\tfocus.configure( config, oldConfig );\n\t\tpointer.configure( config, oldConfig );\n\t\tcontrols.configure( config, oldConfig );\n\t\tprogress.configure( config, oldConfig );\n\t\tkeyboard.configure( config, oldConfig );\n\t\tfragments.configure( config, oldConfig );\n\t\tslideNumber.configure( config, oldConfig );\n\n\t\tsync();\n\n\t}\n\n\t/**\n\t * Binds all event listeners.\n\t */\n\tfunction addEventListeners() {\n\n\t\teventsAreBound = true;\n\n\t\twindow.addEventListener( 'resize', onWindowResize, false );\n\n\t\tif( config.touch ) touch.bind();\n\t\tif( config.keyboard ) keyboard.bind();\n\t\tif( config.progress ) progress.bind();\n\t\tif( config.respondToHashChanges ) location.bind();\n\t\tcontrols.bind();\n\t\tfocus.bind();\n\n\t\tdom.slides.addEventListener( 'click', onSlidesClicked, false );\n\t\tdom.slides.addEventListener( 'transitionend', onTransitionEnd, false );\n\t\tdom.pauseOverlay.addEventListener( 'click', resume, false );\n\n\t\tif( config.focusBodyOnPageVisibilityChange ) {\n\t\t\tdocument.addEventListener( 'visibilitychange', onPageVisibilityChange, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Unbinds all event listeners.\n\t */\n\tfunction removeEventListeners() {\n\n\t\teventsAreBound = false;\n\n\t\ttouch.unbind();\n\t\tfocus.unbind();\n\t\tkeyboard.unbind();\n\t\tcontrols.unbind();\n\t\tprogress.unbind();\n\t\tlocation.unbind();\n\n\t\twindow.removeEventListener( 'resize', onWindowResize, false );\n\n\t\tdom.slides.removeEventListener( 'click', onSlidesClicked, false );\n\t\tdom.slides.removeEventListener( 'transitionend', onTransitionEnd, false );\n\t\tdom.pauseOverlay.removeEventListener( 'click', resume, false );\n\n\t}\n\n\t/**\n\t * Adds a listener to one of our custom reveal.js events,\n\t * like slidechanged.\n\t */\n\tfunction on( type, listener, useCapture ) {\n\n\t\trevealElement.addEventListener( type, listener, useCapture );\n\n\t}\n\n\t/**\n\t * Unsubscribes from a reveal.js event.\n\t */\n\tfunction off( type, listener, useCapture ) {\n\n\t\trevealElement.removeEventListener( type, listener, useCapture );\n\n\t}\n\n\t/**\n\t * Applies CSS transforms to the slides container. The container\n\t * is transformed from two separate sources: layout and the overview\n\t * mode.\n\t *\n\t * @param {object} transforms\n\t */\n\tfunction transformSlides( transforms ) {\n\n\t\t// Pick up new transforms from arguments\n\t\tif( typeof transforms.layout === 'string' ) slidesTransform.layout = transforms.layout;\n\t\tif( typeof transforms.overview === 'string' ) slidesTransform.overview = transforms.overview;\n\n\t\t// Apply the transforms to the slides container\n\t\tif( slidesTransform.layout ) {\n\t\t\tUtil.transformElement( dom.slides, slidesTransform.layout + ' ' + slidesTransform.overview );\n\t\t}\n\t\telse {\n\t\t\tUtil.transformElement( dom.slides, slidesTransform.overview );\n\t\t}\n\n\t}\n\n\t/**\n\t * Dispatches an event of the specified type from the\n\t * reveal DOM element.\n\t */\n\tfunction dispatchEvent({ target=dom.wrapper, type, data, bubbles=true }) {\n\n\t\tlet event = document.createEvent( 'HTMLEvents', 1, 2 );\n\t\tevent.initEvent( type, bubbles, true );\n\t\tUtil.extend( event, data );\n\t\ttarget.dispatchEvent( event );\n\n\t\tif( target === dom.wrapper ) {\n\t\t\t// If we're in an iframe, post each reveal.js event to the\n\t\t\t// parent window. Used by the notes plugin\n\t\t\tdispatchPostMessage( type );\n\t\t}\n\n\t\treturn event;\n\n\t}\n\n\t/**\n\t * Dispatched a postMessage of the given type from our window.\n\t */\n\tfunction dispatchPostMessage( type, data ) {\n\n\t\tif( config.postMessageEvents && window.parent !== window.self ) {\n\t\t\tlet message = {\n\t\t\t\tnamespace: 'reveal',\n\t\t\t\teventName: type,\n\t\t\t\tstate: getState()\n\t\t\t};\n\n\t\t\tUtil.extend( message, data );\n\n\t\t\twindow.parent.postMessage( JSON.stringify( message ), '*' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Bind preview frame links.\n\t *\n\t * @param {string} [selector=a] - selector for anchors\n\t */\n\tfunction enablePreviewLinks( selector = 'a' ) {\n\n\t\tArray.from( dom.wrapper.querySelectorAll( selector ) ).forEach( element => {\n\t\t\tif( /^(http|www)/gi.test( element.getAttribute( 'href' ) ) ) {\n\t\t\t\telement.addEventListener( 'click', onPreviewLinkClicked, false );\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Unbind preview frame links.\n\t */\n\tfunction disablePreviewLinks( selector = 'a' ) {\n\n\t\tArray.from( dom.wrapper.querySelectorAll( selector ) ).forEach( element => {\n\t\t\tif( /^(http|www)/gi.test( element.getAttribute( 'href' ) ) ) {\n\t\t\t\telement.removeEventListener( 'click', onPreviewLinkClicked, false );\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Opens a preview window for the target URL.\n\t *\n\t * @param {string} url - url for preview iframe src\n\t */\n\tfunction showPreview( url ) {\n\n\t\tcloseOverlay();\n\n\t\tdom.overlay = document.createElement( 'div' );\n\t\tdom.overlay.classList.add( 'overlay' );\n\t\tdom.overlay.classList.add( 'overlay-preview' );\n\t\tdom.wrapper.appendChild( dom.overlay );\n\n\t\tdom.overlay.innerHTML =\n\t\t\t`<header>\n\t\t\t\t<a class=\"close\" href=\"#\"><span class=\"icon\"></span></a>\n\t\t\t\t<a class=\"external\" href=\"${url}\" target=\"_blank\"><span class=\"icon\"></span></a>\n\t\t\t</header>\n\t\t\t<div class=\"spinner\"></div>\n\t\t\t<div class=\"viewport\">\n\t\t\t\t<iframe src=\"${url}\"></iframe>\n\t\t\t\t<small class=\"viewport-inner\">\n\t\t\t\t\t<span class=\"x-frame-error\">Unable to load iframe. This is likely due to the site's policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>`;\n\n\t\tdom.overlay.querySelector( 'iframe' ).addEventListener( 'load', event => {\n\t\t\tdom.overlay.classList.add( 'loaded' );\n\t\t}, false );\n\n\t\tdom.overlay.querySelector( '.close' ).addEventListener( 'click', event => {\n\t\t\tcloseOverlay();\n\t\t\tevent.preventDefault();\n\t\t}, false );\n\n\t\tdom.overlay.querySelector( '.external' ).addEventListener( 'click', event => {\n\t\t\tcloseOverlay();\n\t\t}, false );\n\n\t}\n\n\t/**\n\t * Open or close help overlay window.\n\t *\n\t * @param {Boolean} [override] Flag which overrides the\n\t * toggle logic and forcibly sets the desired state. True means\n\t * help is open, false means it's closed.\n\t */\n\tfunction toggleHelp( override ){\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? showHelp() : closeOverlay();\n\t\t}\n\t\telse {\n\t\t\tif( dom.overlay ) {\n\t\t\t\tcloseOverlay();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tshowHelp();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Opens an overlay window with help material.\n\t */\n\tfunction showHelp() {\n\n\t\tif( config.help ) {\n\n\t\t\tcloseOverlay();\n\n\t\t\tdom.overlay = document.createElement( 'div' );\n\t\t\tdom.overlay.classList.add( 'overlay' );\n\t\t\tdom.overlay.classList.add( 'overlay-help' );\n\t\t\tdom.wrapper.appendChild( dom.overlay );\n\n\t\t\tlet html = '<p class=\"title\">Keyboard Shortcuts</p><br/>';\n\n\t\t\tlet shortcuts = keyboard.getShortcuts(),\n\t\t\t\tbindings = keyboard.getBindings();\n\n\t\t\thtml += '<table><th>KEY</th><th>ACTION</th>';\n\t\t\tfor( let key in shortcuts ) {\n\t\t\t\thtml += `<tr><td>${key}</td><td>${shortcuts[ key ]}</td></tr>`;\n\t\t\t}\n\n\t\t\t// Add custom key bindings that have associated descriptions\n\t\t\tfor( let binding in bindings ) {\n\t\t\t\tif( bindings[binding].key && bindings[binding].description ) {\n\t\t\t\t\thtml += `<tr><td>${bindings[binding].key}</td><td>${bindings[binding].description}</td></tr>`;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\thtml += '</table>';\n\n\t\t\tdom.overlay.innerHTML = `\n\t\t\t\t<header>\n\t\t\t\t\t<a class=\"close\" href=\"#\"><span class=\"icon\"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class=\"viewport\">\n\t\t\t\t\t<div class=\"viewport-inner\">${html}</div>\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tdom.overlay.querySelector( '.close' ).addEventListener( 'click', event => {\n\t\t\t\tcloseOverlay();\n\t\t\t\tevent.preventDefault();\n\t\t\t}, false );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Closes any currently open overlay.\n\t */\n\tfunction closeOverlay() {\n\n\t\tif( dom.overlay ) {\n\t\t\tdom.overlay.parentNode.removeChild( dom.overlay );\n\t\t\tdom.overlay = null;\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Applies JavaScript-controlled layout rules to the\n\t * presentation.\n\t */\n\tfunction layout() {\n\n\t\tif( dom.wrapper && !print.isPrintingPDF() ) {\n\n\t\t\tif( !config.disableLayout ) {\n\n\t\t\t\t// On some mobile devices '100vh' is taller than the visible\n\t\t\t\t// viewport which leads to part of the presentation being\n\t\t\t\t// cut off. To work around this we define our own '--vh' custom\n\t\t\t\t// property where 100x adds up to the correct height.\n\t\t\t\t//\n\t\t\t\t// https://css-tricks.com/the-trick-to-viewport-units-on-mobile/\n\t\t\t\tif( Device.isMobile && !config.embedded ) {\n\t\t\t\t\tdocument.documentElement.style.setProperty( '--vh', ( window.innerHeight * 0.01 ) + 'px' );\n\t\t\t\t}\n\n\t\t\t\tconst size = getComputedSlideSize();\n\n\t\t\t\tconst oldScale = scale;\n\n\t\t\t\t// Layout the contents of the slides\n\t\t\t\tlayoutSlideContents( config.width, config.height );\n\n\t\t\t\tdom.slides.style.width = size.width + 'px';\n\t\t\t\tdom.slides.style.height = size.height + 'px';\n\n\t\t\t\t// Determine scale of content to fit within available space\n\t\t\t\tscale = Math.min( size.presentationWidth / size.width, size.presentationHeight / size.height );\n\n\t\t\t\t// Respect max/min scale settings\n\t\t\t\tscale = Math.max( scale, config.minScale );\n\t\t\t\tscale = Math.min( scale, config.maxScale );\n\n\t\t\t\t// Don't apply any scaling styles if scale is 1\n\t\t\t\tif( scale === 1 ) {\n\t\t\t\t\tdom.slides.style.zoom = '';\n\t\t\t\t\tdom.slides.style.left = '';\n\t\t\t\t\tdom.slides.style.top = '';\n\t\t\t\t\tdom.slides.style.bottom = '';\n\t\t\t\t\tdom.slides.style.right = '';\n\t\t\t\t\ttransformSlides( { layout: '' } );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// Zoom Scaling\n\t\t\t\t\t// Content remains crisp no matter how much we scale. Side\n\t\t\t\t\t// effects are minor differences in text layout and iframe\n\t\t\t\t\t// viewports changing size. A 200x200 iframe viewport in a\n\t\t\t\t\t// 2x zoomed presentation ends up having a 400x400 viewport.\n\t\t\t\t\tif( scale > 1 && Device.supportsZoom && window.devicePixelRatio < 2 ) {\n\t\t\t\t\t\tdom.slides.style.zoom = scale;\n\t\t\t\t\t\tdom.slides.style.left = '';\n\t\t\t\t\t\tdom.slides.style.top = '';\n\t\t\t\t\t\tdom.slides.style.bottom = '';\n\t\t\t\t\t\tdom.slides.style.right = '';\n\t\t\t\t\t\ttransformSlides( { layout: '' } );\n\t\t\t\t\t}\n\t\t\t\t\t// Transform Scaling\n\t\t\t\t\t// Content layout remains the exact same when scaled up.\n\t\t\t\t\t// Side effect is content becoming blurred, especially with\n\t\t\t\t\t// high scale values on ldpi screens.\n\t\t\t\t\telse {\n\t\t\t\t\t\tdom.slides.style.zoom = '';\n\t\t\t\t\t\tdom.slides.style.left = '50%';\n\t\t\t\t\t\tdom.slides.style.top = '50%';\n\t\t\t\t\t\tdom.slides.style.bottom = 'auto';\n\t\t\t\t\t\tdom.slides.style.right = 'auto';\n\t\t\t\t\t\ttransformSlides( { layout: 'translate(-50%, -50%) scale('+ scale +')' } );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Select all slides, vertical and horizontal\n\t\t\t\tconst slides = Array.from( dom.wrapper.querySelectorAll( SLIDES_SELECTOR ) );\n\n\t\t\t\tfor( let i = 0, len = slides.length; i < len; i++ ) {\n\t\t\t\t\tconst slide = slides[ i ];\n\n\t\t\t\t\t// Don't bother updating invisible slides\n\t\t\t\t\tif( slide.style.display === 'none' ) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tif( config.center || slide.classList.contains( 'center' ) ) {\n\t\t\t\t\t\t// Vertical stacks are not centred since their section\n\t\t\t\t\t\t// children will be\n\t\t\t\t\t\tif( slide.classList.contains( 'stack' ) ) {\n\t\t\t\t\t\t\tslide.style.top = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tslide.style.top = Math.max( ( size.height - slide.scrollHeight ) / 2, 0 ) + 'px';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslide.style.top = '';\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tif( oldScale !== scale ) {\n\t\t\t\t\tdispatchEvent({\n\t\t\t\t\t\ttype: 'resize',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\toldScale,\n\t\t\t\t\t\t\tscale,\n\t\t\t\t\t\t\tsize\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tprogress.update();\n\t\t\tbackgrounds.updateParallax();\n\n\t\t\tif( overview.isActive() ) {\n\t\t\t\toverview.update();\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Applies layout logic to the contents of all slides in\n\t * the presentation.\n\t *\n\t * @param {string|number} width\n\t * @param {string|number} height\n\t */\n\tfunction layoutSlideContents( width, height ) {\n\n\t\t// Handle sizing of elements with the 'r-stretch' class\n\t\tUtil.queryAll( dom.slides, 'section > .stretch, section > .r-stretch' ).forEach( element => {\n\n\t\t\t// Determine how much vertical space we can use\n\t\t\tlet remainingHeight = Util.getRemainingHeight( element, height );\n\n\t\t\t// Consider the aspect ratio of media elements\n\t\t\tif( /(img|video)/gi.test( element.nodeName ) ) {\n\t\t\t\tconst nw = element.naturalWidth || element.videoWidth,\n\t\t\t\t\t nh = element.naturalHeight || element.videoHeight;\n\n\t\t\t\tconst es = Math.min( width / nw, remainingHeight / nh );\n\n\t\t\t\telement.style.width = ( nw * es ) + 'px';\n\t\t\t\telement.style.height = ( nh * es ) + 'px';\n\n\t\t\t}\n\t\t\telse {\n\t\t\t\telement.style.width = width + 'px';\n\t\t\t\telement.style.height = remainingHeight + 'px';\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Calculates the computed pixel size of our slides. These\n\t * values are based on the width and height configuration\n\t * options.\n\t *\n\t * @param {number} [presentationWidth=dom.wrapper.offsetWidth]\n\t * @param {number} [presentationHeight=dom.wrapper.offsetHeight]\n\t */\n\tfunction getComputedSlideSize( presentationWidth, presentationHeight ) {\n\n\t\tconst size = {\n\t\t\t// Slide size\n\t\t\twidth: config.width,\n\t\t\theight: config.height,\n\n\t\t\t// Presentation size\n\t\t\tpresentationWidth: presentationWidth || dom.wrapper.offsetWidth,\n\t\t\tpresentationHeight: presentationHeight || dom.wrapper.offsetHeight\n\t\t};\n\n\t\t// Reduce available space by margin\n\t\tsize.presentationWidth -= ( size.presentationWidth * config.margin );\n\t\tsize.presentationHeight -= ( size.presentationHeight * config.margin );\n\n\t\t// Slide width may be a percentage of available width\n\t\tif( typeof size.width === 'string' && /%$/.test( size.width ) ) {\n\t\t\tsize.width = parseInt( size.width, 10 ) / 100 * size.presentationWidth;\n\t\t}\n\n\t\t// Slide height may be a percentage of available height\n\t\tif( typeof size.height === 'string' && /%$/.test( size.height ) ) {\n\t\t\tsize.height = parseInt( size.height, 10 ) / 100 * size.presentationHeight;\n\t\t}\n\n\t\treturn size;\n\n\t}\n\n\t/**\n\t * Stores the vertical index of a stack so that the same\n\t * vertical slide can be selected when navigating to and\n\t * from the stack.\n\t *\n\t * @param {HTMLElement} stack The vertical stack element\n\t * @param {string|number} [v=0] Index to memorize\n\t */\n\tfunction setPreviousVerticalIndex( stack, v ) {\n\n\t\tif( typeof stack === 'object' && typeof stack.setAttribute === 'function' ) {\n\t\t\tstack.setAttribute( 'data-previous-indexv', v || 0 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Retrieves the vertical index which was stored using\n\t * #setPreviousVerticalIndex() or 0 if no previous index\n\t * exists.\n\t *\n\t * @param {HTMLElement} stack The vertical stack element\n\t */\n\tfunction getPreviousVerticalIndex( stack ) {\n\n\t\tif( typeof stack === 'object' && typeof stack.setAttribute === 'function' && stack.classList.contains( 'stack' ) ) {\n\t\t\t// Prefer manually defined start-indexv\n\t\t\tconst attributeName = stack.hasAttribute( 'data-start-indexv' ) ? 'data-start-indexv' : 'data-previous-indexv';\n\n\t\t\treturn parseInt( stack.getAttribute( attributeName ) || 0, 10 );\n\t\t}\n\n\t\treturn 0;\n\n\t}\n\n\t/**\n\t * Checks if the current or specified slide is vertical\n\t * (nested within another slide).\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide to check\n\t * orientation of\n\t * @return {Boolean}\n\t */\n\tfunction isVerticalSlide( slide = currentSlide ) {\n\n\t\treturn slide && slide.parentNode && !!slide.parentNode.nodeName.match( /section/i );\n\n\t}\n\n\t/**\n\t * Returns true if we're on the last slide in the current\n\t * vertical stack.\n\t */\n\tfunction isLastVerticalSlide() {\n\n\t\tif( currentSlide && isVerticalSlide( currentSlide ) ) {\n\t\t\t// Does this slide have a next sibling?\n\t\t\tif( currentSlide.nextElementSibling ) return false;\n\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Returns true if we're currently on the first slide in\n\t * the presentation.\n\t */\n\tfunction isFirstSlide() {\n\n\t\treturn indexh === 0 && indexv === 0;\n\n\t}\n\n\t/**\n\t * Returns true if we're currently on the last slide in\n\t * the presenation. If the last slide is a stack, we only\n\t * consider this the last slide if it's at the end of the\n\t * stack.\n\t */\n\tfunction isLastSlide() {\n\n\t\tif( currentSlide ) {\n\t\t\t// Does this slide have a next sibling?\n\t\t\tif( currentSlide.nextElementSibling ) return false;\n\n\t\t\t// If it's vertical, does its parent have a next sibling?\n\t\t\tif( isVerticalSlide( currentSlide ) && currentSlide.parentNode.nextElementSibling ) return false;\n\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Enters the paused mode which fades everything on screen to\n\t * black.\n\t */\n\tfunction pause() {\n\n\t\tif( config.pause ) {\n\t\t\tconst wasPaused = dom.wrapper.classList.contains( 'paused' );\n\n\t\t\tcancelAutoSlide();\n\t\t\tdom.wrapper.classList.add( 'paused' );\n\n\t\t\tif( wasPaused === false ) {\n\t\t\t\tdispatchEvent({ type: 'paused' });\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Exits from the paused mode.\n\t */\n\tfunction resume() {\n\n\t\tconst wasPaused = dom.wrapper.classList.contains( 'paused' );\n\t\tdom.wrapper.classList.remove( 'paused' );\n\n\t\tcueAutoSlide();\n\n\t\tif( wasPaused ) {\n\t\t\tdispatchEvent({ type: 'resumed' });\n\t\t}\n\n\t}\n\n\t/**\n\t * Toggles the paused mode on and off.\n\t */\n\tfunction togglePause( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? pause() : resume();\n\t\t}\n\t\telse {\n\t\t\tisPaused() ? resume() : pause();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if we are currently in the paused mode.\n\t *\n\t * @return {Boolean}\n\t */\n\tfunction isPaused() {\n\n\t\treturn dom.wrapper.classList.contains( 'paused' );\n\n\t}\n\n\t/**\n\t * Toggles the auto slide mode on and off.\n\t *\n\t * @param {Boolean} [override] Flag which sets the desired state.\n\t * True means autoplay starts, false means it stops.\n\t */\n\n\tfunction toggleAutoSlide( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? resumeAutoSlide() : pauseAutoSlide();\n\t\t}\n\n\t\telse {\n\t\t\tautoSlidePaused ? resumeAutoSlide() : pauseAutoSlide();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if the auto slide mode is currently on.\n\t *\n\t * @return {Boolean}\n\t */\n\tfunction isAutoSliding() {\n\n\t\treturn !!( autoSlide && !autoSlidePaused );\n\n\t}\n\n\t/**\n\t * Steps from the current point in the presentation to the\n\t * slide which matches the specified horizontal and vertical\n\t * indices.\n\t *\n\t * @param {number} [h=indexh] Horizontal index of the target slide\n\t * @param {number} [v=indexv] Vertical index of the target slide\n\t * @param {number} [f] Index of a fragment within the\n\t * target slide to activate\n\t * @param {number} [origin] Origin for use in multimaster environments\n\t */\n\tfunction slide( h, v, f, origin ) {\n\n\t\t// Dispatch an event before hte slide\n\t\tconst slidechange = dispatchEvent({\n\t\t\ttype: 'beforeslidechange',\n\t\t\tdata: {\n\t\t\t\tindexh: h === undefined ? indexh : h,\n\t\t\t\tindexv: v === undefined ? indexv : v,\n\t\t\t\torigin\n\t\t\t}\n\t\t});\n\n\t\t// Abort if this slide change was prevented by an event listener\n\t\tif( slidechange.defaultPrevented ) return;\n\n\t\t// Remember where we were at before\n\t\tpreviousSlide = currentSlide;\n\n\t\t// Query all horizontal slides in the deck\n\t\tconst horizontalSlides = dom.wrapper.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR );\n\n\t\t// Abort if there are no slides\n\t\tif( horizontalSlides.length === 0 ) return;\n\n\t\t// If no vertical index is specified and the upcoming slide is a\n\t\t// stack, resume at its previous vertical index\n\t\tif( v === undefined && !overview.isActive() ) {\n\t\t\tv = getPreviousVerticalIndex( horizontalSlides[ h ] );\n\t\t}\n\n\t\t// If we were on a vertical stack, remember what vertical index\n\t\t// it was on so we can resume at the same position when returning\n\t\tif( previousSlide && previousSlide.parentNode && previousSlide.parentNode.classList.contains( 'stack' ) ) {\n\t\t\tsetPreviousVerticalIndex( previousSlide.parentNode, indexv );\n\t\t}\n\n\t\t// Remember the state before this slide\n\t\tconst stateBefore = state.concat();\n\n\t\t// Reset the state array\n\t\tstate.length = 0;\n\n\t\tlet indexhBefore = indexh || 0,\n\t\t\tindexvBefore = indexv || 0;\n\n\t\t// Activate and transition to the new slide\n\t\tindexh = updateSlides( HORIZONTAL_SLIDES_SELECTOR, h === undefined ? indexh : h );\n\t\tindexv = updateSlides( VERTICAL_SLIDES_SELECTOR, v === undefined ? indexv : v );\n\n\t\t// Dispatch an event if the slide changed\n\t\tlet slideChanged = ( indexh !== indexhBefore || indexv !== indexvBefore );\n\n\t\t// Ensure that the previous slide is never the same as the current\n\t\tif( !slideChanged ) previousSlide = null;\n\n\t\t// Find the current horizontal slide and any possible vertical slides\n\t\t// within it\n\t\tlet currentHorizontalSlide = horizontalSlides[ indexh ],\n\t\t\tcurrentVerticalSlides = currentHorizontalSlide.querySelectorAll( 'section' );\n\n\t\t// Store references to the previous and current slides\n\t\tcurrentSlide = currentVerticalSlides[ indexv ] || currentHorizontalSlide;\n\n\t\tlet autoAnimateTransition = false;\n\n\t\t// Detect if we're moving between two auto-animated slides\n\t\tif( slideChanged && previousSlide && currentSlide && !overview.isActive() ) {\n\n\t\t\t// If this is an auto-animated transition, we disable the\n\t\t\t// regular slide transition\n\t\t\t//\n\t\t\t// Note 20-03-2020:\n\t\t\t// This needs to happen before we update slide visibility,\n\t\t\t// otherwise transitions will still run in Safari.\n\t\t\tif( previousSlide.hasAttribute( 'data-auto-animate' ) && currentSlide.hasAttribute( 'data-auto-animate' )\n\t\t\t\t\t&& previousSlide.getAttribute( 'data-auto-animate-id' ) === currentSlide.getAttribute( 'data-auto-animate-id' )\n\t\t\t\t\t&& !( ( indexh > indexhBefore || indexv > indexvBefore ) ? currentSlide : previousSlide ).hasAttribute( 'data-auto-animate-restart' ) ) {\n\n\t\t\t\tautoAnimateTransition = true;\n\t\t\t\tdom.slides.classList.add( 'disable-slide-transitions' );\n\t\t\t}\n\n\t\t\ttransition = 'running';\n\n\t\t}\n\n\t\t// Update the visibility of slides now that the indices have changed\n\t\tupdateSlidesVisibility();\n\n\t\tlayout();\n\n\t\t// Update the overview if it's currently active\n\t\tif( overview.isActive() ) {\n\t\t\toverview.update();\n\t\t}\n\n\t\t// Show fragment, if specified\n\t\tif( typeof f !== 'undefined' ) {\n\t\t\tfragments.goto( f );\n\t\t}\n\n\t\t// Solves an edge case where the previous slide maintains the\n\t\t// 'present' class when navigating between adjacent vertical\n\t\t// stacks\n\t\tif( previousSlide && previousSlide !== currentSlide ) {\n\t\t\tpreviousSlide.classList.remove( 'present' );\n\t\t\tpreviousSlide.setAttribute( 'aria-hidden', 'true' );\n\n\t\t\t// Reset all slides upon navigate to home\n\t\t\tif( isFirstSlide() ) {\n\t\t\t\t// Launch async task\n\t\t\t\tsetTimeout( () => {\n\t\t\t\t\tgetVerticalStacks().forEach( slide => {\n\t\t\t\t\t\tsetPreviousVerticalIndex( slide, 0 );\n\t\t\t\t\t} );\n\t\t\t\t}, 0 );\n\t\t\t}\n\t\t}\n\n\t\t// Apply the new state\n\t\tstateLoop: for( let i = 0, len = state.length; i < len; i++ ) {\n\t\t\t// Check if this state existed on the previous slide. If it\n\t\t\t// did, we will avoid adding it repeatedly\n\t\t\tfor( let j = 0; j < stateBefore.length; j++ ) {\n\t\t\t\tif( stateBefore[j] === state[i] ) {\n\t\t\t\t\tstateBefore.splice( j, 1 );\n\t\t\t\t\tcontinue stateLoop;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdom.viewport.classList.add( state[i] );\n\n\t\t\t// Dispatch custom event matching the state's name\n\t\t\tdispatchEvent({ type: state[i] });\n\t\t}\n\n\t\t// Clean up the remains of the previous state\n\t\twhile( stateBefore.length ) {\n\t\t\tdom.viewport.classList.remove( stateBefore.pop() );\n\t\t}\n\n\t\tif( slideChanged ) {\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'slidechanged',\n\t\t\t\tdata: {\n\t\t\t\t\tindexh,\n\t\t\t\t\tindexv,\n\t\t\t\t\tpreviousSlide,\n\t\t\t\t\tcurrentSlide,\n\t\t\t\t\torigin\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\t// Handle embedded content\n\t\tif( slideChanged || !previousSlide ) {\n\t\t\tslideContent.stopEmbeddedContent( previousSlide );\n\t\t\tslideContent.startEmbeddedContent( currentSlide );\n\t\t}\n\n\t\t// Announce the current slide contents to screen readers\n\t\t// Use animation frame to prevent getComputedStyle in getStatusText\n\t\t// from triggering layout mid-frame\n\t\trequestAnimationFrame( () => {\n\t\t\tannounceStatus( getStatusText( currentSlide ) );\n\t\t});\n\n\t\tprogress.update();\n\t\tcontrols.update();\n\t\tnotes.update();\n\t\tbackgrounds.update();\n\t\tbackgrounds.updateParallax();\n\t\tslideNumber.update();\n\t\tfragments.update();\n\n\t\t// Update the URL hash\n\t\tlocation.writeURL();\n\n\t\tcueAutoSlide();\n\n\t\t// Auto-animation\n\t\tif( autoAnimateTransition ) {\n\n\t\t\tsetTimeout( () => {\n\t\t\t\tdom.slides.classList.remove( 'disable-slide-transitions' );\n\t\t\t}, 0 );\n\n\t\t\tif( config.autoAnimate ) {\n\t\t\t\t// Run the auto-animation between our slides\n\t\t\t\tautoAnimate.run( previousSlide, currentSlide );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Syncs the presentation with the current DOM. Useful\n\t * when new slides or control elements are added or when\n\t * the configuration has changed.\n\t */\n\tfunction sync() {\n\n\t\t// Subscribe to input\n\t\tremoveEventListeners();\n\t\taddEventListeners();\n\n\t\t// Force a layout to make sure the current config is accounted for\n\t\tlayout();\n\n\t\t// Reflect the current autoSlide value\n\t\tautoSlide = config.autoSlide;\n\n\t\t// Start auto-sliding if it's enabled\n\t\tcueAutoSlide();\n\n\t\t// Re-create all slide backgrounds\n\t\tbackgrounds.create();\n\n\t\t// Write the current hash to the URL\n\t\tlocation.writeURL();\n\n\t\tfragments.sortAll();\n\n\t\tcontrols.update();\n\t\tprogress.update();\n\n\t\tupdateSlidesVisibility();\n\n\t\tnotes.update();\n\t\tnotes.updateVisibility();\n\t\tbackgrounds.update( true );\n\t\tslideNumber.update();\n\t\tslideContent.formatEmbeddedContent();\n\n\t\t// Start or stop embedded content depending on global config\n\t\tif( config.autoPlayMedia === false ) {\n\t\t\tslideContent.stopEmbeddedContent( currentSlide, { unloadIframes: false } );\n\t\t}\n\t\telse {\n\t\t\tslideContent.startEmbeddedContent( currentSlide );\n\t\t}\n\n\t\tif( overview.isActive() ) {\n\t\t\toverview.layout();\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates reveal.js to keep in sync with new slide attributes. For\n\t * example, if you add a new `data-background-image` you can call\n\t * this to have reveal.js render the new background image.\n\t *\n\t * Similar to #sync() but more efficient when you only need to\n\t * refresh a specific slide.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tfunction syncSlide( slide = currentSlide ) {\n\n\t\tbackgrounds.sync( slide );\n\t\tfragments.sync( slide );\n\n\t\tslideContent.load( slide );\n\n\t\tbackgrounds.update();\n\t\tnotes.update();\n\n\t}\n\n\t/**\n\t * Resets all vertical slides so that only the first\n\t * is visible.\n\t */\n\tfunction resetVerticalSlides() {\n\n\t\tgetHorizontalSlides().forEach( horizontalSlide => {\n\n\t\t\tUtil.queryAll( horizontalSlide, 'section' ).forEach( ( verticalSlide, y ) => {\n\n\t\t\t\tif( y > 0 ) {\n\t\t\t\t\tverticalSlide.classList.remove( 'present' );\n\t\t\t\t\tverticalSlide.classList.remove( 'past' );\n\t\t\t\t\tverticalSlide.classList.add( 'future' );\n\t\t\t\t\tverticalSlide.setAttribute( 'aria-hidden', 'true' );\n\t\t\t\t}\n\n\t\t\t} );\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Randomly shuffles all slides in the deck.\n\t */\n\tfunction shuffle( slides = getHorizontalSlides() ) {\n\n\t\tslides.forEach( ( slide, i ) => {\n\n\t\t\t// Insert the slide next to a randomly picked sibling slide\n\t\t\t// slide. This may cause the slide to insert before itself,\n\t\t\t// but that's not an issue.\n\t\t\tlet beforeSlide = slides[ Math.floor( Math.random() * slides.length ) ];\n\t\t\tif( beforeSlide.parentNode === slide.parentNode ) {\n\t\t\t\tslide.parentNode.insertBefore( slide, beforeSlide );\n\t\t\t}\n\n\t\t\t// Randomize the order of vertical slides (if there are any)\n\t\t\tlet verticalSlides = slide.querySelectorAll( 'section' );\n\t\t\tif( verticalSlides.length ) {\n\t\t\t\tshuffle( verticalSlides );\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Updates one dimension of slides by showing the slide\n\t * with the specified index.\n\t *\n\t * @param {string} selector A CSS selector that will fetch\n\t * the group of slides we are working with\n\t * @param {number} index The index of the slide that should be\n\t * shown\n\t *\n\t * @return {number} The index of the slide that is now shown,\n\t * might differ from the passed in index if it was out of\n\t * bounds.\n\t */\n\tfunction updateSlides( selector, index ) {\n\n\t\t// Select all slides and convert the NodeList result to\n\t\t// an array\n\t\tlet slides = Util.queryAll( dom.wrapper, selector ),\n\t\t\tslidesLength = slides.length;\n\n\t\tlet printMode = print.isPrintingPDF();\n\n\t\tif( slidesLength ) {\n\n\t\t\t// Should the index loop?\n\t\t\tif( config.loop ) {\n\t\t\t\tindex %= slidesLength;\n\n\t\t\t\tif( index < 0 ) {\n\t\t\t\t\tindex = slidesLength + index;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Enforce max and minimum index bounds\n\t\t\tindex = Math.max( Math.min( index, slidesLength - 1 ), 0 );\n\n\t\t\tfor( let i = 0; i < slidesLength; i++ ) {\n\t\t\t\tlet element = slides[i];\n\n\t\t\t\tlet reverse = config.rtl && !isVerticalSlide( element );\n\n\t\t\t\t// Avoid .remove() with multiple args for IE11 support\n\t\t\t\telement.classList.remove( 'past' );\n\t\t\t\telement.classList.remove( 'present' );\n\t\t\t\telement.classList.remove( 'future' );\n\n\t\t\t\t// http://www.w3.org/html/wg/drafts/html/master/editing.html#the-hidden-attribute\n\t\t\t\telement.setAttribute( 'hidden', '' );\n\t\t\t\telement.setAttribute( 'aria-hidden', 'true' );\n\n\t\t\t\t// If this element contains vertical slides\n\t\t\t\tif( element.querySelector( 'section' ) ) {\n\t\t\t\t\telement.classList.add( 'stack' );\n\t\t\t\t}\n\n\t\t\t\t// If we're printing static slides, all slides are \"present\"\n\t\t\t\tif( printMode ) {\n\t\t\t\t\telement.classList.add( 'present' );\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif( i < index ) {\n\t\t\t\t\t// Any element previous to index is given the 'past' class\n\t\t\t\t\telement.classList.add( reverse ? 'future' : 'past' );\n\n\t\t\t\t\tif( config.fragments ) {\n\t\t\t\t\t\t// Show all fragments in prior slides\n\t\t\t\t\t\tUtil.queryAll( element, '.fragment' ).forEach( fragment => {\n\t\t\t\t\t\t\tfragment.classList.add( 'visible' );\n\t\t\t\t\t\t\tfragment.classList.remove( 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( i > index ) {\n\t\t\t\t\t// Any element subsequent to index is given the 'future' class\n\t\t\t\t\telement.classList.add( reverse ? 'past' : 'future' );\n\n\t\t\t\t\tif( config.fragments ) {\n\t\t\t\t\t\t// Hide all fragments in future slides\n\t\t\t\t\t\tUtil.queryAll( element, '.fragment.visible' ).forEach( fragment => {\n\t\t\t\t\t\t\tfragment.classList.remove( 'visible', 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet slide = slides[index];\n\t\t\tlet wasPresent = slide.classList.contains( 'present' );\n\n\t\t\t// Mark the current slide as present\n\t\t\tslide.classList.add( 'present' );\n\t\t\tslide.removeAttribute( 'hidden' );\n\t\t\tslide.removeAttribute( 'aria-hidden' );\n\n\t\t\tif( !wasPresent ) {\n\t\t\t\t// Dispatch an event indicating the slide is now visible\n\t\t\t\tdispatchEvent({\n\t\t\t\t\ttarget: slide,\n\t\t\t\t\ttype: 'visible',\n\t\t\t\t\tbubbles: false\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// If this slide has a state associated with it, add it\n\t\t\t// onto the current state of the deck\n\t\t\tlet slideState = slide.getAttribute( 'data-state' );\n\t\t\tif( slideState ) {\n\t\t\t\tstate = state.concat( slideState.split( ' ' ) );\n\t\t\t}\n\n\t\t}\n\t\telse {\n\t\t\t// Since there are no slides we can't be anywhere beyond the\n\t\t\t// zeroth index\n\t\t\tindex = 0;\n\t\t}\n\n\t\treturn index;\n\n\t}\n\n\t/**\n\t * Optimization method; hide all slides that are far away\n\t * from the present slide.\n\t */\n\tfunction updateSlidesVisibility() {\n\n\t\t// Select all slides and convert the NodeList result to\n\t\t// an array\n\t\tlet horizontalSlides = getHorizontalSlides(),\n\t\t\thorizontalSlidesLength = horizontalSlides.length,\n\t\t\tdistanceX,\n\t\t\tdistanceY;\n\n\t\tif( horizontalSlidesLength && typeof indexh !== 'undefined' ) {\n\n\t\t\t// The number of steps away from the present slide that will\n\t\t\t// be visible\n\t\t\tlet viewDistance = overview.isActive() ? 10 : config.viewDistance;\n\n\t\t\t// Shorten the view distance on devices that typically have\n\t\t\t// less resources\n\t\t\tif( Device.isMobile ) {\n\t\t\t\tviewDistance = overview.isActive() ? 6 : config.mobileViewDistance;\n\t\t\t}\n\n\t\t\t// All slides need to be visible when exporting to PDF\n\t\t\tif( print.isPrintingPDF() ) {\n\t\t\t\tviewDistance = Number.MAX_VALUE;\n\t\t\t}\n\n\t\t\tfor( let x = 0; x < horizontalSlidesLength; x++ ) {\n\t\t\t\tlet horizontalSlide = horizontalSlides[x];\n\n\t\t\t\tlet verticalSlides = Util.queryAll( horizontalSlide, 'section' ),\n\t\t\t\t\tverticalSlidesLength = verticalSlides.length;\n\n\t\t\t\t// Determine how far away this slide is from the present\n\t\t\t\tdistanceX = Math.abs( ( indexh || 0 ) - x ) || 0;\n\n\t\t\t\t// If the presentation is looped, distance should measure\n\t\t\t\t// 1 between the first and last slides\n\t\t\t\tif( config.loop ) {\n\t\t\t\t\tdistanceX = Math.abs( ( ( indexh || 0 ) - x ) % ( horizontalSlidesLength - viewDistance ) ) || 0;\n\t\t\t\t}\n\n\t\t\t\t// Show the horizontal slide if it's within the view distance\n\t\t\t\tif( distanceX < viewDistance ) {\n\t\t\t\t\tslideContent.load( horizontalSlide );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tslideContent.unload( horizontalSlide );\n\t\t\t\t}\n\n\t\t\t\tif( verticalSlidesLength ) {\n\n\t\t\t\t\tlet oy = getPreviousVerticalIndex( horizontalSlide );\n\n\t\t\t\t\tfor( let y = 0; y < verticalSlidesLength; y++ ) {\n\t\t\t\t\t\tlet verticalSlide = verticalSlides[y];\n\n\t\t\t\t\t\tdistanceY = x === ( indexh || 0 ) ? Math.abs( ( indexv || 0 ) - y ) : Math.abs( y - oy );\n\n\t\t\t\t\t\tif( distanceX + distanceY < viewDistance ) {\n\t\t\t\t\t\t\tslideContent.load( verticalSlide );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tslideContent.unload( verticalSlide );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Flag if there are ANY vertical slides, anywhere in the deck\n\t\t\tif( hasVerticalSlides() ) {\n\t\t\t\tdom.wrapper.classList.add( 'has-vertical-slides' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdom.wrapper.classList.remove( 'has-vertical-slides' );\n\t\t\t}\n\n\t\t\t// Flag if there are ANY horizontal slides, anywhere in the deck\n\t\t\tif( hasHorizontalSlides() ) {\n\t\t\t\tdom.wrapper.classList.add( 'has-horizontal-slides' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdom.wrapper.classList.remove( 'has-horizontal-slides' );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Determine what available routes there are for navigation.\n\t *\n\t * @return {{left: boolean, right: boolean, up: boolean, down: boolean}}\n\t */\n\tfunction availableRoutes({ includeFragments = false } = {}) {\n\n\t\tlet horizontalSlides = dom.wrapper.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ),\n\t\t\tverticalSlides = dom.wrapper.querySelectorAll( VERTICAL_SLIDES_SELECTOR );\n\n\t\tlet routes = {\n\t\t\tleft: indexh > 0,\n\t\t\tright: indexh < horizontalSlides.length - 1,\n\t\t\tup: indexv > 0,\n\t\t\tdown: indexv < verticalSlides.length - 1\n\t\t};\n\n\t\t// Looped presentations can always be navigated as long as\n\t\t// there are slides available\n\t\tif( config.loop ) {\n\t\t\tif( horizontalSlides.length > 1 ) {\n\t\t\t\troutes.left = true;\n\t\t\t\troutes.right = true;\n\t\t\t}\n\n\t\t\tif( verticalSlides.length > 1 ) {\n\t\t\t\troutes.up = true;\n\t\t\t\troutes.down = true;\n\t\t\t}\n\t\t}\n\n\t\tif ( horizontalSlides.length > 1 && config.navigationMode === 'linear' ) {\n\t\t\troutes.right = routes.right || routes.down;\n\t\t\troutes.left = routes.left || routes.up;\n\t\t}\n\n\t\t// If includeFragments is set, a route will be considered\n\t\t// availalbe if either a slid OR fragment is available in\n\t\t// the given direction\n\t\tif( includeFragments === true ) {\n\t\t\tlet fragmentRoutes = fragments.availableRoutes();\n\t\t\troutes.left = routes.left || fragmentRoutes.prev;\n\t\t\troutes.up = routes.up || fragmentRoutes.prev;\n\t\t\troutes.down = routes.down || fragmentRoutes.next;\n\t\t\troutes.right = routes.right || fragmentRoutes.next;\n\t\t}\n\n\t\t// Reverse horizontal controls for rtl\n\t\tif( config.rtl ) {\n\t\t\tlet left = routes.left;\n\t\t\troutes.left = routes.right;\n\t\t\troutes.right = left;\n\t\t}\n\n\t\treturn routes;\n\n\t}\n\n\t/**\n\t * Returns the number of past slides. This can be used as a global\n\t * flattened index for slides.\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide we're counting before\n\t *\n\t * @return {number} Past slide count\n\t */\n\tfunction getSlidePastCount( slide = currentSlide ) {\n\n\t\tlet horizontalSlides = getHorizontalSlides();\n\n\t\t// The number of past slides\n\t\tlet pastCount = 0;\n\n\t\t// Step through all slides and count the past ones\n\t\tmainLoop: for( let i = 0; i < horizontalSlides.length; i++ ) {\n\n\t\t\tlet horizontalSlide = horizontalSlides[i];\n\t\t\tlet verticalSlides = horizontalSlide.querySelectorAll( 'section' );\n\n\t\t\tfor( let j = 0; j < verticalSlides.length; j++ ) {\n\n\t\t\t\t// Stop as soon as we arrive at the present\n\t\t\t\tif( verticalSlides[j] === slide ) {\n\t\t\t\t\tbreak mainLoop;\n\t\t\t\t}\n\n\t\t\t\t// Don't count slides with the \"uncounted\" class\n\t\t\t\tif( verticalSlides[j].dataset.visibility !== 'uncounted' ) {\n\t\t\t\t\tpastCount++;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// Stop as soon as we arrive at the present\n\t\t\tif( horizontalSlide === slide ) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Don't count the wrapping section for vertical slides and\n\t\t\t// slides marked as uncounted\n\t\t\tif( horizontalSlide.classList.contains( 'stack' ) === false && horizontalSlide.dataset.visibility !== 'uncounted' ) {\n\t\t\t\tpastCount++;\n\t\t\t}\n\n\t\t}\n\n\t\treturn pastCount;\n\n\t}\n\n\t/**\n\t * Returns a value ranging from 0-1 that represents\n\t * how far into the presentation we have navigated.\n\t *\n\t * @return {number}\n\t */\n\tfunction getProgress() {\n\n\t\t// The number of past and total slides\n\t\tlet totalCount = getTotalSlides();\n\t\tlet pastCount = getSlidePastCount();\n\n\t\tif( currentSlide ) {\n\n\t\t\tlet allFragments = currentSlide.querySelectorAll( '.fragment' );\n\n\t\t\t// If there are fragments in the current slide those should be\n\t\t\t// accounted for in the progress.\n\t\t\tif( allFragments.length > 0 ) {\n\t\t\t\tlet visibleFragments = currentSlide.querySelectorAll( '.fragment.visible' );\n\n\t\t\t\t// This value represents how big a portion of the slide progress\n\t\t\t\t// that is made up by its fragments (0-1)\n\t\t\t\tlet fragmentWeight = 0.9;\n\n\t\t\t\t// Add fragment progress to the past slide count\n\t\t\t\tpastCount += ( visibleFragments.length / allFragments.length ) * fragmentWeight;\n\t\t\t}\n\n\t\t}\n\n\t\treturn Math.min( pastCount / ( totalCount - 1 ), 1 );\n\n\t}\n\n\t/**\n\t * Retrieves the h/v location and fragment of the current,\n\t * or specified, slide.\n\t *\n\t * @param {HTMLElement} [slide] If specified, the returned\n\t * index will be for this slide rather than the currently\n\t * active one\n\t *\n\t * @return {{h: number, v: number, f: number}}\n\t */\n\tfunction getIndices( slide ) {\n\n\t\t// By default, return the current indices\n\t\tlet h = indexh,\n\t\t\tv = indexv,\n\t\t\tf;\n\n\t\t// If a slide is specified, return the indices of that slide\n\t\tif( slide ) {\n\t\t\tlet isVertical = isVerticalSlide( slide );\n\t\t\tlet slideh = isVertical ? slide.parentNode : slide;\n\n\t\t\t// Select all horizontal slides\n\t\t\tlet horizontalSlides = getHorizontalSlides();\n\n\t\t\t// Now that we know which the horizontal slide is, get its index\n\t\t\th = Math.max( horizontalSlides.indexOf( slideh ), 0 );\n\n\t\t\t// Assume we're not vertical\n\t\t\tv = undefined;\n\n\t\t\t// If this is a vertical slide, grab the vertical index\n\t\t\tif( isVertical ) {\n\t\t\t\tv = Math.max( Util.queryAll( slide.parentNode, 'section' ).indexOf( slide ), 0 );\n\t\t\t}\n\t\t}\n\n\t\tif( !slide && currentSlide ) {\n\t\t\tlet hasFragments = currentSlide.querySelectorAll( '.fragment' ).length > 0;\n\t\t\tif( hasFragments ) {\n\t\t\t\tlet currentFragment = currentSlide.querySelector( '.current-fragment' );\n\t\t\t\tif( currentFragment && currentFragment.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\t\tf = parseInt( currentFragment.getAttribute( 'data-fragment-index' ), 10 );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tf = currentSlide.querySelectorAll( '.fragment.visible' ).length - 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn { h, v, f };\n\n\t}\n\n\t/**\n\t * Retrieves all slides in this presentation.\n\t */\n\tfunction getSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, SLIDES_SELECTOR + ':not(.stack):not([data-visibility=\"uncounted\"])' );\n\n\t}\n\n\t/**\n\t * Returns a list of all horizontal slides in the deck. Each\n\t * vertical stack is included as one horizontal slide in the\n\t * resulting array.\n\t */\n\tfunction getHorizontalSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR );\n\n\t}\n\n\t/**\n\t * Returns all vertical slides that exist within this deck.\n\t */\n\tfunction getVerticalSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, '.slides>section>section' );\n\n\t}\n\n\t/**\n\t * Returns all vertical stacks (each stack can contain multiple slides).\n\t */\n\tfunction getVerticalStacks() {\n\n\t\treturn Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.stack');\n\n\t}\n\n\t/**\n\t * Returns true if there are at least two horizontal slides.\n\t */\n\tfunction hasHorizontalSlides() {\n\n\t\treturn getHorizontalSlides().length > 1;\n\t}\n\n\t/**\n\t * Returns true if there are at least two vertical slides.\n\t */\n\tfunction hasVerticalSlides() {\n\n\t\treturn getVerticalSlides().length > 1;\n\n\t}\n\n\t/**\n\t * Returns an array of objects where each object represents the\n\t * attributes on its respective slide.\n\t */\n\tfunction getSlidesAttributes() {\n\n\t\treturn getSlides().map( slide => {\n\n\t\t\tlet attributes = {};\n\t\t\tfor( let i = 0; i < slide.attributes.length; i++ ) {\n\t\t\t\tlet attribute = slide.attributes[ i ];\n\t\t\t\tattributes[ attribute.name ] = attribute.value;\n\t\t\t}\n\t\t\treturn attributes;\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Retrieves the total number of slides in this presentation.\n\t *\n\t * @return {number}\n\t */\n\tfunction getTotalSlides() {\n\n\t\treturn getSlides().length;\n\n\t}\n\n\t/**\n\t * Returns the slide element matching the specified index.\n\t *\n\t * @return {HTMLElement}\n\t */\n\tfunction getSlide( x, y ) {\n\n\t\tlet horizontalSlide = getHorizontalSlides()[ x ];\n\t\tlet verticalSlides = horizontalSlide && horizontalSlide.querySelectorAll( 'section' );\n\n\t\tif( verticalSlides && verticalSlides.length && typeof y === 'number' ) {\n\t\t\treturn verticalSlides ? verticalSlides[ y ] : undefined;\n\t\t}\n\n\t\treturn horizontalSlide;\n\n\t}\n\n\t/**\n\t * Returns the background element for the given slide.\n\t * All slides, even the ones with no background properties\n\t * defined, have a background element so as long as the\n\t * index is valid an element will be returned.\n\t *\n\t * @param {mixed} x Horizontal background index OR a slide\n\t * HTML element\n\t * @param {number} y Vertical background index\n\t * @return {(HTMLElement[]|*)}\n\t */\n\tfunction getSlideBackground( x, y ) {\n\n\t\tlet slide = typeof x === 'number' ? getSlide( x, y ) : x;\n\t\tif( slide ) {\n\t\t\treturn slide.slideBackgroundElement;\n\t\t}\n\n\t\treturn undefined;\n\n\t}\n\n\t/**\n\t * Retrieves the current state of the presentation as\n\t * an object. This state can then be restored at any\n\t * time.\n\t *\n\t * @return {{indexh: number, indexv: number, indexf: number, paused: boolean, overview: boolean}}\n\t */\n\tfunction getState() {\n\n\t\tlet indices = getIndices();\n\n\t\treturn {\n\t\t\tindexh: indices.h,\n\t\t\tindexv: indices.v,\n\t\t\tindexf: indices.f,\n\t\t\tpaused: isPaused(),\n\t\t\toverview: overview.isActive()\n\t\t};\n\n\t}\n\n\t/**\n\t * Restores the presentation to the given state.\n\t *\n\t * @param {object} state As generated by getState()\n\t * @see {@link getState} generates the parameter `state`\n\t */\n\tfunction setState( state ) {\n\n\t\tif( typeof state === 'object' ) {\n\t\t\tslide( Util.deserialize( state.indexh ), Util.deserialize( state.indexv ), Util.deserialize( state.indexf ) );\n\n\t\t\tlet pausedFlag = Util.deserialize( state.paused ),\n\t\t\t\toverviewFlag = Util.deserialize( state.overview );\n\n\t\t\tif( typeof pausedFlag === 'boolean' && pausedFlag !== isPaused() ) {\n\t\t\t\ttogglePause( pausedFlag );\n\t\t\t}\n\n\t\t\tif( typeof overviewFlag === 'boolean' && overviewFlag !== overview.isActive() ) {\n\t\t\t\toverview.toggle( overviewFlag );\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Cues a new automated slide if enabled in the config.\n\t */\n\tfunction cueAutoSlide() {\n\n\t\tcancelAutoSlide();\n\n\t\tif( currentSlide && config.autoSlide !== false ) {\n\n\t\t\tlet fragment = currentSlide.querySelector( '.current-fragment' );\n\n\t\t\t// When the slide first appears there is no \"current\" fragment so\n\t\t\t// we look for a data-autoslide timing on the first fragment\n\t\t\tif( !fragment ) fragment = currentSlide.querySelector( '.fragment' );\n\n\t\t\tlet fragmentAutoSlide = fragment ? fragment.getAttribute( 'data-autoslide' ) : null;\n\t\t\tlet parentAutoSlide = currentSlide.parentNode ? currentSlide.parentNode.getAttribute( 'data-autoslide' ) : null;\n\t\t\tlet slideAutoSlide = currentSlide.getAttribute( 'data-autoslide' );\n\n\t\t\t// Pick value in the following priority order:\n\t\t\t// 1. Current fragment's data-autoslide\n\t\t\t// 2. Current slide's data-autoslide\n\t\t\t// 3. Parent slide's data-autoslide\n\t\t\t// 4. Global autoSlide setting\n\t\t\tif( fragmentAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( fragmentAutoSlide, 10 );\n\t\t\t}\n\t\t\telse if( slideAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( slideAutoSlide, 10 );\n\t\t\t}\n\t\t\telse if( parentAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( parentAutoSlide, 10 );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tautoSlide = config.autoSlide;\n\n\t\t\t\t// If there are media elements with data-autoplay,\n\t\t\t\t// automatically set the autoSlide duration to the\n\t\t\t\t// length of that media. Not applicable if the slide\n\t\t\t\t// is divided up into fragments.\n\t\t\t\t// playbackRate is accounted for in the duration.\n\t\t\t\tif( currentSlide.querySelectorAll( '.fragment' ).length === 0 ) {\n\t\t\t\t\tUtil.queryAll( currentSlide, 'video, audio' ).forEach( el => {\n\t\t\t\t\t\tif( el.hasAttribute( 'data-autoplay' ) ) {\n\t\t\t\t\t\t\tif( autoSlide && (el.duration * 1000 / el.playbackRate ) > autoSlide ) {\n\t\t\t\t\t\t\t\tautoSlide = ( el.duration * 1000 / el.playbackRate ) + 1000;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Cue the next auto-slide if:\n\t\t\t// - There is an autoSlide value\n\t\t\t// - Auto-sliding isn't paused by the user\n\t\t\t// - The presentation isn't paused\n\t\t\t// - The overview isn't active\n\t\t\t// - The presentation isn't over\n\t\t\tif( autoSlide && !autoSlidePaused && !isPaused() && !overview.isActive() && ( !isLastSlide() || fragments.availableRoutes().next || config.loop === true ) ) {\n\t\t\t\tautoSlideTimeout = setTimeout( () => {\n\t\t\t\t\tif( typeof config.autoSlideMethod === 'function' ) {\n\t\t\t\t\t\tconfig.autoSlideMethod()\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnavigateNext();\n\t\t\t\t\t}\n\t\t\t\t\tcueAutoSlide();\n\t\t\t\t}, autoSlide );\n\t\t\t\tautoSlideStartTime = Date.now();\n\t\t\t}\n\n\t\t\tif( autoSlidePlayer ) {\n\t\t\t\tautoSlidePlayer.setPlaying( autoSlideTimeout !== -1 );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Cancels any ongoing request to auto-slide.\n\t */\n\tfunction cancelAutoSlide() {\n\n\t\tclearTimeout( autoSlideTimeout );\n\t\tautoSlideTimeout = -1;\n\n\t}\n\n\tfunction pauseAutoSlide() {\n\n\t\tif( autoSlide && !autoSlidePaused ) {\n\t\t\tautoSlidePaused = true;\n\t\t\tdispatchEvent({ type: 'autoslidepaused' });\n\t\t\tclearTimeout( autoSlideTimeout );\n\n\t\t\tif( autoSlidePlayer ) {\n\t\t\t\tautoSlidePlayer.setPlaying( false );\n\t\t\t}\n\t\t}\n\n\t}\n\n\tfunction resumeAutoSlide() {\n\n\t\tif( autoSlide && autoSlidePaused ) {\n\t\t\tautoSlidePaused = false;\n\t\t\tdispatchEvent({ type: 'autoslideresumed' });\n\t\t\tcueAutoSlide();\n\t\t}\n\n\t}\n\n\tfunction navigateLeft({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\n\t\t// Reverse for RTL\n\t\tif( config.rtl ) {\n\t\t\tif( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().left ) {\n\t\t\t\tslide( indexh + 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t\t}\n\t\t}\n\t\t// Normal navigation\n\t\telse if( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().left ) {\n\t\t\tslide( indexh - 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t}\n\n\t}\n\n\tfunction navigateRight({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\n\t\t// Reverse for RTL\n\t\tif( config.rtl ) {\n\t\t\tif( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().right ) {\n\t\t\t\tslide( indexh - 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t\t}\n\t\t}\n\t\t// Normal navigation\n\t\telse if( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().right ) {\n\t\t\tslide( indexh + 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t}\n\n\t}\n\n\tfunction navigateUp({skipFragments=false}={}) {\n\n\t\t// Prioritize hiding fragments\n\t\tif( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().up ) {\n\t\t\tslide( indexh, indexv - 1 );\n\t\t}\n\n\t}\n\n\tfunction navigateDown({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedVertically = true;\n\n\t\t// Prioritize revealing fragments\n\t\tif( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().down ) {\n\t\t\tslide( indexh, indexv + 1 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Navigates backwards, prioritized in the following order:\n\t * 1) Previous fragment\n\t * 2) Previous vertical slide\n\t * 3) Previous horizontal slide\n\t */\n\tfunction navigatePrev({skipFragments=false}={}) {\n\n\t\t// Prioritize revealing fragments\n\t\tif( skipFragments || fragments.prev() === false ) {\n\t\t\tif( availableRoutes().up ) {\n\t\t\t\tnavigateUp({skipFragments});\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Fetch the previous horizontal slide, if there is one\n\t\t\t\tlet previousSlide;\n\n\t\t\t\tif( config.rtl ) {\n\t\t\t\t\tpreviousSlide = Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.future' ).pop();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tpreviousSlide = Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.past' ).pop();\n\t\t\t\t}\n\n\t\t\t\t// When going backwards and arriving on a stack we start\n\t\t\t\t// at the bottom of the stack\n\t\t\t\tif( previousSlide && previousSlide.classList.contains( 'stack' ) ) {\n\t\t\t\t\tlet v = ( previousSlide.querySelectorAll( 'section' ).length - 1 ) || undefined;\n\t\t\t\t\tlet h = indexh - 1;\n\t\t\t\t\tslide( h, v );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tnavigateLeft({skipFragments});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * The reverse of #navigatePrev().\n\t */\n\tfunction navigateNext({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\t\tnavigationHistory.hasNavigatedVertically = true;\n\n\t\t// Prioritize revealing fragments\n\t\tif( skipFragments || fragments.next() === false ) {\n\n\t\t\tlet routes = availableRoutes();\n\n\t\t\t// When looping is enabled `routes.down` is always available\n\t\t\t// so we need a separate check for when we've reached the\n\t\t\t// end of a stack and should move horizontally\n\t\t\tif( routes.down && routes.right && config.loop && isLastVerticalSlide() ) {\n\t\t\t\troutes.down = false;\n\t\t\t}\n\n\t\t\tif( routes.down ) {\n\t\t\t\tnavigateDown({skipFragments});\n\t\t\t}\n\t\t\telse if( config.rtl ) {\n\t\t\t\tnavigateLeft({skipFragments});\n\t\t\t}\n\t\t\telse {\n\t\t\t\tnavigateRight({skipFragments});\n\t\t\t}\n\t\t}\n\n\t}\n\n\n\t// --------------------------------------------------------------------//\n\t// ----------------------------- EVENTS -------------------------------//\n\t// --------------------------------------------------------------------//\n\n\t/**\n\t * Called by all event handlers that are based on user\n\t * input.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onUserInput( event ) {\n\n\t\tif( config.autoSlideStoppable ) {\n\t\t\tpauseAutoSlide();\n\t\t}\n\n\t}\n\n\t/**\n\t * Event listener for transition end on the current slide.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onTransitionEnd( event ) {\n\n\t\tif( transition === 'running' && /section/gi.test( event.target.nodeName ) ) {\n\t\t\ttransition = 'idle';\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'slidetransitionend',\n\t\t\t\tdata: { indexh, indexv, previousSlide, currentSlide }\n\t\t\t});\n\t\t}\n\n\t}\n\n\t/**\n\t * A global listener for all click events inside of the\n\t * .slides container.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onSlidesClicked( event ) {\n\n\t\tconst anchor = Util.closest( event.target, 'a[href^=\"#\"]' );\n\n\t\t// If a hash link is clicked, we find the target slide\n\t\t// and navigate to it. We previously relied on 'hashchange'\n\t\t// for links like these but that prevented media with\n\t\t// audio tracks from playing in mobile browsers since it\n\t\t// wasn't considered a direct interaction with the document.\n\t\tif( anchor ) {\n\t\t\tconst hash = anchor.getAttribute( 'href' );\n\t\t\tconst indices = location.getIndicesFromHash( hash );\n\n\t\t\tif( indices ) {\n\t\t\t\tReveal.slide( indices.h, indices.v, indices.f );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the window level 'resize' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onWindowResize( event ) {\n\n\t\tlayout();\n\n\t}\n\n\t/**\n\t * Handle for the window level 'visibilitychange' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onPageVisibilityChange( event ) {\n\n\t\t// If, after clicking a link or similar and we're coming back,\n\t\t// focus the document.body to ensure we can use keyboard shortcuts\n\t\tif( document.hidden === false && document.activeElement !== document.body ) {\n\t\t\t// Not all elements support .blur() - SVGs among them.\n\t\t\tif( typeof document.activeElement.blur === 'function' ) {\n\t\t\t\tdocument.activeElement.blur();\n\t\t\t}\n\t\t\tdocument.body.focus();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handles clicks on links that are set to preview in the\n\t * iframe overlay.\n\t *\n\t * @param {object} event\n\t */\n\tfunction onPreviewLinkClicked( event ) {\n\n\t\tif( event.currentTarget && event.currentTarget.hasAttribute( 'href' ) ) {\n\t\t\tlet url = event.currentTarget.getAttribute( 'href' );\n\t\t\tif( url ) {\n\t\t\t\tshowPreview( url );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Handles click on the auto-sliding controls element.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onAutoSlidePlayerClick( event ) {\n\n\t\t// Replay\n\t\tif( isLastSlide() && config.loop === false ) {\n\t\t\tslide( 0, 0 );\n\t\t\tresumeAutoSlide();\n\t\t}\n\t\t// Resume\n\t\telse if( autoSlidePaused ) {\n\t\t\tresumeAutoSlide();\n\t\t}\n\t\t// Pause\n\t\telse {\n\t\t\tpauseAutoSlide();\n\t\t}\n\n\t}\n\n\n\t// --------------------------------------------------------------------//\n\t// ------------------------------- API --------------------------------//\n\t// --------------------------------------------------------------------//\n\n\t// The public reveal.js API\n\tconst API = {\n\t\tVERSION,\n\n\t\tinitialize,\n\t\tconfigure,\n\n\t\tsync,\n\t\tsyncSlide,\n\t\tsyncFragments: fragments.sync.bind( fragments ),\n\n\t\t// Navigation methods\n\t\tslide,\n\t\tleft: navigateLeft,\n\t\tright: navigateRight,\n\t\tup: navigateUp,\n\t\tdown: navigateDown,\n\t\tprev: navigatePrev,\n\t\tnext: navigateNext,\n\n\t\t// Navigation aliases\n\t\tnavigateLeft, navigateRight, navigateUp, navigateDown, navigatePrev, navigateNext,\n\n\t\t// Fragment methods\n\t\tnavigateFragment: fragments.goto.bind( fragments ),\n\t\tprevFragment: fragments.prev.bind( fragments ),\n\t\tnextFragment: fragments.next.bind( fragments ),\n\n\t\t// Event binding\n\t\ton,\n\t\toff,\n\n\t\t// Legacy event binding methods left in for backwards compatibility\n\t\taddEventListener: on,\n\t\tremoveEventListener: off,\n\n\t\t// Forces an update in slide layout\n\t\tlayout,\n\n\t\t// Randomizes the order of slides\n\t\tshuffle,\n\n\t\t// Returns an object with the available routes as booleans (left/right/top/bottom)\n\t\tavailableRoutes,\n\n\t\t// Returns an object with the available fragments as booleans (prev/next)\n\t\tavailableFragments: fragments.availableRoutes.bind( fragments ),\n\n\t\t// Toggles a help overlay with keyboard shortcuts\n\t\ttoggleHelp,\n\n\t\t// Toggles the overview mode on/off\n\t\ttoggleOverview: overview.toggle.bind( overview ),\n\n\t\t// Toggles the \"black screen\" mode on/off\n\t\ttogglePause,\n\n\t\t// Toggles the auto slide mode on/off\n\t\ttoggleAutoSlide,\n\n\t\t// Slide navigation checks\n\t\tisFirstSlide,\n\t\tisLastSlide,\n\t\tisLastVerticalSlide,\n\t\tisVerticalSlide,\n\n\t\t// State checks\n\t\tisPaused,\n\t\tisAutoSliding,\n\t\tisSpeakerNotes: notes.isSpeakerNotesWindow.bind( notes ),\n\t\tisOverview: overview.isActive.bind( overview ),\n\t\tisFocused: focus.isFocused.bind( focus ),\n\t\tisPrintingPDF: print.isPrintingPDF.bind( print ),\n\n\t\t// Checks if reveal.js has been loaded and is ready for use\n\t\tisReady: () => ready,\n\n\t\t// Slide preloading\n\t\tloadSlide: slideContent.load.bind( slideContent ),\n\t\tunloadSlide: slideContent.unload.bind( slideContent ),\n\n\t\t// Preview management\n\t\tshowPreview,\n\t\thidePreview: closeOverlay,\n\n\t\t// Adds or removes all internal event listeners\n\t\taddEventListeners,\n\t\tremoveEventListeners,\n\t\tdispatchEvent,\n\n\t\t// Facility for persisting and restoring the presentation state\n\t\tgetState,\n\t\tsetState,\n\n\t\t// Presentation progress on range of 0-1\n\t\tgetProgress,\n\n\t\t// Returns the indices of the current, or specified, slide\n\t\tgetIndices,\n\n\t\t// Returns an Array of key:value maps of the attributes of each\n\t\t// slide in the deck\n\t\tgetSlidesAttributes,\n\n\t\t// Returns the number of slides that we have passed\n\t\tgetSlidePastCount,\n\n\t\t// Returns the total number of slides\n\t\tgetTotalSlides,\n\n\t\t// Returns the slide element at the specified index\n\t\tgetSlide,\n\n\t\t// Returns the previous slide element, may be null\n\t\tgetPreviousSlide: () => previousSlide,\n\n\t\t// Returns the current slide element\n\t\tgetCurrentSlide: () => currentSlide,\n\n\t\t// Returns the slide background element at the specified index\n\t\tgetSlideBackground,\n\n\t\t// Returns the speaker notes string for a slide, or null\n\t\tgetSlideNotes: notes.getSlideNotes.bind( notes ),\n\n\t\t// Returns an Array of all slides\n\t\tgetSlides,\n\n\t\t// Returns an array with all horizontal/vertical slides in the deck\n\t\tgetHorizontalSlides,\n\t\tgetVerticalSlides,\n\n\t\t// Checks if the presentation contains two or more horizontal\n\t\t// and vertical slides\n\t\thasHorizontalSlides,\n\t\thasVerticalSlides,\n\n\t\t// Checks if the deck has navigated on either axis at least once\n\t\thasNavigatedHorizontally: () => navigationHistory.hasNavigatedHorizontally,\n\t\thasNavigatedVertically: () => navigationHistory.hasNavigatedVertically,\n\n\t\t// Adds/removes a custom key binding\n\t\taddKeyBinding: keyboard.addKeyBinding.bind( keyboard ),\n\t\tremoveKeyBinding: keyboard.removeKeyBinding.bind( keyboard ),\n\n\t\t// Programmatically triggers a keyboard event\n\t\ttriggerKey: keyboard.triggerKey.bind( keyboard ),\n\n\t\t// Registers a new shortcut to include in the help overlay\n\t\tregisterKeyboardShortcut: keyboard.registerKeyboardShortcut.bind( keyboard ),\n\n\t\tgetComputedSlideSize,\n\n\t\t// Returns the current scale of the presentation content\n\t\tgetScale: () => scale,\n\n\t\t// Returns the current configuration object\n\t\tgetConfig: () => config,\n\n\t\t// Helper method, retrieves query string as a key:value map\n\t\tgetQueryHash: Util.getQueryHash,\n\n\t\t// Returns reveal.js DOM elements\n\t\tgetRevealElement: () => revealElement,\n\t\tgetSlidesElement: () => dom.slides,\n\t\tgetViewportElement: () => dom.viewport,\n\t\tgetBackgroundsElement: () => backgrounds.element,\n\n\t\t// API for registering and retrieving plugins\n\t\tregisterPlugin: plugins.registerPlugin.bind( plugins ),\n\t\thasPlugin: plugins.hasPlugin.bind( plugins ),\n\t\tgetPlugin: plugins.getPlugin.bind( plugins ),\n\t\tgetPlugins: plugins.getRegisteredPlugins.bind( plugins )\n\n\t};\n\n\t// Our internal API which controllers have access to\n\tUtil.extend( Reveal, {\n\t\t...API,\n\n\t\t// Methods for announcing content to screen readers\n\t\tannounceStatus,\n\t\tgetStatusText,\n\n\t\t// Controllers\n\t\tprint,\n\t\tfocus,\n\t\tprogress,\n\t\tcontrols,\n\t\tlocation,\n\t\toverview,\n\t\tfragments,\n\t\tslideContent,\n\t\tslideNumber,\n\n\t\tonUserInput,\n\t\tcloseOverlay,\n\t\tupdateSlidesVisibility,\n\t\tlayoutSlideContents,\n\t\ttransformSlides,\n\t\tcueAutoSlide,\n\t\tcancelAutoSlide\n\t} );\n\n\treturn API;\n\n};\n","import Deck, { VERSION } from './reveal.js'\n\n/**\n * Expose the Reveal class to the window. To create a\n * new instance:\n * let deck = new Reveal( document.querySelector( '.reveal' ), {\n * controls: false\n * } );\n * deck.initialize().then(() => {\n * // reveal.js is ready\n * });\n */\nlet Reveal = Deck;\n\n\n/**\n * The below is a thin shell that mimics the pre 4.0\n * reveal.js API and ensures backwards compatibility.\n * This API only allows for one Reveal instance per\n * page, whereas the new API above lets you run many\n * presentations on the same page.\n *\n * Reveal.initialize( { controls: false } ).then(() => {\n * // reveal.js is ready\n * });\n */\n\nlet enqueuedAPICalls = [];\n\nReveal.initialize = options => {\n\n\t// Create our singleton reveal.js instance\n\tObject.assign( Reveal, new Deck( document.querySelector( '.reveal' ), options ) );\n\n\t// Invoke any enqueued API calls\n\tenqueuedAPICalls.map( method => method( Reveal ) );\n\n\treturn Reveal.initialize();\n\n}\n\n/**\n * The pre 4.0 API let you add event listener before\n * initializing. We maintain the same behavior by\n * queuing up premature API calls and invoking all\n * of them when Reveal.initialize is called.\n */\n[ 'configure', 'on', 'off', 'addEventListener', 'removeEventListener', 'registerPlugin' ].forEach( method => {\n\tReveal[method] = ( ...args ) => {\n\t\tenqueuedAPICalls.push( deck => deck[method].call( null, ...args ) );\n\t}\n} );\n\nReveal.isReady = () => false;\n\nReveal.VERSION = VERSION;\n\nexport default Reveal;"],"names":["POST_MESSAGE_METHOD_BLACKLIST","FRAGMENT_STYLE_REGEX","extend","a","b","i","queryAll","el","selector","Array","from","querySelectorAll","toggleClass","className","value","classList","add","remove","deserialize","match","parseFloat","transformElement","element","transform","style","matches","target","matchesMethod","matchesSelector","msMatchesSelector","call","closest","parentNode","createSingletonNode","container","tagname","classname","innerHTML","nodes","length","testNode","node","document","createElement","appendChild","createStyleSheet","tag","type","styleSheet","cssText","createTextNode","head","getQueryHash","query","location","search","replace","split","shift","pop","unescape","getRemainingHeight","height","newHeight","oldHeight","offsetHeight","removeProperty","UA","navigator","userAgent","testElement","isMobile","test","platform","maxTouchPoints","isChrome","isAndroid","supportsZoom","Object","defineProperty","fitty_module","_extends","assign","arguments","source","key","prototype","hasOwnProperty","w","toArray","nl","slice","DrawState","fitties","redrawFrame","requestRedraw","cancelAnimationFrame","requestAnimationFrame","redraw","filter","f","dirty","active","redrawAll","forEach","styleComputed","computeStyle","shouldPreStyle","applyStyle","fittiesToRedraw","shouldRedraw","calculateStyles","markAsClean","dispatchFitEvent","availableWidth","clientWidth","currentWidth","scrollWidth","previousFontSize","currentFontSize","Math","min","max","minSize","maxSize","whiteSpace","multiLine","getComputedStyle","getPropertyValue","display","preStyle","preStyleTestCompleted","fontSize","dispatchEvent","CustomEvent","detail","oldValue","newValue","scaleFactor","fit","destroy","_","observeMutations","observer","disconnect","originalStyle","subscribe","unsubscribe","MutationObserver","observe","defaultOptions","subtree","childList","characterData","resizeDebounce","onWindowResized","clearTimeout","setTimeout","fitty","observeWindowDelay","events","set","enabled","method","e","observeWindow","fitAll","fittyCreate","elements","options","fittyOptions","publicFitties","map","newbie","push","init","unfreeze","freeze","undefined","window","SlideContent","constructor","Reveal","startEmbeddedIframe","this","bind","shouldPreload","preload","getConfig","preloadIframes","hasAttribute","load","slide","tagName","setAttribute","getAttribute","removeAttribute","media","sources","background","slideBackgroundElement","backgroundContent","slideBackgroundContentElement","backgroundIframe","backgroundImage","backgroundVideo","backgroundVideoLoop","backgroundVideoMuted","trim","encodeURI","join","isSpeakerNotes","video","muted","excludeIframes","iframe","width","maxHeight","maxWidth","backgroundIframeElement","querySelector","layout","unload","getSlideBackground","formatEmbeddedContent","_appendParamToIframeSource","sourceAttribute","sourceURL","param","getSlidesElement","src","indexOf","startEmbeddedContent","autoplay","autoPlayMedia","play","readyState","startEmbeddedMedia","promise","catch","controls","addEventListener","removeEventListener","event","isAttachedToDOM","isVisible","currentTime","contentWindow","postMessage","stopEmbeddedContent","unloadIframes","pause","SlideNumber","render","getRevealElement","configure","config","oldConfig","slideNumberDisplay","slideNumber","isPrintingPDF","showSlideNumber","update","getSlideNumber","getCurrentSlide","format","getHorizontalSlides","horizontalOffset","dataset","visibility","getSlidePastCount","getTotalSlides","indices","getIndices","h","sep","isVerticalSlide","v","url","getHash","formatNumber","delimiter","isNaN","colorToRgb","color","hex3","r","parseInt","charAt","g","hex6","substr","rgb","rgba","Backgrounds","create","slideh","backgroundStack","createBackground","slidev","parallaxBackgroundImage","backgroundSize","parallaxBackgroundSize","backgroundRepeat","parallaxBackgroundRepeat","backgroundPosition","parallaxBackgroundPosition","contentElement","sync","data","backgroundColor","backgroundTransition","backgroundOpacity","dataPreload","opacity","contrastColor","computedBackgroundStyle","includeAll","currentSlide","currentBackground","horizontalPast","rtl","horizontalFuture","childNodes","backgroundh","backgroundv","previousBackground","slideContent","currentBackgroundContent","backgroundImageURL","previousBackgroundHash","currentBackgroundHash","classToBubble","contains","updateParallax","backgroundWidth","backgroundHeight","horizontalSlides","verticalSlides","getVerticalSlides","horizontalOffsetMultiplier","slideWidth","offsetWidth","horizontalSlideCount","parallaxBackgroundHorizontal","verticalOffsetMultiplier","verticalOffset","slideHeight","verticalSlideCount","parallaxBackgroundVertical","autoAnimateCounter","AutoAnimate","run","fromSlide","toSlide","reset","allSlides","getSlides","toSlideIndex","fromSlideIndex","autoAnimateStyleSheet","animationOptions","getAutoAnimateOptions","autoAnimate","slideDirection","css","getAutoAnimatableElements","autoAnimateElements","to","autoAnimateUnmatched","defaultUnmatchedDuration","duration","defaultUnmatchedDelay","getUnmatchedAutoAnimateElements","unmatchedElement","unmatchedOptions","id","delay","autoAnimateTarget","fontWeight","sheet","removeChild","elementOptions","easing","fromProps","getAutoAnimatableProperties","toProps","styles","translate","scale","presentationScale","getScale","delta","x","y","scaleX","scaleY","round","propertyName","toValue","fromValue","explicitValue","toStyleProperties","keys","inheritedOptions","autoAnimateEasing","autoAnimateDuration","autoAnimatedParent","autoAnimateDelay","direction","properties","bounds","measure","center","getBoundingClientRect","offsetLeft","offsetTop","computedStyles","autoAnimateStyles","property","pairs","autoAnimateMatcher","getAutoAnimatePairs","reserved","pair","index","textNodes","findAutoAnimateMatches","nodeName","innerText","textContent","getLocalBoundingBox","fromScope","toScope","serializer","fromMatches","toMatches","fromElement","pimaryIndex","secondaryIndex","rootElement","children","reduce","result","containsAnimatedElements","concat","Fragments","fragments","disable","enable","availableRoutes","hiddenFragments","prev","next","sort","grouped","ordered","unordered","sorted","fragment","group","sortAll","horizontalSlide","verticalSlide","changedFragments","shown","hidden","maxIndex","currentFragment","wasVisible","announceStatus","getStatusText","bubbles","goto","offset","lastVisibleFragment","progress","fragmentInURL","writeURL","Overview","onSlideClicked","activate","overview","isActive","cancelAutoSlide","getBackgroundsElement","margin","slideSize","getComputedSlideSize","overviewSlideWidth","overviewSlideHeight","updateSlidesVisibility","hslide","vslide","hbackground","vbackground","vmin","innerWidth","innerHeight","transformSlides","deactivate","cueAutoSlide","toggle","override","preventDefault","Keyboard","shortcuts","bindings","onDocumentKeyDown","onDocumentKeyPress","navigationMode","unbind","addKeyBinding","binding","callback","keyCode","description","removeKeyBinding","triggerKey","registerKeyboardShortcut","getShortcuts","getBindings","shiftKey","charCode","toggleHelp","keyboardCondition","isFocused","autoSlideWasPaused","isAutoSliding","onUserInput","activeElementIsCE","activeElement","isContentEditable","activeElementIsInput","activeElementIsNotes","unusedModifier","altKey","ctrlKey","metaKey","resumeKeyCodes","keyboard","isPaused","useLinearMode","hasHorizontalSlides","hasVerticalSlides","triggered","apply","action","skipFragments","left","right","up","Number","MAX_VALUE","down","togglePause","requestMethod","documentElement","requestFullscreen","webkitRequestFullscreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen","enterFullscreen","embedded","getViewportElement","autoSlideStoppable","toggleAutoSlide","closeOverlay","Location","writeURLTimeout","onWindowHashChange","getIndicesFromHash","hash","name","bits","hashIndexBase","hashOneBasedIndex","getElementById","decodeURIComponent","error","readURL","currentIndices","newIndices","history","replaceState","pathname","s","encodeURIComponent","Controls","onNavigateLeftClicked","onNavigateRightClicked","onNavigateUpClicked","onNavigateDownClicked","onNavigatePrevClicked","onNavigateNextClicked","revealElement","controlsLeft","controlsRight","controlsUp","controlsDown","controlsPrev","controlsNext","controlsRightArrow","controlsLeftArrow","controlsDownArrow","controlsLayout","controlsBackArrows","pointerEvents","eventName","routes","fragmentsRoutes","controlsTutorial","hasNavigatedVertically","hasNavigatedHorizontally","Progress","onProgressClicked","bar","getProgress","getMaxWidth","slides","slidesTotal","slideIndex","floor","clientX","targetIndices","Pointer","lastMouseWheelStep","cursorHidden","cursorInactiveTimeout","onDocumentCursorActive","onDocumentMouseScroll","mouseWheel","hideInactiveCursor","showCursor","cursor","hideCursor","hideCursorTime","Date","now","wheelDelta","loadScript","script","async","defer","onload","onreadystatechange","onerror","err","Error","insertBefore","lastChild","Plugins","reveal","state","registeredPlugins","asyncDependencies","plugins","dependencies","registerPlugin","Promise","resolve","scripts","scriptsToLoad","condition","scriptLoadedCallback","initPlugins","then","console","warn","pluginValues","values","pluginsToInitialize","loadAsync","initNextPlugin","afterPlugInitialized","plugin","hasPlugin","getPlugin","getRegisteredPlugins","Print","doingSlideNumbers","pageWidth","pageHeight","body","layoutSlideContents","slideScrollHeights","scrollHeight","pages","pageContainer","top","contentHeight","numberOfPages","ceil","pdfMaxPagesPerSlide","page","pdfPageHeightOffset","showNotes","notes","getSlideNotes","notesSpacing","notesLayout","notesElement","bottom","numberElement","pdfSeparateFragments","fragmentGroups","previousFragmentStep","clonedPage","cloneNode","Touch","touchStartX","touchStartY","touchStartCount","touchCaptured","onPointerDown","onPointerMove","onPointerUp","onTouchStart","onTouchMove","onTouchEnd","msPointerEnabled","isSwipePrevented","touches","clientY","currentX","currentY","includeFragments","deltaX","deltaY","abs","pointerType","MSPOINTER_TYPE_TOUCH","Focus","onRevealPointerDown","onDocumentPointerDown","blur","focus","Notes","print","updateVisibility","hasNotes","isSpeakerNotesWindow","Playback","progressCheck","diameter","diameter2","thickness","playing","progressOffset","canvas","context","getContext","setPlaying","wasPlaying","animate","progressBefore","radius","iconSize","endAngle","PI","startAngle","save","clearRect","beginPath","arc","fillStyle","fill","lineWidth","strokeStyle","stroke","fillRect","moveTo","lineTo","restore","on","listener","off","minScale","maxScale","respondToHashChanges","disableLayout","touch","loop","shuffle","help","showHiddenSlides","autoSlide","autoSlideMethod","defaultTiming","previewLinks","postMessageEvents","focusBodyOnPageVisibilityChange","transition","transitionSpeed","POSITIVE_INFINITY","viewDistance","mobileViewDistance","indexh","indexv","previousSlide","autoSlidePlayer","ready","navigationHistory","slidesTransform","dom","autoSlideTimeout","autoSlideStartTime","autoSlidePaused","backgrounds","pointer","initialize","initOptions","wrapper","defaultConfig","Util","setViewport","start","viewport","removeHiddenSlides","setupDOM","setupPostMessage","setupScrollPrevention","resetVerticalSlides","removeEventListeners","setupPDF","Device","pauseOverlay","statusElement","createStatusElement","position","overflow","clip","text","nodeType","isAriaHidden","isDisplayHidden","child","setInterval","scrollTop","scrollLeft","JSON","parse","args","dispatchPostMessage","isReady","numberOfSlides","setProperty","resume","enablePreviewLinks","disablePreviewLinks","onAutoSlidePlayerClick","addEventListeners","onWindowResize","onSlidesClicked","onTransitionEnd","onPageVisibilityChange","useCapture","transforms","createEvent","initEvent","parent","self","message","namespace","getState","stringify","onPreviewLinkClicked","showPreview","overlay","showHelp","html","size","oldScale","presentationWidth","presentationHeight","zoom","devicePixelRatio","len","remainingHeight","nw","naturalWidth","videoWidth","nh","naturalHeight","videoHeight","es","setPreviousVerticalIndex","stack","getPreviousVerticalIndex","attributeName","isLastVerticalSlide","nextElementSibling","isFirstSlide","isLastSlide","wasPaused","resumeAutoSlide","pauseAutoSlide","origin","defaultPrevented","stateBefore","indexhBefore","indexvBefore","updateSlides","slideChanged","currentHorizontalSlide","currentVerticalSlides","autoAnimateTransition","getVerticalStacks","stateLoop","j","splice","syncSlide","beforeSlide","random","slidesLength","printMode","reverse","wasPresent","slideState","distanceX","distanceY","horizontalSlidesLength","verticalSlidesLength","oy","fragmentRoutes","pastCount","mainLoop","totalCount","allFragments","fragmentWeight","isVertical","SLIDES_SELECTOR","HORIZONTAL_SLIDES_SELECTOR","getSlidesAttributes","attributes","attribute","getSlide","indexf","paused","setState","pausedFlag","overviewFlag","fragmentAutoSlide","parentAutoSlide","slideAutoSlide","playbackRate","navigateNext","navigateLeft","navigateRight","navigateUp","navigateDown","navigatePrev","anchor","currentTarget","API","VERSION","syncFragments","navigateFragment","prevFragment","nextFragment","availableFragments","toggleOverview","isOverview","loadSlide","unloadSlide","hidePreview","getPreviousSlide","getPlugins","Deck","enqueuedAPICalls","deck"],"mappings":"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"} \ No newline at end of file diff --git a/public/site_libs/revealjs/dist/reveal.js b/public/site_libs/revealjs/dist/reveal.js new file mode 100644 index 0000000..658fa99 --- /dev/null +++ b/public/site_libs/revealjs/dist/reveal.js @@ -0,0 +1,9 @@ +/*! +* reveal.js 4.2.0 +* https://revealjs.com +* MIT licensed +* +* Copyright (C) 2011-2021 Hakim El Hattab, https://hakim.se +*/ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Reveal=t()}(this,(function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=function(e){return e&&e.Math==Math&&e},n=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof e&&e)||function(){return this}()||Function("return this")(),i={},r=function(e){try{return!!e()}catch(e){return!0}},a=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),o={},s={}.propertyIsEnumerable,l=Object.getOwnPropertyDescriptor,c=l&&!s.call({1:2},1);o.f=c?function(e){var t=l(this,e);return!!t&&t.enumerable}:s;var u=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},d={}.toString,h=function(e){return d.call(e).slice(8,-1)},f=h,v="".split,g=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==f(e)?v.call(e,""):Object(e)}:Object,p=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},m=g,y=p,b=function(e){return m(y(e))},w=function(e){return"object"==typeof e?null!==e:"function"==typeof e},S=w,E=function(e,t){if(!S(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!S(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!S(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!S(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")},k=p,A=function(e){return Object(k(e))},R=A,x={}.hasOwnProperty,L=function(e,t){return x.call(R(e),t)},P=w,C=n.document,N=P(C)&&P(C.createElement),I=function(e){return N?C.createElement(e):{}},M=I,T=!a&&!r((function(){return 7!=Object.defineProperty(M("div"),"a",{get:function(){return 7}}).a})),O=a,D=o,j=u,F=b,z=E,H=L,U=T,B=Object.getOwnPropertyDescriptor;i.f=O?B:function(e,t){if(e=F(e),t=z(t,!0),U)try{return B(e,t)}catch(e){}if(H(e,t))return j(!D.f.call(e,t),e[t])};var _={},q=w,W=function(e){if(!q(e))throw TypeError(String(e)+" is not an object");return e},V=a,K=T,Y=W,$=E,X=Object.defineProperty;_.f=V?X:function(e,t,n){if(Y(e),t=$(t,!0),Y(n),K)try{return X(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var G=_,J=u,Q=a?function(e,t,n){return G.f(e,t,J(1,n))}:function(e,t,n){return e[t]=n,e},Z={exports:{}},ee=n,te=Q,ne=function(e,t){try{te(ee,e,t)}catch(n){ee[e]=t}return t},ie=ne,re="__core-js_shared__",ae=n[re]||ie(re,{}),oe=ae,se=Function.toString;"function"!=typeof oe.inspectSource&&(oe.inspectSource=function(e){return se.call(e)});var le=oe.inspectSource,ce=le,ue=n.WeakMap,de="function"==typeof ue&&/native code/.test(ce(ue)),he={exports:{}},fe=ae;(he.exports=function(e,t){return fe[e]||(fe[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var ve,ge,pe,me=0,ye=Math.random(),be=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++me+ye).toString(36)},we=he.exports,Se=be,Ee=we("keys"),ke=function(e){return Ee[e]||(Ee[e]=Se(e))},Ae={},Re=de,xe=w,Le=Q,Pe=L,Ce=ae,Ne=ke,Ie=Ae,Me="Object already initialized",Te=n.WeakMap;if(Re||Ce.state){var Oe=Ce.state||(Ce.state=new Te),De=Oe.get,je=Oe.has,Fe=Oe.set;ve=function(e,t){if(je.call(Oe,e))throw new TypeError(Me);return t.facade=e,Fe.call(Oe,e,t),t},ge=function(e){return De.call(Oe,e)||{}},pe=function(e){return je.call(Oe,e)}}else{var ze=Ne("state");Ie[ze]=!0,ve=function(e,t){if(Pe(e,ze))throw new TypeError(Me);return t.facade=e,Le(e,ze,t),t},ge=function(e){return Pe(e,ze)?e[ze]:{}},pe=function(e){return Pe(e,ze)}}var He={set:ve,get:ge,has:pe,enforce:function(e){return pe(e)?ge(e):ve(e,{})},getterFor:function(e){return function(t){var n;if(!xe(t)||(n=ge(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},Ue=n,Be=Q,_e=L,qe=ne,We=le,Ve=He.get,Ke=He.enforce,Ye=String(String).split("String");(Z.exports=function(e,t,n,i){var r,a=!!i&&!!i.unsafe,o=!!i&&!!i.enumerable,s=!!i&&!!i.noTargetGet;"function"==typeof n&&("string"!=typeof t||_e(n,"name")||Be(n,"name",t),(r=Ke(n)).source||(r.source=Ye.join("string"==typeof t?t:""))),e!==Ue?(a?!s&&e[t]&&(o=!0):delete e[t],o?e[t]=n:Be(e,t,n)):o?e[t]=n:qe(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Ve(this).source||We(this)}));var $e=n,Xe=$e,Ge=n,Je=function(e){return"function"==typeof e?e:void 0},Qe=function(e,t){return arguments.length<2?Je(Xe[e])||Je(Ge[e]):Xe[e]&&Xe[e][t]||Ge[e]&&Ge[e][t]},Ze={},et=Math.ceil,tt=Math.floor,nt=function(e){return isNaN(e=+e)?0:(e>0?tt:et)(e)},it=nt,rt=Math.min,at=function(e){return e>0?rt(it(e),9007199254740991):0},ot=nt,st=Math.max,lt=Math.min,ct=function(e,t){var n=ot(e);return n<0?st(n+t,0):lt(n,t)},ut=b,dt=at,ht=ct,ft=function(e){return function(t,n,i){var r,a=ut(t),o=dt(a.length),s=ht(i,o);if(e&&n!=n){for(;o>s;)if((r=a[s++])!=r)return!0}else for(;o>s;s++)if((e||s in a)&&a[s]===n)return e||s||0;return!e&&-1}},vt={includes:ft(!0),indexOf:ft(!1)},gt=L,pt=b,mt=vt.indexOf,yt=Ae,bt=function(e,t){var n,i=pt(e),r=0,a=[];for(n in i)!gt(yt,n)&>(i,n)&&a.push(n);for(;t.length>r;)gt(i,n=t[r++])&&(~mt(a,n)||a.push(n));return a},wt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],St=bt,Et=wt.concat("length","prototype");Ze.f=Object.getOwnPropertyNames||function(e){return St(e,Et)};var kt={};kt.f=Object.getOwnPropertySymbols;var At=Ze,Rt=kt,xt=W,Lt=Qe("Reflect","ownKeys")||function(e){var t=At.f(xt(e)),n=Rt.f;return n?t.concat(n(e)):t},Pt=L,Ct=Lt,Nt=i,It=_,Mt=function(e,t){for(var n=Ct(t),i=It.f,r=Nt.f,a=0;a<n.length;a++){var o=n[a];Pt(e,o)||i(e,o,r(t,o))}},Tt=r,Ot=/#|\.prototype\./,Dt=function(e,t){var n=Ft[jt(e)];return n==Ht||n!=zt&&("function"==typeof t?Tt(t):!!t)},jt=Dt.normalize=function(e){return String(e).replace(Ot,".").toLowerCase()},Ft=Dt.data={},zt=Dt.NATIVE="N",Ht=Dt.POLYFILL="P",Ut=Dt,Bt=n,_t=i.f,qt=Q,Wt=Z.exports,Vt=ne,Kt=Mt,Yt=Ut,$t=function(e,t){var n,i,r,a,o,s=e.target,l=e.global,c=e.stat;if(n=l?Bt:c?Bt[s]||Vt(s,{}):(Bt[s]||{}).prototype)for(i in t){if(a=t[i],r=e.noTargetGet?(o=_t(n,i))&&o.value:n[i],!Yt(l?i:s+(c?".":"#")+i,e.forced)&&void 0!==r){if(typeof a==typeof r)continue;Kt(a,r)}(e.sham||r&&r.sham)&&qt(a,"sham",!0),Wt(n,i,a,e)}},Xt=bt,Gt=wt,Jt=Object.keys||function(e){return Xt(e,Gt)},Qt=a,Zt=r,en=Jt,tn=kt,nn=o,rn=A,an=g,on=Object.assign,sn=Object.defineProperty,ln=!on||Zt((function(){if(Qt&&1!==on({b:1},on(sn({},"a",{enumerable:!0,get:function(){sn(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!=on({},e)[n]||en(on({},t)).join("")!=i}))?function(e,t){for(var n=rn(e),i=arguments.length,r=1,a=tn.f,o=nn.f;i>r;)for(var s,l=an(arguments[r++]),c=a?en(l).concat(a(l)):en(l),u=c.length,d=0;u>d;)s=c[d++],Qt&&!o.call(l,s)||(n[s]=l[s]);return n}:on;$t({target:"Object",stat:!0,forced:Object.assign!==ln},{assign:ln});var cn,un,dn=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},hn=dn,fn=function(e,t,n){if(hn(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,i){return e.call(t,n,i)};case 3:return function(n,i,r){return e.call(t,n,i,r)}}return function(){return e.apply(t,arguments)}},vn=h,gn=Array.isArray||function(e){return"Array"==vn(e)},pn=Qe("navigator","userAgent")||"",mn=pn,yn=n.process,bn=yn&&yn.versions,wn=bn&&bn.v8;wn?un=(cn=wn.split("."))[0]<4?1:cn[0]+cn[1]:mn&&(!(cn=mn.match(/Edge\/(\d+)/))||cn[1]>=74)&&(cn=mn.match(/Chrome\/(\d+)/))&&(un=cn[1]);var Sn=un&&+un,En=Sn,kn=r,An=!!Object.getOwnPropertySymbols&&!kn((function(){return!String(Symbol())||!Symbol.sham&&En&&En<41})),Rn=An&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,xn=n,Ln=he.exports,Pn=L,Cn=be,Nn=An,In=Rn,Mn=Ln("wks"),Tn=xn.Symbol,On=In?Tn:Tn&&Tn.withoutSetter||Cn,Dn=function(e){return Pn(Mn,e)&&(Nn||"string"==typeof Mn[e])||(Nn&&Pn(Tn,e)?Mn[e]=Tn[e]:Mn[e]=On("Symbol."+e)),Mn[e]},jn=w,Fn=gn,zn=Dn("species"),Hn=function(e,t){var n;return Fn(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!Fn(n.prototype)?jn(n)&&null===(n=n[zn])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},Un=fn,Bn=g,_n=A,qn=at,Wn=Hn,Vn=[].push,Kn=function(e){var t=1==e,n=2==e,i=3==e,r=4==e,a=6==e,o=7==e,s=5==e||a;return function(l,c,u,d){for(var h,f,v=_n(l),g=Bn(v),p=Un(c,u,3),m=qn(g.length),y=0,b=d||Wn,w=t?b(l,m):n||o?b(l,0):void 0;m>y;y++)if((s||y in g)&&(f=p(h=g[y],y,v),e))if(t)w[y]=f;else if(f)switch(e){case 3:return!0;case 5:return h;case 6:return y;case 2:Vn.call(w,h)}else switch(e){case 4:return!1;case 7:Vn.call(w,h)}return a?-1:i||r?r:w}},Yn={forEach:Kn(0),map:Kn(1),filter:Kn(2),some:Kn(3),every:Kn(4),find:Kn(5),findIndex:Kn(6),filterOut:Kn(7)},$n=r,Xn=Sn,Gn=Dn("species"),Jn=function(e){return Xn>=51||!$n((function(){var t=[];return(t.constructor={})[Gn]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},Qn=Yn.map;$t({target:"Array",proto:!0,forced:!Jn("map")},{map:function(e){return Qn(this,e,arguments.length>1?arguments[1]:void 0)}});var Zn=E,ei=_,ti=u,ni=function(e,t,n){var i=Zn(t);i in e?ei.f(e,i,ti(0,n)):e[i]=n},ii=$t,ri=r,ai=gn,oi=w,si=A,li=at,ci=ni,ui=Hn,di=Jn,hi=Sn,fi=Dn("isConcatSpreadable"),vi=9007199254740991,gi="Maximum allowed index exceeded",pi=hi>=51||!ri((function(){var e=[];return e[fi]=!1,e.concat()[0]!==e})),mi=di("concat"),yi=function(e){if(!oi(e))return!1;var t=e[fi];return void 0!==t?!!t:ai(e)};function bi(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function wi(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?bi(Object(n),!0).forEach((function(t){xi(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):bi(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Si(e){return(Si="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})(e)}function Ei(e,t,n,i,r,a,o){try{var s=e[a](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(i,r)}function ki(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ai(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function Ri(e,t,n){return t&&Ai(e.prototype,t),n&&Ai(e,n),e}function xi(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Li(e){return function(e){if(Array.isArray(e))return Pi(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Pi(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Pi(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Pi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}ii({target:"Array",proto:!0,forced:!pi||!mi},{concat:function(e){var t,n,i,r,a,o=si(this),s=ui(o,0),l=0;for(t=-1,i=arguments.length;t<i;t++)if(yi(a=-1===t?o:arguments[t])){if(l+(r=li(a.length))>vi)throw TypeError(gi);for(n=0;n<r;n++,l++)n in a&&ci(s,l,a[n])}else{if(l>=vi)throw TypeError(gi);ci(s,l++,a)}return s.length=l,s}});var Ci={};Ci[Dn("toStringTag")]="z";var Ni="[object z]"===String(Ci),Ii=Ni,Mi=h,Ti=Dn("toStringTag"),Oi="Arguments"==Mi(function(){return arguments}()),Di=Ii?Mi:function(e){var t,n,i;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),Ti))?n:Oi?Mi(t):"Object"==(i=Mi(t))&&"function"==typeof t.callee?"Arguments":i},ji=Di,Fi=Ni?{}.toString:function(){return"[object "+ji(this)+"]"},zi=Ni,Hi=Z.exports,Ui=Fi;zi||Hi(Object.prototype,"toString",Ui,{unsafe:!0});var Bi=n.Promise,_i=Z.exports,qi=w,Wi=W,Vi=function(e){if(!qi(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},Ki=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,i){return Wi(n),Vi(i),t?e.call(n,i):n.__proto__=i,n}}():void 0),Yi=_.f,$i=L,Xi=Dn("toStringTag"),Gi=function(e,t,n){e&&!$i(e=n?e:e.prototype,Xi)&&Yi(e,Xi,{configurable:!0,value:t})},Ji=Qe,Qi=_,Zi=a,er=Dn("species"),tr={},nr=tr,ir=Dn("iterator"),rr=Array.prototype,ar=function(e){return void 0!==e&&(nr.Array===e||rr[ir]===e)},or=Di,sr=tr,lr=Dn("iterator"),cr=function(e){if(null!=e)return e[lr]||e["@@iterator"]||sr[or(e)]},ur=W,dr=function(e){var t=e.return;if(void 0!==t)return ur(t.call(e)).value},hr=W,fr=ar,vr=at,gr=fn,pr=cr,mr=dr,yr=function(e,t){this.stopped=e,this.result=t},br=Dn("iterator"),wr=!1;try{var Sr=0,Er={next:function(){return{done:!!Sr++}},return:function(){wr=!0}};Er[br]=function(){return this},Array.from(Er,(function(){throw 2}))}catch(e){}var kr,Ar,Rr,xr=function(e,t){if(!t&&!wr)return!1;var n=!1;try{var i={};i[br]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(e){}return n},Lr=W,Pr=dn,Cr=Dn("species"),Nr=function(e,t){var n,i=Lr(e).constructor;return void 0===i||null==(n=Lr(i)[Cr])?t:Pr(n)},Ir=Qe("document","documentElement"),Mr=/(?:iphone|ipod|ipad).*applewebkit/i.test(pn),Tr="process"==h(n.process),Or=n,Dr=r,jr=fn,Fr=Ir,zr=I,Hr=Mr,Ur=Tr,Br=Or.location,_r=Or.setImmediate,qr=Or.clearImmediate,Wr=Or.process,Vr=Or.MessageChannel,Kr=Or.Dispatch,Yr=0,$r={},Xr="onreadystatechange",Gr=function(e){if($r.hasOwnProperty(e)){var t=$r[e];delete $r[e],t()}},Jr=function(e){return function(){Gr(e)}},Qr=function(e){Gr(e.data)},Zr=function(e){Or.postMessage(e+"",Br.protocol+"//"+Br.host)};_r&&qr||(_r=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return $r[++Yr]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},kr(Yr),Yr},qr=function(e){delete $r[e]},Ur?kr=function(e){Wr.nextTick(Jr(e))}:Kr&&Kr.now?kr=function(e){Kr.now(Jr(e))}:Vr&&!Hr?(Rr=(Ar=new Vr).port2,Ar.port1.onmessage=Qr,kr=jr(Rr.postMessage,Rr,1)):Or.addEventListener&&"function"==typeof postMessage&&!Or.importScripts&&Br&&"file:"!==Br.protocol&&!Dr(Zr)?(kr=Zr,Or.addEventListener("message",Qr,!1)):kr=Xr in zr("script")?function(e){Fr.appendChild(zr("script")).onreadystatechange=function(){Fr.removeChild(this),Gr(e)}}:function(e){setTimeout(Jr(e),0)});var ea,ta,na,ia,ra,aa,oa,sa,la={set:_r,clear:qr},ca=/web0s(?!.*chrome)/i.test(pn),ua=n,da=i.f,ha=la.set,fa=Mr,va=ca,ga=Tr,pa=ua.MutationObserver||ua.WebKitMutationObserver,ma=ua.document,ya=ua.process,ba=ua.Promise,wa=da(ua,"queueMicrotask"),Sa=wa&&wa.value;Sa||(ea=function(){var e,t;for(ga&&(e=ya.domain)&&e.exit();ta;){t=ta.fn,ta=ta.next;try{t()}catch(e){throw ta?ia():na=void 0,e}}na=void 0,e&&e.enter()},fa||ga||va||!pa||!ma?ba&&ba.resolve?((oa=ba.resolve(void 0)).constructor=ba,sa=oa.then,ia=function(){sa.call(oa,ea)}):ia=ga?function(){ya.nextTick(ea)}:function(){ha.call(ua,ea)}:(ra=!0,aa=ma.createTextNode(""),new pa(ea).observe(aa,{characterData:!0}),ia=function(){aa.data=ra=!ra}));var Ea=Sa||function(e){var t={fn:e,next:void 0};na&&(na.next=t),ta||(ta=t,ia()),na=t},ka={},Aa=dn,Ra=function(e){var t,n;this.promise=new e((function(e,i){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor");t=e,n=i})),this.resolve=Aa(t),this.reject=Aa(n)};ka.f=function(e){return new Ra(e)};var xa,La,Pa,Ca,Na=W,Ia=w,Ma=ka,Ta=n,Oa="object"==typeof window,Da=$t,ja=n,Fa=Qe,za=Bi,Ha=Z.exports,Ua=function(e,t,n){for(var i in t)_i(e,i,t[i],n);return e},Ba=Ki,_a=Gi,qa=function(e){var t=Ji(e),n=Qi.f;Zi&&t&&!t[er]&&n(t,er,{configurable:!0,get:function(){return this}})},Wa=w,Va=dn,Ka=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e},Ya=le,$a=function(e,t,n){var i,r,a,o,s,l,c,u=n&&n.that,d=!(!n||!n.AS_ENTRIES),h=!(!n||!n.IS_ITERATOR),f=!(!n||!n.INTERRUPTED),v=gr(t,u,1+d+f),g=function(e){return i&&mr(i),new yr(!0,e)},p=function(e){return d?(hr(e),f?v(e[0],e[1],g):v(e[0],e[1])):f?v(e,g):v(e)};if(h)i=e;else{if("function"!=typeof(r=pr(e)))throw TypeError("Target is not iterable");if(fr(r)){for(a=0,o=vr(e.length);o>a;a++)if((s=p(e[a]))&&s instanceof yr)return s;return new yr(!1)}i=r.call(e)}for(l=i.next;!(c=l.call(i)).done;){try{s=p(c.value)}catch(e){throw mr(i),e}if("object"==typeof s&&s&&s instanceof yr)return s}return new yr(!1)},Xa=xr,Ga=Nr,Ja=la.set,Qa=Ea,Za=function(e,t){if(Na(e),Ia(t)&&t.constructor===e)return t;var n=Ma.f(e);return(0,n.resolve)(t),n.promise},eo=function(e,t){var n=Ta.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))},to=ka,no=function(e){try{return{error:!1,value:e()}}catch(e){return{error:!0,value:e}}},io=He,ro=Ut,ao=Oa,oo=Tr,so=Sn,lo=Dn("species"),co="Promise",uo=io.get,ho=io.set,fo=io.getterFor(co),vo=za&&za.prototype,go=za,po=vo,mo=ja.TypeError,yo=ja.document,bo=ja.process,wo=to.f,So=wo,Eo=!!(yo&&yo.createEvent&&ja.dispatchEvent),ko="function"==typeof PromiseRejectionEvent,Ao="unhandledrejection",Ro=!1,xo=ro(co,(function(){var e=Ya(go)!==String(go);if(!e&&66===so)return!0;if(so>=51&&/native code/.test(go))return!1;var t=new go((function(e){e(1)})),n=function(e){e((function(){}),(function(){}))};return(t.constructor={})[lo]=n,!(Ro=t.then((function(){}))instanceof n)||!e&&ao&&!ko})),Lo=xo||!Xa((function(e){go.all(e).catch((function(){}))})),Po=function(e){var t;return!(!Wa(e)||"function"!=typeof(t=e.then))&&t},Co=function(e,t){if(!e.notified){e.notified=!0;var n=e.reactions;Qa((function(){for(var i=e.value,r=1==e.state,a=0;n.length>a;){var o,s,l,c=n[a++],u=r?c.ok:c.fail,d=c.resolve,h=c.reject,f=c.domain;try{u?(r||(2===e.rejection&&To(e),e.rejection=1),!0===u?o=i:(f&&f.enter(),o=u(i),f&&(f.exit(),l=!0)),o===c.promise?h(mo("Promise-chain cycle")):(s=Po(o))?s.call(o,d,h):d(o)):h(i)}catch(e){f&&!l&&f.exit(),h(e)}}e.reactions=[],e.notified=!1,t&&!e.rejection&&Io(e)}))}},No=function(e,t,n){var i,r;Eo?((i=yo.createEvent("Event")).promise=t,i.reason=n,i.initEvent(e,!1,!0),ja.dispatchEvent(i)):i={promise:t,reason:n},!ko&&(r=ja["on"+e])?r(i):e===Ao&&eo("Unhandled promise rejection",n)},Io=function(e){Ja.call(ja,(function(){var t,n=e.facade,i=e.value;if(Mo(e)&&(t=no((function(){oo?bo.emit("unhandledRejection",i,n):No(Ao,n,i)})),e.rejection=oo||Mo(e)?2:1,t.error))throw t.value}))},Mo=function(e){return 1!==e.rejection&&!e.parent},To=function(e){Ja.call(ja,(function(){var t=e.facade;oo?bo.emit("rejectionHandled",t):No("rejectionhandled",t,e.value)}))},Oo=function(e,t,n){return function(i){e(t,i,n)}},Do=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,Co(e,!0))},jo=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw mo("Promise can't be resolved itself");var i=Po(t);i?Qa((function(){var n={done:!1};try{i.call(t,Oo(jo,n,e),Oo(Do,n,e))}catch(t){Do(n,t,e)}})):(e.value=t,e.state=1,Co(e,!1))}catch(t){Do({done:!1},t,e)}}};if(xo&&(po=(go=function(e){Ka(this,go,co),Va(e),xa.call(this);var t=uo(this);try{e(Oo(jo,t),Oo(Do,t))}catch(e){Do(t,e)}}).prototype,(xa=function(e){ho(this,{type:co,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Ua(po,{then:function(e,t){var n=fo(this),i=wo(Ga(this,go));return i.ok="function"!=typeof e||e,i.fail="function"==typeof t&&t,i.domain=oo?bo.domain:void 0,n.parent=!0,n.reactions.push(i),0!=n.state&&Co(n,!1),i.promise},catch:function(e){return this.then(void 0,e)}}),La=function(){var e=new xa,t=uo(e);this.promise=e,this.resolve=Oo(jo,t),this.reject=Oo(Do,t)},to.f=wo=function(e){return e===go||e===Pa?new La(e):So(e)},"function"==typeof za&&vo!==Object.prototype)){Ca=vo.then,Ro||(Ha(vo,"then",(function(e,t){var n=this;return new go((function(e,t){Ca.call(n,e,t)})).then(e,t)}),{unsafe:!0}),Ha(vo,"catch",po.catch,{unsafe:!0}));try{delete vo.constructor}catch(e){}Ba&&Ba(vo,po)}Da({global:!0,wrap:!0,forced:xo},{Promise:go}),_a(go,co,!1),qa(co),Pa=Fa(co),Da({target:co,stat:!0,forced:xo},{reject:function(e){var t=wo(this);return t.reject.call(void 0,e),t.promise}}),Da({target:co,stat:!0,forced:xo},{resolve:function(e){return Za(this,e)}}),Da({target:co,stat:!0,forced:Lo},{all:function(e){var t=this,n=wo(t),i=n.resolve,r=n.reject,a=no((function(){var n=Va(t.resolve),a=[],o=0,s=1;$a(e,(function(e){var l=o++,c=!1;a.push(void 0),s++,n.call(t,e).then((function(e){c||(c=!0,a[l]=e,--s||i(a))}),r)})),--s||i(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=wo(t),i=n.reject,r=no((function(){var r=Va(t.resolve);$a(e,(function(e){r.call(t,e).then(n.resolve,i)}))}));return r.error&&i(r.value),n.promise}});var Fo=r,zo=function(e,t){var n=[][e];return!!n&&Fo((function(){n.call(null,t||function(){throw 1},1)}))},Ho=Yn.forEach,Uo=n,Bo={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},_o=zo("forEach")?[].forEach:function(e){return Ho(this,e,arguments.length>1?arguments[1]:void 0)},qo=Q;for(var Wo in Bo){var Vo=Uo[Wo],Ko=Vo&&Vo.prototype;if(Ko&&Ko.forEach!==_o)try{qo(Ko,"forEach",_o)}catch(e){Ko.forEach=_o}}var Yo=W,$o=dr,Xo=fn,Go=A,Jo=function(e,t,n,i){try{return i?t(Yo(n)[0],n[1]):t(n)}catch(t){throw $o(e),t}},Qo=ar,Zo=at,es=ni,ts=cr,ns=function(e){var t,n,i,r,a,o,s=Go(e),l="function"==typeof this?this:Array,c=arguments.length,u=c>1?arguments[1]:void 0,d=void 0!==u,h=ts(s),f=0;if(d&&(u=Xo(u,c>2?arguments[2]:void 0,2)),null==h||l==Array&&Qo(h))for(n=new l(t=Zo(s.length));t>f;f++)o=d?u(s[f],f):s[f],es(n,f,o);else for(a=(r=h.call(s)).next,n=new l;!(i=a.call(r)).done;f++)o=d?Jo(r,u,[i.value,f],!0):i.value,es(n,f,o);return n.length=f,n};$t({target:"Array",stat:!0,forced:!xr((function(e){Array.from(e)}))},{from:ns});var is,rs,as,os=nt,ss=p,ls=function(e){return function(t,n){var i,r,a=String(ss(t)),o=os(n),s=a.length;return o<0||o>=s?e?"":void 0:(i=a.charCodeAt(o))<55296||i>56319||o+1===s||(r=a.charCodeAt(o+1))<56320||r>57343?e?a.charAt(o):i:e?a.slice(o,o+2):r-56320+(i-55296<<10)+65536}},cs={codeAt:ls(!1),charAt:ls(!0)},us=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),ds=L,hs=A,fs=us,vs=ke("IE_PROTO"),gs=Object.prototype,ps=fs?Object.getPrototypeOf:function(e){return e=hs(e),ds(e,vs)?e[vs]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?gs:null},ms=r,ys=ps,bs=Q,ws=L,Ss=Dn("iterator"),Es=!1;[].keys&&("next"in(as=[].keys())?(rs=ys(ys(as)))!==Object.prototype&&(is=rs):Es=!0),(null==is||ms((function(){var e={};return is[Ss].call(e)!==e})))&&(is={}),ws(is,Ss)||bs(is,Ss,(function(){return this}));var ks,As={IteratorPrototype:is,BUGGY_SAFARI_ITERATORS:Es},Rs=_,xs=W,Ls=Jt,Ps=a?Object.defineProperties:function(e,t){xs(e);for(var n,i=Ls(t),r=i.length,a=0;r>a;)Rs.f(e,n=i[a++],t[n]);return e},Cs=W,Ns=Ps,Is=wt,Ms=Ae,Ts=Ir,Os=I,Ds=ke("IE_PROTO"),js=function(){},Fs=function(e){return"<script>"+e+"</"+"script>"},zs=function(){try{ks=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;zs=ks?function(e){e.write(Fs("")),e.close();var t=e.parentWindow.Object;return e=null,t}(ks):((t=Os("iframe")).style.display="none",Ts.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(Fs("document.F=Object")),e.close(),e.F);for(var n=Is.length;n--;)delete zs.prototype[Is[n]];return zs()};Ms[Ds]=!0;var Hs=Object.create||function(e,t){var n;return null!==e?(js.prototype=Cs(e),n=new js,js.prototype=null,n[Ds]=e):n=zs(),void 0===t?n:Ns(n,t)},Us=As.IteratorPrototype,Bs=Hs,_s=u,qs=Gi,Ws=tr,Vs=function(){return this},Ks=$t,Ys=function(e,t,n){var i=t+" Iterator";return e.prototype=Bs(Us,{next:_s(1,n)}),qs(e,i,!1),Ws[i]=Vs,e},$s=ps,Xs=Ki,Gs=Gi,Js=Q,Qs=Z.exports,Zs=tr,el=As.IteratorPrototype,tl=As.BUGGY_SAFARI_ITERATORS,nl=Dn("iterator"),il="keys",rl="values",al="entries",ol=function(){return this},sl=cs.charAt,ll=He,cl=function(e,t,n,i,r,a,o){Ys(n,t,i);var s,l,c,u=function(e){if(e===r&&g)return g;if(!tl&&e in f)return f[e];switch(e){case il:case rl:case al:return function(){return new n(this,e)}}return function(){return new n(this)}},d=t+" Iterator",h=!1,f=e.prototype,v=f[nl]||f["@@iterator"]||r&&f[r],g=!tl&&v||u(r),p="Array"==t&&f.entries||v;if(p&&(s=$s(p.call(new e)),el!==Object.prototype&&s.next&&($s(s)!==el&&(Xs?Xs(s,el):"function"!=typeof s[nl]&&Js(s,nl,ol)),Gs(s,d,!0))),r==rl&&v&&v.name!==rl&&(h=!0,g=function(){return v.call(this)}),f[nl]!==g&&Js(f,nl,g),Zs[t]=g,r)if(l={values:u(rl),keys:a?g:u(il),entries:u(al)},o)for(c in l)(tl||h||!(c in f))&&Qs(f,c,l[c]);else Ks({target:t,proto:!0,forced:tl||h},l);return l},ul="String Iterator",dl=ll.set,hl=ll.getterFor(ul);cl(String,"String",(function(e){dl(this,{type:ul,string:String(e),index:0})}),(function(){var e,t=hl(this),n=t.string,i=t.index;return i>=n.length?{value:void 0,done:!0}:(e=sl(n,i),t.index+=e.length,{value:e,done:!1})}));var fl="\t\n\v\f\r \u2028\u2029\ufeff",vl=p,gl="[\t\n\v\f\r \u2028\u2029\ufeff]",pl=RegExp("^"+gl+gl+"*"),ml=RegExp(gl+gl+"*$"),yl=function(e){return function(t){var n=String(vl(t));return 1&e&&(n=n.replace(pl,"")),2&e&&(n=n.replace(ml,"")),n}},bl={start:yl(1),end:yl(2),trim:yl(3)},wl=r,Sl=fl,El=bl.trim;$t({target:"String",proto:!0,forced:function(e){return wl((function(){return!!Sl[e]()||" "!=" "[e]()||Sl[e].name!==e}))}("trim")},{trim:function(){return El(this)}});var kl={},Al=b,Rl=Ze.f,xl={}.toString,Ll="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];kl.f=function(e){return Ll&&"[object Window]"==xl.call(e)?function(e){try{return Rl(e)}catch(e){return Ll.slice()}}(e):Rl(Al(e))};var Pl={},Cl=Dn;Pl.f=Cl;var Nl=$e,Il=L,Ml=Pl,Tl=_.f,Ol=$t,Dl=n,jl=Qe,Fl=a,zl=An,Hl=Rn,Ul=r,Bl=L,_l=gn,ql=w,Wl=W,Vl=A,Kl=b,Yl=E,$l=u,Xl=Hs,Gl=Jt,Jl=Ze,Ql=kl,Zl=kt,ec=i,tc=_,nc=o,ic=Q,rc=Z.exports,ac=he.exports,oc=Ae,sc=be,lc=Dn,cc=Pl,uc=function(e){var t=Nl.Symbol||(Nl.Symbol={});Il(t,e)||Tl(t,e,{value:Ml.f(e)})},dc=Gi,hc=He,fc=Yn.forEach,vc=ke("hidden"),gc="Symbol",pc=lc("toPrimitive"),mc=hc.set,yc=hc.getterFor(gc),bc=Object.prototype,wc=Dl.Symbol,Sc=jl("JSON","stringify"),Ec=ec.f,kc=tc.f,Ac=Ql.f,Rc=nc.f,xc=ac("symbols"),Lc=ac("op-symbols"),Pc=ac("string-to-symbol-registry"),Cc=ac("symbol-to-string-registry"),Nc=ac("wks"),Ic=Dl.QObject,Mc=!Ic||!Ic.prototype||!Ic.prototype.findChild,Tc=Fl&&Ul((function(){return 7!=Xl(kc({},"a",{get:function(){return kc(this,"a",{value:7}).a}})).a}))?function(e,t,n){var i=Ec(bc,t);i&&delete bc[t],kc(e,t,n),i&&e!==bc&&kc(bc,t,i)}:kc,Oc=function(e,t){var n=xc[e]=Xl(wc.prototype);return mc(n,{type:gc,tag:e,description:t}),Fl||(n.description=t),n},Dc=Hl?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof wc},jc=function(e,t,n){e===bc&&jc(Lc,t,n),Wl(e);var i=Yl(t,!0);return Wl(n),Bl(xc,i)?(n.enumerable?(Bl(e,vc)&&e[vc][i]&&(e[vc][i]=!1),n=Xl(n,{enumerable:$l(0,!1)})):(Bl(e,vc)||kc(e,vc,$l(1,{})),e[vc][i]=!0),Tc(e,i,n)):kc(e,i,n)},Fc=function(e,t){Wl(e);var n=Kl(t),i=Gl(n).concat(Bc(n));return fc(i,(function(t){Fl&&!zc.call(n,t)||jc(e,t,n[t])})),e},zc=function(e){var t=Yl(e,!0),n=Rc.call(this,t);return!(this===bc&&Bl(xc,t)&&!Bl(Lc,t))&&(!(n||!Bl(this,t)||!Bl(xc,t)||Bl(this,vc)&&this[vc][t])||n)},Hc=function(e,t){var n=Kl(e),i=Yl(t,!0);if(n!==bc||!Bl(xc,i)||Bl(Lc,i)){var r=Ec(n,i);return!r||!Bl(xc,i)||Bl(n,vc)&&n[vc][i]||(r.enumerable=!0),r}},Uc=function(e){var t=Ac(Kl(e)),n=[];return fc(t,(function(e){Bl(xc,e)||Bl(oc,e)||n.push(e)})),n},Bc=function(e){var t=e===bc,n=Ac(t?Lc:Kl(e)),i=[];return fc(n,(function(e){!Bl(xc,e)||t&&!Bl(bc,e)||i.push(xc[e])})),i};(zl||(rc((wc=function(){if(this instanceof wc)throw TypeError("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,t=sc(e),n=function(e){this===bc&&n.call(Lc,e),Bl(this,vc)&&Bl(this[vc],t)&&(this[vc][t]=!1),Tc(this,t,$l(1,e))};return Fl&&Mc&&Tc(bc,t,{configurable:!0,set:n}),Oc(t,e)}).prototype,"toString",(function(){return yc(this).tag})),rc(wc,"withoutSetter",(function(e){return Oc(sc(e),e)})),nc.f=zc,tc.f=jc,ec.f=Hc,Jl.f=Ql.f=Uc,Zl.f=Bc,cc.f=function(e){return Oc(lc(e),e)},Fl&&(kc(wc.prototype,"description",{configurable:!0,get:function(){return yc(this).description}}),rc(bc,"propertyIsEnumerable",zc,{unsafe:!0}))),Ol({global:!0,wrap:!0,forced:!zl,sham:!zl},{Symbol:wc}),fc(Gl(Nc),(function(e){uc(e)})),Ol({target:gc,stat:!0,forced:!zl},{for:function(e){var t=String(e);if(Bl(Pc,t))return Pc[t];var n=wc(t);return Pc[t]=n,Cc[n]=t,n},keyFor:function(e){if(!Dc(e))throw TypeError(e+" is not a symbol");if(Bl(Cc,e))return Cc[e]},useSetter:function(){Mc=!0},useSimple:function(){Mc=!1}}),Ol({target:"Object",stat:!0,forced:!zl,sham:!Fl},{create:function(e,t){return void 0===t?Xl(e):Fc(Xl(e),t)},defineProperty:jc,defineProperties:Fc,getOwnPropertyDescriptor:Hc}),Ol({target:"Object",stat:!0,forced:!zl},{getOwnPropertyNames:Uc,getOwnPropertySymbols:Bc}),Ol({target:"Object",stat:!0,forced:Ul((function(){Zl.f(1)}))},{getOwnPropertySymbols:function(e){return Zl.f(Vl(e))}}),Sc)&&Ol({target:"JSON",stat:!0,forced:!zl||Ul((function(){var e=wc();return"[null]"!=Sc([e])||"{}"!=Sc({a:e})||"{}"!=Sc(Object(e))}))},{stringify:function(e,t,n){for(var i,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(i=t,(ql(t)||void 0!==e)&&!Dc(e))return _l(t)||(t=function(e,t){if("function"==typeof i&&(t=i.call(this,e,t)),!Dc(t))return t}),r[1]=t,Sc.apply(null,r)}});wc.prototype[pc]||ic(wc.prototype,pc,wc.prototype.valueOf),dc(wc,gc),oc[vc]=!0;var _c=$t,qc=a,Wc=n,Vc=L,Kc=w,Yc=_.f,$c=Mt,Xc=Wc.Symbol;if(qc&&"function"==typeof Xc&&(!("description"in Xc.prototype)||void 0!==Xc().description)){var Gc={},Jc=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),t=this instanceof Jc?new Xc(e):void 0===e?Xc():Xc(e);return""===e&&(Gc[t]=!0),t};$c(Jc,Xc);var Qc=Jc.prototype=Xc.prototype;Qc.constructor=Jc;var Zc=Qc.toString,eu="Symbol(test)"==String(Xc("test")),tu=/^Symbol\((.*)\)[^)]+$/;Yc(Qc,"description",{configurable:!0,get:function(){var e=Kc(this)?this.valueOf():this,t=Zc.call(e);if(Vc(Gc,e))return"";var n=eu?t.slice(7,-1):t.replace(tu,"$1");return""===n?void 0:n}}),_c({global:!0,forced:!0},{Symbol:Jc})}var nu=W,iu={},ru=r;function au(e,t){return RegExp(e,t)}iu.UNSUPPORTED_Y=ru((function(){var e=au("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),iu.BROKEN_CARET=ru((function(){var e=au("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var ou,su,lu=function(){var e=nu(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},cu=iu,uu=he.exports,du=RegExp.prototype.exec,hu=uu("native-string-replace",String.prototype.replace),fu=du,vu=(ou=/a/,su=/b*/g,du.call(ou,"a"),du.call(su,"a"),0!==ou.lastIndex||0!==su.lastIndex),gu=cu.UNSUPPORTED_Y||cu.BROKEN_CARET,pu=void 0!==/()??/.exec("")[1];(vu||pu||gu)&&(fu=function(e){var t,n,i,r,a=this,o=gu&&a.sticky,s=lu.call(a),l=a.source,c=0,u=e;return o&&(-1===(s=s.replace("y","")).indexOf("g")&&(s+="g"),u=String(e).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==e[a.lastIndex-1])&&(l="(?: "+l+")",u=" "+u,c++),n=new RegExp("^(?:"+l+")",s)),pu&&(n=new RegExp("^"+l+"$(?!\\s)",s)),vu&&(t=a.lastIndex),i=du.call(o?n:a,u),o?i?(i.input=i.input.slice(c),i[0]=i[0].slice(c),i.index=a.lastIndex,a.lastIndex+=i[0].length):a.lastIndex=0:vu&&i&&(a.lastIndex=a.global?i.index+i[0].length:t),pu&&i&&i.length>1&&hu.call(i[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(i[r]=void 0)})),i});var mu=fu;$t({target:"RegExp",proto:!0,forced:/./.exec!==mu},{exec:mu});var yu=Z.exports,bu=mu,wu=r,Su=Dn,Eu=Q,ku=Su("species"),Au=RegExp.prototype,Ru=!wu((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),xu="$0"==="a".replace(/./,"$0"),Lu=Su("replace"),Pu=!!/./[Lu]&&""===/./[Lu]("a","$0"),Cu=!wu((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Nu=function(e,t,n,i){var r=Su(e),a=!wu((function(){var t={};return t[r]=function(){return 7},7!=""[e](t)})),o=a&&!wu((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[ku]=function(){return n},n.flags="",n[r]=/./[r]),n.exec=function(){return t=!0,null},n[r](""),!t}));if(!a||!o||"replace"===e&&(!Ru||!xu||Pu)||"split"===e&&!Cu){var s=/./[r],l=n(r,""[e],(function(e,t,n,i,r){var o=t.exec;return o===bu||o===Au.exec?a&&!r?{done:!0,value:s.call(t,n,i)}:{done:!0,value:e.call(n,t,i)}:{done:!1}}),{REPLACE_KEEPS_$0:xu,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Pu}),c=l[0],u=l[1];yu(String.prototype,e,c),yu(Au,r,2==t?function(e,t){return u.call(e,this,t)}:function(e){return u.call(e,this)})}i&&Eu(Au[r],"sham",!0)},Iu=cs.charAt,Mu=function(e,t,n){return t+(n?Iu(e,t).length:1)},Tu=h,Ou=mu,Du=function(e,t){var n=e.exec;if("function"==typeof n){var i=n.call(e,t);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==Tu(e))throw TypeError("RegExp#exec called on incompatible receiver");return Ou.call(e,t)},ju=W,Fu=at,zu=p,Hu=Mu,Uu=Du;Nu("match",1,(function(e,t,n){return[function(t){var n=zu(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,n):new RegExp(t)[e](String(n))},function(e){var i=n(t,e,this);if(i.done)return i.value;var r=ju(e),a=String(this);if(!r.global)return Uu(r,a);var o=r.unicode;r.lastIndex=0;for(var s,l=[],c=0;null!==(s=Uu(r,a));){var u=String(s[0]);l[c]=u,""===u&&(r.lastIndex=Hu(a,Fu(r.lastIndex),o)),c++}return 0===c?null:l}]}));var Bu=$t,_u=ct,qu=nt,Wu=at,Vu=A,Ku=Hn,Yu=ni,$u=Jn("splice"),Xu=Math.max,Gu=Math.min,Ju=9007199254740991,Qu="Maximum allowed length exceeded";Bu({target:"Array",proto:!0,forced:!$u},{splice:function(e,t){var n,i,r,a,o,s,l=Vu(this),c=Wu(l.length),u=_u(e,c),d=arguments.length;if(0===d?n=i=0:1===d?(n=0,i=c-u):(n=d-2,i=Gu(Xu(qu(t),0),c-u)),c+n-i>Ju)throw TypeError(Qu);for(r=Ku(l,i),a=0;a<i;a++)(o=u+a)in l&&Yu(r,a,l[o]);if(r.length=i,n<i){for(a=u;a<c-i;a++)s=a+n,(o=a+i)in l?l[s]=l[o]:delete l[s];for(a=c;a>c-i+n;a--)delete l[a-1]}else if(n>i)for(a=c-i;a>u;a--)s=a+n-1,(o=a+i-1)in l?l[s]=l[o]:delete l[s];for(a=0;a<n;a++)l[a+u]=arguments[a+2];return l.length=c-i+n,r}});var Zu=w,ed=h,td=Dn("match"),nd=Nu,id=function(e){var t;return Zu(e)&&(void 0!==(t=e[td])?!!t:"RegExp"==ed(e))},rd=W,ad=p,od=Nr,sd=Mu,ld=at,cd=Du,ud=mu,dd=iu.UNSUPPORTED_Y,hd=[].push,fd=Math.min,vd=4294967295;nd("split",2,(function(e,t,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var i=String(ad(this)),r=void 0===n?vd:n>>>0;if(0===r)return[];if(void 0===e)return[i];if(!id(e))return t.call(i,e,r);for(var a,o,s,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),u=0,d=new RegExp(e.source,c+"g");(a=ud.call(d,i))&&!((o=d.lastIndex)>u&&(l.push(i.slice(u,a.index)),a.length>1&&a.index<i.length&&hd.apply(l,a.slice(1)),s=a[0].length,u=o,l.length>=r));)d.lastIndex===a.index&&d.lastIndex++;return u===i.length?!s&&d.test("")||l.push(""):l.push(i.slice(u)),l.length>r?l.slice(0,r):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=ad(this),a=null==t?void 0:t[e];return void 0!==a?a.call(t,r,n):i.call(String(r),t,n)},function(e,r){var a=n(i,e,this,r,i!==t);if(a.done)return a.value;var o=rd(e),s=String(this),l=od(o,RegExp),c=o.unicode,u=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(dd?"g":"y"),d=new l(dd?"^(?:"+o.source+")":o,u),h=void 0===r?vd:r>>>0;if(0===h)return[];if(0===s.length)return null===cd(d,s)?[s]:[];for(var f=0,v=0,g=[];v<s.length;){d.lastIndex=dd?0:v;var p,m=cd(d,dd?s.slice(v):s);if(null===m||(p=fd(ld(d.lastIndex+(dd?v:0)),s.length))===f)v=sd(s,v,c);else{if(g.push(s.slice(f,v)),g.length===h)return g;for(var y=1;y<=m.length-1;y++)if(g.push(m[y]),g.length===h)return g;v=f=p}}return g.push(s.slice(f)),g}]}),dd);var gd=w,pd=Ki,md=a,yd=n,bd=Ut,wd=Z.exports,Sd=L,Ed=h,kd=function(e,t,n){var i,r;return pd&&"function"==typeof(i=t.constructor)&&i!==n&&gd(r=i.prototype)&&r!==n.prototype&&pd(e,r),e},Ad=E,Rd=r,xd=Hs,Ld=Ze.f,Pd=i.f,Cd=_.f,Nd=bl.trim,Id="Number",Md=yd.Number,Td=Md.prototype,Od=Ed(xd(Td))==Id,Dd=function(e){var t,n,i,r,a,o,s,l,c=Ad(e,!1);if("string"==typeof c&&c.length>2)if(43===(t=(c=Nd(c)).charCodeAt(0))||45===t){if(88===(n=c.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(c.charCodeAt(1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+c}for(o=(a=c.slice(2)).length,s=0;s<o;s++)if((l=a.charCodeAt(s))<48||l>r)return NaN;return parseInt(a,i)}return+c};if(bd(Id,!Md(" 0o1")||!Md("0b1")||Md("+0x1"))){for(var jd,Fd=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof Fd&&(Od?Rd((function(){Td.valueOf.call(n)})):Ed(n)!=Id)?kd(new Md(Dd(t)),n,Fd):Dd(t)},zd=md?Ld(Md):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","),Hd=0;zd.length>Hd;Hd++)Sd(Md,jd=zd[Hd])&&!Sd(Fd,jd)&&Cd(Fd,jd,Pd(Md,jd));Fd.prototype=Td,Td.constructor=Fd,wd(yd,Id,Fd)}var Ud=a,Bd=_.f,_d=Function.prototype,qd=_d.toString,Wd=/^\s*function ([^ (]*)/,Vd="name";Ud&&!(Vd in _d)&&Bd(_d,Vd,{configurable:!0,get:function(){try{return qd.call(this).match(Wd)[1]}catch(e){return""}}});var Kd=$t,Yd=b,$d=[].join,Xd=g!=Object,Gd=zo("join",",");Kd({target:"Array",proto:!0,forced:Xd||!Gd},{join:function(e){return $d.call(Yd(this),void 0===e?",":e)}});var Jd=".slides section",Qd=".slides>section",Zd=".slides>section.present>section",eh=/registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/,th=/fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/,nh=A,ih=Math.floor,rh="".replace,ah=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,oh=/\$([$&'`]|\d{1,2})/g,sh=Nu,lh=W,ch=at,uh=nt,dh=p,hh=Mu,fh=function(e,t,n,i,r,a){var o=n+e.length,s=i.length,l=oh;return void 0!==r&&(r=nh(r),l=ah),rh.call(a,l,(function(a,l){var c;switch(l.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(o);case"<":c=r[l.slice(1,-1)];break;default:var u=+l;if(0===u)return a;if(u>s){var d=ih(u/10);return 0===d?a:d<=s?void 0===i[d-1]?l.charAt(1):i[d-1]+l.charAt(1):a}c=i[u-1]}return void 0===c?"":c}))},vh=Du,gh=Math.max,ph=Math.min;sh("replace",2,(function(e,t,n,i){var r=i.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,a=i.REPLACE_KEEPS_$0,o=r?"$":"$0";return[function(n,i){var r=dh(this),a=null==n?void 0:n[e];return void 0!==a?a.call(n,r,i):t.call(String(r),n,i)},function(e,i){if(!r&&a||"string"==typeof i&&-1===i.indexOf(o)){var s=n(t,e,this,i);if(s.done)return s.value}var l=lh(e),c=String(this),u="function"==typeof i;u||(i=String(i));var d=l.global;if(d){var h=l.unicode;l.lastIndex=0}for(var f=[];;){var v=vh(l,c);if(null===v)break;if(f.push(v),!d)break;""===String(v[0])&&(l.lastIndex=hh(c,ch(l.lastIndex),h))}for(var g,p="",m=0,y=0;y<f.length;y++){v=f[y];for(var b=String(v[0]),w=gh(ph(uh(v.index),c.length),0),S=[],E=1;E<v.length;E++)S.push(void 0===(g=v[E])?g:String(g));var k=v.groups;if(u){var A=[b].concat(S,w,c);void 0!==k&&A.push(k);var R=String(i.apply(void 0,A))}else R=fh(b,c,w,S,k,i);w>=m&&(p+=c.slice(m,w)+R,m=w+b.length)}return p+c.slice(m)}]}));var mh=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t},yh=W,bh=p,wh=mh,Sh=Du;Nu("search",1,(function(e,t,n){return[function(t){var n=bh(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,n):new RegExp(t)[e](String(n))},function(e){var i=n(t,e,this);if(i.done)return i.value;var r=yh(e),a=String(this),o=r.lastIndex;wh(o,0)||(r.lastIndex=0);var s=Sh(r,a);return wh(r.lastIndex,o)||(r.lastIndex=o),null===s?-1:s.index}]}));var Eh=function(e,t){for(var n in t)e[n]=t[n];return e},kh=function(e,t){return Array.from(e.querySelectorAll(t))},Ah=function(e,t,n){n?e.classList.add(t):e.classList.remove(t)},Rh=function(e){if("string"==typeof e){if("null"===e)return null;if("true"===e)return!0;if("false"===e)return!1;if(e.match(/^-?[\d\.]+$/))return parseFloat(e)}return e},xh=function(e,t){e.style.transform=t},Lh=function(e,t){var n=e.matches||e.matchesSelector||e.msMatchesSelector;return!(!n||!n.call(e,t))},Ph=function(e,t){if("function"==typeof e.closest)return e.closest(t);for(;e;){if(Lh(e,t))return e;e=e.parentNode}return null},Ch=function(e,t,n){for(var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",r=e.querySelectorAll("."+n),a=0;a<r.length;a++){var o=r[a];if(o.parentNode===e)return o}var s=document.createElement(t);return s.className=n,s.innerHTML=i,e.appendChild(s),s},Nh=function(e){var t=document.createElement("style");return t.type="text/css",e&&e.length>0&&(t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))),document.head.appendChild(t),t},Ih=function(){var e={};for(var t in location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi,(function(t){e[t.split("=").shift()]=t.split("=").pop()})),e){var n=e[t];e[t]=Rh(unescape(n))}return void 0!==e.dependencies&&delete e.dependencies,e},Mh=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(e){var n,i=e.style.height;return e.style.height="0px",e.parentNode.style.height="auto",n=t-e.parentNode.offsetHeight,e.style.height=i+"px",e.parentNode.style.removeProperty("height"),n}return t},Th=navigator.userAgent,Oh=document.createElement("div"),Dh=/(iphone|ipod|ipad|android)/gi.test(Th)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,jh=/chrome/i.test(Th)&&!/edge/i.test(Th),Fh=/android/gi.test(Th),zh="zoom"in Oh.style&&!Dh&&(jh||/Version\/[\d\.]+.*Safari/.test(Th)),Hh={};Object.defineProperty(Hh,"__esModule",{value:!0});var Uh=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Bh=Hh.default=function(e){if(e){var t=function(e){return[].slice.call(e)},n=0,i=1,r=2,a=3,o=[],s=null,l="requestAnimationFrame"in e?function(){e.cancelAnimationFrame(s),s=e.requestAnimationFrame((function(){return u(o.filter((function(e){return e.dirty&&e.active})))}))}:function(){},c=function(e){return function(){o.forEach((function(t){return t.dirty=e})),l()}},u=function(e){e.filter((function(e){return!e.styleComputed})).forEach((function(e){e.styleComputed=v(e)})),e.filter(g).forEach(p);var t=e.filter(f);t.forEach(h),t.forEach((function(e){p(e),d(e)})),t.forEach(m)},d=function(e){return e.dirty=n},h=function(e){e.availableWidth=e.element.parentNode.clientWidth,e.currentWidth=e.element.scrollWidth,e.previousFontSize=e.currentFontSize,e.currentFontSize=Math.min(Math.max(e.minSize,e.availableWidth/e.currentWidth*e.previousFontSize),e.maxSize),e.whiteSpace=e.multiLine&&e.currentFontSize===e.minSize?"normal":"nowrap"},f=function(e){return e.dirty!==r||e.dirty===r&&e.element.parentNode.clientWidth!==e.availableWidth},v=function(t){var n=e.getComputedStyle(t.element,null);t.currentFontSize=parseFloat(n.getPropertyValue("font-size")),t.display=n.getPropertyValue("display"),t.whiteSpace=n.getPropertyValue("white-space")},g=function(e){var t=!1;return!e.preStyleTestCompleted&&(/inline-/.test(e.display)||(t=!0,e.display="inline-block"),"nowrap"!==e.whiteSpace&&(t=!0,e.whiteSpace="nowrap"),e.preStyleTestCompleted=!0,t)},p=function(e){e.element.style.whiteSpace=e.whiteSpace,e.element.style.display=e.display,e.element.style.fontSize=e.currentFontSize+"px"},m=function(e){e.element.dispatchEvent(new CustomEvent("fit",{detail:{oldValue:e.previousFontSize,newValue:e.currentFontSize,scaleFactor:e.currentFontSize/e.previousFontSize}}))},y=function(e,t){return function(){e.dirty=t,e.active&&l()}},b=function(e){return function(){o=o.filter((function(t){return t.element!==e.element})),e.observeMutations&&e.observer.disconnect(),e.element.style.whiteSpace=e.originalStyle.whiteSpace,e.element.style.display=e.originalStyle.display,e.element.style.fontSize=e.originalStyle.fontSize}},w=function(e){return function(){e.active||(e.active=!0,l())}},S=function(e){return function(){return e.active=!1}},E=function(e){e.observeMutations&&(e.observer=new MutationObserver(y(e,i)),e.observer.observe(e.element,e.observeMutations))},k={minSize:16,maxSize:512,multiLine:!0,observeMutations:"MutationObserver"in e&&{subtree:!0,childList:!0,characterData:!0}},A=null,R=function(){e.clearTimeout(A),A=e.setTimeout(c(r),P.observeWindowDelay)},x=["resize","orientationchange"];return Object.defineProperty(P,"observeWindow",{set:function(t){var n=(t?"add":"remove")+"EventListener";x.forEach((function(t){e[n](t,R)}))}}),P.observeWindow=!0,P.observeWindowDelay=100,P.fitAll=c(a),P}function L(e,t){var n=Uh({},k,t),i=e.map((function(e){var t=Uh({},n,{element:e,active:!0});return function(e){e.originalStyle={whiteSpace:e.element.style.whiteSpace,display:e.element.style.display,fontSize:e.element.style.fontSize},E(e),e.newbie=!0,e.dirty=!0,o.push(e)}(t),{element:e,fit:y(t,a),unfreeze:w(t),freeze:S(t),unsubscribe:b(t)}}));return l(),i}function P(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e?L(t(document.querySelectorAll(e)),n):L([e],n)[0]}}("undefined"==typeof window?null:window),_h=function(){function e(t){ki(this,e),this.Reveal=t,this.startEmbeddedIframe=this.startEmbeddedIframe.bind(this)}return Ri(e,[{key:"shouldPreload",value:function(e){var t=this.Reveal.getConfig().preloadIframes;return"boolean"!=typeof t&&(t=e.hasAttribute("data-preload")),t}},{key:"load",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.style.display=this.Reveal.getConfig().display,kh(e,"img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((function(e){("IFRAME"!==e.tagName||t.shouldPreload(e))&&(e.setAttribute("src",e.getAttribute("data-src")),e.setAttribute("data-lazy-loaded",""),e.removeAttribute("data-src"))})),kh(e,"video, audio").forEach((function(e){var t=0;kh(e,"source[data-src]").forEach((function(e){e.setAttribute("src",e.getAttribute("data-src")),e.removeAttribute("data-src"),e.setAttribute("data-lazy-loaded",""),t+=1})),Dh&&"VIDEO"===e.tagName&&e.setAttribute("playsinline",""),t>0&&e.load()}));var i=e.slideBackgroundElement;if(i){i.style.display="block";var r=e.slideBackgroundContentElement,a=e.getAttribute("data-background-iframe");if(!1===i.hasAttribute("data-loaded")){i.setAttribute("data-loaded","true");var o=e.getAttribute("data-background-image"),s=e.getAttribute("data-background-video"),l=e.hasAttribute("data-background-video-loop"),c=e.hasAttribute("data-background-video-muted");if(o)/^data:/.test(o.trim())?r.style.backgroundImage="url(".concat(o.trim(),")"):r.style.backgroundImage=o.split(",").map((function(e){return"url(".concat(encodeURI(e.trim()),")")})).join(",");else if(s&&!this.Reveal.isSpeakerNotes()){var u=document.createElement("video");l&&u.setAttribute("loop",""),c&&(u.muted=!0),Dh&&(u.muted=!0,u.setAttribute("playsinline","")),s.split(",").forEach((function(e){u.innerHTML+='<source src="'+e+'">'})),r.appendChild(u)}else if(a&&!0!==n.excludeIframes){var d=document.createElement("iframe");d.setAttribute("allowfullscreen",""),d.setAttribute("mozallowfullscreen",""),d.setAttribute("webkitallowfullscreen",""),d.setAttribute("allow","autoplay"),d.setAttribute("data-src",a),d.style.width="100%",d.style.height="100%",d.style.maxHeight="100%",d.style.maxWidth="100%",r.appendChild(d)}}var h=r.querySelector("iframe[data-src]");h&&this.shouldPreload(i)&&!/autoplay=(1|true|yes)/gi.test(a)&&h.getAttribute("src")!==a&&h.setAttribute("src",a)}this.layout(e)}},{key:"layout",value:function(e){var t=this;Array.from(e.querySelectorAll(".r-fit-text")).forEach((function(e){Bh(e,{minSize:24,maxSize:.8*t.Reveal.getConfig().height,observeMutations:!1,observeWindow:!1})}))}},{key:"unload",value:function(e){e.style.display="none";var t=this.Reveal.getSlideBackground(e);t&&(t.style.display="none",kh(t,"iframe[src]").forEach((function(e){e.removeAttribute("src")}))),kh(e,"video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")})),kh(e,"video[data-lazy-loaded] source[src], audio source[src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")}))}},{key:"formatEmbeddedContent",value:function(){var e=this,t=function(t,n,i){kh(e.Reveal.getSlidesElement(),"iframe["+t+'*="'+n+'"]').forEach((function(e){var n=e.getAttribute(t);n&&-1===n.indexOf(i)&&e.setAttribute(t,n+(/\?/.test(n)?"&":"?")+i)}))};t("src","youtube.com/embed/","enablejsapi=1"),t("data-src","youtube.com/embed/","enablejsapi=1"),t("src","player.vimeo.com/","api=1"),t("data-src","player.vimeo.com/","api=1")}},{key:"startEmbeddedContent",value:function(e){var t=this;e&&!this.Reveal.isSpeakerNotes()&&(kh(e,'img[src$=".gif"]').forEach((function(e){e.setAttribute("src",e.getAttribute("src"))})),kh(e,"video, audio").forEach((function(e){if(!Ph(e,".fragment")||Ph(e,".fragment.visible")){var n=t.Reveal.getConfig().autoPlayMedia;if("boolean"!=typeof n&&(n=e.hasAttribute("data-autoplay")||!!Ph(e,".slide-background")),n&&"function"==typeof e.play)if(e.readyState>1)t.startEmbeddedMedia({target:e});else if(Dh){var i=e.play();i&&"function"==typeof i.catch&&!1===e.controls&&i.catch((function(){e.controls=!0,e.addEventListener("play",(function(){e.controls=!1}))}))}else e.removeEventListener("loadeddata",t.startEmbeddedMedia),e.addEventListener("loadeddata",t.startEmbeddedMedia)}})),kh(e,"iframe[src]").forEach((function(e){Ph(e,".fragment")&&!Ph(e,".fragment.visible")||t.startEmbeddedIframe({target:e})})),kh(e,"iframe[data-src]").forEach((function(e){Ph(e,".fragment")&&!Ph(e,".fragment.visible")||e.getAttribute("src")!==e.getAttribute("data-src")&&(e.removeEventListener("load",t.startEmbeddedIframe),e.addEventListener("load",t.startEmbeddedIframe),e.setAttribute("src",e.getAttribute("data-src")))})))}},{key:"startEmbeddedMedia",value:function(e){var t=!!Ph(e.target,"html"),n=!!Ph(e.target,".present");t&&n&&(e.target.currentTime=0,e.target.play()),e.target.removeEventListener("loadeddata",this.startEmbeddedMedia)}},{key:"startEmbeddedIframe",value:function(e){var t=e.target;if(t&&t.contentWindow){var n=!!Ph(e.target,"html"),i=!!Ph(e.target,".present");if(n&&i){var r=this.Reveal.getConfig().autoPlayMedia;"boolean"!=typeof r&&(r=t.hasAttribute("data-autoplay")||!!Ph(t,".slide-background")),/youtube\.com\/embed\//.test(t.getAttribute("src"))&&r?t.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"):/player\.vimeo\.com\//.test(t.getAttribute("src"))&&r?t.contentWindow.postMessage('{"method":"play"}',"*"):t.contentWindow.postMessage("slide:start","*")}}}},{key:"stopEmbeddedContent",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n=Eh({unloadIframes:!0},n),e&&e.parentNode&&(kh(e,"video, audio").forEach((function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.pause||(e.setAttribute("data-paused-by-reveal",""),e.pause())})),kh(e,"iframe").forEach((function(e){e.contentWindow&&e.contentWindow.postMessage("slide:stop","*"),e.removeEventListener("load",t.startEmbeddedIframe)})),kh(e,'iframe[src*="youtube.com/embed/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")})),kh(e,'iframe[src*="player.vimeo.com/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"method":"pause"}',"*")})),!0===n.unloadIframes&&kh(e,"iframe[data-src]").forEach((function(e){e.setAttribute("src","about:blank"),e.removeAttribute("src")})))}}]),e}(),qh=function(){function e(t){ki(this,e),this.Reveal=t}return Ri(e,[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="slide-number",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){var n="none";e.slideNumber&&!this.Reveal.isPrintingPDF()&&("all"===e.showSlideNumber||"speaker"===e.showSlideNumber&&this.Reveal.isSpeakerNotes())&&(n="block"),this.element.style.display=n}},{key:"update",value:function(){this.Reveal.getConfig().slideNumber&&this.element&&(this.element.innerHTML=this.getSlideNumber())}},{key:"getSlideNumber",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide(),n=this.Reveal.getConfig(),i="h.v";if("function"==typeof n.slideNumber)e=n.slideNumber(t);else{"string"==typeof n.slideNumber&&(i=n.slideNumber),/c/.test(i)||1!==this.Reveal.getHorizontalSlides().length||(i="c");var r=t&&"uncounted"===t.dataset.visibility?0:1;switch(e=[],i){case"c":e.push(this.Reveal.getSlidePastCount(t)+r);break;case"c/t":e.push(this.Reveal.getSlidePastCount(t)+r,"/",this.Reveal.getTotalSlides());break;default:var a=this.Reveal.getIndices(t);e.push(a.h+r);var o="h/v"===i?"/":".";this.Reveal.isVerticalSlide(t)&&e.push(o,a.v+1)}}var s="#"+this.Reveal.location.getHash(t);return this.formatNumber(e[0],e[1],e[2],s)}},{key:"formatNumber",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"#"+this.Reveal.location.getHash();return"number"!=typeof n||isNaN(n)?'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,"</span>\n\t\t\t\t\t</a>"):'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,'</span>\n\t\t\t\t\t<span class="slide-number-delimiter">').concat(t,'</span>\n\t\t\t\t\t<span class="slide-number-b">').concat(n,"</span>\n\t\t\t\t\t</a>")}}]),e}(),Wh=function(e){var t=e.match(/^#([0-9a-f]{3})$/i);if(t&&t[1])return t=t[1],{r:17*parseInt(t.charAt(0),16),g:17*parseInt(t.charAt(1),16),b:17*parseInt(t.charAt(2),16)};var n=e.match(/^#([0-9a-f]{6})$/i);if(n&&n[1])return n=n[1],{r:parseInt(n.substr(0,2),16),g:parseInt(n.substr(2,2),16),b:parseInt(n.substr(4,2),16)};var i=e.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(i)return{r:parseInt(i[1],10),g:parseInt(i[2],10),b:parseInt(i[3],10)};var r=e.match(/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i);return r?{r:parseInt(r[1],10),g:parseInt(r[2],10),b:parseInt(r[3],10),a:parseFloat(r[4])}:null},Vh=function(){function e(t){ki(this,e),this.Reveal=t}return Ri(e,[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="backgrounds",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"create",value:function(){var e=this;this.element.innerHTML="",this.element.classList.add("no-transition"),this.Reveal.getHorizontalSlides().forEach((function(t){var n=e.createBackground(t,e.element);kh(t,"section").forEach((function(t){e.createBackground(t,n),n.classList.add("stack")}))})),this.Reveal.getConfig().parallaxBackgroundImage?(this.element.style.backgroundImage='url("'+this.Reveal.getConfig().parallaxBackgroundImage+'")',this.element.style.backgroundSize=this.Reveal.getConfig().parallaxBackgroundSize,this.element.style.backgroundRepeat=this.Reveal.getConfig().parallaxBackgroundRepeat,this.element.style.backgroundPosition=this.Reveal.getConfig().parallaxBackgroundPosition,setTimeout((function(){e.Reveal.getRevealElement().classList.add("has-parallax-background")}),1)):(this.element.style.backgroundImage="",this.Reveal.getRevealElement().classList.remove("has-parallax-background"))}},{key:"createBackground",value:function(e,t){var n=document.createElement("div");n.className="slide-background "+e.className.replace(/present|past|future/,"");var i=document.createElement("div");return i.className="slide-background-content",n.appendChild(i),t.appendChild(n),e.slideBackgroundElement=n,e.slideBackgroundContentElement=i,this.sync(e),n}},{key:"sync",value:function(e){var t=e.slideBackgroundElement,n=e.slideBackgroundContentElement,i={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundVideo:e.getAttribute("data-background-video"),backgroundIframe:e.getAttribute("data-background-iframe"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition"),backgroundOpacity:e.getAttribute("data-background-opacity")},r=e.hasAttribute("data-preload");e.classList.remove("has-dark-background"),e.classList.remove("has-light-background"),t.removeAttribute("data-loaded"),t.removeAttribute("data-background-hash"),t.removeAttribute("data-background-size"),t.removeAttribute("data-background-transition"),t.style.backgroundColor="",n.style.backgroundSize="",n.style.backgroundRepeat="",n.style.backgroundPosition="",n.style.backgroundImage="",n.style.opacity="",n.innerHTML="",i.background&&(/^(http|file|\/\/)/gi.test(i.background)||/\.(svg|png|jpg|jpeg|gif|bmp)([?#\s]|$)/gi.test(i.background)?e.setAttribute("data-background-image",i.background):t.style.background=i.background),(i.background||i.backgroundColor||i.backgroundImage||i.backgroundVideo||i.backgroundIframe)&&t.setAttribute("data-background-hash",i.background+i.backgroundSize+i.backgroundImage+i.backgroundVideo+i.backgroundIframe+i.backgroundColor+i.backgroundRepeat+i.backgroundPosition+i.backgroundTransition+i.backgroundOpacity),i.backgroundSize&&t.setAttribute("data-background-size",i.backgroundSize),i.backgroundColor&&(t.style.backgroundColor=i.backgroundColor),i.backgroundTransition&&t.setAttribute("data-background-transition",i.backgroundTransition),r&&t.setAttribute("data-preload",""),i.backgroundSize&&(n.style.backgroundSize=i.backgroundSize),i.backgroundRepeat&&(n.style.backgroundRepeat=i.backgroundRepeat),i.backgroundPosition&&(n.style.backgroundPosition=i.backgroundPosition),i.backgroundOpacity&&(n.style.opacity=i.backgroundOpacity);var a,o=i.backgroundColor;if(!o||!Wh(o)){var s=window.getComputedStyle(t);s&&s.backgroundColor&&(o=s.backgroundColor)}if(o){var l=Wh(o);l&&0!==l.a&&("string"==typeof(a=o)&&(a=Wh(a)),(a?(299*a.r+587*a.g+114*a.b)/1e3:null)<128?e.classList.add("has-dark-background"):e.classList.add("has-light-background"))}}},{key:"update",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.Reveal.getCurrentSlide(),i=this.Reveal.getIndices(),r=null,a=this.Reveal.getConfig().rtl?"future":"past",o=this.Reveal.getConfig().rtl?"past":"future";if(Array.from(this.element.childNodes).forEach((function(e,n){e.classList.remove("past","present","future"),n<i.h?e.classList.add(a):n>i.h?e.classList.add(o):(e.classList.add("present"),r=e),(t||n===i.h)&&kh(e,".slide-background").forEach((function(e,t){e.classList.remove("past","present","future"),t<i.v?e.classList.add("past"):t>i.v?e.classList.add("future"):(e.classList.add("present"),n===i.h&&(r=e))}))})),this.previousBackground&&this.Reveal.slideContent.stopEmbeddedContent(this.previousBackground,{unloadIframes:!this.Reveal.slideContent.shouldPreload(this.previousBackground)}),r){this.Reveal.slideContent.startEmbeddedContent(r);var s=r.querySelector(".slide-background-content");if(s){var l=s.style.backgroundImage||"";/\.gif/i.test(l)&&(s.style.backgroundImage="",window.getComputedStyle(s).opacity,s.style.backgroundImage=l)}var c=this.previousBackground?this.previousBackground.getAttribute("data-background-hash"):null,u=r.getAttribute("data-background-hash");u&&u===c&&r!==this.previousBackground&&this.element.classList.add("no-transition"),this.previousBackground=r}n&&["has-light-background","has-dark-background"].forEach((function(t){n.classList.contains(t)?e.Reveal.getRevealElement().classList.add(t):e.Reveal.getRevealElement().classList.remove(t)}),this),setTimeout((function(){e.element.classList.remove("no-transition")}),1)}},{key:"updateParallax",value:function(){var e=this.Reveal.getIndices();if(this.Reveal.getConfig().parallaxBackgroundImage){var t,n,i=this.Reveal.getHorizontalSlides(),r=this.Reveal.getVerticalSlides(),a=this.element.style.backgroundSize.split(" ");1===a.length?t=n=parseInt(a[0],10):(t=parseInt(a[0],10),n=parseInt(a[1],10));var o,s=this.element.offsetWidth,l=i.length;o=("number"==typeof this.Reveal.getConfig().parallaxBackgroundHorizontal?this.Reveal.getConfig().parallaxBackgroundHorizontal:l>1?(t-s)/(l-1):0)*e.h*-1;var c,u,d=this.element.offsetHeight,h=r.length;c="number"==typeof this.Reveal.getConfig().parallaxBackgroundVertical?this.Reveal.getConfig().parallaxBackgroundVertical:(n-d)/(h-1),u=h>0?c*e.v:0,this.element.style.backgroundPosition=o+"px "+-u+"px"}}}]),e}(),Kh=A,Yh=Jt;$t({target:"Object",stat:!0,forced:r((function(){Yh(1)}))},{keys:function(e){return Yh(Kh(e))}});var $h=Yn.filter;$t({target:"Array",proto:!0,forced:!Jn("filter")},{filter:function(e){return $h(this,e,arguments.length>1?arguments[1]:void 0)}});var Xh=$t,Gh=w,Jh=gn,Qh=ct,Zh=at,ef=b,tf=ni,nf=Dn,rf=Jn("slice"),af=nf("species"),of=[].slice,sf=Math.max;Xh({target:"Array",proto:!0,forced:!rf},{slice:function(e,t){var n,i,r,a=ef(this),o=Zh(a.length),s=Qh(e,o),l=Qh(void 0===t?o:t,o);if(Jh(a)&&("function"!=typeof(n=a.constructor)||n!==Array&&!Jh(n.prototype)?Gh(n)&&null===(n=n[af])&&(n=void 0):n=void 0,n===Array||void 0===n))return of.call(a,s,l);for(i=new(void 0===n?Array:n)(sf(l-s,0)),r=0;s<l;s++,r++)s in a&&tf(i,r,a[s]);return i.length=r,i}});var lf=0,cf=function(){function e(t){ki(this,e),this.Reveal=t}return Ri(e,[{key:"run",value:function(e,t){var n=this;this.reset();var i=this.Reveal.getSlides(),r=i.indexOf(t),a=i.indexOf(e);if(e.hasAttribute("data-auto-animate")&&t.hasAttribute("data-auto-animate")&&e.getAttribute("data-auto-animate-id")===t.getAttribute("data-auto-animate-id")&&!(r>a?t:e).hasAttribute("data-auto-animate-restart")){this.autoAnimateStyleSheet=this.autoAnimateStyleSheet||Nh();var o=this.getAutoAnimateOptions(t);e.dataset.autoAnimate="pending",t.dataset.autoAnimate="pending",o.slideDirection=r>a?"forward":"backward";var s=this.getAutoAnimatableElements(e,t).map((function(e){return n.autoAnimateElements(e.from,e.to,e.options||{},o,lf++)}));if("false"!==t.dataset.autoAnimateUnmatched&&!0===this.Reveal.getConfig().autoAnimateUnmatched){var l=.8*o.duration,c=.2*o.duration;this.getUnmatchedAutoAnimateElements(t).forEach((function(e){var t=n.getAutoAnimateOptions(e,o),i="unmatched";t.duration===o.duration&&t.delay===o.delay||(i="unmatched-"+lf++,s.push('[data-auto-animate="running"] [data-auto-animate-target="'.concat(i,'"] { transition: opacity ').concat(t.duration,"s ease ").concat(t.delay,"s; }"))),e.dataset.autoAnimateTarget=i}),this),s.push('[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity '.concat(l,"s ease ").concat(c,"s; }"))}this.autoAnimateStyleSheet.innerHTML=s.join(""),requestAnimationFrame((function(){n.autoAnimateStyleSheet&&(getComputedStyle(n.autoAnimateStyleSheet).fontWeight,t.dataset.autoAnimate="running")})),this.Reveal.dispatchEvent({type:"autoanimate",data:{fromSlide:e,toSlide:t,sheet:this.autoAnimateStyleSheet}})}}},{key:"reset",value:function(){kh(this.Reveal.getRevealElement(),'[data-auto-animate]:not([data-auto-animate=""])').forEach((function(e){e.dataset.autoAnimate=""})),kh(this.Reveal.getRevealElement(),"[data-auto-animate-target]").forEach((function(e){delete e.dataset.autoAnimateTarget})),this.autoAnimateStyleSheet&&this.autoAnimateStyleSheet.parentNode&&(this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet),this.autoAnimateStyleSheet=null)}},{key:"autoAnimateElements",value:function(e,t,n,i,r){e.dataset.autoAnimateTarget="",t.dataset.autoAnimateTarget=r;var a=this.getAutoAnimateOptions(t,i);void 0!==n.delay&&(a.delay=n.delay),void 0!==n.duration&&(a.duration=n.duration),void 0!==n.easing&&(a.easing=n.easing);var o=this.getAutoAnimatableProperties("from",e,n),s=this.getAutoAnimatableProperties("to",t,n);t.classList.contains("fragment")&&(delete s.styles.opacity,e.classList.contains("fragment")&&(e.className.match(th)||[""])[0]===(t.className.match(th)||[""])[0]&&"forward"===i.slideDirection&&t.classList.add("visible","disabled"));if(!1!==n.translate||!1!==n.scale){var l=this.Reveal.getScale(),c={x:(o.x-s.x)/l,y:(o.y-s.y)/l,scaleX:o.width/s.width,scaleY:o.height/s.height};c.x=Math.round(1e3*c.x)/1e3,c.y=Math.round(1e3*c.y)/1e3,c.scaleX=Math.round(1e3*c.scaleX)/1e3,c.scaleX=Math.round(1e3*c.scaleX)/1e3;var u=!1!==n.translate&&(0!==c.x||0!==c.y),d=!1!==n.scale&&(0!==c.scaleX||0!==c.scaleY);if(u||d){var h=[];u&&h.push("translate(".concat(c.x,"px, ").concat(c.y,"px)")),d&&h.push("scale(".concat(c.scaleX,", ").concat(c.scaleY,")")),o.styles.transform=h.join(" "),o.styles["transform-origin"]="top left",s.styles.transform="none"}}for(var f in s.styles){var v=s.styles[f],g=o.styles[f];v===g?delete s.styles[f]:(!0===v.explicitValue&&(s.styles[f]=v.value),!0===g.explicitValue&&(o.styles[f]=g.value))}var p="",m=Object.keys(s.styles);m.length>0&&(o.styles.transition="none",s.styles.transition="all ".concat(a.duration,"s ").concat(a.easing," ").concat(a.delay,"s"),s.styles["transition-property"]=m.join(", "),s.styles["will-change"]=m.join(", "),p='[data-auto-animate-target="'+r+'"] {'+Object.keys(o.styles).map((function(e){return e+": "+o.styles[e]+" !important;"})).join("")+'}[data-auto-animate="running"] [data-auto-animate-target="'+r+'"] {'+Object.keys(s.styles).map((function(e){return e+": "+s.styles[e]+" !important;"})).join("")+"}");return p}},{key:"getAutoAnimateOptions",value:function(e,t){var n={easing:this.Reveal.getConfig().autoAnimateEasing,duration:this.Reveal.getConfig().autoAnimateDuration,delay:0};if(n=Eh(n,t),e.parentNode){var i=Ph(e.parentNode,"[data-auto-animate-target]");i&&(n=this.getAutoAnimateOptions(i,n))}return e.dataset.autoAnimateEasing&&(n.easing=e.dataset.autoAnimateEasing),e.dataset.autoAnimateDuration&&(n.duration=parseFloat(e.dataset.autoAnimateDuration)),e.dataset.autoAnimateDelay&&(n.delay=parseFloat(e.dataset.autoAnimateDelay)),n}},{key:"getAutoAnimatableProperties",value:function(e,t,n){var i=this.Reveal.getConfig(),r={styles:[]};if(!1!==n.translate||!1!==n.scale){var a;if("function"==typeof n.measure)a=n.measure(t);else if(i.center)a=t.getBoundingClientRect();else{var o=this.Reveal.getScale();a={x:t.offsetLeft*o,y:t.offsetTop*o,width:t.offsetWidth*o,height:t.offsetHeight*o}}r.x=a.x,r.y=a.y,r.width=a.width,r.height=a.height}var s=getComputedStyle(t);return(n.styles||i.autoAnimateStyles).forEach((function(t){var n;"string"==typeof t&&(t={property:t}),""!==(n=void 0!==t.from&&"from"===e?{value:t.from,explicitValue:!0}:void 0!==t.to&&"to"===e?{value:t.to,explicitValue:!0}:s[t.property])&&(r.styles[t.property]=n)})),r}},{key:"getAutoAnimatableElements",value:function(e,t){var n=("function"==typeof this.Reveal.getConfig().autoAnimateMatcher?this.Reveal.getConfig().autoAnimateMatcher:this.getAutoAnimatePairs).call(this,e,t),i=[];return n.filter((function(e,t){if(-1===i.indexOf(e.to))return i.push(e.to),!0}))}},{key:"getAutoAnimatePairs",value:function(e,t){var n=this,i=[],r="h1, h2, h3, h4, h5, h6, p, li";return this.findAutoAnimateMatches(i,e,t,"[data-id]",(function(e){return e.nodeName+":::"+e.getAttribute("data-id")})),this.findAutoAnimateMatches(i,e,t,r,(function(e){return e.nodeName+":::"+e.innerText})),this.findAutoAnimateMatches(i,e,t,"img, video, iframe",(function(e){return e.nodeName+":::"+(e.getAttribute("src")||e.getAttribute("data-src"))})),this.findAutoAnimateMatches(i,e,t,"pre",(function(e){return e.nodeName+":::"+e.innerText})),i.forEach((function(e){Lh(e.from,r)?e.options={scale:!1}:Lh(e.from,"pre")&&(e.options={scale:!1,styles:["width","height"]},n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-code",(function(e){return e.textContent}),{scale:!1,styles:[],measure:n.getLocalBoundingBox.bind(n)}),n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-line[data-line-number]",(function(e){return e.getAttribute("data-line-number")}),{scale:!1,styles:["width"],measure:n.getLocalBoundingBox.bind(n)}))}),this),i}},{key:"getLocalBoundingBox",value:function(e){var t=this.Reveal.getScale();return{x:Math.round(e.offsetLeft*t*100)/100,y:Math.round(e.offsetTop*t*100)/100,width:Math.round(e.offsetWidth*t*100)/100,height:Math.round(e.offsetHeight*t*100)/100}}},{key:"findAutoAnimateMatches",value:function(e,t,n,i,r,a){var o={},s={};[].slice.call(t.querySelectorAll(i)).forEach((function(e,t){var n=r(e);"string"==typeof n&&n.length&&(o[n]=o[n]||[],o[n].push(e))})),[].slice.call(n.querySelectorAll(i)).forEach((function(t,n){var i,l=r(t);if(s[l]=s[l]||[],s[l].push(t),o[l]){var c=s[l].length-1,u=o[l].length-1;o[l][c]?(i=o[l][c],o[l][c]=null):o[l][u]&&(i=o[l][u],o[l][u]=null)}i&&e.push({from:i,to:t,options:a})}))}},{key:"getUnmatchedAutoAnimateElements",value:function(e){var t=this;return[].slice.call(e.children).reduce((function(e,n){var i=n.querySelector("[data-auto-animate-target]");return n.hasAttribute("data-auto-animate-target")||i||e.push(n),n.querySelector("[data-auto-animate-target]")&&(e=e.concat(t.getUnmatchedAutoAnimateElements(n))),e}),[])}}]),e}(),uf=function(){function e(t){ki(this,e),this.Reveal=t}return Ri(e,[{key:"configure",value:function(e,t){!1===e.fragments?this.disable():!1===t.fragments&&this.enable()}},{key:"disable",value:function(){kh(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))}},{key:"enable",value:function(){kh(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.remove("visible"),e.classList.remove("current-fragment")}))}},{key:"availableRoutes",value:function(){var e=this.Reveal.getCurrentSlide();if(e&&this.Reveal.getConfig().fragments){var t=e.querySelectorAll(".fragment:not(.disabled)"),n=e.querySelectorAll(".fragment:not(.disabled):not(.visible)");return{prev:t.length-n.length>0,next:!!n.length}}return{prev:!1,next:!1}}},{key:"sort",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e=Array.from(e);var n=[],i=[],r=[];e.forEach((function(e){if(e.hasAttribute("data-fragment-index")){var t=parseInt(e.getAttribute("data-fragment-index"),10);n[t]||(n[t]=[]),n[t].push(e)}else i.push([e])})),n=n.concat(i);var a=0;return n.forEach((function(e){e.forEach((function(e){r.push(e),e.setAttribute("data-fragment-index",a)})),a++})),!0===t?n:r}},{key:"sortAll",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t){var n=kh(t,"section");n.forEach((function(t,n){e.sort(t.querySelectorAll(".fragment"))}),e),0===n.length&&e.sort(t.querySelectorAll(".fragment"))}))}},{key:"update",value:function(e,t){var n=this,i={shown:[],hidden:[]},r=this.Reveal.getCurrentSlide();if(r&&this.Reveal.getConfig().fragments&&(t=t||this.sort(r.querySelectorAll(".fragment"))).length){var a=0;if("number"!=typeof e){var o=this.sort(r.querySelectorAll(".fragment.visible")).pop();o&&(e=parseInt(o.getAttribute("data-fragment-index")||0,10))}Array.from(t).forEach((function(t,r){if(t.hasAttribute("data-fragment-index")&&(r=parseInt(t.getAttribute("data-fragment-index"),10)),a=Math.max(a,r),r<=e){var o=t.classList.contains("visible");t.classList.add("visible"),t.classList.remove("current-fragment"),r===e&&(n.Reveal.announceStatus(n.Reveal.getStatusText(t)),t.classList.add("current-fragment"),n.Reveal.slideContent.startEmbeddedContent(t)),o||(i.shown.push(t),n.Reveal.dispatchEvent({target:t,type:"visible",bubbles:!1}))}else{var s=t.classList.contains("visible");t.classList.remove("visible"),t.classList.remove("current-fragment"),s&&(n.Reveal.slideContent.stopEmbeddedContent(t),i.hidden.push(t),n.Reveal.dispatchEvent({target:t,type:"hidden",bubbles:!1}))}})),e="number"==typeof e?e:-1,e=Math.max(Math.min(e,a),-1),r.setAttribute("data-fragment",e)}return i}},{key:"sync",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();return this.sort(e.querySelectorAll(".fragment"))}},{key:"goto",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.Reveal.getCurrentSlide();if(n&&this.Reveal.getConfig().fragments){var i=this.sort(n.querySelectorAll(".fragment:not(.disabled)"));if(i.length){if("number"!=typeof e){var r=this.sort(n.querySelectorAll(".fragment:not(.disabled).visible")).pop();e=r?parseInt(r.getAttribute("data-fragment-index")||0,10):-1}e+=t;var a=this.update(e,i);return a.hidden.length&&this.Reveal.dispatchEvent({type:"fragmenthidden",data:{fragment:a.hidden[0],fragments:a.hidden}}),a.shown.length&&this.Reveal.dispatchEvent({type:"fragmentshown",data:{fragment:a.shown[0],fragments:a.shown}}),this.Reveal.controls.update(),this.Reveal.progress.update(),this.Reveal.getConfig().fragmentInURL&&this.Reveal.location.writeURL(),!(!a.shown.length&&!a.hidden.length)}}return!1}},{key:"next",value:function(){return this.goto(null,1)}},{key:"prev",value:function(){return this.goto(null,-1)}}]),e}(),df=function(){function e(t){ki(this,e),this.Reveal=t,this.active=!1,this.onSlideClicked=this.onSlideClicked.bind(this)}return Ri(e,[{key:"activate",value:function(){var e=this;if(this.Reveal.getConfig().overview&&!this.isActive()){this.active=!0,this.Reveal.getRevealElement().classList.add("overview"),this.Reveal.cancelAutoSlide(),this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()),kh(this.Reveal.getRevealElement(),Jd).forEach((function(t){t.classList.contains("stack")||t.addEventListener("click",e.onSlideClicked,!0)}));var t=this.Reveal.getComputedSlideSize();this.overviewSlideWidth=t.width+70,this.overviewSlideHeight=t.height+70,this.Reveal.getConfig().rtl&&(this.overviewSlideWidth=-this.overviewSlideWidth),this.Reveal.updateSlidesVisibility(),this.layout(),this.update(),this.Reveal.layout();var n=this.Reveal.getIndices();this.Reveal.dispatchEvent({type:"overviewshown",data:{indexh:n.h,indexv:n.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"layout",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t,n){t.setAttribute("data-index-h",n),xh(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),t.classList.contains("stack")&&kh(t,"section").forEach((function(t,i){t.setAttribute("data-index-h",n),t.setAttribute("data-index-v",i),xh(t,"translate3d(0, "+i*e.overviewSlideHeight+"px, 0)")}))})),Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach((function(t,n){xh(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),kh(t,".slide-background").forEach((function(t,n){xh(t,"translate3d(0, "+n*e.overviewSlideHeight+"px, 0)")}))}))}},{key:"update",value:function(){var e=Math.min(window.innerWidth,window.innerHeight),t=Math.max(e/5,150)/e,n=this.Reveal.getIndices();this.Reveal.transformSlides({overview:["scale("+t+")","translateX("+-n.h*this.overviewSlideWidth+"px)","translateY("+-n.v*this.overviewSlideHeight+"px)"].join(" ")})}},{key:"deactivate",value:function(){var e=this;if(this.Reveal.getConfig().overview){this.active=!1,this.Reveal.getRevealElement().classList.remove("overview"),this.Reveal.getRevealElement().classList.add("overview-deactivating"),setTimeout((function(){e.Reveal.getRevealElement().classList.remove("overview-deactivating")}),1),this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()),kh(this.Reveal.getRevealElement(),Jd).forEach((function(t){xh(t,""),t.removeEventListener("click",e.onSlideClicked,!0)})),kh(this.Reveal.getBackgroundsElement(),".slide-background").forEach((function(e){xh(e,"")})),this.Reveal.transformSlides({overview:""});var t=this.Reveal.getIndices();this.Reveal.slide(t.h,t.v),this.Reveal.layout(),this.Reveal.cueAutoSlide(),this.Reveal.dispatchEvent({type:"overviewhidden",data:{indexh:t.h,indexv:t.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"toggle",value:function(e){"boolean"==typeof e?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}},{key:"isActive",value:function(){return this.active}},{key:"onSlideClicked",value:function(e){if(this.isActive()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(this.deactivate(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),i=parseInt(t.getAttribute("data-index-v"),10);this.Reveal.slide(n,i)}}}}]),e}(),hf=function(){function e(t){ki(this,e),this.Reveal=t,this.shortcuts={},this.bindings={},this.onDocumentKeyDown=this.onDocumentKeyDown.bind(this),this.onDocumentKeyPress=this.onDocumentKeyPress.bind(this)}return Ri(e,[{key:"configure",value:function(e,t){"linear"===e.navigationMode?(this.shortcuts["→ , ↓ , SPACE , N , L , J"]="Next slide",this.shortcuts["← , ↑ , P , H , K"]="Previous slide"):(this.shortcuts["N , SPACE"]="Next slide",this.shortcuts["P , Shift SPACE"]="Previous slide",this.shortcuts["← , H"]="Navigate left",this.shortcuts["→ , L"]="Navigate right",this.shortcuts["↑ , K"]="Navigate up",this.shortcuts["↓ , J"]="Navigate down"),this.shortcuts["Alt + ←/↑/→/↓"]="Navigate without fragments",this.shortcuts["Shift + ←/↑/→/↓"]="Jump to first/last slide",this.shortcuts["B , ."]="Pause",this.shortcuts.F="Fullscreen",this.shortcuts["ESC, O"]="Slide overview"}},{key:"bind",value:function(){document.addEventListener("keydown",this.onDocumentKeyDown,!1),document.addEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"unbind",value:function(){document.removeEventListener("keydown",this.onDocumentKeyDown,!1),document.removeEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"addKeyBinding",value:function(e,t){"object"===Si(e)&&e.keyCode?this.bindings[e.keyCode]={callback:t,key:e.key,description:e.description}:this.bindings[e]={callback:t,key:null,description:null}}},{key:"removeKeyBinding",value:function(e){delete this.bindings[e]}},{key:"triggerKey",value:function(e){this.onDocumentKeyDown({keyCode:e})}},{key:"registerKeyboardShortcut",value:function(e,t){this.shortcuts[e]=t}},{key:"getShortcuts",value:function(){return this.shortcuts}},{key:"getBindings",value:function(){return this.bindings}},{key:"onDocumentKeyPress",value:function(e){e.shiftKey&&63===e.charCode&&this.Reveal.toggleHelp()}},{key:"onDocumentKeyDown",value:function(e){var t=this.Reveal.getConfig();if("function"==typeof t.keyboardCondition&&!1===t.keyboardCondition(e))return!0;if("focused"===t.keyboardCondition&&!this.Reveal.isFocused())return!0;var n=e.keyCode,i=!this.Reveal.isAutoSliding();this.Reveal.onUserInput(e);var r=document.activeElement&&!0===document.activeElement.isContentEditable,a=document.activeElement&&document.activeElement.tagName&&/input|textarea/i.test(document.activeElement.tagName),o=document.activeElement&&document.activeElement.className&&/speaker-notes/i.test(document.activeElement.className),s=!(-1!==[32,37,38,39,40,78,80].indexOf(e.keyCode)&&e.shiftKey||e.altKey)&&(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey);if(!(r||a||o||s)){var l,c=[66,86,190,191];if("object"===Si(t.keyboard))for(l in t.keyboard)"togglePause"===t.keyboard[l]&&c.push(parseInt(l,10));if(this.Reveal.isPaused()&&-1===c.indexOf(n))return!1;var u,d,h="linear"===t.navigationMode||!this.Reveal.hasHorizontalSlides()||!this.Reveal.hasVerticalSlides(),f=!1;if("object"===Si(t.keyboard))for(l in t.keyboard)if(parseInt(l,10)===n){var v=t.keyboard[l];"function"==typeof v?v.apply(null,[e]):"string"==typeof v&&"function"==typeof this.Reveal[v]&&this.Reveal[v].call(),f=!0}if(!1===f)for(l in this.bindings)if(parseInt(l,10)===n){var g=this.bindings[l].callback;"function"==typeof g?g.apply(null,[e]):"string"==typeof g&&"function"==typeof this.Reveal[g]&&this.Reveal[g].call(),f=!0}!1===f&&(f=!0,80===n||33===n?this.Reveal.prev({skipFragments:e.altKey}):78===n||34===n?this.Reveal.next({skipFragments:e.altKey}):72===n||37===n?e.shiftKey?this.Reveal.slide(0):!this.Reveal.overview.isActive()&&h?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.left({skipFragments:e.altKey}):76===n||39===n?e.shiftKey?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):!this.Reveal.overview.isActive()&&h?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.right({skipFragments:e.altKey}):75===n||38===n?e.shiftKey?this.Reveal.slide(void 0,0):!this.Reveal.overview.isActive()&&h?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.up({skipFragments:e.altKey}):74===n||40===n?e.shiftKey?this.Reveal.slide(void 0,Number.MAX_VALUE):!this.Reveal.overview.isActive()&&h?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.down({skipFragments:e.altKey}):36===n?this.Reveal.slide(0):35===n?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):32===n?(this.Reveal.overview.isActive()&&this.Reveal.overview.deactivate(),e.shiftKey?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.next({skipFragments:e.altKey})):58===n||59===n||66===n||86===n||190===n||191===n?this.Reveal.togglePause():70===n?(u=t.embedded?this.Reveal.getViewportElement():document.documentElement,(d=(u=u||document.documentElement).requestFullscreen||u.webkitRequestFullscreen||u.webkitRequestFullScreen||u.mozRequestFullScreen||u.msRequestFullscreen)&&d.apply(u)):65===n?t.autoSlideStoppable&&this.Reveal.toggleAutoSlide(i):f=!1),f?e.preventDefault&&e.preventDefault():27!==n&&79!==n||(!1===this.Reveal.closeOverlay()&&this.Reveal.overview.toggle(),e.preventDefault&&e.preventDefault()),this.Reveal.cueAutoSlide()}}}]),e}(),ff=function(){function e(t){ki(this,e),this.Reveal=t,this.writeURLTimeout=0,this.onWindowHashChange=this.onWindowHashChange.bind(this)}return Ri(e,[{key:"bind",value:function(){window.addEventListener("hashchange",this.onWindowHashChange,!1)}},{key:"unbind",value:function(){window.removeEventListener("hashchange",this.onWindowHashChange,!1)}},{key:"getIndicesFromHash",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.hash,i=n.replace(/^#\/?/,""),r=i.split("/");if(/^[0-9]*$/.test(r[0])||!i.length){var a,o=this.Reveal.getConfig(),s=o.hashOneBasedIndex?1:0,l=parseInt(r[0],10)-s||0,c=parseInt(r[1],10)-s||0;return o.fragmentInURL&&(a=parseInt(r[2],10),isNaN(a)&&(a=void 0)),{h:l,v:c,f:a}}/\/[-\d]+$/g.test(i)&&(t=parseInt(i.split("/").pop(),10),t=isNaN(t)?void 0:t,i=i.split("/").shift());try{e=document.getElementById(decodeURIComponent(i))}catch(e){}return e?wi(wi({},this.Reveal.getIndices(e)),{},{f:t}):null}},{key:"readURL",value:function(){var e=this.Reveal.getIndices(),t=this.getIndicesFromHash();!t||t.h===e.h&&t.v===e.v&&void 0===t.f?this.Reveal.slide(e.h||0,e.v||0):this.Reveal.slide(t.h,t.v,t.f)}},{key:"writeURL",value:function(e){var t=this.Reveal.getConfig(),n=this.Reveal.getCurrentSlide();if(clearTimeout(this.writeURLTimeout),"number"==typeof e)this.writeURLTimeout=setTimeout(this.writeURL,e);else if(n){var i=this.getHash();t.history?window.location.hash=i:t.hash&&("/"===i?window.history.replaceState(null,null,window.location.pathname+window.location.search):window.history.replaceState(null,null,"#"+i))}}},{key:"getHash",value:function(e){var t="/",n=e||this.Reveal.getCurrentSlide(),i=n?n.getAttribute("id"):null;i&&(i=encodeURIComponent(i));var r=this.Reveal.getIndices(e);if(this.Reveal.getConfig().fragmentInURL||(r.f=void 0),"string"==typeof i&&i.length)t="/"+i,r.f>=0&&(t+="/"+r.f);else{var a=this.Reveal.getConfig().hashOneBasedIndex?1:0;(r.h>0||r.v>0||r.f>=0)&&(t+=r.h+a),(r.v>0||r.f>=0)&&(t+="/"+(r.v+a)),r.f>=0&&(t+="/"+r.f)}return t}},{key:"onWindowHashChange",value:function(e){this.readURL()}}]),e}(),vf=function(){function e(t){ki(this,e),this.Reveal=t,this.onNavigateLeftClicked=this.onNavigateLeftClicked.bind(this),this.onNavigateRightClicked=this.onNavigateRightClicked.bind(this),this.onNavigateUpClicked=this.onNavigateUpClicked.bind(this),this.onNavigateDownClicked=this.onNavigateDownClicked.bind(this),this.onNavigatePrevClicked=this.onNavigatePrevClicked.bind(this),this.onNavigateNextClicked=this.onNavigateNextClicked.bind(this)}return Ri(e,[{key:"render",value:function(){var e=this.Reveal.getConfig().rtl,t=this.Reveal.getRevealElement();this.element=document.createElement("aside"),this.element.className="controls",this.element.innerHTML='<button class="navigate-left" aria-label="'.concat(e?"next slide":"previous slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-right" aria-label="').concat(e?"previous slide":"next slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>'),this.Reveal.getRevealElement().appendChild(this.element),this.controlsLeft=kh(t,".navigate-left"),this.controlsRight=kh(t,".navigate-right"),this.controlsUp=kh(t,".navigate-up"),this.controlsDown=kh(t,".navigate-down"),this.controlsPrev=kh(t,".navigate-prev"),this.controlsNext=kh(t,".navigate-next"),this.controlsRightArrow=this.element.querySelector(".navigate-right"),this.controlsLeftArrow=this.element.querySelector(".navigate-left"),this.controlsDownArrow=this.element.querySelector(".navigate-down")}},{key:"configure",value:function(e,t){this.element.style.display=e.controls?"block":"none",this.element.setAttribute("data-controls-layout",e.controlsLayout),this.element.setAttribute("data-controls-back-arrows",e.controlsBackArrows)}},{key:"bind",value:function(){var e=this,t=["touchstart","click"];Fh&&(t=["touchstart"]),t.forEach((function(t){e.controlsLeft.forEach((function(n){return n.addEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.addEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.addEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.addEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.addEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.addEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"unbind",value:function(){var e=this;["touchstart","click"].forEach((function(t){e.controlsLeft.forEach((function(n){return n.removeEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.removeEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.removeEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.removeEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.removeEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.removeEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"update",value:function(){var e=this.Reveal.availableRoutes();[].concat(Li(this.controlsLeft),Li(this.controlsRight),Li(this.controlsUp),Li(this.controlsDown),Li(this.controlsPrev),Li(this.controlsNext)).forEach((function(e){e.classList.remove("enabled","fragmented"),e.setAttribute("disabled","disabled")})),e.left&&this.controlsLeft.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.right&&this.controlsRight.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.up&&this.controlsUp.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.down&&this.controlsDown.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.left||e.up)&&this.controlsPrev.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.right||e.down)&&this.controlsNext.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")}));var t=this.Reveal.getCurrentSlide();if(t){var n=this.Reveal.fragments.availableRoutes();n.prev&&this.controlsPrev.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsNext.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),this.Reveal.isVerticalSlide(t)?(n.prev&&this.controlsUp.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsDown.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")}))):(n.prev&&this.controlsLeft.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsRight.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})))}if(this.Reveal.getConfig().controlsTutorial){var i=this.Reveal.getIndices();!this.Reveal.hasNavigatedVertically()&&e.down?this.controlsDownArrow.classList.add("highlight"):(this.controlsDownArrow.classList.remove("highlight"),this.Reveal.getConfig().rtl?!this.Reveal.hasNavigatedHorizontally()&&e.left&&0===i.v?this.controlsLeftArrow.classList.add("highlight"):this.controlsLeftArrow.classList.remove("highlight"):!this.Reveal.hasNavigatedHorizontally()&&e.right&&0===i.v?this.controlsRightArrow.classList.add("highlight"):this.controlsRightArrow.classList.remove("highlight"))}}},{key:"onNavigateLeftClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.prev():this.Reveal.left()}},{key:"onNavigateRightClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.next():this.Reveal.right()}},{key:"onNavigateUpClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.up()}},{key:"onNavigateDownClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.down()}},{key:"onNavigatePrevClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.prev()}},{key:"onNavigateNextClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.next()}}]),e}(),gf=function(){function e(t){ki(this,e),this.Reveal=t,this.onProgressClicked=this.onProgressClicked.bind(this)}return Ri(e,[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="progress",this.Reveal.getRevealElement().appendChild(this.element),this.bar=document.createElement("span"),this.element.appendChild(this.bar)}},{key:"configure",value:function(e,t){this.element.style.display=e.progress?"block":"none"}},{key:"bind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.addEventListener("click",this.onProgressClicked,!1)}},{key:"unbind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.removeEventListener("click",this.onProgressClicked,!1)}},{key:"update",value:function(){if(this.Reveal.getConfig().progress&&this.bar){var e=this.Reveal.getProgress();this.Reveal.getTotalSlides()<2&&(e=0),this.bar.style.transform="scaleX("+e+")"}}},{key:"getMaxWidth",value:function(){return this.Reveal.getRevealElement().offsetWidth}},{key:"onProgressClicked",value:function(e){this.Reveal.onUserInput(e),e.preventDefault();var t=this.Reveal.getSlides(),n=t.length,i=Math.floor(e.clientX/this.getMaxWidth()*n);this.Reveal.getConfig().rtl&&(i=n-i);var r=this.Reveal.getIndices(t[i]);this.Reveal.slide(r.h,r.v)}}]),e}(),pf=function(){function e(t){ki(this,e),this.Reveal=t,this.lastMouseWheelStep=0,this.cursorHidden=!1,this.cursorInactiveTimeout=0,this.onDocumentCursorActive=this.onDocumentCursorActive.bind(this),this.onDocumentMouseScroll=this.onDocumentMouseScroll.bind(this)}return Ri(e,[{key:"configure",value:function(e,t){e.mouseWheel?(document.addEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.addEventListener("mousewheel",this.onDocumentMouseScroll,!1)):(document.removeEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.removeEventListener("mousewheel",this.onDocumentMouseScroll,!1)),e.hideInactiveCursor?(document.addEventListener("mousemove",this.onDocumentCursorActive,!1),document.addEventListener("mousedown",this.onDocumentCursorActive,!1)):(this.showCursor(),document.removeEventListener("mousemove",this.onDocumentCursorActive,!1),document.removeEventListener("mousedown",this.onDocumentCursorActive,!1))}},{key:"showCursor",value:function(){this.cursorHidden&&(this.cursorHidden=!1,this.Reveal.getRevealElement().style.cursor="")}},{key:"hideCursor",value:function(){!1===this.cursorHidden&&(this.cursorHidden=!0,this.Reveal.getRevealElement().style.cursor="none")}},{key:"onDocumentCursorActive",value:function(e){this.showCursor(),clearTimeout(this.cursorInactiveTimeout),this.cursorInactiveTimeout=setTimeout(this.hideCursor.bind(this),this.Reveal.getConfig().hideCursorTime)}},{key:"onDocumentMouseScroll",value:function(e){if(Date.now()-this.lastMouseWheelStep>1e3){this.lastMouseWheelStep=Date.now();var t=e.detail||-e.wheelDelta;t>0?this.Reveal.next():t<0&&this.Reveal.prev()}}}]),e}(),mf=a,yf=Jt,bf=b,wf=o.f,Sf=function(e){return function(t){for(var n,i=bf(t),r=yf(i),a=r.length,o=0,s=[];a>o;)n=r[o++],mf&&!wf.call(i,n)||s.push(e?[n,i[n]]:i[n]);return s}},Ef={entries:Sf(!0),values:Sf(!1)}.values;$t({target:"Object",stat:!0},{values:function(e){return Ef(e)}});var kf=function(e,t){var n=document.createElement("script");n.type="text/javascript",n.async=!1,n.defer=!1,n.src=e,"function"==typeof t&&(n.onload=n.onreadystatechange=function(e){("load"===e.type||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=n.onerror=null,t())},n.onerror=function(e){n.onload=n.onreadystatechange=n.onerror=null,t(new Error("Failed loading script: "+n.src+"\n"+e))});var i=document.querySelector("head");i.insertBefore(n,i.lastChild)},Af=function(){function e(t){ki(this,e),this.Reveal=t,this.state="idle",this.registeredPlugins={},this.asyncDependencies=[]}return Ri(e,[{key:"load",value:function(e,t){var n=this;return this.state="loading",e.forEach(this.registerPlugin.bind(this)),new Promise((function(e){var i=[],r=0;if(t.forEach((function(e){e.condition&&!e.condition()||(e.async?n.asyncDependencies.push(e):i.push(e))})),i.length){r=i.length;var a=function(t){t&&"function"==typeof t.callback&&t.callback(),0==--r&&n.initPlugins().then(e)};i.forEach((function(e){"string"==typeof e.id?(n.registerPlugin(e),a(e)):"string"==typeof e.src?kf(e.src,(function(){return a(e)})):(console.warn("Unrecognized plugin format",e),a())}))}else n.initPlugins().then(e)}))}},{key:"initPlugins",value:function(){var e=this;return new Promise((function(t){var n=Object.values(e.registeredPlugins),i=n.length;if(0===i)e.loadAsync().then(t);else{var r,a=function(){0==--i?e.loadAsync().then(t):r()},o=0;(r=function(){var t=n[o++];if("function"==typeof t.init){var i=t.init(e.Reveal);i&&"function"==typeof i.then?i.then(a):a()}else a()})()}}))}},{key:"loadAsync",value:function(){return this.state="loaded",this.asyncDependencies.length&&this.asyncDependencies.forEach((function(e){kf(e.src,e.callback)})),Promise.resolve()}},{key:"registerPlugin",value:function(e){2===arguments.length&&"string"==typeof arguments[0]?(e=arguments[1]).id=arguments[0]:"function"==typeof e&&(e=e());var t=e.id;"string"!=typeof t?console.warn("Unrecognized plugin format; can't find plugin.id",e):void 0===this.registeredPlugins[t]?(this.registeredPlugins[t]=e,"loaded"===this.state&&"function"==typeof e.init&&e.init(this.Reveal)):console.warn('reveal.js: "'+t+'" plugin has already been registered')}},{key:"hasPlugin",value:function(e){return!!this.registeredPlugins[e]}},{key:"getPlugin",value:function(e){return this.registeredPlugins[e]}},{key:"getRegisteredPlugins",value:function(){return this.registeredPlugins}}]),e}();!function(e){var t=function(e){var t,n=Object.prototype,i=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",s=r.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function c(e,t,n,i){var r=t&&t.prototype instanceof p?t:p,a=Object.create(r.prototype),o=new P(i||[]);return a._invoke=function(e,t,n){var i=d;return function(r,a){if(i===f)throw new Error("Generator is already running");if(i===v){if("throw"===r)throw a;return N()}for(n.method=r,n.arg=a;;){var o=n.delegate;if(o){var s=R(o,n);if(s){if(s===g)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===d)throw i=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=f;var l=u(e,t,n);if("normal"===l.type){if(i=n.done?v:h,l.arg===g)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(i=v,n.method="throw",n.arg=l.arg)}}}(e,n,o),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var d="suspendedStart",h="suspendedYield",f="executing",v="completed",g={};function p(){}function m(){}function y(){}var b={};b[a]=function(){return this};var w=Object.getPrototypeOf,S=w&&w(w(C([])));S&&S!==n&&i.call(S,a)&&(b=S);var E=y.prototype=p.prototype=Object.create(b);function k(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function A(e,t){function n(r,a,o,s){var l=u(e[r],e,a);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==typeof d&&i.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,o,s)}),(function(e){n("throw",e,o,s)})):t.resolve(d).then((function(e){c.value=e,o(c)}),(function(e){return n("throw",e,o,s)}))}s(l.arg)}var r;this._invoke=function(e,i){function a(){return new t((function(t,r){n(e,i,t,r)}))}return r=r?r.then(a,a):a()}}function R(e,n){var i=e.iterator[n.method];if(i===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,R(e,n),"throw"===n.method))return g;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return g}var r=u(i,e.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,g;var a=r.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,g):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function x(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function C(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function n(){for(;++r<e.length;)if(i.call(e,r))return n.value=e[r],n.done=!1,n;return n.value=t,n.done=!0,n};return o.next=o}}return{next:N}}function N(){return{value:t,done:!0}}return m.prototype=E.constructor=y,y.constructor=m,m.displayName=l(y,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===m||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,l(e,s,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},k(A.prototype),A.prototype[o]=function(){return this},e.AsyncIterator=A,e.async=function(t,n,i,r,a){void 0===a&&(a=Promise);var o=new A(c(t,n,i,r),a);return e.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},k(E),l(E,s,"Generator"),E[a]=function(){return this},E.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var i=t.pop();if(i in e)return n.value=i,n.done=!1,n}return n.done=!0,n}},e.values=C,P.prototype={constructor:P,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(L),!e)for(var n in this)"t"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function r(i,r){return s.type="throw",s.arg=e,n.next=i,r&&(n.method="next",n.arg=t),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var l=i.call(o,"catchLoc"),c=i.call(o,"finallyLoc");if(l&&c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,g):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;L(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,i){return this.delegate={iterator:C(e),resultName:n,nextLoc:i},"next"===this.method&&(this.arg=t),g}},e}(e.exports);try{regeneratorRuntime=t}catch(e){Function("r","regeneratorRuntime = r")(t)}}({exports:{}});var Rf=function(){function e(t){ki(this,e),this.Reveal=t}var t,n;return Ri(e,[{key:"setupPDF",value:(t=regeneratorRuntime.mark((function e(){var t,n,i,r,a,o,s,l,c,u,d,h=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.Reveal.getConfig(),n=kh(this.Reveal.getRevealElement(),Jd),i=t.slideNumber&&/all|print/i.test(t.showSlideNumber),r=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),a=Math.floor(r.width*(1+t.margin)),o=Math.floor(r.height*(1+t.margin)),s=r.width,l=r.height,e.next=8,new Promise(requestAnimationFrame);case 8:return Nh("@page{size:"+a+"px "+o+"px; margin: 0px;}"),Nh(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: "+s+"px; max-height:"+l+"px}"),document.documentElement.classList.add("print-pdf"),document.body.style.width=a+"px",document.body.style.height=o+"px",e.next=15,new Promise(requestAnimationFrame);case 15:return this.Reveal.layoutSlideContents(s,l),n.forEach((function(e){return h.Reveal.slideContent.layout(e)})),e.next=19,new Promise(requestAnimationFrame);case 19:return c=n.map((function(e){return e.scrollHeight})),u=[],d=n[0].parentNode,n.forEach((function(e,n){if(!1===e.classList.contains("stack")){var r=(a-s)/2,d=(o-l)/2,h=c[n],f=Math.max(Math.ceil(h/o),1);(1===(f=Math.min(f,t.pdfMaxPagesPerSlide))&&t.center||e.classList.contains("center"))&&(d=Math.max((o-h)/2,0));var v=document.createElement("div");if(u.push(v),v.className="pdf-page",v.style.height=(o+t.pdfPageHeightOffset)*f+"px",v.appendChild(e),e.style.left=r+"px",e.style.top=d+"px",e.style.width=s+"px",e.slideBackgroundElement&&v.insertBefore(e.slideBackgroundElement,e),t.showNotes){var g=this.Reveal.getSlideNotes(e);if(g){var p="string"==typeof t.showNotes?t.showNotes:"inline",m=document.createElement("div");m.classList.add("speaker-notes"),m.classList.add("speaker-notes-pdf"),m.setAttribute("data-layout",p),m.innerHTML=g,"separate-page"===p?u.push(m):(m.style.left="8px",m.style.bottom="8px",m.style.width=a-16+"px",v.appendChild(m))}}if(i){var y=n+1,b=document.createElement("div");b.classList.add("slide-number"),b.classList.add("slide-number-pdf"),b.innerHTML=y,v.appendChild(b)}if(t.pdfSeparateFragments){var w,S=this.Reveal.fragments.sort(v.querySelectorAll(".fragment"),!0);S.forEach((function(e){w&&w.forEach((function(e){e.classList.remove("current-fragment")})),e.forEach((function(e){e.classList.add("visible","current-fragment")}),this);var t=v.cloneNode(!0);u.push(t),w=e}),this),S.forEach((function(e){e.forEach((function(e){e.classList.remove("visible","current-fragment")}))}))}else kh(v,".fragment:not(.fade-out)").forEach((function(e){e.classList.add("visible")}))}}),this),e.next=25,new Promise(requestAnimationFrame);case 25:u.forEach((function(e){return d.appendChild(e)})),this.Reveal.dispatchEvent({type:"pdf-ready"});case 27:case"end":return e.stop()}}),e,this)})),n=function(){var e=this,n=arguments;return new Promise((function(i,r){var a=t.apply(e,n);function o(e){Ei(a,i,r,o,s,"next",e)}function s(e){Ei(a,i,r,o,s,"throw",e)}o(void 0)}))},function(){return n.apply(this,arguments)})},{key:"isPrintingPDF",value:function(){return/print-pdf/gi.test(window.location.search)}}]),e}(),xf=function(){function e(t){ki(this,e),this.Reveal=t,this.touchStartX=0,this.touchStartY=0,this.touchStartCount=0,this.touchCaptured=!1,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this)}return Ri(e,[{key:"bind",value:function(){var e=this.Reveal.getRevealElement();"onpointerdown"in window?(e.addEventListener("pointerdown",this.onPointerDown,!1),e.addEventListener("pointermove",this.onPointerMove,!1),e.addEventListener("pointerup",this.onPointerUp,!1)):window.navigator.msPointerEnabled?(e.addEventListener("MSPointerDown",this.onPointerDown,!1),e.addEventListener("MSPointerMove",this.onPointerMove,!1),e.addEventListener("MSPointerUp",this.onPointerUp,!1)):(e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1))}},{key:"unbind",value:function(){var e=this.Reveal.getRevealElement();e.removeEventListener("pointerdown",this.onPointerDown,!1),e.removeEventListener("pointermove",this.onPointerMove,!1),e.removeEventListener("pointerup",this.onPointerUp,!1),e.removeEventListener("MSPointerDown",this.onPointerDown,!1),e.removeEventListener("MSPointerMove",this.onPointerMove,!1),e.removeEventListener("MSPointerUp",this.onPointerUp,!1),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1)}},{key:"isSwipePrevented",value:function(e){if(Lh(e,"video, audio"))return!0;for(;e&&"function"==typeof e.hasAttribute;){if(e.hasAttribute("data-prevent-swipe"))return!0;e=e.parentNode}return!1}},{key:"onTouchStart",value:function(e){if(this.isSwipePrevented(e.target))return!0;this.touchStartX=e.touches[0].clientX,this.touchStartY=e.touches[0].clientY,this.touchStartCount=e.touches.length}},{key:"onTouchMove",value:function(e){if(this.isSwipePrevented(e.target))return!0;var t=this.Reveal.getConfig();if(this.touchCaptured)Fh&&e.preventDefault();else{this.Reveal.onUserInput(e);var n=e.touches[0].clientX,i=e.touches[0].clientY;if(1===e.touches.length&&2!==this.touchStartCount){var r=this.Reveal.availableRoutes({includeFragments:!0}),a=n-this.touchStartX,o=i-this.touchStartY;a>40&&Math.abs(a)>Math.abs(o)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.next():this.Reveal.prev():this.Reveal.left()):a<-40&&Math.abs(a)>Math.abs(o)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.prev():this.Reveal.next():this.Reveal.right()):o>40&&r.up?(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.prev():this.Reveal.up()):o<-40&&r.down&&(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.next():this.Reveal.down()),t.embedded?(this.touchCaptured||this.Reveal.isVerticalSlide())&&e.preventDefault():e.preventDefault()}}}},{key:"onTouchEnd",value:function(e){this.touchCaptured=!1}},{key:"onPointerDown",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchStart(e))}},{key:"onPointerMove",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchMove(e))}},{key:"onPointerUp",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchEnd(e))}}]),e}(),Lf="focus",Pf="blur",Cf=function(){function e(t){ki(this,e),this.Reveal=t,this.onRevealPointerDown=this.onRevealPointerDown.bind(this),this.onDocumentPointerDown=this.onDocumentPointerDown.bind(this)}return Ri(e,[{key:"configure",value:function(e,t){e.embedded?this.blur():(this.focus(),this.unbind())}},{key:"bind",value:function(){this.Reveal.getConfig().embedded&&this.Reveal.getRevealElement().addEventListener("pointerdown",this.onRevealPointerDown,!1)}},{key:"unbind",value:function(){this.Reveal.getRevealElement().removeEventListener("pointerdown",this.onRevealPointerDown,!1),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)}},{key:"focus",value:function(){this.state!==Lf&&(this.Reveal.getRevealElement().classList.add("focused"),document.addEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state=Lf}},{key:"blur",value:function(){this.state!==Pf&&(this.Reveal.getRevealElement().classList.remove("focused"),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state=Pf}},{key:"isFocused",value:function(){return this.state===Lf}},{key:"onRevealPointerDown",value:function(e){this.focus()}},{key:"onDocumentPointerDown",value:function(e){var t=Ph(e.target,".reveal");t&&t===this.Reveal.getRevealElement()||this.blur()}}]),e}(),Nf=function(){function e(t){ki(this,e),this.Reveal=t}return Ri(e,[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="speaker-notes",this.element.setAttribute("data-prevent-swipe",""),this.element.setAttribute("tabindex","0"),this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){e.showNotes&&this.element.setAttribute("data-layout","string"==typeof e.showNotes?e.showNotes:"inline")}},{key:"update",value:function(){this.Reveal.getConfig().showNotes&&this.element&&this.Reveal.getCurrentSlide()&&!this.Reveal.print.isPrintingPDF()&&(this.element.innerHTML=this.getSlideNotes()||'<span class="notes-placeholder">No notes on this slide.</span>')}},{key:"updateVisibility",value:function(){this.Reveal.getConfig().showNotes&&this.hasNotes()&&!this.Reveal.print.isPrintingPDF()?this.Reveal.getRevealElement().classList.add("show-notes"):this.Reveal.getRevealElement().classList.remove("show-notes")}},{key:"hasNotes",value:function(){return this.Reveal.getSlidesElement().querySelectorAll("[data-notes], aside.notes").length>0}},{key:"isSpeakerNotesWindow",value:function(){return!!window.location.search.match(/receiver/gi)}},{key:"getSlideNotes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();if(e.hasAttribute("data-notes"))return e.getAttribute("data-notes");var t=e.querySelector("aside.notes");return t?t.innerHTML:null}}]),e}(),If=A,Mf=ct,Tf=at,Of=Hs,Df=_,jf=Dn("unscopables"),Ff=Array.prototype;null==Ff[jf]&&Df.f(Ff,jf,{configurable:!0,value:Of(null)});var zf=function(e){Ff[jf][e]=!0};$t({target:"Array",proto:!0},{fill:function(e){for(var t=If(this),n=Tf(t.length),i=arguments.length,r=Mf(i>1?arguments[1]:void 0,n),a=i>2?arguments[2]:void 0,o=void 0===a?n:Mf(a,n);o>r;)t[r++]=e;return t}}),zf("fill");var Hf=function(){function e(t,n){ki(this,e),this.diameter=100,this.diameter2=this.diameter/2,this.thickness=6,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=t,this.progressCheck=n,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.canvas.style.width=this.diameter2+"px",this.canvas.style.height=this.diameter2+"px",this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}return Ri(e,[{key:"setPlaying",value:function(e){var t=this.playing;this.playing=e,!t&&this.playing?this.animate():this.render()}},{key:"animate",value:function(){var e=this.progress;this.progress=this.progressCheck(),e>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&requestAnimationFrame(this.animate.bind(this))}},{key:"render",value:function(){var e=this.playing?this.progress:0,t=this.diameter2-this.thickness,n=this.diameter2,i=this.diameter2,r=28;this.progressOffset+=.1*(1-this.progressOffset);var a=-Math.PI/2+e*(2*Math.PI),o=-Math.PI/2+this.progressOffset*(2*Math.PI);this.context.save(),this.context.clearRect(0,0,this.diameter,this.diameter),this.context.beginPath(),this.context.arc(n,i,t+4,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(n,i,t,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="rgba( 255, 255, 255, 0.2 )",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(n,i,t,o,a,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(n-14,i-14),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,10,r),this.context.fillRect(18,0,10,r)):(this.context.beginPath(),this.context.translate(4,0),this.context.moveTo(0,0),this.context.lineTo(24,14),this.context.lineTo(0,r),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()}},{key:"on",value:function(e,t){this.canvas.addEventListener(e,t,!1)}},{key:"off",value:function(e,t){this.canvas.removeEventListener(e,t,!1)}},{key:"destroy",value:function(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)}}]),e}(),Uf={width:960,height:700,margin:.04,minScale:.2,maxScale:2,controls:!0,controlsTutorial:!0,controlsLayout:"bottom-right",controlsBackArrows:"faded",progress:!0,slideNumber:!1,showSlideNumber:"all",hashOneBasedIndex:!1,hash:!1,respondToHashChanges:!0,history:!1,keyboard:!0,keyboardCondition:null,disableLayout:!1,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,navigationMode:"default",shuffle:!1,fragments:!0,fragmentInURL:!0,embedded:!1,help:!0,pause:!0,showNotes:!1,showHiddenSlides:!1,autoPlayMedia:null,preloadIframes:null,autoAnimate:!0,autoAnimateMatcher:null,autoAnimateEasing:"ease",autoAnimateDuration:1,autoAnimateUnmatched:!0,autoAnimateStyles:["opacity","color","background-color","padding","font-size","line-height","letter-spacing","border-width","border-color","border-radius","outline","outline-offset"],autoSlide:0,autoSlideStoppable:!0,autoSlideMethod:null,defaultTiming:null,mouseWheel:!1,previewLinks:!1,postMessage:!0,postMessageEvents:!1,focusBodyOnPageVisibilityChange:!0,transition:"slide",transitionSpeed:"default",backgroundTransition:"fade",parallaxBackgroundImage:"",parallaxBackgroundSize:"",parallaxBackgroundRepeat:"",parallaxBackgroundPosition:"",parallaxBackgroundHorizontal:null,parallaxBackgroundVertical:null,pdfMaxPagesPerSlide:Number.POSITIVE_INFINITY,pdfSeparateFragments:!0,pdfPageHeightOffset:-1,viewDistance:3,mobileViewDistance:2,display:"block",hideInactiveCursor:!0,hideCursorTime:5e3,dependencies:[],plugins:[]},Bf="4.2.0";function _f(e,t){arguments.length<2&&(t=arguments[0],e=document.querySelector(".reveal"));var n,i,r,a,o,s={},l={},c=!1,u={hasNavigatedHorizontally:!1,hasNavigatedVertically:!1},d=[],h=1,f={layout:"",overview:""},v={},g="idle",p=0,m=0,y=-1,b=!1,w=new _h(s),S=new qh(s),E=new cf(s),k=new Vh(s),A=new uf(s),R=new df(s),x=new hf(s),L=new ff(s),P=new vf(s),C=new gf(s),N=new pf(s),I=new Af(s),M=new Rf(s),T=new Cf(s),O=new xf(s),D=new Nf(s);function j(n){if(!e)throw'Unable to find presentation root (<div class="reveal">).';if(v.wrapper=e,v.slides=e.querySelector(".slides"),!v.slides)throw'Unable to find slides container (<div class="slides">).';return l=wi(wi(wi(wi(wi({},Uf),l),t),n),Ih()),F(),window.addEventListener("load",oe,!1),I.load(l.plugins,l.dependencies).then(z),new Promise((function(e){return s.on("ready",e)}))}function F(){!0===l.embedded?v.viewport=Ph(e,".reveal-viewport")||e:(v.viewport=document.body,document.documentElement.classList.add("reveal-full-page")),v.viewport.classList.add("reveal-viewport")}function z(){c=!0,H(),U(),V(),W(),Ae(),K(),L.readURL(),k.update(!0),setTimeout((function(){v.slides.classList.remove("no-transition"),v.wrapper.classList.add("ready"),Q({type:"ready",data:{indexh:n,indexv:i,currentSlide:a}})}),1),M.isPrintingPDF()&&($(),"complete"===document.readyState?M.setupPDF():window.addEventListener("load",(function(){M.setupPDF()})))}function H(){l.showHiddenSlides||kh(v.wrapper,'section[data-visibility="hidden"]').forEach((function(e){e.parentNode.removeChild(e)}))}function U(){v.slides.classList.add("no-transition"),Dh?v.wrapper.classList.add("no-hover"):v.wrapper.classList.remove("no-hover"),k.render(),S.render(),P.render(),C.render(),D.render(),v.pauseOverlay=Ch(v.wrapper,"div","pause-overlay",l.controls?'<button class="resume-button">Resume presentation</button>':null),v.statusElement=B(),v.wrapper.setAttribute("role","application")}function B(){var e=v.wrapper.querySelector(".aria-status");return e||((e=document.createElement("div")).style.position="absolute",e.style.height="1px",e.style.width="1px",e.style.overflow="hidden",e.style.clip="rect( 1px, 1px, 1px, 1px )",e.classList.add("aria-status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true"),v.wrapper.appendChild(e)),e}function _(e){v.statusElement.textContent=e}function q(e){var t="";if(3===e.nodeType)t+=e.textContent;else if(1===e.nodeType){var n=e.getAttribute("aria-hidden"),i="none"===window.getComputedStyle(e).display;"true"===n||i||Array.from(e.childNodes).forEach((function(e){t+=q(e)}))}return""===(t=t.trim())?"":t+" "}function W(){setInterval((function(){0===v.wrapper.scrollTop&&0===v.wrapper.scrollLeft||(v.wrapper.scrollTop=0,v.wrapper.scrollLeft=0)}),1e3)}function V(){l.postMessage&&window.addEventListener("message",(function(e){var t=e.data;if("string"==typeof t&&"{"===t.charAt(0)&&"}"===t.charAt(t.length-1)&&(t=JSON.parse(t)).method&&"function"==typeof s[t.method])if(!1===eh.test(t.method)){var n=s[t.method].apply(s,t.args);Z("callback",{method:t.method,result:n})}else console.warn('reveal.js: "'+t.method+'" is is blacklisted from the postMessage API')}),!1)}function K(e){var t=wi({},l);if("object"===Si(e)&&Eh(l,e),!1!==s.isReady()){var n=v.wrapper.querySelectorAll(Jd).length;v.wrapper.classList.remove(t.transition),v.wrapper.classList.add(l.transition),v.wrapper.setAttribute("data-transition-speed",l.transitionSpeed),v.wrapper.setAttribute("data-background-transition",l.backgroundTransition),v.viewport.style.setProperty("--slide-width",l.width+"px"),v.viewport.style.setProperty("--slide-height",l.height+"px"),l.shuffle&&Re(),Ah(v.wrapper,"embedded",l.embedded),Ah(v.wrapper,"rtl",l.rtl),Ah(v.wrapper,"center",l.center),!1===l.pause&&pe(),l.previewLinks?(ee(),te("[data-preview-link=false]")):(te(),ee("[data-preview-link]:not([data-preview-link=false])")),E.reset(),o&&(o.destroy(),o=null),n>1&&l.autoSlide&&l.autoSlideStoppable&&((o=new Hf(v.wrapper,(function(){return Math.min(Math.max((Date.now()-y)/p,0),1)}))).on("click",ot),b=!1),"default"!==l.navigationMode?v.wrapper.setAttribute("data-navigation-mode",l.navigationMode):v.wrapper.removeAttribute("data-navigation-mode"),D.configure(l,t),T.configure(l,t),N.configure(l,t),P.configure(l,t),C.configure(l,t),x.configure(l,t),A.configure(l,t),S.configure(l,t),Ee()}}function Y(){window.addEventListener("resize",it,!1),l.touch&&O.bind(),l.keyboard&&x.bind(),l.progress&&C.bind(),l.respondToHashChanges&&L.bind(),P.bind(),T.bind(),v.slides.addEventListener("click",nt,!1),v.slides.addEventListener("transitionend",tt,!1),v.pauseOverlay.addEventListener("click",pe,!1),l.focusBodyOnPageVisibilityChange&&document.addEventListener("visibilitychange",rt,!1)}function $(){O.unbind(),T.unbind(),x.unbind(),P.unbind(),C.unbind(),L.unbind(),window.removeEventListener("resize",it,!1),v.slides.removeEventListener("click",nt,!1),v.slides.removeEventListener("transitionend",tt,!1),v.pauseOverlay.removeEventListener("click",pe,!1)}function X(t,n,i){e.addEventListener(t,n,i)}function G(t,n,i){e.removeEventListener(t,n,i)}function J(e){"string"==typeof e.layout&&(f.layout=e.layout),"string"==typeof e.overview&&(f.overview=e.overview),f.layout?xh(v.slides,f.layout+" "+f.overview):xh(v.slides,f.overview)}function Q(e){var t=e.target,n=void 0===t?v.wrapper:t,i=e.type,r=e.data,a=e.bubbles,o=void 0===a||a,s=document.createEvent("HTMLEvents",1,2);return s.initEvent(i,o,!0),Eh(s,r),n.dispatchEvent(s),n===v.wrapper&&Z(i),s}function Z(e,t){if(l.postMessageEvents&&window.parent!==window.self){var n={namespace:"reveal",eventName:e,state:_e()};Eh(n,t),window.parent.postMessage(JSON.stringify(n),"*")}}function ee(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from(v.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",at,!1)}))}function te(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from(v.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",at,!1)}))}function ne(e){ae(),v.overlay=document.createElement("div"),v.overlay.classList.add("overlay"),v.overlay.classList.add("overlay-preview"),v.wrapper.appendChild(v.overlay),v.overlay.innerHTML='<header>\n\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t<a class="external" href="'.concat(e,'" target="_blank"><span class="icon"></span></a>\n\t\t\t</header>\n\t\t\t<div class="spinner"></div>\n\t\t\t<div class="viewport">\n\t\t\t\t<iframe src="').concat(e,'"></iframe>\n\t\t\t\t<small class="viewport-inner">\n\t\t\t\t\t<span class="x-frame-error">Unable to load iframe. This is likely due to the site\'s policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>'),v.overlay.querySelector("iframe").addEventListener("load",(function(e){v.overlay.classList.add("loaded")}),!1),v.overlay.querySelector(".close").addEventListener("click",(function(e){ae(),e.preventDefault()}),!1),v.overlay.querySelector(".external").addEventListener("click",(function(e){ae()}),!1)}function ie(e){"boolean"==typeof e?e?re():ae():v.overlay?ae():re()}function re(){if(l.help){ae(),v.overlay=document.createElement("div"),v.overlay.classList.add("overlay"),v.overlay.classList.add("overlay-help"),v.wrapper.appendChild(v.overlay);var e='<p class="title">Keyboard Shortcuts</p><br/>',t=x.getShortcuts(),n=x.getBindings();for(var i in e+="<table><th>KEY</th><th>ACTION</th>",t)e+="<tr><td>".concat(i,"</td><td>").concat(t[i],"</td></tr>");for(var r in n)n[r].key&&n[r].description&&(e+="<tr><td>".concat(n[r].key,"</td><td>").concat(n[r].description,"</td></tr>"));e+="</table>",v.overlay.innerHTML='\n\t\t\t\t<header>\n\t\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class="viewport">\n\t\t\t\t\t<div class="viewport-inner">'.concat(e,"</div>\n\t\t\t\t</div>\n\t\t\t"),v.overlay.querySelector(".close").addEventListener("click",(function(e){ae(),e.preventDefault()}),!1)}}function ae(){return!!v.overlay&&(v.overlay.parentNode.removeChild(v.overlay),v.overlay=null,!0)}function oe(){if(v.wrapper&&!M.isPrintingPDF()){if(!l.disableLayout){Dh&&!l.embedded&&document.documentElement.style.setProperty("--vh",.01*window.innerHeight+"px");var e=le(),t=h;se(l.width,l.height),v.slides.style.width=e.width+"px",v.slides.style.height=e.height+"px",h=Math.min(e.presentationWidth/e.width,e.presentationHeight/e.height),h=Math.max(h,l.minScale),1===(h=Math.min(h,l.maxScale))?(v.slides.style.zoom="",v.slides.style.left="",v.slides.style.top="",v.slides.style.bottom="",v.slides.style.right="",J({layout:""})):h>1&&zh&&window.devicePixelRatio<2?(v.slides.style.zoom=h,v.slides.style.left="",v.slides.style.top="",v.slides.style.bottom="",v.slides.style.right="",J({layout:""})):(v.slides.style.zoom="",v.slides.style.left="50%",v.slides.style.top="50%",v.slides.style.bottom="auto",v.slides.style.right="auto",J({layout:"translate(-50%, -50%) scale("+h+")"}));for(var n=Array.from(v.wrapper.querySelectorAll(Jd)),i=0,r=n.length;i<r;i++){var a=n[i];"none"!==a.style.display&&(l.center||a.classList.contains("center")?a.classList.contains("stack")?a.style.top=0:a.style.top=Math.max((e.height-a.scrollHeight)/2,0)+"px":a.style.top="")}t!==h&&Q({type:"resize",data:{oldScale:t,scale:h,size:e}})}C.update(),k.updateParallax(),R.isActive()&&R.update()}}function se(e,t){kh(v.slides,"section > .stretch, section > .r-stretch").forEach((function(n){var i=Mh(n,t);if(/(img|video)/gi.test(n.nodeName)){var r=n.naturalWidth||n.videoWidth,a=n.naturalHeight||n.videoHeight,o=Math.min(e/r,i/a);n.style.width=r*o+"px",n.style.height=a*o+"px"}else n.style.width=e+"px",n.style.height=i+"px"}))}function le(e,t){var n={width:l.width,height:l.height,presentationWidth:e||v.wrapper.offsetWidth,presentationHeight:t||v.wrapper.offsetHeight};return n.presentationWidth-=n.presentationWidth*l.margin,n.presentationHeight-=n.presentationHeight*l.margin,"string"==typeof n.width&&/%$/.test(n.width)&&(n.width=parseInt(n.width,10)/100*n.presentationWidth),"string"==typeof n.height&&/%$/.test(n.height)&&(n.height=parseInt(n.height,10)/100*n.presentationHeight),n}function ce(e,t){"object"===Si(e)&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function ue(e){if("object"===Si(e)&&"function"==typeof e.setAttribute&&e.classList.contains("stack")){var t=e.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(e.getAttribute(t)||0,10)}return 0}function de(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;return e&&e.parentNode&&!!e.parentNode.nodeName.match(/section/i)}function he(){return!(!a||!de(a))&&!a.nextElementSibling}function fe(){return 0===n&&0===i}function ve(){return!!a&&(!a.nextElementSibling&&(!de(a)||!a.parentNode.nextElementSibling))}function ge(){if(l.pause){var e=v.wrapper.classList.contains("paused");Ve(),v.wrapper.classList.add("paused"),!1===e&&Q({type:"paused"})}}function pe(){var e=v.wrapper.classList.contains("paused");v.wrapper.classList.remove("paused"),We(),e&&Q({type:"resumed"})}function me(e){"boolean"==typeof e?e?ge():pe():ye()?pe():ge()}function ye(){return v.wrapper.classList.contains("paused")}function be(e){"boolean"==typeof e?e?Ye():Ke():b?Ye():Ke()}function we(){return!(!p||b)}function Se(e,t,o,s){if(!Q({type:"beforeslidechange",data:{indexh:void 0===e?n:e,indexv:void 0===t?i:t,origin:s}}).defaultPrevented){r=a;var c=v.wrapper.querySelectorAll(Qd);if(0!==c.length){void 0!==t||R.isActive()||(t=ue(c[e])),r&&r.parentNode&&r.parentNode.classList.contains("stack")&&ce(r.parentNode,i);var u=d.concat();d.length=0;var h=n||0,f=i||0;n=xe(Qd,void 0===e?n:e),i=xe(Zd,void 0===t?i:t);var p=n!==h||i!==f;p||(r=null);var m=c[n],y=m.querySelectorAll("section");a=y[i]||m;var b=!1;p&&r&&a&&!R.isActive()&&(r.hasAttribute("data-auto-animate")&&a.hasAttribute("data-auto-animate")&&r.getAttribute("data-auto-animate-id")===a.getAttribute("data-auto-animate-id")&&!(n>h||i>f?a:r).hasAttribute("data-auto-animate-restart")&&(b=!0,v.slides.classList.add("disable-slide-transitions")),g="running"),Le(),oe(),R.isActive()&&R.update(),void 0!==o&&A.goto(o),r&&r!==a&&(r.classList.remove("present"),r.setAttribute("aria-hidden","true"),fe()&&setTimeout((function(){De().forEach((function(e){ce(e,0)}))}),0));e:for(var x=0,N=d.length;x<N;x++){for(var I=0;I<u.length;I++)if(u[I]===d[x]){u.splice(I,1);continue e}v.viewport.classList.add(d[x]),Q({type:d[x]})}for(;u.length;)v.viewport.classList.remove(u.pop());p&&Q({type:"slidechanged",data:{indexh:n,indexv:i,previousSlide:r,currentSlide:a,origin:s}}),!p&&r||(w.stopEmbeddedContent(r),w.startEmbeddedContent(a)),requestAnimationFrame((function(){_(q(a))})),C.update(),P.update(),D.update(),k.update(),k.updateParallax(),S.update(),A.update(),L.writeURL(),We(),b&&(setTimeout((function(){v.slides.classList.remove("disable-slide-transitions")}),0),l.autoAnimate&&E.run(r,a))}}}function Ee(){$(),Y(),oe(),p=l.autoSlide,We(),k.create(),L.writeURL(),A.sortAll(),P.update(),C.update(),Le(),D.update(),D.updateVisibility(),k.update(!0),S.update(),w.formatEmbeddedContent(),!1===l.autoPlayMedia?w.stopEmbeddedContent(a,{unloadIframes:!1}):w.startEmbeddedContent(a),R.isActive()&&R.layout()}function ke(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;k.sync(e),A.sync(e),w.load(e),k.update(),D.update()}function Ae(){Te().forEach((function(e){kh(e,"section").forEach((function(e,t){t>0&&(e.classList.remove("present"),e.classList.remove("past"),e.classList.add("future"),e.setAttribute("aria-hidden","true"))}))}))}function Re(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Te();e.forEach((function(t,n){var i=e[Math.floor(Math.random()*e.length)];i.parentNode===t.parentNode&&t.parentNode.insertBefore(t,i);var r=t.querySelectorAll("section");r.length&&Re(r)}))}function xe(e,t){var n=kh(v.wrapper,e),i=n.length,r=M.isPrintingPDF();if(i){l.loop&&(t%=i)<0&&(t=i+t),t=Math.max(Math.min(t,i-1),0);for(var a=0;a<i;a++){var o=n[a],s=l.rtl&&!de(o);o.classList.remove("past"),o.classList.remove("present"),o.classList.remove("future"),o.setAttribute("hidden",""),o.setAttribute("aria-hidden","true"),o.querySelector("section")&&o.classList.add("stack"),r?o.classList.add("present"):a<t?(o.classList.add(s?"future":"past"),l.fragments&&kh(o,".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))):a>t&&(o.classList.add(s?"past":"future"),l.fragments&&kh(o,".fragment.visible").forEach((function(e){e.classList.remove("visible","current-fragment")})))}var c=n[t],u=c.classList.contains("present");c.classList.add("present"),c.removeAttribute("hidden"),c.removeAttribute("aria-hidden"),u||Q({target:c,type:"visible",bubbles:!1});var h=c.getAttribute("data-state");h&&(d=d.concat(h.split(" ")))}else t=0;return t}function Le(){var e,t=Te(),r=t.length;if(r&&void 0!==n){var a=R.isActive()?10:l.viewDistance;Dh&&(a=R.isActive()?6:l.mobileViewDistance),M.isPrintingPDF()&&(a=Number.MAX_VALUE);for(var o=0;o<r;o++){var s=t[o],c=kh(s,"section"),u=c.length;if(e=Math.abs((n||0)-o)||0,l.loop&&(e=Math.abs(((n||0)-o)%(r-a))||0),e<a?w.load(s):w.unload(s),u)for(var d=ue(s),h=0;h<u;h++){var f=c[h];e+(o===(n||0)?Math.abs((i||0)-h):Math.abs(h-d))<a?w.load(f):w.unload(f)}}Fe()?v.wrapper.classList.add("has-vertical-slides"):v.wrapper.classList.remove("has-vertical-slides"),je()?v.wrapper.classList.add("has-horizontal-slides"):v.wrapper.classList.remove("has-horizontal-slides")}}function Pe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.includeFragments,r=void 0!==t&&t,a=v.wrapper.querySelectorAll(Qd),o=v.wrapper.querySelectorAll(Zd),s={left:n>0,right:n<a.length-1,up:i>0,down:i<o.length-1};if(l.loop&&(a.length>1&&(s.left=!0,s.right=!0),o.length>1&&(s.up=!0,s.down=!0)),a.length>1&&"linear"===l.navigationMode&&(s.right=s.right||s.down,s.left=s.left||s.up),!0===r){var c=A.availableRoutes();s.left=s.left||c.prev,s.up=s.up||c.prev,s.down=s.down||c.next,s.right=s.right||c.next}if(l.rtl){var u=s.left;s.left=s.right,s.right=u}return s}function Ce(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=Te(),n=0;e:for(var i=0;i<t.length;i++){for(var r=t[i],o=r.querySelectorAll("section"),s=0;s<o.length;s++){if(o[s]===e)break e;"uncounted"!==o[s].dataset.visibility&&n++}if(r===e)break;!1===r.classList.contains("stack")&&"uncounted"!==r.dataset.visibility&&n++}return n}function Ne(){var e=He(),t=Ce();if(a){var n=a.querySelectorAll(".fragment");if(n.length>0){t+=a.querySelectorAll(".fragment.visible").length/n.length*.9}}return Math.min(t/(e-1),1)}function Ie(e){var t,r=n,o=i;if(e){var s=de(e),l=s?e.parentNode:e,c=Te();r=Math.max(c.indexOf(l),0),o=void 0,s&&(o=Math.max(kh(e.parentNode,"section").indexOf(e),0))}if(!e&&a&&a.querySelectorAll(".fragment").length>0){var u=a.querySelector(".current-fragment");t=u&&u.hasAttribute("data-fragment-index")?parseInt(u.getAttribute("data-fragment-index"),10):a.querySelectorAll(".fragment.visible").length-1}return{h:r,v:o,f:t}}function Me(){return kh(v.wrapper,'.slides section:not(.stack):not([data-visibility="uncounted"])')}function Te(){return kh(v.wrapper,Qd)}function Oe(){return kh(v.wrapper,".slides>section>section")}function De(){return kh(v.wrapper,".slides>section.stack")}function je(){return Te().length>1}function Fe(){return Oe().length>1}function ze(){return Me().map((function(e){for(var t={},n=0;n<e.attributes.length;n++){var i=e.attributes[n];t[i.name]=i.value}return t}))}function He(){return Me().length}function Ue(e,t){var n=Te()[e],i=n&&n.querySelectorAll("section");return i&&i.length&&"number"==typeof t?i?i[t]:void 0:n}function Be(e,t){var n="number"==typeof e?Ue(e,t):e;if(n)return n.slideBackgroundElement}function _e(){var e=Ie();return{indexh:e.h,indexv:e.v,indexf:e.f,paused:ye(),overview:R.isActive()}}function qe(e){if("object"===Si(e)){Se(Rh(e.indexh),Rh(e.indexv),Rh(e.indexf));var t=Rh(e.paused),n=Rh(e.overview);"boolean"==typeof t&&t!==ye()&&me(t),"boolean"==typeof n&&n!==R.isActive()&&R.toggle(n)}}function We(){if(Ve(),a&&!1!==l.autoSlide){var e=a.querySelector(".current-fragment");e||(e=a.querySelector(".fragment"));var t=e?e.getAttribute("data-autoslide"):null,n=a.parentNode?a.parentNode.getAttribute("data-autoslide"):null,i=a.getAttribute("data-autoslide");t?p=parseInt(t,10):i?p=parseInt(i,10):n?p=parseInt(n,10):(p=l.autoSlide,0===a.querySelectorAll(".fragment").length&&kh(a,"video, audio").forEach((function(e){e.hasAttribute("data-autoplay")&&p&&1e3*e.duration/e.playbackRate>p&&(p=1e3*e.duration/e.playbackRate+1e3)}))),!p||b||ye()||R.isActive()||ve()&&!A.availableRoutes().next&&!0!==l.loop||(m=setTimeout((function(){"function"==typeof l.autoSlideMethod?l.autoSlideMethod():Ze(),We()}),p),y=Date.now()),o&&o.setPlaying(-1!==m)}}function Ve(){clearTimeout(m),m=-1}function Ke(){p&&!b&&(b=!0,Q({type:"autoslidepaused"}),clearTimeout(m),o&&o.setPlaying(!1))}function Ye(){p&&b&&(b=!1,Q({type:"autoslideresumed"}),We())}function $e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.skipFragments,r=void 0!==t&&t;u.hasNavigatedHorizontally=!0,l.rtl?(R.isActive()||r||!1===A.next())&&Pe().left&&Se(n+1,"grid"===l.navigationMode?i:void 0):(R.isActive()||r||!1===A.prev())&&Pe().left&&Se(n-1,"grid"===l.navigationMode?i:void 0)}function Xe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.skipFragments,r=void 0!==t&&t;u.hasNavigatedHorizontally=!0,l.rtl?(R.isActive()||r||!1===A.prev())&&Pe().right&&Se(n-1,"grid"===l.navigationMode?i:void 0):(R.isActive()||r||!1===A.next())&&Pe().right&&Se(n+1,"grid"===l.navigationMode?i:void 0)}function Ge(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.skipFragments,r=void 0!==t&&t;(R.isActive()||r||!1===A.prev())&&Pe().up&&Se(n,i-1)}function Je(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.skipFragments,r=void 0!==t&&t;u.hasNavigatedVertically=!0,(R.isActive()||r||!1===A.next())&&Pe().down&&Se(n,i+1)}function Qe(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=t.skipFragments,r=void 0!==i&&i;if(r||!1===A.prev())if(Pe().up)Ge({skipFragments:r});else if((e=l.rtl?kh(v.wrapper,".slides>section.future").pop():kh(v.wrapper,".slides>section.past").pop())&&e.classList.contains("stack")){var a=e.querySelectorAll("section").length-1||void 0,o=n-1;Se(o,a)}else $e({skipFragments:r})}function Ze(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.skipFragments,n=void 0!==t&&t;if(u.hasNavigatedHorizontally=!0,u.hasNavigatedVertically=!0,n||!1===A.next()){var i=Pe();i.down&&i.right&&l.loop&&he()&&(i.down=!1),i.down?Je({skipFragments:n}):l.rtl?$e({skipFragments:n}):Xe({skipFragments:n})}}function et(e){l.autoSlideStoppable&&Ke()}function tt(e){"running"===g&&/section/gi.test(e.target.nodeName)&&(g="idle",Q({type:"slidetransitionend",data:{indexh:n,indexv:i,previousSlide:r,currentSlide:a}}))}function nt(e){var t=Ph(e.target,'a[href^="#"]');if(t){var n=t.getAttribute("href"),i=L.getIndicesFromHash(n);i&&(s.slide(i.h,i.v,i.f),e.preventDefault())}}function it(e){oe()}function rt(e){!1===document.hidden&&document.activeElement!==document.body&&("function"==typeof document.activeElement.blur&&document.activeElement.blur(),document.body.focus())}function at(e){if(e.currentTarget&&e.currentTarget.hasAttribute("href")){var t=e.currentTarget.getAttribute("href");t&&(ne(t),e.preventDefault())}}function ot(e){ve()&&!1===l.loop?(Se(0,0),Ye()):b?Ye():Ke()}var st={VERSION:Bf,initialize:j,configure:K,sync:Ee,syncSlide:ke,syncFragments:A.sync.bind(A),slide:Se,left:$e,right:Xe,up:Ge,down:Je,prev:Qe,next:Ze,navigateLeft:$e,navigateRight:Xe,navigateUp:Ge,navigateDown:Je,navigatePrev:Qe,navigateNext:Ze,navigateFragment:A.goto.bind(A),prevFragment:A.prev.bind(A),nextFragment:A.next.bind(A),on:X,off:G,addEventListener:X,removeEventListener:G,layout:oe,shuffle:Re,availableRoutes:Pe,availableFragments:A.availableRoutes.bind(A),toggleHelp:ie,toggleOverview:R.toggle.bind(R),togglePause:me,toggleAutoSlide:be,isFirstSlide:fe,isLastSlide:ve,isLastVerticalSlide:he,isVerticalSlide:de,isPaused:ye,isAutoSliding:we,isSpeakerNotes:D.isSpeakerNotesWindow.bind(D),isOverview:R.isActive.bind(R),isFocused:T.isFocused.bind(T),isPrintingPDF:M.isPrintingPDF.bind(M),isReady:function(){return c},loadSlide:w.load.bind(w),unloadSlide:w.unload.bind(w),showPreview:ne,hidePreview:ae,addEventListeners:Y,removeEventListeners:$,dispatchEvent:Q,getState:_e,setState:qe,getProgress:Ne,getIndices:Ie,getSlidesAttributes:ze,getSlidePastCount:Ce,getTotalSlides:He,getSlide:Ue,getPreviousSlide:function(){return r},getCurrentSlide:function(){return a},getSlideBackground:Be,getSlideNotes:D.getSlideNotes.bind(D),getSlides:Me,getHorizontalSlides:Te,getVerticalSlides:Oe,hasHorizontalSlides:je,hasVerticalSlides:Fe,hasNavigatedHorizontally:function(){return u.hasNavigatedHorizontally},hasNavigatedVertically:function(){return u.hasNavigatedVertically},addKeyBinding:x.addKeyBinding.bind(x),removeKeyBinding:x.removeKeyBinding.bind(x),triggerKey:x.triggerKey.bind(x),registerKeyboardShortcut:x.registerKeyboardShortcut.bind(x),getComputedSlideSize:le,getScale:function(){return h},getConfig:function(){return l},getQueryHash:Ih,getRevealElement:function(){return e},getSlidesElement:function(){return v.slides},getViewportElement:function(){return v.viewport},getBackgroundsElement:function(){return k.element},registerPlugin:I.registerPlugin.bind(I),hasPlugin:I.hasPlugin.bind(I),getPlugin:I.getPlugin.bind(I),getPlugins:I.getRegisteredPlugins.bind(I)};return Eh(s,wi(wi({},st),{},{announceStatus:_,getStatusText:q,print:M,focus:T,progress:C,controls:P,location:L,overview:R,fragments:A,slideContent:w,slideNumber:S,onUserInput:et,closeOverlay:ae,updateSlidesVisibility:Le,layoutSlideContents:se,transformSlides:J,cueAutoSlide:We,cancelAutoSlide:Ve})),st}var qf=_f,Wf=[];return qf.initialize=function(e){return Object.assign(qf,new _f(document.querySelector(".reveal"),e)),Wf.map((function(e){return e(qf)})),qf.initialize()},["configure","on","off","addEventListener","removeEventListener","registerPlugin"].forEach((function(e){qf[e]=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];Wf.push((function(t){var i;return(i=t[e]).call.apply(i,[null].concat(n))}))}})),qf.isReady=function(){return!1},qf.VERSION=Bf,qf})); +//# sourceMappingURL=reveal.js.map diff --git a/public/site_libs/revealjs/dist/reveal.js.map b/public/site_libs/revealjs/dist/reveal.js.map new file mode 100644 index 0000000..81ce370 --- /dev/null +++ b/public/site_libs/revealjs/dist/reveal.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reveal.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/set-global.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/native-weak-map.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/redefine.js","../node_modules/core-js/internals/path.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/to-integer.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/modules/es.object.assign.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/a-function.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/native-symbol.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/modules/es.array.map.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/modules/es.array.concat.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/native-promise-constructor.js","../node_modules/core-js/internals/redefine-all.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/set-species.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/iterate.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../node_modules/core-js/internals/task.js","../node_modules/core-js/internals/species-constructor.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/engine-is-ios.js","../node_modules/core-js/internals/engine-is-node.js","../node_modules/core-js/internals/microtask.js","../node_modules/core-js/internals/engine-is-webos-webkit.js","../node_modules/core-js/internals/new-promise-capability.js","../node_modules/core-js/internals/promise-resolve.js","../node_modules/core-js/modules/es.promise.js","../node_modules/core-js/internals/host-report-errors.js","../node_modules/core-js/internals/engine-is-browser.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/perform.js","../node_modules/core-js/internals/array-method-is-strict.js","../node_modules/core-js/internals/array-for-each.js","../node_modules/core-js/modules/web.dom-collections.for-each.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/modules/es.array.from.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/create-iterator-constructor.js","../node_modules/core-js/internals/define-iterator.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/whitespaces.js","../node_modules/core-js/internals/string-trim.js","../node_modules/core-js/internals/string-trim-forced.js","../node_modules/core-js/modules/es.string.trim.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/well-known-symbol-wrapped.js","../node_modules/core-js/internals/define-well-known-symbol.js","../node_modules/core-js/modules/es.symbol.js","../node_modules/core-js/modules/es.symbol.description.js","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-exec.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.match.js","../node_modules/core-js/modules/es.array.splice.js","../node_modules/core-js/internals/is-regexp.js","../node_modules/core-js/modules/es.string.split.js","../node_modules/core-js/internals/inherit-if-required.js","../node_modules/core-js/modules/es.number.constructor.js","../node_modules/core-js/modules/es.function.name.js","../node_modules/core-js/modules/es.array.join.js","../js/utils/constants.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/modules/es.string.replace.js","../node_modules/core-js/internals/same-value.js","../node_modules/core-js/modules/es.string.search.js","../js/utils/util.js","../js/utils/device.js","../node_modules/fitty/dist/fitty.module.js","../js/controllers/slidecontent.js","../js/controllers/slidenumber.js","../js/utils/color.js","../js/controllers/backgrounds.js","../node_modules/core-js/modules/es.object.keys.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/modules/es.array.slice.js","../js/controllers/autoanimate.js","../js/controllers/fragments.js","../js/controllers/overview.js","../js/controllers/keyboard.js","../js/controllers/location.js","../js/controllers/controls.js","../js/controllers/progress.js","../js/controllers/pointer.js","../node_modules/core-js/internals/object-to-array.js","../node_modules/core-js/modules/es.object.values.js","../js/utils/loader.js","../js/controllers/plugins.js","../node_modules/regenerator-runtime/runtime.js","../js/controllers/print.js","../js/controllers/touch.js","../js/controllers/focus.js","../js/controllers/notes.js","../node_modules/core-js/internals/array-fill.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/modules/es.array.fill.js","../js/components/playback.js","../js/config.js","../js/reveal.js","../js/index.js"],"sourcesContent":["var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var toObject = require('../internals/to-object');\n\nvar hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function hasOwn(it, key) {\n return hasOwnProperty.call(toObject(it), key);\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- requied for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.12.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n if (wmhas.call(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (objectHas(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.es/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] < 4 ? 1 : match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n return !String(Symbol()) ||\n // Chrome 38 Symbol has incorrect toString conversion\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n if (NATIVE_SYMBOL && has(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n }\n } return WellKnownSymbolsStore[name];\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_OUT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push.call(target, value); // filterOut\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterOut` method\n // https://github.com/tc39/proposal-array-filtering\n filterOut: createMethod(7)\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","/* eslint-disable no-proto -- safe */\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","module.exports = {};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var anObject = require('../internals/an-object');\n\nmodule.exports = function (iterator) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) {\n return anObject(returnMethod.call(iterator)).value;\n }\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator);\n throw error;\n }\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins -- safe\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func -- spec requirement\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar NativePromisePrototype = NativePromise && NativePromise.prototype;\nvar PromiseConstructor = NativePromise;\nvar PromiseConstructorPrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar SUBCLASSING = false;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructorPrototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = new PromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n PromiseConstructorPrototype = PromiseConstructor.prototype;\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructorPrototype, {\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.es/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function' && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n redefine(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\n redefine(NativePromisePrototype, 'catch', PromiseConstructorPrototype['catch'], { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromiseConstructorPrototype);\n }\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.es/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.es/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.es/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.es/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","module.exports = typeof window == 'object';\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","var anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n iteratorClose(iterator);\n throw error;\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject -- old IE */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.es/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.es/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.es/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","// `Symbol.prototype.description` getter\n// https://tc39.es/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","'use strict';\n/* eslint-disable regexp/no-assertion-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\nvar shared = require('./shared');\n\nvar nativeExec = RegExp.prototype.exec;\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExpPrototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? S.slice(q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, UNSUPPORTED_Y);\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","\nexport const SLIDES_SELECTOR = '.slides section';\nexport const HORIZONTAL_SLIDES_SELECTOR = '.slides>section';\nexport const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section';\n\n// Methods that may not be invoked via the postMessage API\nexport const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/;\n\n// Regex for retrieving the fragment style from a class attribute\nexport const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/;","var toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar replace = ''.replace;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n});\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : regexp[SEARCH];\n return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative(nativeSearch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","/**\n * Extend object a with the properties of object b.\n * If there's a conflict, object b takes precedence.\n *\n * @param {object} a\n * @param {object} b\n */\nexport const extend = ( a, b ) => {\n\n\tfor( let i in b ) {\n\t\ta[ i ] = b[ i ];\n\t}\n\n\treturn a;\n\n}\n\n/**\n * querySelectorAll but returns an Array.\n */\nexport const queryAll = ( el, selector ) => {\n\n\treturn Array.from( el.querySelectorAll( selector ) );\n\n}\n\n/**\n * classList.toggle() with cross browser support\n */\nexport const toggleClass = ( el, className, value ) => {\n\tif( value ) {\n\t\tel.classList.add( className );\n\t}\n\telse {\n\t\tel.classList.remove( className );\n\t}\n}\n\n/**\n * Utility for deserializing a value.\n *\n * @param {*} value\n * @return {*}\n */\nexport const deserialize = ( value ) => {\n\n\tif( typeof value === 'string' ) {\n\t\tif( value === 'null' ) return null;\n\t\telse if( value === 'true' ) return true;\n\t\telse if( value === 'false' ) return false;\n\t\telse if( value.match( /^-?[\\d\\.]+$/ ) ) return parseFloat( value );\n\t}\n\n\treturn value;\n\n}\n\n/**\n * Measures the distance in pixels between point a\n * and point b.\n *\n * @param {object} a point with x/y properties\n * @param {object} b point with x/y properties\n *\n * @return {number}\n */\nexport const distanceBetween = ( a, b ) => {\n\n\tlet dx = a.x - b.x,\n\t\tdy = a.y - b.y;\n\n\treturn Math.sqrt( dx*dx + dy*dy );\n\n}\n\n/**\n * Applies a CSS transform to the target element.\n *\n * @param {HTMLElement} element\n * @param {string} transform\n */\nexport const transformElement = ( element, transform ) => {\n\n\telement.style.transform = transform;\n\n}\n\n/**\n * Element.matches with IE support.\n *\n * @param {HTMLElement} target The element to match\n * @param {String} selector The CSS selector to match\n * the element against\n *\n * @return {Boolean}\n */\nexport const matches = ( target, selector ) => {\n\n\tlet matchesMethod = target.matches || target.matchesSelector || target.msMatchesSelector;\n\n\treturn !!( matchesMethod && matchesMethod.call( target, selector ) );\n\n}\n\n/**\n * Find the closest parent that matches the given\n * selector.\n *\n * @param {HTMLElement} target The child element\n * @param {String} selector The CSS selector to match\n * the parents against\n *\n * @return {HTMLElement} The matched parent or null\n * if no matching parent was found\n */\nexport const closest = ( target, selector ) => {\n\n\t// Native Element.closest\n\tif( typeof target.closest === 'function' ) {\n\t\treturn target.closest( selector );\n\t}\n\n\t// Polyfill\n\twhile( target ) {\n\t\tif( matches( target, selector ) ) {\n\t\t\treturn target;\n\t\t}\n\n\t\t// Keep searching\n\t\ttarget = target.parentNode;\n\t}\n\n\treturn null;\n\n}\n\n/**\n * Handling the fullscreen functionality via the fullscreen API\n *\n * @see http://fullscreen.spec.whatwg.org/\n * @see https://developer.mozilla.org/en-US/docs/DOM/Using_fullscreen_mode\n */\nexport const enterFullscreen = element => {\n\n\telement = element || document.documentElement;\n\n\t// Check which implementation is available\n\tlet requestMethod = element.requestFullscreen ||\n\t\t\t\t\t\telement.webkitRequestFullscreen ||\n\t\t\t\t\t\telement.webkitRequestFullScreen ||\n\t\t\t\t\t\telement.mozRequestFullScreen ||\n\t\t\t\t\t\telement.msRequestFullscreen;\n\n\tif( requestMethod ) {\n\t\trequestMethod.apply( element );\n\t}\n\n}\n\n/**\n * Creates an HTML element and returns a reference to it.\n * If the element already exists the existing instance will\n * be returned.\n *\n * @param {HTMLElement} container\n * @param {string} tagname\n * @param {string} classname\n * @param {string} innerHTML\n *\n * @return {HTMLElement}\n */\nexport const createSingletonNode = ( container, tagname, classname, innerHTML='' ) => {\n\n\t// Find all nodes matching the description\n\tlet nodes = container.querySelectorAll( '.' + classname );\n\n\t// Check all matches to find one which is a direct child of\n\t// the specified container\n\tfor( let i = 0; i < nodes.length; i++ ) {\n\t\tlet testNode = nodes[i];\n\t\tif( testNode.parentNode === container ) {\n\t\t\treturn testNode;\n\t\t}\n\t}\n\n\t// If no node was found, create it now\n\tlet node = document.createElement( tagname );\n\tnode.className = classname;\n\tnode.innerHTML = innerHTML;\n\tcontainer.appendChild( node );\n\n\treturn node;\n\n}\n\n/**\n * Injects the given CSS styles into the DOM.\n *\n * @param {string} value\n */\nexport const createStyleSheet = ( value ) => {\n\n\tlet tag = document.createElement( 'style' );\n\ttag.type = 'text/css';\n\n\tif( value && value.length > 0 ) {\n\t\tif( tag.styleSheet ) {\n\t\t\ttag.styleSheet.cssText = value;\n\t\t}\n\t\telse {\n\t\t\ttag.appendChild( document.createTextNode( value ) );\n\t\t}\n\t}\n\n\tdocument.head.appendChild( tag );\n\n\treturn tag;\n\n}\n\n/**\n * Returns a key:value hash of all query params.\n */\nexport const getQueryHash = () => {\n\n\tlet query = {};\n\n\tlocation.search.replace( /[A-Z0-9]+?=([\\w\\.%-]*)/gi, a => {\n\t\tquery[ a.split( '=' ).shift() ] = a.split( '=' ).pop();\n\t} );\n\n\t// Basic deserialization\n\tfor( let i in query ) {\n\t\tlet value = query[ i ];\n\n\t\tquery[ i ] = deserialize( unescape( value ) );\n\t}\n\n\t// Do not accept new dependencies via query config to avoid\n\t// the potential of malicious script injection\n\tif( typeof query['dependencies'] !== 'undefined' ) delete query['dependencies'];\n\n\treturn query;\n\n}\n\n/**\n * Returns the remaining height within the parent of the\n * target element.\n *\n * remaining height = [ configured parent height ] - [ current parent height ]\n *\n * @param {HTMLElement} element\n * @param {number} [height]\n */\nexport const getRemainingHeight = ( element, height = 0 ) => {\n\n\tif( element ) {\n\t\tlet newHeight, oldHeight = element.style.height;\n\n\t\t// Change the .stretch element height to 0 in order find the height of all\n\t\t// the other elements\n\t\telement.style.height = '0px';\n\n\t\t// In Overview mode, the parent (.slide) height is set of 700px.\n\t\t// Restore it temporarily to its natural height.\n\t\telement.parentNode.style.height = 'auto';\n\n\t\tnewHeight = height - element.parentNode.offsetHeight;\n\n\t\t// Restore the old height, just in case\n\t\telement.style.height = oldHeight + 'px';\n\n\t\t// Clear the parent (.slide) height. .removeProperty works in IE9+\n\t\telement.parentNode.style.removeProperty('height');\n\n\t\treturn newHeight;\n\t}\n\n\treturn height;\n\n}","const UA = navigator.userAgent;\nconst testElement = document.createElement( 'div' );\n\nexport const isMobile = /(iphone|ipod|ipad|android)/gi.test( UA ) ||\n\t\t\t\t\t\t( navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 ); // iPadOS\n\nexport const isChrome = /chrome/i.test( UA ) && !/edge/i.test( UA );\n\nexport const isAndroid = /android/gi.test( UA );\n\n// Flags if we should use zoom instead of transform to scale\n// up slides. Zoom produces crisper results but has a lot of\n// xbrowser quirks so we only use it in whitelisted browsers.\nexport const supportsZoom = 'zoom' in testElement.style && !isMobile &&\n\t\t\t\t( isChrome || /Version\\/[\\d\\.]+.*Safari/.test( UA ) );","/*\n * fitty v2.3.3 - Snugly resizes text to fit its parent container\n * Copyright (c) 2020 Rik Schennink <rik@pqina.nl> (https://pqina.nl/)\n */\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports.default = function (w) {\n\n // no window, early exit\n if (!w) return;\n\n // node list to array helper method\n var toArray = function toArray(nl) {\n return [].slice.call(nl);\n };\n\n // states\n var DrawState = {\n IDLE: 0,\n DIRTY_CONTENT: 1,\n DIRTY_LAYOUT: 2,\n DIRTY: 3\n };\n\n // all active fitty elements\n var fitties = [];\n\n // group all redraw calls till next frame, we cancel each frame request when a new one comes in. If no support for request animation frame, this is an empty function and supports for fitty stops.\n var redrawFrame = null;\n var requestRedraw = 'requestAnimationFrame' in w ? function () {\n w.cancelAnimationFrame(redrawFrame);\n redrawFrame = w.requestAnimationFrame(function () {\n return redraw(fitties.filter(function (f) {\n return f.dirty && f.active;\n }));\n });\n } : function () {};\n\n // sets all fitties to dirty so they are redrawn on the next redraw loop, then calls redraw\n var redrawAll = function redrawAll(type) {\n return function () {\n fitties.forEach(function (f) {\n return f.dirty = type;\n });\n requestRedraw();\n };\n };\n\n // redraws fitties so they nicely fit their parent container\n var redraw = function redraw(fitties) {\n\n // getting info from the DOM at this point should not trigger a reflow, let's gather as much intel as possible before triggering a reflow\n\n // check if styles of all fitties have been computed\n fitties.filter(function (f) {\n return !f.styleComputed;\n }).forEach(function (f) {\n f.styleComputed = computeStyle(f);\n });\n\n // restyle elements that require pre-styling, this triggers a reflow, please try to prevent by adding CSS rules (see docs)\n fitties.filter(shouldPreStyle).forEach(applyStyle);\n\n // we now determine which fitties should be redrawn\n var fittiesToRedraw = fitties.filter(shouldRedraw);\n\n // we calculate final styles for these fitties\n fittiesToRedraw.forEach(calculateStyles);\n\n // now we apply the calculated styles from our previous loop\n fittiesToRedraw.forEach(function (f) {\n applyStyle(f);\n markAsClean(f);\n });\n\n // now we dispatch events for all restyled fitties\n fittiesToRedraw.forEach(dispatchFitEvent);\n };\n\n var markAsClean = function markAsClean(f) {\n return f.dirty = DrawState.IDLE;\n };\n\n var calculateStyles = function calculateStyles(f) {\n\n // get available width from parent node\n f.availableWidth = f.element.parentNode.clientWidth;\n\n // the space our target element uses\n f.currentWidth = f.element.scrollWidth;\n\n // remember current font size\n f.previousFontSize = f.currentFontSize;\n\n // let's calculate the new font size\n f.currentFontSize = Math.min(Math.max(f.minSize, f.availableWidth / f.currentWidth * f.previousFontSize), f.maxSize);\n\n // if allows wrapping, only wrap when at minimum font size (otherwise would break container)\n f.whiteSpace = f.multiLine && f.currentFontSize === f.minSize ? 'normal' : 'nowrap';\n };\n\n // should always redraw if is not dirty layout, if is dirty layout, only redraw if size has changed\n var shouldRedraw = function shouldRedraw(f) {\n return f.dirty !== DrawState.DIRTY_LAYOUT || f.dirty === DrawState.DIRTY_LAYOUT && f.element.parentNode.clientWidth !== f.availableWidth;\n };\n\n // every fitty element is tested for invalid styles\n var computeStyle = function computeStyle(f) {\n\n // get style properties\n var style = w.getComputedStyle(f.element, null);\n\n // get current font size in pixels (if we already calculated it, use the calculated version)\n f.currentFontSize = parseFloat(style.getPropertyValue('font-size'));\n\n // get display type and wrap mode\n f.display = style.getPropertyValue('display');\n f.whiteSpace = style.getPropertyValue('white-space');\n };\n\n // determines if this fitty requires initial styling, can be prevented by applying correct styles through CSS\n var shouldPreStyle = function shouldPreStyle(f) {\n\n var preStyle = false;\n\n // if we already tested for prestyling we don't have to do it again\n if (f.preStyleTestCompleted) return false;\n\n // should have an inline style, if not, apply\n if (!/inline-/.test(f.display)) {\n preStyle = true;\n f.display = 'inline-block';\n }\n\n // to correctly calculate dimensions the element should have whiteSpace set to nowrap\n if (f.whiteSpace !== 'nowrap') {\n preStyle = true;\n f.whiteSpace = 'nowrap';\n }\n\n // we don't have to do this twice\n f.preStyleTestCompleted = true;\n\n return preStyle;\n };\n\n // apply styles to single fitty\n var applyStyle = function applyStyle(f) {\n f.element.style.whiteSpace = f.whiteSpace;\n f.element.style.display = f.display;\n f.element.style.fontSize = f.currentFontSize + 'px';\n };\n\n // dispatch a fit event on a fitty\n var dispatchFitEvent = function dispatchFitEvent(f) {\n f.element.dispatchEvent(new CustomEvent('fit', {\n detail: {\n oldValue: f.previousFontSize,\n newValue: f.currentFontSize,\n scaleFactor: f.currentFontSize / f.previousFontSize\n }\n }));\n };\n\n // fit method, marks the fitty as dirty and requests a redraw (this will also redraw any other fitty marked as dirty)\n var fit = function fit(f, type) {\n return function () {\n f.dirty = type;\n if (!f.active) return;\n requestRedraw();\n };\n };\n\n var init = function init(f) {\n\n // save some of the original CSS properties before we change them\n f.originalStyle = {\n whiteSpace: f.element.style.whiteSpace,\n display: f.element.style.display,\n fontSize: f.element.style.fontSize\n };\n\n // should we observe DOM mutations\n observeMutations(f);\n\n // this is a new fitty so we need to validate if it's styles are in order\n f.newbie = true;\n\n // because it's a new fitty it should also be dirty, we want it to redraw on the first loop\n f.dirty = true;\n\n // we want to be able to update this fitty\n fitties.push(f);\n };\n\n var destroy = function destroy(f) {\n return function () {\n\n // remove from fitties array\n fitties = fitties.filter(function (_) {\n return _.element !== f.element;\n });\n\n // stop observing DOM\n if (f.observeMutations) f.observer.disconnect();\n\n // reset the CSS properties we changes\n f.element.style.whiteSpace = f.originalStyle.whiteSpace;\n f.element.style.display = f.originalStyle.display;\n f.element.style.fontSize = f.originalStyle.fontSize;\n };\n };\n\n // add a new fitty, does not redraw said fitty\n var subscribe = function subscribe(f) {\n return function () {\n if (f.active) return;\n f.active = true;\n requestRedraw();\n };\n };\n\n // remove an existing fitty\n var unsubscribe = function unsubscribe(f) {\n return function () {\n return f.active = false;\n };\n };\n\n var observeMutations = function observeMutations(f) {\n\n // no observing?\n if (!f.observeMutations) return;\n\n // start observing mutations\n f.observer = new MutationObserver(fit(f, DrawState.DIRTY_CONTENT));\n\n // start observing\n f.observer.observe(f.element, f.observeMutations);\n };\n\n // default mutation observer settings\n var mutationObserverDefaultSetting = {\n subtree: true,\n childList: true,\n characterData: true\n };\n\n // default fitty options\n var defaultOptions = {\n minSize: 16,\n maxSize: 512,\n multiLine: true,\n observeMutations: 'MutationObserver' in w ? mutationObserverDefaultSetting : false\n };\n\n // array of elements in, fitty instances out\n function fittyCreate(elements, options) {\n\n // set options object\n var fittyOptions = _extends({}, defaultOptions, options);\n\n // create fitties\n var publicFitties = elements.map(function (element) {\n\n // create fitty instance\n var f = _extends({}, fittyOptions, {\n\n // internal options for this fitty\n element: element,\n active: true\n });\n\n // initialise this fitty\n init(f);\n\n // expose API\n return {\n element: element,\n fit: fit(f, DrawState.DIRTY),\n unfreeze: subscribe(f),\n freeze: unsubscribe(f),\n unsubscribe: destroy(f)\n };\n });\n\n // call redraw on newly initiated fitties\n requestRedraw();\n\n // expose fitties\n return publicFitties;\n }\n\n // fitty creation function\n function fitty(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\n // if target is a string\n return typeof target === 'string' ?\n\n // treat it as a querySelector\n fittyCreate(toArray(document.querySelectorAll(target)), options) :\n\n // create single fitty\n fittyCreate([target], options)[0];\n }\n\n // handles viewport changes, redraws all fitties, but only does so after a timeout\n var resizeDebounce = null;\n var onWindowResized = function onWindowResized() {\n w.clearTimeout(resizeDebounce);\n resizeDebounce = w.setTimeout(redrawAll(DrawState.DIRTY_LAYOUT), fitty.observeWindowDelay);\n };\n\n // define observe window property, so when we set it to true or false events are automatically added and removed\n var events = ['resize', 'orientationchange'];\n Object.defineProperty(fitty, 'observeWindow', {\n set: function set(enabled) {\n var method = (enabled ? 'add' : 'remove') + 'EventListener';\n events.forEach(function (e) {\n w[method](e, onWindowResized);\n });\n }\n });\n\n // fitty global properties (by setting observeWindow to true the events above get added)\n fitty.observeWindow = true;\n fitty.observeWindowDelay = 100;\n\n // public fit all method, will force redraw no matter what\n fitty.fitAll = redrawAll(DrawState.DIRTY);\n\n // export our fitty function, we don't want to keep it to our selves\n return fitty;\n}(typeof window === 'undefined' ? null : window);","import { HORIZONTAL_SLIDES_SELECTOR, VERTICAL_SLIDES_SELECTOR } from '../utils/constants.js'\nimport { extend, queryAll, closest } from '../utils/util.js'\nimport { isMobile } from '../utils/device.js'\n\nimport fitty from 'fitty';\n\n/**\n * Handles loading, unloading and playback of slide\n * content such as images, videos and iframes.\n */\nexport default class SlideContent {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.startEmbeddedIframe = this.startEmbeddedIframe.bind( this );\n\n\t}\n\n\t/**\n\t * Should the given element be preloaded?\n\t * Decides based on local element attributes and global config.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tshouldPreload( element ) {\n\n\t\t// Prefer an explicit global preload setting\n\t\tlet preload = this.Reveal.getConfig().preloadIframes;\n\n\t\t// If no global setting is available, fall back on the element's\n\t\t// own preload setting\n\t\tif( typeof preload !== 'boolean' ) {\n\t\t\tpreload = element.hasAttribute( 'data-preload' );\n\t\t}\n\n\t\treturn preload;\n\t}\n\n\t/**\n\t * Called when the given slide is within the configured view\n\t * distance. Shows the slide element and loads any content\n\t * that is set to load lazily (data-src).\n\t *\n\t * @param {HTMLElement} slide Slide to show\n\t */\n\tload( slide, options = {} ) {\n\n\t\t// Show the slide element\n\t\tslide.style.display = this.Reveal.getConfig().display;\n\n\t\t// Media elements with data-src attributes\n\t\tqueryAll( slide, 'img[data-src], video[data-src], audio[data-src], iframe[data-src]' ).forEach( element => {\n\t\t\tif( element.tagName !== 'IFRAME' || this.shouldPreload( element ) ) {\n\t\t\t\telement.setAttribute( 'src', element.getAttribute( 'data-src' ) );\n\t\t\t\telement.setAttribute( 'data-lazy-loaded', '' );\n\t\t\t\telement.removeAttribute( 'data-src' );\n\t\t\t}\n\t\t} );\n\n\t\t// Media elements with <source> children\n\t\tqueryAll( slide, 'video, audio' ).forEach( media => {\n\t\t\tlet sources = 0;\n\n\t\t\tqueryAll( media, 'source[data-src]' ).forEach( source => {\n\t\t\t\tsource.setAttribute( 'src', source.getAttribute( 'data-src' ) );\n\t\t\t\tsource.removeAttribute( 'data-src' );\n\t\t\t\tsource.setAttribute( 'data-lazy-loaded', '' );\n\t\t\t\tsources += 1;\n\t\t\t} );\n\n\t\t\t// Enable inline video playback in mobile Safari\n\t\t\tif( isMobile && media.tagName === 'VIDEO' ) {\n\t\t\t\tmedia.setAttribute( 'playsinline', '' );\n\t\t\t}\n\n\t\t\t// If we rewrote sources for this video/audio element, we need\n\t\t\t// to manually tell it to load from its new origin\n\t\t\tif( sources > 0 ) {\n\t\t\t\tmedia.load();\n\t\t\t}\n\t\t} );\n\n\n\t\t// Show the corresponding background element\n\t\tlet background = slide.slideBackgroundElement;\n\t\tif( background ) {\n\t\t\tbackground.style.display = 'block';\n\n\t\t\tlet backgroundContent = slide.slideBackgroundContentElement;\n\t\t\tlet backgroundIframe = slide.getAttribute( 'data-background-iframe' );\n\n\t\t\t// If the background contains media, load it\n\t\t\tif( background.hasAttribute( 'data-loaded' ) === false ) {\n\t\t\t\tbackground.setAttribute( 'data-loaded', 'true' );\n\n\t\t\t\tlet backgroundImage = slide.getAttribute( 'data-background-image' ),\n\t\t\t\t\tbackgroundVideo = slide.getAttribute( 'data-background-video' ),\n\t\t\t\t\tbackgroundVideoLoop = slide.hasAttribute( 'data-background-video-loop' ),\n\t\t\t\t\tbackgroundVideoMuted = slide.hasAttribute( 'data-background-video-muted' );\n\n\t\t\t\t// Images\n\t\t\t\tif( backgroundImage ) {\n\t\t\t\t\t// base64\n\t\t\t\t\tif( /^data:/.test( backgroundImage.trim() ) ) {\n\t\t\t\t\t\tbackgroundContent.style.backgroundImage = `url(${backgroundImage.trim()})`;\n\t\t\t\t\t}\n\t\t\t\t\t// URL(s)\n\t\t\t\t\telse {\n\t\t\t\t\t\tbackgroundContent.style.backgroundImage = backgroundImage.split( ',' ).map( background => {\n\t\t\t\t\t\t\treturn `url(${encodeURI(background.trim())})`;\n\t\t\t\t\t\t}).join( ',' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Videos\n\t\t\t\telse if ( backgroundVideo && !this.Reveal.isSpeakerNotes() ) {\n\t\t\t\t\tlet video = document.createElement( 'video' );\n\n\t\t\t\t\tif( backgroundVideoLoop ) {\n\t\t\t\t\t\tvideo.setAttribute( 'loop', '' );\n\t\t\t\t\t}\n\n\t\t\t\t\tif( backgroundVideoMuted ) {\n\t\t\t\t\t\tvideo.muted = true;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Enable inline playback in mobile Safari\n\t\t\t\t\t//\n\t\t\t\t\t// Mute is required for video to play when using\n\t\t\t\t\t// swipe gestures to navigate since they don't\n\t\t\t\t\t// count as direct user actions :'(\n\t\t\t\t\tif( isMobile ) {\n\t\t\t\t\t\tvideo.muted = true;\n\t\t\t\t\t\tvideo.setAttribute( 'playsinline', '' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Support comma separated lists of video sources\n\t\t\t\t\tbackgroundVideo.split( ',' ).forEach( source => {\n\t\t\t\t\t\tvideo.innerHTML += '<source src=\"'+ source +'\">';\n\t\t\t\t\t} );\n\n\t\t\t\t\tbackgroundContent.appendChild( video );\n\t\t\t\t}\n\t\t\t\t// Iframes\n\t\t\t\telse if( backgroundIframe && options.excludeIframes !== true ) {\n\t\t\t\t\tlet iframe = document.createElement( 'iframe' );\n\t\t\t\t\tiframe.setAttribute( 'allowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'mozallowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'webkitallowfullscreen', '' );\n\t\t\t\t\tiframe.setAttribute( 'allow', 'autoplay' );\n\n\t\t\t\t\tiframe.setAttribute( 'data-src', backgroundIframe );\n\n\t\t\t\t\tiframe.style.width = '100%';\n\t\t\t\t\tiframe.style.height = '100%';\n\t\t\t\t\tiframe.style.maxHeight = '100%';\n\t\t\t\t\tiframe.style.maxWidth = '100%';\n\n\t\t\t\t\tbackgroundContent.appendChild( iframe );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Start loading preloadable iframes\n\t\t\tlet backgroundIframeElement = backgroundContent.querySelector( 'iframe[data-src]' );\n\t\t\tif( backgroundIframeElement ) {\n\n\t\t\t\t// Check if this iframe is eligible to be preloaded\n\t\t\t\tif( this.shouldPreload( background ) && !/autoplay=(1|true|yes)/gi.test( backgroundIframe ) ) {\n\t\t\t\t\tif( backgroundIframeElement.getAttribute( 'src' ) !== backgroundIframe ) {\n\t\t\t\t\t\tbackgroundIframeElement.setAttribute( 'src', backgroundIframe );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\tthis.layout( slide );\n\n\t}\n\n\t/**\n\t * Applies JS-dependent layout helpers for the given slide,\n\t * if there are any.\n\t */\n\tlayout( slide ) {\n\n\t\t// Autosize text with the r-fit-text class based on the\n\t\t// size of its container. This needs to happen after the\n\t\t// slide is visible in order to measure the text.\n\t\tArray.from( slide.querySelectorAll( '.r-fit-text' ) ).forEach( element => {\n\t\t\tfitty( element, {\n\t\t\t\tminSize: 24,\n\t\t\t\tmaxSize: this.Reveal.getConfig().height * 0.8,\n\t\t\t\tobserveMutations: false,\n\t\t\t\tobserveWindow: false\n\t\t\t} );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Unloads and hides the given slide. This is called when the\n\t * slide is moved outside of the configured view distance.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tunload( slide ) {\n\n\t\t// Hide the slide element\n\t\tslide.style.display = 'none';\n\n\t\t// Hide the corresponding background element\n\t\tlet background = this.Reveal.getSlideBackground( slide );\n\t\tif( background ) {\n\t\t\tbackground.style.display = 'none';\n\n\t\t\t// Unload any background iframes\n\t\t\tqueryAll( background, 'iframe[src]' ).forEach( element => {\n\t\t\t\telement.removeAttribute( 'src' );\n\t\t\t} );\n\t\t}\n\n\t\t// Reset lazy-loaded media elements with src attributes\n\t\tqueryAll( slide, 'video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]' ).forEach( element => {\n\t\t\telement.setAttribute( 'data-src', element.getAttribute( 'src' ) );\n\t\t\telement.removeAttribute( 'src' );\n\t\t} );\n\n\t\t// Reset lazy-loaded media elements with <source> children\n\t\tqueryAll( slide, 'video[data-lazy-loaded] source[src], audio source[src]' ).forEach( source => {\n\t\t\tsource.setAttribute( 'data-src', source.getAttribute( 'src' ) );\n\t\t\tsource.removeAttribute( 'src' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Enforces origin-specific format rules for embedded media.\n\t */\n\tformatEmbeddedContent() {\n\n\t\tlet _appendParamToIframeSource = ( sourceAttribute, sourceURL, param ) => {\n\t\t\tqueryAll( this.Reveal.getSlidesElement(), 'iframe['+ sourceAttribute +'*=\"'+ sourceURL +'\"]' ).forEach( el => {\n\t\t\t\tlet src = el.getAttribute( sourceAttribute );\n\t\t\t\tif( src && src.indexOf( param ) === -1 ) {\n\t\t\t\t\tel.setAttribute( sourceAttribute, src + ( !/\\?/.test( src ) ? '?' : '&' ) + param );\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\t// YouTube frames must include \"?enablejsapi=1\"\n\t\t_appendParamToIframeSource( 'src', 'youtube.com/embed/', 'enablejsapi=1' );\n\t\t_appendParamToIframeSource( 'data-src', 'youtube.com/embed/', 'enablejsapi=1' );\n\n\t\t// Vimeo frames must include \"?api=1\"\n\t\t_appendParamToIframeSource( 'src', 'player.vimeo.com/', 'api=1' );\n\t\t_appendParamToIframeSource( 'data-src', 'player.vimeo.com/', 'api=1' );\n\n\t}\n\n\t/**\n\t * Start playback of any embedded content inside of\n\t * the given element.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tstartEmbeddedContent( element ) {\n\n\t\tif( element && !this.Reveal.isSpeakerNotes() ) {\n\n\t\t\t// Restart GIFs\n\t\t\tqueryAll( element, 'img[src$=\".gif\"]' ).forEach( el => {\n\t\t\t\t// Setting the same unchanged source like this was confirmed\n\t\t\t\t// to work in Chrome, FF & Safari\n\t\t\t\tel.setAttribute( 'src', el.getAttribute( 'src' ) );\n\t\t\t} );\n\n\t\t\t// HTML5 media elements\n\t\t\tqueryAll( element, 'video, audio' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Prefer an explicit global autoplay setting\n\t\t\t\tlet autoplay = this.Reveal.getConfig().autoPlayMedia;\n\n\t\t\t\t// If no global setting is available, fall back on the element's\n\t\t\t\t// own autoplay setting\n\t\t\t\tif( typeof autoplay !== 'boolean' ) {\n\t\t\t\t\tautoplay = el.hasAttribute( 'data-autoplay' ) || !!closest( el, '.slide-background' );\n\t\t\t\t}\n\n\t\t\t\tif( autoplay && typeof el.play === 'function' ) {\n\n\t\t\t\t\t// If the media is ready, start playback\n\t\t\t\t\tif( el.readyState > 1 ) {\n\t\t\t\t\t\tthis.startEmbeddedMedia( { target: el } );\n\t\t\t\t\t}\n\t\t\t\t\t// Mobile devices never fire a loaded event so instead\n\t\t\t\t\t// of waiting, we initiate playback\n\t\t\t\t\telse if( isMobile ) {\n\t\t\t\t\t\tlet promise = el.play();\n\n\t\t\t\t\t\t// If autoplay does not work, ensure that the controls are visible so\n\t\t\t\t\t\t// that the viewer can start the media on their own\n\t\t\t\t\t\tif( promise && typeof promise.catch === 'function' && el.controls === false ) {\n\t\t\t\t\t\t\tpromise.catch( () => {\n\t\t\t\t\t\t\t\tel.controls = true;\n\n\t\t\t\t\t\t\t\t// Once the video does start playing, hide the controls again\n\t\t\t\t\t\t\t\tel.addEventListener( 'play', () => {\n\t\t\t\t\t\t\t\t\tel.controls = false;\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// If the media isn't loaded, wait before playing\n\t\t\t\t\telse {\n\t\t\t\t\t\tel.removeEventListener( 'loadeddata', this.startEmbeddedMedia ); // remove first to avoid dupes\n\t\t\t\t\t\tel.addEventListener( 'loadeddata', this.startEmbeddedMedia );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Normal iframes\n\t\t\tqueryAll( element, 'iframe[src]' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.startEmbeddedIframe( { target: el } );\n\t\t\t} );\n\n\t\t\t// Lazy loading iframes\n\t\t\tqueryAll( element, 'iframe[data-src]' ).forEach( el => {\n\t\t\t\tif( closest( el, '.fragment' ) && !closest( el, '.fragment.visible' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif( el.getAttribute( 'src' ) !== el.getAttribute( 'data-src' ) ) {\n\t\t\t\t\tel.removeEventListener( 'load', this.startEmbeddedIframe ); // remove first to avoid dupes\n\t\t\t\t\tel.addEventListener( 'load', this.startEmbeddedIframe );\n\t\t\t\t\tel.setAttribute( 'src', el.getAttribute( 'data-src' ) );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Starts playing an embedded video/audio element after\n\t * it has finished loading.\n\t *\n\t * @param {object} event\n\t */\n\tstartEmbeddedMedia( event ) {\n\n\t\tlet isAttachedToDOM = !!closest( event.target, 'html' ),\n\t\t\tisVisible \t\t= !!closest( event.target, '.present' );\n\n\t\tif( isAttachedToDOM && isVisible ) {\n\t\t\tevent.target.currentTime = 0;\n\t\t\tevent.target.play();\n\t\t}\n\n\t\tevent.target.removeEventListener( 'loadeddata', this.startEmbeddedMedia );\n\n\t}\n\n\t/**\n\t * \"Starts\" the content of an embedded iframe using the\n\t * postMessage API.\n\t *\n\t * @param {object} event\n\t */\n\tstartEmbeddedIframe( event ) {\n\n\t\tlet iframe = event.target;\n\n\t\tif( iframe && iframe.contentWindow ) {\n\n\t\t\tlet isAttachedToDOM = !!closest( event.target, 'html' ),\n\t\t\t\tisVisible \t\t= !!closest( event.target, '.present' );\n\n\t\t\tif( isAttachedToDOM && isVisible ) {\n\n\t\t\t\t// Prefer an explicit global autoplay setting\n\t\t\t\tlet autoplay = this.Reveal.getConfig().autoPlayMedia;\n\n\t\t\t\t// If no global setting is available, fall back on the element's\n\t\t\t\t// own autoplay setting\n\t\t\t\tif( typeof autoplay !== 'boolean' ) {\n\t\t\t\t\tautoplay = iframe.hasAttribute( 'data-autoplay' ) || !!closest( iframe, '.slide-background' );\n\t\t\t\t}\n\n\t\t\t\t// YouTube postMessage API\n\t\t\t\tif( /youtube\\.com\\/embed\\//.test( iframe.getAttribute( 'src' ) ) && autoplay ) {\n\t\t\t\t\tiframe.contentWindow.postMessage( '{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*' );\n\t\t\t\t}\n\t\t\t\t// Vimeo postMessage API\n\t\t\t\telse if( /player\\.vimeo\\.com\\//.test( iframe.getAttribute( 'src' ) ) && autoplay ) {\n\t\t\t\t\tiframe.contentWindow.postMessage( '{\"method\":\"play\"}', '*' );\n\t\t\t\t}\n\t\t\t\t// Generic postMessage API\n\t\t\t\telse {\n\t\t\t\t\tiframe.contentWindow.postMessage( 'slide:start', '*' );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Stop playback of any embedded content inside of\n\t * the targeted slide.\n\t *\n\t * @param {HTMLElement} element\n\t */\n\tstopEmbeddedContent( element, options = {} ) {\n\n\t\toptions = extend( {\n\t\t\t// Defaults\n\t\t\tunloadIframes: true\n\t\t}, options );\n\n\t\tif( element && element.parentNode ) {\n\t\t\t// HTML5 media elements\n\t\t\tqueryAll( element, 'video, audio' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && typeof el.pause === 'function' ) {\n\t\t\t\t\tel.setAttribute('data-paused-by-reveal', '');\n\t\t\t\t\tel.pause();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Generic postMessage API for non-lazy loaded iframes\n\t\t\tqueryAll( element, 'iframe' ).forEach( el => {\n\t\t\t\tif( el.contentWindow ) el.contentWindow.postMessage( 'slide:stop', '*' );\n\t\t\t\tel.removeEventListener( 'load', this.startEmbeddedIframe );\n\t\t\t});\n\n\t\t\t// YouTube postMessage API\n\t\t\tqueryAll( element, 'iframe[src*=\"youtube.com/embed/\"]' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && el.contentWindow && typeof el.contentWindow.postMessage === 'function' ) {\n\t\t\t\t\tel.contentWindow.postMessage( '{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*' );\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Vimeo postMessage API\n\t\t\tqueryAll( element, 'iframe[src*=\"player.vimeo.com/\"]' ).forEach( el => {\n\t\t\t\tif( !el.hasAttribute( 'data-ignore' ) && el.contentWindow && typeof el.contentWindow.postMessage === 'function' ) {\n\t\t\t\t\tel.contentWindow.postMessage( '{\"method\":\"pause\"}', '*' );\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif( options.unloadIframes === true ) {\n\t\t\t\t// Unload lazy-loaded iframes\n\t\t\t\tqueryAll( element, 'iframe[data-src]' ).forEach( el => {\n\t\t\t\t\t// Only removing the src doesn't actually unload the frame\n\t\t\t\t\t// in all browsers (Firefox) so we set it to blank first\n\t\t\t\t\tel.setAttribute( 'src', 'about:blank' );\n\t\t\t\t\tel.removeAttribute( 'src' );\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t}\n\n}","/**\n * Handles the display of reveal.js' optional slide number.\n */\nexport default class SlideNumber {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'slide-number';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tlet slideNumberDisplay = 'none';\n\t\tif( config.slideNumber && !this.Reveal.isPrintingPDF() ) {\n\t\t\tif( config.showSlideNumber === 'all' ) {\n\t\t\t\tslideNumberDisplay = 'block';\n\t\t\t}\n\t\t\telse if( config.showSlideNumber === 'speaker' && this.Reveal.isSpeakerNotes() ) {\n\t\t\t\tslideNumberDisplay = 'block';\n\t\t\t}\n\t\t}\n\n\t\tthis.element.style.display = slideNumberDisplay;\n\n\t}\n\n\t/**\n\t * Updates the slide number to match the current slide.\n\t */\n\tupdate() {\n\n\t\t// Update slide number if enabled\n\t\tif( this.Reveal.getConfig().slideNumber && this.element ) {\n\t\t\tthis.element.innerHTML = this.getSlideNumber();\n\t\t}\n\n\t}\n\n\t/**\n\t * Returns the HTML string corresponding to the current slide\n\t * number, including formatting.\n\t */\n\tgetSlideNumber( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\t\tlet value;\n\t\tlet format = 'h.v';\n\n\t\tif ( typeof config.slideNumber === 'function' ) {\n\t\t\tvalue = config.slideNumber( slide );\n\t\t} else {\n\t\t\t// Check if a custom number format is available\n\t\t\tif( typeof config.slideNumber === 'string' ) {\n\t\t\t\tformat = config.slideNumber;\n\t\t\t}\n\n\t\t\t// If there are ONLY vertical slides in this deck, always use\n\t\t\t// a flattened slide number\n\t\t\tif( !/c/.test( format ) && this.Reveal.getHorizontalSlides().length === 1 ) {\n\t\t\t\tformat = 'c';\n\t\t\t}\n\n\t\t\t// Offset the current slide number by 1 to make it 1-indexed\n\t\t\tlet horizontalOffset = slide && slide.dataset.visibility === 'uncounted' ? 0 : 1;\n\n\t\t\tvalue = [];\n\t\t\tswitch( format ) {\n\t\t\t\tcase 'c':\n\t\t\t\t\tvalue.push( this.Reveal.getSlidePastCount( slide ) + horizontalOffset );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'c/t':\n\t\t\t\t\tvalue.push( this.Reveal.getSlidePastCount( slide ) + horizontalOffset, '/', this.Reveal.getTotalSlides() );\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tlet indices = this.Reveal.getIndices( slide );\n\t\t\t\t\tvalue.push( indices.h + horizontalOffset );\n\t\t\t\t\tlet sep = format === 'h/v' ? '/' : '.';\n\t\t\t\t\tif( this.Reveal.isVerticalSlide( slide ) ) value.push( sep, indices.v + 1 );\n\t\t\t}\n\t\t}\n\n\t\tlet url = '#' + this.Reveal.location.getHash( slide );\n\t\treturn this.formatNumber( value[0], value[1], value[2], url );\n\n\t}\n\n\t/**\n\t * Applies HTML formatting to a slide number before it's\n\t * written to the DOM.\n\t *\n\t * @param {number} a Current slide\n\t * @param {string} delimiter Character to separate slide numbers\n\t * @param {(number|*)} b Total slides\n\t * @param {HTMLElement} [url='#'+locationHash()] The url to link to\n\t * @return {string} HTML string fragment\n\t */\n\tformatNumber( a, delimiter, b, url = '#' + this.Reveal.location.getHash() ) {\n\n\t\tif( typeof b === 'number' && !isNaN( b ) ) {\n\t\t\treturn `<a href=\"${url}\">\n\t\t\t\t\t<span class=\"slide-number-a\">${a}</span>\n\t\t\t\t\t<span class=\"slide-number-delimiter\">${delimiter}</span>\n\t\t\t\t\t<span class=\"slide-number-b\">${b}</span>\n\t\t\t\t\t</a>`;\n\t\t}\n\t\telse {\n\t\t\treturn `<a href=\"${url}\">\n\t\t\t\t\t<span class=\"slide-number-a\">${a}</span>\n\t\t\t\t\t</a>`;\n\t\t}\n\n\t}\n\n}","/**\n * Converts various color input formats to an {r:0,g:0,b:0} object.\n *\n * @param {string} color The string representation of a color\n * @example\n * colorToRgb('#000');\n * @example\n * colorToRgb('#000000');\n * @example\n * colorToRgb('rgb(0,0,0)');\n * @example\n * colorToRgb('rgba(0,0,0)');\n *\n * @return {{r: number, g: number, b: number, [a]: number}|null}\n */\nexport const colorToRgb = ( color ) => {\n\n\tlet hex3 = color.match( /^#([0-9a-f]{3})$/i );\n\tif( hex3 && hex3[1] ) {\n\t\thex3 = hex3[1];\n\t\treturn {\n\t\t\tr: parseInt( hex3.charAt( 0 ), 16 ) * 0x11,\n\t\t\tg: parseInt( hex3.charAt( 1 ), 16 ) * 0x11,\n\t\t\tb: parseInt( hex3.charAt( 2 ), 16 ) * 0x11\n\t\t};\n\t}\n\n\tlet hex6 = color.match( /^#([0-9a-f]{6})$/i );\n\tif( hex6 && hex6[1] ) {\n\t\thex6 = hex6[1];\n\t\treturn {\n\t\t\tr: parseInt( hex6.substr( 0, 2 ), 16 ),\n\t\t\tg: parseInt( hex6.substr( 2, 2 ), 16 ),\n\t\t\tb: parseInt( hex6.substr( 4, 2 ), 16 )\n\t\t};\n\t}\n\n\tlet rgb = color.match( /^rgb\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\)$/i );\n\tif( rgb ) {\n\t\treturn {\n\t\t\tr: parseInt( rgb[1], 10 ),\n\t\t\tg: parseInt( rgb[2], 10 ),\n\t\t\tb: parseInt( rgb[3], 10 )\n\t\t};\n\t}\n\n\tlet rgba = color.match( /^rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\,\\s*([\\d]+|[\\d]*.[\\d]+)\\s*\\)$/i );\n\tif( rgba ) {\n\t\treturn {\n\t\t\tr: parseInt( rgba[1], 10 ),\n\t\t\tg: parseInt( rgba[2], 10 ),\n\t\t\tb: parseInt( rgba[3], 10 ),\n\t\t\ta: parseFloat( rgba[4] )\n\t\t};\n\t}\n\n\treturn null;\n\n}\n\n/**\n * Calculates brightness on a scale of 0-255.\n *\n * @param {string} color See colorToRgb for supported formats.\n * @see {@link colorToRgb}\n */\nexport const colorBrightness = ( color ) => {\n\n\tif( typeof color === 'string' ) color = colorToRgb( color );\n\n\tif( color ) {\n\t\treturn ( color.r * 299 + color.g * 587 + color.b * 114 ) / 1000;\n\t}\n\n\treturn null;\n\n}","import { queryAll } from '../utils/util.js'\nimport { colorToRgb, colorBrightness } from '../utils/color.js'\n\n/**\n * Creates and updates slide backgrounds.\n */\nexport default class Backgrounds {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'backgrounds';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Creates the slide background elements and appends them\n\t * to the background container. One element is created per\n\t * slide no matter if the given slide has visible background.\n\t */\n\tcreate() {\n\n\t\t// Clear prior backgrounds\n\t\tthis.element.innerHTML = '';\n\t\tthis.element.classList.add( 'no-transition' );\n\n\t\t// Iterate over all horizontal slides\n\t\tthis.Reveal.getHorizontalSlides().forEach( slideh => {\n\n\t\t\tlet backgroundStack = this.createBackground( slideh, this.element );\n\n\t\t\t// Iterate over all vertical slides\n\t\t\tqueryAll( slideh, 'section' ).forEach( slidev => {\n\n\t\t\t\tthis.createBackground( slidev, backgroundStack );\n\n\t\t\t\tbackgroundStack.classList.add( 'stack' );\n\n\t\t\t} );\n\n\t\t} );\n\n\t\t// Add parallax background if specified\n\t\tif( this.Reveal.getConfig().parallaxBackgroundImage ) {\n\n\t\t\tthis.element.style.backgroundImage = 'url(\"' + this.Reveal.getConfig().parallaxBackgroundImage + '\")';\n\t\t\tthis.element.style.backgroundSize = this.Reveal.getConfig().parallaxBackgroundSize;\n\t\t\tthis.element.style.backgroundRepeat = this.Reveal.getConfig().parallaxBackgroundRepeat;\n\t\t\tthis.element.style.backgroundPosition = this.Reveal.getConfig().parallaxBackgroundPosition;\n\n\t\t\t// Make sure the below properties are set on the element - these properties are\n\t\t\t// needed for proper transitions to be set on the element via CSS. To remove\n\t\t\t// annoying background slide-in effect when the presentation starts, apply\n\t\t\t// these properties after short time delay\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.Reveal.getRevealElement().classList.add( 'has-parallax-background' );\n\t\t\t}, 1 );\n\n\t\t}\n\t\telse {\n\n\t\t\tthis.element.style.backgroundImage = '';\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'has-parallax-background' );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Creates a background for the given slide.\n\t *\n\t * @param {HTMLElement} slide\n\t * @param {HTMLElement} container The element that the background\n\t * should be appended to\n\t * @return {HTMLElement} New background div\n\t */\n\tcreateBackground( slide, container ) {\n\n\t\t// Main slide background element\n\t\tlet element = document.createElement( 'div' );\n\t\telement.className = 'slide-background ' + slide.className.replace( /present|past|future/, '' );\n\n\t\t// Inner background element that wraps images/videos/iframes\n\t\tlet contentElement = document.createElement( 'div' );\n\t\tcontentElement.className = 'slide-background-content';\n\n\t\telement.appendChild( contentElement );\n\t\tcontainer.appendChild( element );\n\n\t\tslide.slideBackgroundElement = element;\n\t\tslide.slideBackgroundContentElement = contentElement;\n\n\t\t// Syncs the background to reflect all current background settings\n\t\tthis.sync( slide );\n\n\t\treturn element;\n\n\t}\n\n\t/**\n\t * Renders all of the visual properties of a slide background\n\t * based on the various background attributes.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tsync( slide ) {\n\n\t\tconst element = slide.slideBackgroundElement,\n\t\t\tcontentElement = slide.slideBackgroundContentElement;\n\n\t\tconst data = {\n\t\t\tbackground: slide.getAttribute( 'data-background' ),\n\t\t\tbackgroundSize: slide.getAttribute( 'data-background-size' ),\n\t\t\tbackgroundImage: slide.getAttribute( 'data-background-image' ),\n\t\t\tbackgroundVideo: slide.getAttribute( 'data-background-video' ),\n\t\t\tbackgroundIframe: slide.getAttribute( 'data-background-iframe' ),\n\t\t\tbackgroundColor: slide.getAttribute( 'data-background-color' ),\n\t\t\tbackgroundRepeat: slide.getAttribute( 'data-background-repeat' ),\n\t\t\tbackgroundPosition: slide.getAttribute( 'data-background-position' ),\n\t\t\tbackgroundTransition: slide.getAttribute( 'data-background-transition' ),\n\t\t\tbackgroundOpacity: slide.getAttribute( 'data-background-opacity' ),\n\t\t};\n\n\t\tconst dataPreload = slide.hasAttribute( 'data-preload' );\n\n\t\t// Reset the prior background state in case this is not the\n\t\t// initial sync\n\t\tslide.classList.remove( 'has-dark-background' );\n\t\tslide.classList.remove( 'has-light-background' );\n\n\t\telement.removeAttribute( 'data-loaded' );\n\t\telement.removeAttribute( 'data-background-hash' );\n\t\telement.removeAttribute( 'data-background-size' );\n\t\telement.removeAttribute( 'data-background-transition' );\n\t\telement.style.backgroundColor = '';\n\n\t\tcontentElement.style.backgroundSize = '';\n\t\tcontentElement.style.backgroundRepeat = '';\n\t\tcontentElement.style.backgroundPosition = '';\n\t\tcontentElement.style.backgroundImage = '';\n\t\tcontentElement.style.opacity = '';\n\t\tcontentElement.innerHTML = '';\n\n\t\tif( data.background ) {\n\t\t\t// Auto-wrap image urls in url(...)\n\t\t\tif( /^(http|file|\\/\\/)/gi.test( data.background ) || /\\.(svg|png|jpg|jpeg|gif|bmp)([?#\\s]|$)/gi.test( data.background ) ) {\n\t\t\t\tslide.setAttribute( 'data-background-image', data.background );\n\t\t\t}\n\t\t\telse {\n\t\t\t\telement.style.background = data.background;\n\t\t\t}\n\t\t}\n\n\t\t// Create a hash for this combination of background settings.\n\t\t// This is used to determine when two slide backgrounds are\n\t\t// the same.\n\t\tif( data.background || data.backgroundColor || data.backgroundImage || data.backgroundVideo || data.backgroundIframe ) {\n\t\t\telement.setAttribute( 'data-background-hash', data.background +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundSize +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundImage +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundVideo +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundIframe +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundColor +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundRepeat +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundPosition +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundTransition +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.backgroundOpacity );\n\t\t}\n\n\t\t// Additional and optional background properties\n\t\tif( data.backgroundSize ) element.setAttribute( 'data-background-size', data.backgroundSize );\n\t\tif( data.backgroundColor ) element.style.backgroundColor = data.backgroundColor;\n\t\tif( data.backgroundTransition ) element.setAttribute( 'data-background-transition', data.backgroundTransition );\n\n\t\tif( dataPreload ) element.setAttribute( 'data-preload', '' );\n\n\t\t// Background image options are set on the content wrapper\n\t\tif( data.backgroundSize ) contentElement.style.backgroundSize = data.backgroundSize;\n\t\tif( data.backgroundRepeat ) contentElement.style.backgroundRepeat = data.backgroundRepeat;\n\t\tif( data.backgroundPosition ) contentElement.style.backgroundPosition = data.backgroundPosition;\n\t\tif( data.backgroundOpacity ) contentElement.style.opacity = data.backgroundOpacity;\n\n\t\t// If this slide has a background color, we add a class that\n\t\t// signals if it is light or dark. If the slide has no background\n\t\t// color, no class will be added\n\t\tlet contrastColor = data.backgroundColor;\n\n\t\t// If no bg color was found, or it cannot be converted by colorToRgb, check the computed background\n\t\tif( !contrastColor || !colorToRgb( contrastColor ) ) {\n\t\t\tlet computedBackgroundStyle = window.getComputedStyle( element );\n\t\t\tif( computedBackgroundStyle && computedBackgroundStyle.backgroundColor ) {\n\t\t\t\tcontrastColor = computedBackgroundStyle.backgroundColor;\n\t\t\t}\n\t\t}\n\n\t\tif( contrastColor ) {\n\t\t\tconst rgb = colorToRgb( contrastColor );\n\n\t\t\t// Ignore fully transparent backgrounds. Some browsers return\n\t\t\t// rgba(0,0,0,0) when reading the computed background color of\n\t\t\t// an element with no background\n\t\t\tif( rgb && rgb.a !== 0 ) {\n\t\t\t\tif( colorBrightness( contrastColor ) < 128 ) {\n\t\t\t\t\tslide.classList.add( 'has-dark-background' );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tslide.classList.add( 'has-light-background' );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the background elements to reflect the current\n\t * slide.\n\t *\n\t * @param {boolean} includeAll If true, the backgrounds of\n\t * all vertical slides (not just the present) will be updated.\n\t */\n\tupdate( includeAll = false ) {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tlet indices = this.Reveal.getIndices();\n\n\t\tlet currentBackground = null;\n\n\t\t// Reverse past/future classes when in RTL mode\n\t\tlet horizontalPast = this.Reveal.getConfig().rtl ? 'future' : 'past',\n\t\t\thorizontalFuture = this.Reveal.getConfig().rtl ? 'past' : 'future';\n\n\t\t// Update the classes of all backgrounds to match the\n\t\t// states of their slides (past/present/future)\n\t\tArray.from( this.element.childNodes ).forEach( ( backgroundh, h ) => {\n\n\t\t\tbackgroundh.classList.remove( 'past', 'present', 'future' );\n\n\t\t\tif( h < indices.h ) {\n\t\t\t\tbackgroundh.classList.add( horizontalPast );\n\t\t\t}\n\t\t\telse if ( h > indices.h ) {\n\t\t\t\tbackgroundh.classList.add( horizontalFuture );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbackgroundh.classList.add( 'present' );\n\n\t\t\t\t// Store a reference to the current background element\n\t\t\t\tcurrentBackground = backgroundh;\n\t\t\t}\n\n\t\t\tif( includeAll || h === indices.h ) {\n\t\t\t\tqueryAll( backgroundh, '.slide-background' ).forEach( ( backgroundv, v ) => {\n\n\t\t\t\t\tbackgroundv.classList.remove( 'past', 'present', 'future' );\n\n\t\t\t\t\tif( v < indices.v ) {\n\t\t\t\t\t\tbackgroundv.classList.add( 'past' );\n\t\t\t\t\t}\n\t\t\t\t\telse if ( v > indices.v ) {\n\t\t\t\t\t\tbackgroundv.classList.add( 'future' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tbackgroundv.classList.add( 'present' );\n\n\t\t\t\t\t\t// Only if this is the present horizontal and vertical slide\n\t\t\t\t\t\tif( h === indices.h ) currentBackground = backgroundv;\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\t\t\t}\n\n\t\t} );\n\n\t\t// Stop content inside of previous backgrounds\n\t\tif( this.previousBackground ) {\n\n\t\t\tthis.Reveal.slideContent.stopEmbeddedContent( this.previousBackground, { unloadIframes: !this.Reveal.slideContent.shouldPreload( this.previousBackground ) } );\n\n\t\t}\n\n\t\t// Start content in the current background\n\t\tif( currentBackground ) {\n\n\t\t\tthis.Reveal.slideContent.startEmbeddedContent( currentBackground );\n\n\t\t\tlet currentBackgroundContent = currentBackground.querySelector( '.slide-background-content' );\n\t\t\tif( currentBackgroundContent ) {\n\n\t\t\t\tlet backgroundImageURL = currentBackgroundContent.style.backgroundImage || '';\n\n\t\t\t\t// Restart GIFs (doesn't work in Firefox)\n\t\t\t\tif( /\\.gif/i.test( backgroundImageURL ) ) {\n\t\t\t\t\tcurrentBackgroundContent.style.backgroundImage = '';\n\t\t\t\t\twindow.getComputedStyle( currentBackgroundContent ).opacity;\n\t\t\t\t\tcurrentBackgroundContent.style.backgroundImage = backgroundImageURL;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// Don't transition between identical backgrounds. This\n\t\t\t// prevents unwanted flicker.\n\t\t\tlet previousBackgroundHash = this.previousBackground ? this.previousBackground.getAttribute( 'data-background-hash' ) : null;\n\t\t\tlet currentBackgroundHash = currentBackground.getAttribute( 'data-background-hash' );\n\t\t\tif( currentBackgroundHash && currentBackgroundHash === previousBackgroundHash && currentBackground !== this.previousBackground ) {\n\t\t\t\tthis.element.classList.add( 'no-transition' );\n\t\t\t}\n\n\t\t\tthis.previousBackground = currentBackground;\n\n\t\t}\n\n\t\t// If there's a background brightness flag for this slide,\n\t\t// bubble it to the .reveal container\n\t\tif( currentSlide ) {\n\t\t\t[ 'has-light-background', 'has-dark-background' ].forEach( classToBubble => {\n\t\t\t\tif( currentSlide.classList.contains( classToBubble ) ) {\n\t\t\t\t\tthis.Reveal.getRevealElement().classList.add( classToBubble );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.getRevealElement().classList.remove( classToBubble );\n\t\t\t\t}\n\t\t\t}, this );\n\t\t}\n\n\t\t// Allow the first background to apply without transition\n\t\tsetTimeout( () => {\n\t\t\tthis.element.classList.remove( 'no-transition' );\n\t\t}, 1 );\n\n\t}\n\n\t/**\n\t * Updates the position of the parallax background based\n\t * on the current slide index.\n\t */\n\tupdateParallax() {\n\n\t\tlet indices = this.Reveal.getIndices();\n\n\t\tif( this.Reveal.getConfig().parallaxBackgroundImage ) {\n\n\t\t\tlet horizontalSlides = this.Reveal.getHorizontalSlides(),\n\t\t\t\tverticalSlides = this.Reveal.getVerticalSlides();\n\n\t\t\tlet backgroundSize = this.element.style.backgroundSize.split( ' ' ),\n\t\t\t\tbackgroundWidth, backgroundHeight;\n\n\t\t\tif( backgroundSize.length === 1 ) {\n\t\t\t\tbackgroundWidth = backgroundHeight = parseInt( backgroundSize[0], 10 );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbackgroundWidth = parseInt( backgroundSize[0], 10 );\n\t\t\t\tbackgroundHeight = parseInt( backgroundSize[1], 10 );\n\t\t\t}\n\n\t\t\tlet slideWidth = this.element.offsetWidth,\n\t\t\t\thorizontalSlideCount = horizontalSlides.length,\n\t\t\t\thorizontalOffsetMultiplier,\n\t\t\t\thorizontalOffset;\n\n\t\t\tif( typeof this.Reveal.getConfig().parallaxBackgroundHorizontal === 'number' ) {\n\t\t\t\thorizontalOffsetMultiplier = this.Reveal.getConfig().parallaxBackgroundHorizontal;\n\t\t\t}\n\t\t\telse {\n\t\t\t\thorizontalOffsetMultiplier = horizontalSlideCount > 1 ? ( backgroundWidth - slideWidth ) / ( horizontalSlideCount-1 ) : 0;\n\t\t\t}\n\n\t\t\thorizontalOffset = horizontalOffsetMultiplier * indices.h * -1;\n\n\t\t\tlet slideHeight = this.element.offsetHeight,\n\t\t\t\tverticalSlideCount = verticalSlides.length,\n\t\t\t\tverticalOffsetMultiplier,\n\t\t\t\tverticalOffset;\n\n\t\t\tif( typeof this.Reveal.getConfig().parallaxBackgroundVertical === 'number' ) {\n\t\t\t\tverticalOffsetMultiplier = this.Reveal.getConfig().parallaxBackgroundVertical;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tverticalOffsetMultiplier = ( backgroundHeight - slideHeight ) / ( verticalSlideCount-1 );\n\t\t\t}\n\n\t\t\tverticalOffset = verticalSlideCount > 0 ? verticalOffsetMultiplier * indices.v : 0;\n\n\t\t\tthis.element.style.backgroundPosition = horizontalOffset + 'px ' + -verticalOffset + 'px';\n\n\t\t}\n\n\t}\n\n}\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","import { queryAll, extend, createStyleSheet, matches, closest } from '../utils/util.js'\nimport { FRAGMENT_STYLE_REGEX } from '../utils/constants.js'\n\n// Counter used to generate unique IDs for auto-animated elements\nlet autoAnimateCounter = 0;\n\n/**\n * Automatically animates matching elements across\n * slides with the [data-auto-animate] attribute.\n */\nexport default class AutoAnimate {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Runs an auto-animation between the given slides.\n\t *\n\t * @param {HTMLElement} fromSlide\n\t * @param {HTMLElement} toSlide\n\t */\n\trun( fromSlide, toSlide ) {\n\n\t\t// Clean up after prior animations\n\t\tthis.reset();\n\n\t\tlet allSlides = this.Reveal.getSlides();\n\t\tlet toSlideIndex = allSlides.indexOf( toSlide );\n\t\tlet fromSlideIndex = allSlides.indexOf( fromSlide );\n\n\t\t// Ensure that both slides are auto-animate targets with the same data-auto-animate-id value\n\t\t// (including null if absent on both) and that data-auto-animate-restart isn't set on the\n\t\t// physically latter slide (independent of slide direction)\n\t\tif( fromSlide.hasAttribute( 'data-auto-animate' ) && toSlide.hasAttribute( 'data-auto-animate' )\n\t\t\t\t&& fromSlide.getAttribute( 'data-auto-animate-id' ) === toSlide.getAttribute( 'data-auto-animate-id' ) \n\t\t\t\t&& !( toSlideIndex > fromSlideIndex ? toSlide : fromSlide ).hasAttribute( 'data-auto-animate-restart' ) ) {\n\n\t\t\t// Create a new auto-animate sheet\n\t\t\tthis.autoAnimateStyleSheet = this.autoAnimateStyleSheet || createStyleSheet();\n\n\t\t\tlet animationOptions = this.getAutoAnimateOptions( toSlide );\n\n\t\t\t// Set our starting state\n\t\t\tfromSlide.dataset.autoAnimate = 'pending';\n\t\t\ttoSlide.dataset.autoAnimate = 'pending';\n\n\t\t\t// Flag the navigation direction, needed for fragment buildup\n\t\t\tanimationOptions.slideDirection = toSlideIndex > fromSlideIndex ? 'forward' : 'backward';\n\n\t\t\t// Inject our auto-animate styles for this transition\n\t\t\tlet css = this.getAutoAnimatableElements( fromSlide, toSlide ).map( elements => {\n\t\t\t\treturn this.autoAnimateElements( elements.from, elements.to, elements.options || {}, animationOptions, autoAnimateCounter++ );\n\t\t\t} );\n\n\t\t\t// Animate unmatched elements, if enabled\n\t\t\tif( toSlide.dataset.autoAnimateUnmatched !== 'false' && this.Reveal.getConfig().autoAnimateUnmatched === true ) {\n\n\t\t\t\t// Our default timings for unmatched elements\n\t\t\t\tlet defaultUnmatchedDuration = animationOptions.duration * 0.8,\n\t\t\t\t\tdefaultUnmatchedDelay = animationOptions.duration * 0.2;\n\n\t\t\t\tthis.getUnmatchedAutoAnimateElements( toSlide ).forEach( unmatchedElement => {\n\n\t\t\t\t\tlet unmatchedOptions = this.getAutoAnimateOptions( unmatchedElement, animationOptions );\n\t\t\t\t\tlet id = 'unmatched';\n\n\t\t\t\t\t// If there is a duration or delay set specifically for this\n\t\t\t\t\t// element our unmatched elements should adhere to those\n\t\t\t\t\tif( unmatchedOptions.duration !== animationOptions.duration || unmatchedOptions.delay !== animationOptions.delay ) {\n\t\t\t\t\t\tid = 'unmatched-' + autoAnimateCounter++;\n\t\t\t\t\t\tcss.push( `[data-auto-animate=\"running\"] [data-auto-animate-target=\"${id}\"] { transition: opacity ${unmatchedOptions.duration}s ease ${unmatchedOptions.delay}s; }` );\n\t\t\t\t\t}\n\n\t\t\t\t\tunmatchedElement.dataset.autoAnimateTarget = id;\n\n\t\t\t\t}, this );\n\n\t\t\t\t// Our default transition for unmatched elements\n\t\t\t\tcss.push( `[data-auto-animate=\"running\"] [data-auto-animate-target=\"unmatched\"] { transition: opacity ${defaultUnmatchedDuration}s ease ${defaultUnmatchedDelay}s; }` );\n\n\t\t\t}\n\n\t\t\t// Setting the whole chunk of CSS at once is the most\n\t\t\t// efficient way to do this. Using sheet.insertRule\n\t\t\t// is multiple factors slower.\n\t\t\tthis.autoAnimateStyleSheet.innerHTML = css.join( '' );\n\n\t\t\t// Start the animation next cycle\n\t\t\trequestAnimationFrame( () => {\n\t\t\t\tif( this.autoAnimateStyleSheet ) {\n\t\t\t\t\t// This forces our newly injected styles to be applied in Firefox\n\t\t\t\t\tgetComputedStyle( this.autoAnimateStyleSheet ).fontWeight;\n\n\t\t\t\t\ttoSlide.dataset.autoAnimate = 'running';\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'autoanimate',\n\t\t\t\tdata: {\n\t\t\t\t\tfromSlide,\n\t\t\t\t\ttoSlide,\n\t\t\t\t\tsheet: this.autoAnimateStyleSheet\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Rolls back all changes that we've made to the DOM so\n\t * that as part of animating.\n\t */\n\treset() {\n\n\t\t// Reset slides\n\t\tqueryAll( this.Reveal.getRevealElement(), '[data-auto-animate]:not([data-auto-animate=\"\"])' ).forEach( element => {\n\t\t\telement.dataset.autoAnimate = '';\n\t\t} );\n\n\t\t// Reset elements\n\t\tqueryAll( this.Reveal.getRevealElement(), '[data-auto-animate-target]' ).forEach( element => {\n\t\t\tdelete element.dataset.autoAnimateTarget;\n\t\t} );\n\n\t\t// Remove the animation sheet\n\t\tif( this.autoAnimateStyleSheet && this.autoAnimateStyleSheet.parentNode ) {\n\t\t\tthis.autoAnimateStyleSheet.parentNode.removeChild( this.autoAnimateStyleSheet );\n\t\t\tthis.autoAnimateStyleSheet = null;\n\t\t}\n\n\t}\n\n\t/**\n\t * Creates a FLIP animation where the `to` element starts out\n\t * in the `from` element position and animates to its original\n\t * state.\n\t *\n\t * @param {HTMLElement} from\n\t * @param {HTMLElement} to\n\t * @param {Object} elementOptions Options for this element pair\n\t * @param {Object} animationOptions Options set at the slide level\n\t * @param {String} id Unique ID that we can use to identify this\n\t * auto-animate element in the DOM\n\t */\n\tautoAnimateElements( from, to, elementOptions, animationOptions, id ) {\n\n\t\t// 'from' elements are given a data-auto-animate-target with no value,\n\t\t// 'to' elements are are given a data-auto-animate-target with an ID\n\t\tfrom.dataset.autoAnimateTarget = '';\n\t\tto.dataset.autoAnimateTarget = id;\n\n\t\t// Each element may override any of the auto-animate options\n\t\t// like transition easing, duration and delay via data-attributes\n\t\tlet options = this.getAutoAnimateOptions( to, animationOptions );\n\n\t\t// If we're using a custom element matcher the element options\n\t\t// may contain additional transition overrides\n\t\tif( typeof elementOptions.delay !== 'undefined' ) options.delay = elementOptions.delay;\n\t\tif( typeof elementOptions.duration !== 'undefined' ) options.duration = elementOptions.duration;\n\t\tif( typeof elementOptions.easing !== 'undefined' ) options.easing = elementOptions.easing;\n\n\t\tlet fromProps = this.getAutoAnimatableProperties( 'from', from, elementOptions ),\n\t\t\ttoProps = this.getAutoAnimatableProperties( 'to', to, elementOptions );\n\n\t\t// Maintain fragment visibility for matching elements when\n\t\t// we're navigating forwards, this way the viewer won't need\n\t\t// to step through the same fragments twice\n\t\tif( to.classList.contains( 'fragment' ) ) {\n\n\t\t\t// Don't auto-animate the opacity of fragments to avoid\n\t\t\t// conflicts with fragment animations\n\t\t\tdelete toProps.styles['opacity'];\n\n\t\t\tif( from.classList.contains( 'fragment' ) ) {\n\n\t\t\t\tlet fromFragmentStyle = ( from.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];\n\t\t\t\tlet toFragmentStyle = ( to.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];\n\n\t\t\t\t// Only skip the fragment if the fragment animation style\n\t\t\t\t// remains unchanged\n\t\t\t\tif( fromFragmentStyle === toFragmentStyle && animationOptions.slideDirection === 'forward' ) {\n\t\t\t\t\tto.classList.add( 'visible', 'disabled' );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t// If translation and/or scaling are enabled, css transform\n\t\t// the 'to' element so that it matches the position and size\n\t\t// of the 'from' element\n\t\tif( elementOptions.translate !== false || elementOptions.scale !== false ) {\n\n\t\t\tlet presentationScale = this.Reveal.getScale();\n\n\t\t\tlet delta = {\n\t\t\t\tx: ( fromProps.x - toProps.x ) / presentationScale,\n\t\t\t\ty: ( fromProps.y - toProps.y ) / presentationScale,\n\t\t\t\tscaleX: fromProps.width / toProps.width,\n\t\t\t\tscaleY: fromProps.height / toProps.height\n\t\t\t};\n\n\t\t\t// Limit decimal points to avoid 0.0001px blur and stutter\n\t\t\tdelta.x = Math.round( delta.x * 1000 ) / 1000;\n\t\t\tdelta.y = Math.round( delta.y * 1000 ) / 1000;\n\t\t\tdelta.scaleX = Math.round( delta.scaleX * 1000 ) / 1000;\n\t\t\tdelta.scaleX = Math.round( delta.scaleX * 1000 ) / 1000;\n\n\t\t\tlet translate = elementOptions.translate !== false && ( delta.x !== 0 || delta.y !== 0 ),\n\t\t\t\tscale = elementOptions.scale !== false && ( delta.scaleX !== 0 || delta.scaleY !== 0 );\n\n\t\t\t// No need to transform if nothing's changed\n\t\t\tif( translate || scale ) {\n\n\t\t\t\tlet transform = [];\n\n\t\t\t\tif( translate ) transform.push( `translate(${delta.x}px, ${delta.y}px)` );\n\t\t\t\tif( scale ) transform.push( `scale(${delta.scaleX}, ${delta.scaleY})` );\n\n\t\t\t\tfromProps.styles['transform'] = transform.join( ' ' );\n\t\t\t\tfromProps.styles['transform-origin'] = 'top left';\n\n\t\t\t\ttoProps.styles['transform'] = 'none';\n\n\t\t\t}\n\n\t\t}\n\n\t\t// Delete all unchanged 'to' styles\n\t\tfor( let propertyName in toProps.styles ) {\n\t\t\tconst toValue = toProps.styles[propertyName];\n\t\t\tconst fromValue = fromProps.styles[propertyName];\n\n\t\t\tif( toValue === fromValue ) {\n\t\t\t\tdelete toProps.styles[propertyName];\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// If these property values were set via a custom matcher providing\n\t\t\t\t// an explicit 'from' and/or 'to' value, we always inject those values.\n\t\t\t\tif( toValue.explicitValue === true ) {\n\t\t\t\t\ttoProps.styles[propertyName] = toValue.value;\n\t\t\t\t}\n\n\t\t\t\tif( fromValue.explicitValue === true ) {\n\t\t\t\t\tfromProps.styles[propertyName] = fromValue.value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet css = '';\n\n\t\tlet toStyleProperties = Object.keys( toProps.styles );\n\n\t\t// Only create animate this element IF at least one style\n\t\t// property has changed\n\t\tif( toStyleProperties.length > 0 ) {\n\n\t\t\t// Instantly move to the 'from' state\n\t\t\tfromProps.styles['transition'] = 'none';\n\n\t\t\t// Animate towards the 'to' state\n\t\t\ttoProps.styles['transition'] = `all ${options.duration}s ${options.easing} ${options.delay}s`;\n\t\t\ttoProps.styles['transition-property'] = toStyleProperties.join( ', ' );\n\t\t\ttoProps.styles['will-change'] = toStyleProperties.join( ', ' );\n\n\t\t\t// Build up our custom CSS. We need to override inline styles\n\t\t\t// so we need to make our styles vErY IMPORTANT!1!!\n\t\t\tlet fromCSS = Object.keys( fromProps.styles ).map( propertyName => {\n\t\t\t\treturn propertyName + ': ' + fromProps.styles[propertyName] + ' !important;';\n\t\t\t} ).join( '' );\n\n\t\t\tlet toCSS = Object.keys( toProps.styles ).map( propertyName => {\n\t\t\t\treturn propertyName + ': ' + toProps.styles[propertyName] + ' !important;';\n\t\t\t} ).join( '' );\n\n\t\t\tcss = \t'[data-auto-animate-target=\"'+ id +'\"] {'+ fromCSS +'}' +\n\t\t\t\t\t'[data-auto-animate=\"running\"] [data-auto-animate-target=\"'+ id +'\"] {'+ toCSS +'}';\n\n\t\t}\n\n\t\treturn css;\n\n\t}\n\n\t/**\n\t * Returns the auto-animate options for the given element.\n\t *\n\t * @param {HTMLElement} element Element to pick up options\n\t * from, either a slide or an animation target\n\t * @param {Object} [inheritedOptions] Optional set of existing\n\t * options\n\t */\n\tgetAutoAnimateOptions( element, inheritedOptions ) {\n\n\t\tlet options = {\n\t\t\teasing: this.Reveal.getConfig().autoAnimateEasing,\n\t\t\tduration: this.Reveal.getConfig().autoAnimateDuration,\n\t\t\tdelay: 0\n\t\t};\n\n\t\toptions = extend( options, inheritedOptions );\n\n\t\t// Inherit options from parent elements\n\t\tif( element.parentNode ) {\n\t\t\tlet autoAnimatedParent = closest( element.parentNode, '[data-auto-animate-target]' );\n\t\t\tif( autoAnimatedParent ) {\n\t\t\t\toptions = this.getAutoAnimateOptions( autoAnimatedParent, options );\n\t\t\t}\n\t\t}\n\n\t\tif( element.dataset.autoAnimateEasing ) {\n\t\t\toptions.easing = element.dataset.autoAnimateEasing;\n\t\t}\n\n\t\tif( element.dataset.autoAnimateDuration ) {\n\t\t\toptions.duration = parseFloat( element.dataset.autoAnimateDuration );\n\t\t}\n\n\t\tif( element.dataset.autoAnimateDelay ) {\n\t\t\toptions.delay = parseFloat( element.dataset.autoAnimateDelay );\n\t\t}\n\n\t\treturn options;\n\n\t}\n\n\t/**\n\t * Returns an object containing all of the properties\n\t * that can be auto-animated for the given element and\n\t * their current computed values.\n\t *\n\t * @param {String} direction 'from' or 'to'\n\t */\n\tgetAutoAnimatableProperties( direction, element, elementOptions ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\tlet properties = { styles: [] };\n\n\t\t// Position and size\n\t\tif( elementOptions.translate !== false || elementOptions.scale !== false ) {\n\t\t\tlet bounds;\n\n\t\t\t// Custom auto-animate may optionally return a custom tailored\n\t\t\t// measurement function\n\t\t\tif( typeof elementOptions.measure === 'function' ) {\n\t\t\t\tbounds = elementOptions.measure( element );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif( config.center ) {\n\t\t\t\t\t// More precise, but breaks when used in combination\n\t\t\t\t\t// with zoom for scaling the deck ¯\\_(ツ)_/¯\n\t\t\t\t\tbounds = element.getBoundingClientRect();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet scale = this.Reveal.getScale();\n\t\t\t\t\tbounds = {\n\t\t\t\t\t\tx: element.offsetLeft * scale,\n\t\t\t\t\t\ty: element.offsetTop * scale,\n\t\t\t\t\t\twidth: element.offsetWidth * scale,\n\t\t\t\t\t\theight: element.offsetHeight * scale\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tproperties.x = bounds.x;\n\t\t\tproperties.y = bounds.y;\n\t\t\tproperties.width = bounds.width;\n\t\t\tproperties.height = bounds.height;\n\t\t}\n\n\t\tconst computedStyles = getComputedStyle( element );\n\n\t\t// CSS styles\n\t\t( elementOptions.styles || config.autoAnimateStyles ).forEach( style => {\n\t\t\tlet value;\n\n\t\t\t// `style` is either the property name directly, or an object\n\t\t\t// definition of a style property\n\t\t\tif( typeof style === 'string' ) style = { property: style };\n\n\t\t\tif( typeof style.from !== 'undefined' && direction === 'from' ) {\n\t\t\t\tvalue = { value: style.from, explicitValue: true };\n\t\t\t}\n\t\t\telse if( typeof style.to !== 'undefined' && direction === 'to' ) {\n\t\t\t\tvalue = { value: style.to, explicitValue: true };\n\t\t\t}\n\t\t\telse {\n\t\t\t\tvalue = computedStyles[style.property];\n\t\t\t}\n\n\t\t\tif( value !== '' ) {\n\t\t\t\tproperties.styles[style.property] = value;\n\t\t\t}\n\t\t} );\n\n\t\treturn properties;\n\n\t}\n\n\t/**\n\t * Get a list of all element pairs that we can animate\n\t * between the given slides.\n\t *\n\t * @param {HTMLElement} fromSlide\n\t * @param {HTMLElement} toSlide\n\t *\n\t * @return {Array} Each value is an array where [0] is\n\t * the element we're animating from and [1] is the\n\t * element we're animating to\n\t */\n\tgetAutoAnimatableElements( fromSlide, toSlide ) {\n\n\t\tlet matcher = typeof this.Reveal.getConfig().autoAnimateMatcher === 'function' ? this.Reveal.getConfig().autoAnimateMatcher : this.getAutoAnimatePairs;\n\n\t\tlet pairs = matcher.call( this, fromSlide, toSlide );\n\n\t\tlet reserved = [];\n\n\t\t// Remove duplicate pairs\n\t\treturn pairs.filter( ( pair, index ) => {\n\t\t\tif( reserved.indexOf( pair.to ) === -1 ) {\n\t\t\t\treserved.push( pair.to );\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Identifies matching elements between slides.\n\t *\n\t * You can specify a custom matcher function by using\n\t * the `autoAnimateMatcher` config option.\n\t */\n\tgetAutoAnimatePairs( fromSlide, toSlide ) {\n\n\t\tlet pairs = [];\n\n\t\tconst codeNodes = 'pre';\n\t\tconst textNodes = 'h1, h2, h3, h4, h5, h6, p, li';\n\t\tconst mediaNodes = 'img, video, iframe';\n\n\t\t// Eplicit matches via data-id\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, '[data-id]', node => {\n\t\t\treturn node.nodeName + ':::' + node.getAttribute( 'data-id' );\n\t\t} );\n\n\t\t// Text\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, textNodes, node => {\n\t\t\treturn node.nodeName + ':::' + node.innerText;\n\t\t} );\n\n\t\t// Media\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, mediaNodes, node => {\n\t\t\treturn node.nodeName + ':::' + ( node.getAttribute( 'src' ) || node.getAttribute( 'data-src' ) );\n\t\t} );\n\n\t\t// Code\n\t\tthis.findAutoAnimateMatches( pairs, fromSlide, toSlide, codeNodes, node => {\n\t\t\treturn node.nodeName + ':::' + node.innerText;\n\t\t} );\n\n\t\tpairs.forEach( pair => {\n\n\t\t\t// Disable scale transformations on text nodes, we transition\n\t\t\t// each individual text property instead\n\t\t\tif( matches( pair.from, textNodes ) ) {\n\t\t\t\tpair.options = { scale: false };\n\t\t\t}\n\t\t\t// Animate individual lines of code\n\t\t\telse if( matches( pair.from, codeNodes ) ) {\n\n\t\t\t\t// Transition the code block's width and height instead of scaling\n\t\t\t\t// to prevent its content from being squished\n\t\t\t\tpair.options = { scale: false, styles: [ 'width', 'height' ] };\n\n\t\t\t\t// Lines of code\n\t\t\t\tthis.findAutoAnimateMatches( pairs, pair.from, pair.to, '.hljs .hljs-ln-code', node => {\n\t\t\t\t\treturn node.textContent;\n\t\t\t\t}, {\n\t\t\t\t\tscale: false,\n\t\t\t\t\tstyles: [],\n\t\t\t\t\tmeasure: this.getLocalBoundingBox.bind( this )\n\t\t\t\t} );\n\n\t\t\t\t// Line numbers\n\t\t\t\tthis.findAutoAnimateMatches( pairs, pair.from, pair.to, '.hljs .hljs-ln-line[data-line-number]', node => {\n\t\t\t\t\treturn node.getAttribute( 'data-line-number' );\n\t\t\t\t}, {\n\t\t\t\t\tscale: false,\n\t\t\t\t\tstyles: [ 'width' ],\n\t\t\t\t\tmeasure: this.getLocalBoundingBox.bind( this )\n\t\t\t\t} );\n\n\t\t\t}\n\n\t\t}, this );\n\n\t\treturn pairs;\n\n\t}\n\n\t/**\n\t * Helper method which returns a bounding box based on\n\t * the given elements offset coordinates.\n\t *\n\t * @param {HTMLElement} element\n\t * @return {Object} x, y, width, height\n\t */\n\tgetLocalBoundingBox( element ) {\n\n\t\tconst presentationScale = this.Reveal.getScale();\n\n\t\treturn {\n\t\t\tx: Math.round( ( element.offsetLeft * presentationScale ) * 100 ) / 100,\n\t\t\ty: Math.round( ( element.offsetTop * presentationScale ) * 100 ) / 100,\n\t\t\twidth: Math.round( ( element.offsetWidth * presentationScale ) * 100 ) / 100,\n\t\t\theight: Math.round( ( element.offsetHeight * presentationScale ) * 100 ) / 100\n\t\t};\n\n\t}\n\n\t/**\n\t * Finds matching elements between two slides.\n\t *\n\t * @param {Array} pairs \tList of pairs to push matches to\n\t * @param {HTMLElement} fromScope Scope within the from element exists\n\t * @param {HTMLElement} toScope Scope within the to element exists\n\t * @param {String} selector CSS selector of the element to match\n\t * @param {Function} serializer A function that accepts an element and returns\n\t * a stringified ID based on its contents\n\t * @param {Object} animationOptions Optional config options for this pair\n\t */\n\tfindAutoAnimateMatches( pairs, fromScope, toScope, selector, serializer, animationOptions ) {\n\n\t\tlet fromMatches = {};\n\t\tlet toMatches = {};\n\n\t\t[].slice.call( fromScope.querySelectorAll( selector ) ).forEach( ( element, i ) => {\n\t\t\tconst key = serializer( element );\n\t\t\tif( typeof key === 'string' && key.length ) {\n\t\t\t\tfromMatches[key] = fromMatches[key] || [];\n\t\t\t\tfromMatches[key].push( element );\n\t\t\t}\n\t\t} );\n\n\t\t[].slice.call( toScope.querySelectorAll( selector ) ).forEach( ( element, i ) => {\n\t\t\tconst key = serializer( element );\n\t\t\ttoMatches[key] = toMatches[key] || [];\n\t\t\ttoMatches[key].push( element );\n\n\t\t\tlet fromElement;\n\n\t\t\t// Retrieve the 'from' element\n\t\t\tif( fromMatches[key] ) {\n\t\t\t\tconst pimaryIndex = toMatches[key].length - 1;\n\t\t\t\tconst secondaryIndex = fromMatches[key].length - 1;\n\n\t\t\t\t// If there are multiple identical from elements, retrieve\n\t\t\t\t// the one at the same index as our to-element.\n\t\t\t\tif( fromMatches[key][ pimaryIndex ] ) {\n\t\t\t\t\tfromElement = fromMatches[key][ pimaryIndex ];\n\t\t\t\t\tfromMatches[key][ pimaryIndex ] = null;\n\t\t\t\t}\n\t\t\t\t// If there are no matching from-elements at the same index,\n\t\t\t\t// use the last one.\n\t\t\t\telse if( fromMatches[key][ secondaryIndex ] ) {\n\t\t\t\t\tfromElement = fromMatches[key][ secondaryIndex ];\n\t\t\t\t\tfromMatches[key][ secondaryIndex ] = null;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If we've got a matching pair, push it to the list of pairs\n\t\t\tif( fromElement ) {\n\t\t\t\tpairs.push({\n\t\t\t\t\tfrom: fromElement,\n\t\t\t\t\tto: element,\n\t\t\t\t\toptions: animationOptions\n\t\t\t\t});\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Returns a all elements within the given scope that should\n\t * be considered unmatched in an auto-animate transition. If\n\t * fading of unmatched elements is turned on, these elements\n\t * will fade when going between auto-animate slides.\n\t *\n\t * Note that parents of auto-animate targets are NOT considerd\n\t * unmatched since fading them would break the auto-animation.\n\t *\n\t * @param {HTMLElement} rootElement\n\t * @return {Array}\n\t */\n\tgetUnmatchedAutoAnimateElements( rootElement ) {\n\n\t\treturn [].slice.call( rootElement.children ).reduce( ( result, element ) => {\n\n\t\t\tconst containsAnimatedElements = element.querySelector( '[data-auto-animate-target]' );\n\n\t\t\t// The element is unmatched if\n\t\t\t// - It is not an auto-animate target\n\t\t\t// - It does not contain any auto-animate targets\n\t\t\tif( !element.hasAttribute( 'data-auto-animate-target' ) && !containsAnimatedElements ) {\n\t\t\t\tresult.push( element );\n\t\t\t}\n\n\t\t\tif( element.querySelector( '[data-auto-animate-target]' ) ) {\n\t\t\t\tresult = result.concat( this.getUnmatchedAutoAnimateElements( element ) );\n\t\t\t}\n\n\t\t\treturn result;\n\n\t\t}, [] );\n\n\t}\n\n}\n","import { extend, queryAll } from '../utils/util.js'\n\n/**\n * Handles sorting and navigation of slide fragments.\n * Fragments are elements within a slide that are\n * revealed/animated incrementally.\n */\nexport default class Fragments {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.fragments === false ) {\n\t\t\tthis.disable();\n\t\t}\n\t\telse if( oldConfig.fragments === false ) {\n\t\t\tthis.enable();\n\t\t}\n\n\t}\n\n\t/**\n\t * If fragments are disabled in the deck, they should all be\n\t * visible rather than stepped through.\n\t */\n\tdisable() {\n\n\t\tqueryAll( this.Reveal.getSlidesElement(), '.fragment' ).forEach( element => {\n\t\t\telement.classList.add( 'visible' );\n\t\t\telement.classList.remove( 'current-fragment' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Reverse of #disable(). Only called if fragments have\n\t * previously been disabled.\n\t */\n\tenable() {\n\n\t\tqueryAll( this.Reveal.getSlidesElement(), '.fragment' ).forEach( element => {\n\t\t\telement.classList.remove( 'visible' );\n\t\t\telement.classList.remove( 'current-fragment' );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Returns an object describing the available fragment\n\t * directions.\n\t *\n\t * @return {{prev: boolean, next: boolean}}\n\t */\n\tavailableRoutes() {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\t\t\tlet fragments = currentSlide.querySelectorAll( '.fragment:not(.disabled)' );\n\t\t\tlet hiddenFragments = currentSlide.querySelectorAll( '.fragment:not(.disabled):not(.visible)' );\n\n\t\t\treturn {\n\t\t\t\tprev: fragments.length - hiddenFragments.length > 0,\n\t\t\t\tnext: !!hiddenFragments.length\n\t\t\t};\n\t\t}\n\t\telse {\n\t\t\treturn { prev: false, next: false };\n\t\t}\n\n\t}\n\n\t/**\n\t * Return a sorted fragments list, ordered by an increasing\n\t * \"data-fragment-index\" attribute.\n\t *\n\t * Fragments will be revealed in the order that they are returned by\n\t * this function, so you can use the index attributes to control the\n\t * order of fragment appearance.\n\t *\n\t * To maintain a sensible default fragment order, fragments are presumed\n\t * to be passed in document order. This function adds a \"fragment-index\"\n\t * attribute to each node if such an attribute is not already present,\n\t * and sets that attribute to an integer value which is the position of\n\t * the fragment within the fragments list.\n\t *\n\t * @param {object[]|*} fragments\n\t * @param {boolean} grouped If true the returned array will contain\n\t * nested arrays for all fragments with the same index\n\t * @return {object[]} sorted Sorted array of fragments\n\t */\n\tsort( fragments, grouped = false ) {\n\n\t\tfragments = Array.from( fragments );\n\n\t\tlet ordered = [],\n\t\t\tunordered = [],\n\t\t\tsorted = [];\n\n\t\t// Group ordered and unordered elements\n\t\tfragments.forEach( fragment => {\n\t\t\tif( fragment.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\tlet index = parseInt( fragment.getAttribute( 'data-fragment-index' ), 10 );\n\n\t\t\t\tif( !ordered[index] ) {\n\t\t\t\t\tordered[index] = [];\n\t\t\t\t}\n\n\t\t\t\tordered[index].push( fragment );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tunordered.push( [ fragment ] );\n\t\t\t}\n\t\t} );\n\n\t\t// Append fragments without explicit indices in their\n\t\t// DOM order\n\t\tordered = ordered.concat( unordered );\n\n\t\t// Manually count the index up per group to ensure there\n\t\t// are no gaps\n\t\tlet index = 0;\n\n\t\t// Push all fragments in their sorted order to an array,\n\t\t// this flattens the groups\n\t\tordered.forEach( group => {\n\t\t\tgroup.forEach( fragment => {\n\t\t\t\tsorted.push( fragment );\n\t\t\t\tfragment.setAttribute( 'data-fragment-index', index );\n\t\t\t} );\n\n\t\t\tindex ++;\n\t\t} );\n\n\t\treturn grouped === true ? ordered : sorted;\n\n\t}\n\n\t/**\n\t * Sorts and formats all of fragments in the\n\t * presentation.\n\t */\n\tsortAll() {\n\n\t\tthis.Reveal.getHorizontalSlides().forEach( horizontalSlide => {\n\n\t\t\tlet verticalSlides = queryAll( horizontalSlide, 'section' );\n\t\t\tverticalSlides.forEach( ( verticalSlide, y ) => {\n\n\t\t\t\tthis.sort( verticalSlide.querySelectorAll( '.fragment' ) );\n\n\t\t\t}, this );\n\n\t\t\tif( verticalSlides.length === 0 ) this.sort( horizontalSlide.querySelectorAll( '.fragment' ) );\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Refreshes the fragments on the current slide so that they\n\t * have the appropriate classes (.visible + .current-fragment).\n\t *\n\t * @param {number} [index] The index of the current fragment\n\t * @param {array} [fragments] Array containing all fragments\n\t * in the current slide\n\t *\n\t * @return {{shown: array, hidden: array}}\n\t */\n\tupdate( index, fragments ) {\n\n\t\tlet changedFragments = {\n\t\t\tshown: [],\n\t\t\thidden: []\n\t\t};\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\n\t\t\tfragments = fragments || this.sort( currentSlide.querySelectorAll( '.fragment' ) );\n\n\t\t\tif( fragments.length ) {\n\n\t\t\t\tlet maxIndex = 0;\n\n\t\t\t\tif( typeof index !== 'number' ) {\n\t\t\t\t\tlet currentFragment = this.sort( currentSlide.querySelectorAll( '.fragment.visible' ) ).pop();\n\t\t\t\t\tif( currentFragment ) {\n\t\t\t\t\t\tindex = parseInt( currentFragment.getAttribute( 'data-fragment-index' ) || 0, 10 );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tArray.from( fragments ).forEach( ( el, i ) => {\n\n\t\t\t\t\tif( el.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\t\t\ti = parseInt( el.getAttribute( 'data-fragment-index' ), 10 );\n\t\t\t\t\t}\n\n\t\t\t\t\tmaxIndex = Math.max( maxIndex, i );\n\n\t\t\t\t\t// Visible fragments\n\t\t\t\t\tif( i <= index ) {\n\t\t\t\t\t\tlet wasVisible = el.classList.contains( 'visible' )\n\t\t\t\t\t\tel.classList.add( 'visible' );\n\t\t\t\t\t\tel.classList.remove( 'current-fragment' );\n\n\t\t\t\t\t\tif( i === index ) {\n\t\t\t\t\t\t\t// Announce the fragments one by one to the Screen Reader\n\t\t\t\t\t\t\tthis.Reveal.announceStatus( this.Reveal.getStatusText( el ) );\n\n\t\t\t\t\t\t\tel.classList.add( 'current-fragment' );\n\t\t\t\t\t\t\tthis.Reveal.slideContent.startEmbeddedContent( el );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif( !wasVisible ) {\n\t\t\t\t\t\t\tchangedFragments.shown.push( el )\n\t\t\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\t\t\ttarget: el,\n\t\t\t\t\t\t\t\ttype: 'visible',\n\t\t\t\t\t\t\t\tbubbles: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Hidden fragments\n\t\t\t\t\telse {\n\t\t\t\t\t\tlet wasVisible = el.classList.contains( 'visible' )\n\t\t\t\t\t\tel.classList.remove( 'visible' );\n\t\t\t\t\t\tel.classList.remove( 'current-fragment' );\n\n\t\t\t\t\t\tif( wasVisible ) {\n\t\t\t\t\t\t\tthis.Reveal.slideContent.stopEmbeddedContent( el );\n\t\t\t\t\t\t\tchangedFragments.hidden.push( el );\n\t\t\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\t\t\ttarget: el,\n\t\t\t\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\t\t\t\tbubbles: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\n\t\t\t\t// Write the current fragment index to the slide <section>.\n\t\t\t\t// This can be used by end users to apply styles based on\n\t\t\t\t// the current fragment index.\n\t\t\t\tindex = typeof index === 'number' ? index : -1;\n\t\t\t\tindex = Math.max( Math.min( index, maxIndex ), -1 );\n\t\t\t\tcurrentSlide.setAttribute( 'data-fragment', index );\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn changedFragments;\n\n\t}\n\n\t/**\n\t * Formats the fragments on the given slide so that they have\n\t * valid indices. Call this if fragments are changed in the DOM\n\t * after reveal.js has already initialized.\n\t *\n\t * @param {HTMLElement} slide\n\t * @return {Array} a list of the HTML fragments that were synced\n\t */\n\tsync( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\treturn this.sort( slide.querySelectorAll( '.fragment' ) );\n\n\t}\n\n\t/**\n\t * Navigate to the specified slide fragment.\n\t *\n\t * @param {?number} index The index of the fragment that\n\t * should be shown, -1 means all are invisible\n\t * @param {number} offset Integer offset to apply to the\n\t * fragment index\n\t *\n\t * @return {boolean} true if a change was made in any\n\t * fragments visibility as part of this call\n\t */\n\tgoto( index, offset = 0 ) {\n\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide && this.Reveal.getConfig().fragments ) {\n\n\t\t\tlet fragments = this.sort( currentSlide.querySelectorAll( '.fragment:not(.disabled)' ) );\n\t\t\tif( fragments.length ) {\n\n\t\t\t\t// If no index is specified, find the current\n\t\t\t\tif( typeof index !== 'number' ) {\n\t\t\t\t\tlet lastVisibleFragment = this.sort( currentSlide.querySelectorAll( '.fragment:not(.disabled).visible' ) ).pop();\n\n\t\t\t\t\tif( lastVisibleFragment ) {\n\t\t\t\t\t\tindex = parseInt( lastVisibleFragment.getAttribute( 'data-fragment-index' ) || 0, 10 );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tindex = -1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Apply the offset if there is one\n\t\t\t\tindex += offset;\n\n\t\t\t\tlet changedFragments = this.update( index, fragments );\n\n\t\t\t\tif( changedFragments.hidden.length ) {\n\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\ttype: 'fragmenthidden',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tfragment: changedFragments.hidden[0],\n\t\t\t\t\t\t\tfragments: changedFragments.hidden\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif( changedFragments.shown.length ) {\n\t\t\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\t\t\ttype: 'fragmentshown',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tfragment: changedFragments.shown[0],\n\t\t\t\t\t\t\tfragments: changedFragments.shown\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tthis.Reveal.controls.update();\n\t\t\t\tthis.Reveal.progress.update();\n\n\t\t\t\tif( this.Reveal.getConfig().fragmentInURL ) {\n\t\t\t\t\tthis.Reveal.location.writeURL();\n\t\t\t\t}\n\n\t\t\t\treturn !!( changedFragments.shown.length || changedFragments.hidden.length );\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Navigate to the next slide fragment.\n\t *\n\t * @return {boolean} true if there was a next fragment,\n\t * false otherwise\n\t */\n\tnext() {\n\n\t\treturn this.goto( null, 1 );\n\n\t}\n\n\t/**\n\t * Navigate to the previous slide fragment.\n\t *\n\t * @return {boolean} true if there was a previous fragment,\n\t * false otherwise\n\t */\n\tprev() {\n\n\t\treturn this.goto( null, -1 );\n\n\t}\n\n}","import { SLIDES_SELECTOR } from '../utils/constants.js'\nimport { extend, queryAll, transformElement } from '../utils/util.js'\n\n/**\n * Handles all logic related to the overview mode\n * (birds-eye view of all slides).\n */\nexport default class Overview {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.active = false;\n\n\t\tthis.onSlideClicked = this.onSlideClicked.bind( this );\n\n\t}\n\n\t/**\n\t * Displays the overview of slides (quick nav) by scaling\n\t * down and arranging all slide elements.\n\t */\n\tactivate() {\n\n\t\t// Only proceed if enabled in config\n\t\tif( this.Reveal.getConfig().overview && !this.isActive() ) {\n\n\t\t\tthis.active = true;\n\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'overview' );\n\n\t\t\t// Don't auto-slide while in overview mode\n\t\t\tthis.Reveal.cancelAutoSlide();\n\n\t\t\t// Move the backgrounds element into the slide container to\n\t\t\t// that the same scaling is applied\n\t\t\tthis.Reveal.getSlidesElement().appendChild( this.Reveal.getBackgroundsElement() );\n\n\t\t\t// Clicking on an overview slide navigates to it\n\t\t\tqueryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR ).forEach( slide => {\n\t\t\t\tif( !slide.classList.contains( 'stack' ) ) {\n\t\t\t\t\tslide.addEventListener( 'click', this.onSlideClicked, true );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Calculate slide sizes\n\t\t\tconst margin = 70;\n\t\t\tconst slideSize = this.Reveal.getComputedSlideSize();\n\t\t\tthis.overviewSlideWidth = slideSize.width + margin;\n\t\t\tthis.overviewSlideHeight = slideSize.height + margin;\n\n\t\t\t// Reverse in RTL mode\n\t\t\tif( this.Reveal.getConfig().rtl ) {\n\t\t\t\tthis.overviewSlideWidth = -this.overviewSlideWidth;\n\t\t\t}\n\n\t\t\tthis.Reveal.updateSlidesVisibility();\n\n\t\t\tthis.layout();\n\t\t\tthis.update();\n\n\t\t\tthis.Reveal.layout();\n\n\t\t\tconst indices = this.Reveal.getIndices();\n\n\t\t\t// Notify observers of the overview showing\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'overviewshown',\n\t\t\t\tdata: {\n\t\t\t\t\t'indexh': indices.h,\n\t\t\t\t\t'indexv': indices.v,\n\t\t\t\t\t'currentSlide': this.Reveal.getCurrentSlide()\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Uses CSS transforms to position all slides in a grid for\n\t * display inside of the overview mode.\n\t */\n\tlayout() {\n\n\t\t// Layout slides\n\t\tthis.Reveal.getHorizontalSlides().forEach( ( hslide, h ) => {\n\t\t\thslide.setAttribute( 'data-index-h', h );\n\t\t\ttransformElement( hslide, 'translate3d(' + ( h * this.overviewSlideWidth ) + 'px, 0, 0)' );\n\n\t\t\tif( hslide.classList.contains( 'stack' ) ) {\n\n\t\t\t\tqueryAll( hslide, 'section' ).forEach( ( vslide, v ) => {\n\t\t\t\t\tvslide.setAttribute( 'data-index-h', h );\n\t\t\t\t\tvslide.setAttribute( 'data-index-v', v );\n\n\t\t\t\t\ttransformElement( vslide, 'translate3d(0, ' + ( v * this.overviewSlideHeight ) + 'px, 0)' );\n\t\t\t\t} );\n\n\t\t\t}\n\t\t} );\n\n\t\t// Layout slide backgrounds\n\t\tArray.from( this.Reveal.getBackgroundsElement().childNodes ).forEach( ( hbackground, h ) => {\n\t\t\ttransformElement( hbackground, 'translate3d(' + ( h * this.overviewSlideWidth ) + 'px, 0, 0)' );\n\n\t\t\tqueryAll( hbackground, '.slide-background' ).forEach( ( vbackground, v ) => {\n\t\t\t\ttransformElement( vbackground, 'translate3d(0, ' + ( v * this.overviewSlideHeight ) + 'px, 0)' );\n\t\t\t} );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Moves the overview viewport to the current slides.\n\t * Called each time the current slide changes.\n\t */\n\tupdate() {\n\n\t\tconst vmin = Math.min( window.innerWidth, window.innerHeight );\n\t\tconst scale = Math.max( vmin / 5, 150 ) / vmin;\n\t\tconst indices = this.Reveal.getIndices();\n\n\t\tthis.Reveal.transformSlides( {\n\t\t\toverview: [\n\t\t\t\t'scale('+ scale +')',\n\t\t\t\t'translateX('+ ( -indices.h * this.overviewSlideWidth ) +'px)',\n\t\t\t\t'translateY('+ ( -indices.v * this.overviewSlideHeight ) +'px)'\n\t\t\t].join( ' ' )\n\t\t} );\n\n\t}\n\n\t/**\n\t * Exits the slide overview and enters the currently\n\t * active slide.\n\t */\n\tdeactivate() {\n\n\t\t// Only proceed if enabled in config\n\t\tif( this.Reveal.getConfig().overview ) {\n\n\t\t\tthis.active = false;\n\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'overview' );\n\n\t\t\t// Temporarily add a class so that transitions can do different things\n\t\t\t// depending on whether they are exiting/entering overview, or just\n\t\t\t// moving from slide to slide\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'overview-deactivating' );\n\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.Reveal.getRevealElement().classList.remove( 'overview-deactivating' );\n\t\t\t}, 1 );\n\n\t\t\t// Move the background element back out\n\t\t\tthis.Reveal.getRevealElement().appendChild( this.Reveal.getBackgroundsElement() );\n\n\t\t\t// Clean up changes made to slides\n\t\t\tqueryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR ).forEach( slide => {\n\t\t\t\ttransformElement( slide, '' );\n\n\t\t\t\tslide.removeEventListener( 'click', this.onSlideClicked, true );\n\t\t\t} );\n\n\t\t\t// Clean up changes made to backgrounds\n\t\t\tqueryAll( this.Reveal.getBackgroundsElement(), '.slide-background' ).forEach( background => {\n\t\t\t\ttransformElement( background, '' );\n\t\t\t} );\n\n\t\t\tthis.Reveal.transformSlides( { overview: '' } );\n\n\t\t\tconst indices = this.Reveal.getIndices();\n\n\t\t\tthis.Reveal.slide( indices.h, indices.v );\n\t\t\tthis.Reveal.layout();\n\t\t\tthis.Reveal.cueAutoSlide();\n\n\t\t\t// Notify observers of the overview hiding\n\t\t\tthis.Reveal.dispatchEvent({\n\t\t\t\ttype: 'overviewhidden',\n\t\t\t\tdata: {\n\t\t\t\t\t'indexh': indices.h,\n\t\t\t\t\t'indexv': indices.v,\n\t\t\t\t\t'currentSlide': this.Reveal.getCurrentSlide()\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\t}\n\n\t/**\n\t * Toggles the slide overview mode on and off.\n\t *\n\t * @param {Boolean} [override] Flag which overrides the\n\t * toggle logic and forcibly sets the desired state. True means\n\t * overview is open, false means it's closed.\n\t */\n\ttoggle( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? this.activate() : this.deactivate();\n\t\t}\n\t\telse {\n\t\t\tthis.isActive() ? this.deactivate() : this.activate();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if the overview is currently active.\n\t *\n\t * @return {Boolean} true if the overview is active,\n\t * false otherwise\n\t */\n\tisActive() {\n\n\t\treturn this.active;\n\n\t}\n\n\t/**\n\t * Invoked when a slide is and we're in the overview.\n\t *\n\t * @param {object} event\n\t */\n\tonSlideClicked( event ) {\n\n\t\tif( this.isActive() ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tlet element = event.target;\n\n\t\t\twhile( element && !element.nodeName.match( /section/gi ) ) {\n\t\t\t\telement = element.parentNode;\n\t\t\t}\n\n\t\t\tif( element && !element.classList.contains( 'disabled' ) ) {\n\n\t\t\t\tthis.deactivate();\n\n\t\t\t\tif( element.nodeName.match( /section/gi ) ) {\n\t\t\t\t\tlet h = parseInt( element.getAttribute( 'data-index-h' ), 10 ),\n\t\t\t\t\t\tv = parseInt( element.getAttribute( 'data-index-v' ), 10 );\n\n\t\t\t\t\tthis.Reveal.slide( h, v );\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t}\n\n}","import { enterFullscreen } from '../utils/util.js'\n\n/**\n * Handles all reveal.js keyboard interactions.\n */\nexport default class Keyboard {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// A key:value map of keyboard keys and descriptions of\n\t\t// the actions they trigger\n\t\tthis.shortcuts = {};\n\n\t\t// Holds custom key code mappings\n\t\tthis.bindings = {};\n\n\t\tthis.onDocumentKeyDown = this.onDocumentKeyDown.bind( this );\n\t\tthis.onDocumentKeyPress = this.onDocumentKeyPress.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.navigationMode === 'linear' ) {\n\t\t\tthis.shortcuts['→ , ↓ , SPACE , N , L , J'] = 'Next slide';\n\t\t\tthis.shortcuts['← , ↑ , P , H , K'] = 'Previous slide';\n\t\t}\n\t\telse {\n\t\t\tthis.shortcuts['N , SPACE'] = 'Next slide';\n\t\t\tthis.shortcuts['P , Shift SPACE'] = 'Previous slide';\n\t\t\tthis.shortcuts['← , H'] = 'Navigate left';\n\t\t\tthis.shortcuts['→ , L'] = 'Navigate right';\n\t\t\tthis.shortcuts['↑ , K'] = 'Navigate up';\n\t\t\tthis.shortcuts['↓ , J'] = 'Navigate down';\n\t\t}\n\n\t\tthis.shortcuts['Alt + ←/↑/→/↓'] = 'Navigate without fragments';\n\t\tthis.shortcuts['Shift + ←/↑/→/↓'] = 'Jump to first/last slide';\n\t\tthis.shortcuts['B , .'] = 'Pause';\n\t\tthis.shortcuts['F'] = 'Fullscreen';\n\t\tthis.shortcuts['ESC, O'] = 'Slide overview';\n\n\t}\n\n\t/**\n\t * Starts listening for keyboard events.\n\t */\n\tbind() {\n\n\t\tdocument.addEventListener( 'keydown', this.onDocumentKeyDown, false );\n\t\tdocument.addEventListener( 'keypress', this.onDocumentKeyPress, false );\n\n\t}\n\n\t/**\n\t * Stops listening for keyboard events.\n\t */\n\tunbind() {\n\n\t\tdocument.removeEventListener( 'keydown', this.onDocumentKeyDown, false );\n\t\tdocument.removeEventListener( 'keypress', this.onDocumentKeyPress, false );\n\n\t}\n\n\t/**\n\t * Add a custom key binding with optional description to\n\t * be added to the help screen.\n\t */\n\taddKeyBinding( binding, callback ) {\n\n\t\tif( typeof binding === 'object' && binding.keyCode ) {\n\t\t\tthis.bindings[binding.keyCode] = {\n\t\t\t\tcallback: callback,\n\t\t\t\tkey: binding.key,\n\t\t\t\tdescription: binding.description\n\t\t\t};\n\t\t}\n\t\telse {\n\t\t\tthis.bindings[binding] = {\n\t\t\t\tcallback: callback,\n\t\t\t\tkey: null,\n\t\t\t\tdescription: null\n\t\t\t};\n\t\t}\n\n\t}\n\n\t/**\n\t * Removes the specified custom key binding.\n\t */\n\tremoveKeyBinding( keyCode ) {\n\n\t\tdelete this.bindings[keyCode];\n\n\t}\n\n\t/**\n\t * Programmatically triggers a keyboard event\n\t *\n\t * @param {int} keyCode\n\t */\n\ttriggerKey( keyCode ) {\n\n\t\tthis.onDocumentKeyDown( { keyCode } );\n\n\t}\n\n\t/**\n\t * Registers a new shortcut to include in the help overlay\n\t *\n\t * @param {String} key\n\t * @param {String} value\n\t */\n\tregisterKeyboardShortcut( key, value ) {\n\n\t\tthis.shortcuts[key] = value;\n\n\t}\n\n\tgetShortcuts() {\n\n\t\treturn this.shortcuts;\n\n\t}\n\n\tgetBindings() {\n\n\t\treturn this.bindings;\n\n\t}\n\n\t/**\n\t * Handler for the document level 'keypress' event.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentKeyPress( event ) {\n\n\t\t// Check if the pressed key is question mark\n\t\tif( event.shiftKey && event.charCode === 63 ) {\n\t\t\tthis.Reveal.toggleHelp();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the document level 'keydown' event.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentKeyDown( event ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\t// If there's a condition specified and it returns false,\n\t\t// ignore this event\n\t\tif( typeof config.keyboardCondition === 'function' && config.keyboardCondition(event) === false ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// If keyboardCondition is set, only capture keyboard events\n\t\t// for embedded decks when they are focused\n\t\tif( config.keyboardCondition === 'focused' && !this.Reveal.isFocused() ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Shorthand\n\t\tlet keyCode = event.keyCode;\n\n\t\t// Remember if auto-sliding was paused so we can toggle it\n\t\tlet autoSlideWasPaused = !this.Reveal.isAutoSliding();\n\n\t\tthis.Reveal.onUserInput( event );\n\n\t\t// Is there a focused element that could be using the keyboard?\n\t\tlet activeElementIsCE = document.activeElement && document.activeElement.isContentEditable === true;\n\t\tlet activeElementIsInput = document.activeElement && document.activeElement.tagName && /input|textarea/i.test( document.activeElement.tagName );\n\t\tlet activeElementIsNotes = document.activeElement && document.activeElement.className && /speaker-notes/i.test( document.activeElement.className);\n\n\t\t// Whitelist certain modifiers for slide navigation shortcuts\n\t\tlet isNavigationKey = [32, 37, 38, 39, 40, 78, 80].indexOf( event.keyCode ) !== -1;\n\n\t\t// Prevent all other events when a modifier is pressed\n\t\tlet unusedModifier = \t!( isNavigationKey && event.shiftKey || event.altKey ) &&\n\t\t\t\t\t\t\t\t( event.shiftKey || event.altKey || event.ctrlKey || event.metaKey );\n\n\t\t// Disregard the event if there's a focused element or a\n\t\t// keyboard modifier key is present\n\t\tif( activeElementIsCE || activeElementIsInput || activeElementIsNotes || unusedModifier ) return;\n\n\t\t// While paused only allow resume keyboard events; 'b', 'v', '.'\n\t\tlet resumeKeyCodes = [66,86,190,191];\n\t\tlet key;\n\n\t\t// Custom key bindings for togglePause should be able to resume\n\t\tif( typeof config.keyboard === 'object' ) {\n\t\t\tfor( key in config.keyboard ) {\n\t\t\t\tif( config.keyboard[key] === 'togglePause' ) {\n\t\t\t\t\tresumeKeyCodes.push( parseInt( key, 10 ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif( this.Reveal.isPaused() && resumeKeyCodes.indexOf( keyCode ) === -1 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Use linear navigation if we're configured to OR if\n\t\t// the presentation is one-dimensional\n\t\tlet useLinearMode = config.navigationMode === 'linear' || !this.Reveal.hasHorizontalSlides() || !this.Reveal.hasVerticalSlides();\n\n\t\tlet triggered = false;\n\n\t\t// 1. User defined key bindings\n\t\tif( typeof config.keyboard === 'object' ) {\n\n\t\t\tfor( key in config.keyboard ) {\n\n\t\t\t\t// Check if this binding matches the pressed key\n\t\t\t\tif( parseInt( key, 10 ) === keyCode ) {\n\n\t\t\t\t\tlet value = config.keyboard[ key ];\n\n\t\t\t\t\t// Callback function\n\t\t\t\t\tif( typeof value === 'function' ) {\n\t\t\t\t\t\tvalue.apply( null, [ event ] );\n\t\t\t\t\t}\n\t\t\t\t\t// String shortcuts to reveal.js API\n\t\t\t\t\telse if( typeof value === 'string' && typeof this.Reveal[ value ] === 'function' ) {\n\t\t\t\t\t\tthis.Reveal[ value ].call();\n\t\t\t\t\t}\n\n\t\t\t\t\ttriggered = true;\n\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t// 2. Registered custom key bindings\n\t\tif( triggered === false ) {\n\n\t\t\tfor( key in this.bindings ) {\n\n\t\t\t\t// Check if this binding matches the pressed key\n\t\t\t\tif( parseInt( key, 10 ) === keyCode ) {\n\n\t\t\t\t\tlet action = this.bindings[ key ].callback;\n\n\t\t\t\t\t// Callback function\n\t\t\t\t\tif( typeof action === 'function' ) {\n\t\t\t\t\t\taction.apply( null, [ event ] );\n\t\t\t\t\t}\n\t\t\t\t\t// String shortcuts to reveal.js API\n\t\t\t\t\telse if( typeof action === 'string' && typeof this.Reveal[ action ] === 'function' ) {\n\t\t\t\t\t\tthis.Reveal[ action ].call();\n\t\t\t\t\t}\n\n\t\t\t\t\ttriggered = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// 3. System defined key bindings\n\t\tif( triggered === false ) {\n\n\t\t\t// Assume true and try to prove false\n\t\t\ttriggered = true;\n\n\t\t\t// P, PAGE UP\n\t\t\tif( keyCode === 80 || keyCode === 33 ) {\n\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t}\n\t\t\t// N, PAGE DOWN\n\t\t\telse if( keyCode === 78 || keyCode === 34 ) {\n\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t}\n\t\t\t// H, LEFT\n\t\t\telse if( keyCode === 72 || keyCode === 37 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( 0 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.left({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// L, RIGHT\n\t\t\telse if( keyCode === 76 || keyCode === 39 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( this.Reveal.getHorizontalSlides().length - 1 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.right({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// K, UP\n\t\t\telse if( keyCode === 75 || keyCode === 38 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( undefined, 0 );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.up({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// J, DOWN\n\t\t\telse if( keyCode === 74 || keyCode === 40 ) {\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.slide( undefined, Number.MAX_VALUE );\n\t\t\t\t}\n\t\t\t\telse if( !this.Reveal.overview.isActive() && useLinearMode ) {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.down({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// HOME\n\t\t\telse if( keyCode === 36 ) {\n\t\t\t\tthis.Reveal.slide( 0 );\n\t\t\t}\n\t\t\t// END\n\t\t\telse if( keyCode === 35 ) {\n\t\t\t\tthis.Reveal.slide( this.Reveal.getHorizontalSlides().length - 1 );\n\t\t\t}\n\t\t\t// SPACE\n\t\t\telse if( keyCode === 32 ) {\n\t\t\t\tif( this.Reveal.overview.isActive() ) {\n\t\t\t\t\tthis.Reveal.overview.deactivate();\n\t\t\t\t}\n\t\t\t\tif( event.shiftKey ) {\n\t\t\t\t\tthis.Reveal.prev({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.Reveal.next({skipFragments: event.altKey});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// TWO-SPOT, SEMICOLON, B, V, PERIOD, LOGITECH PRESENTER TOOLS \"BLACK SCREEN\" BUTTON\n\t\t\telse if( keyCode === 58 || keyCode === 59 || keyCode === 66 || keyCode === 86 || keyCode === 190 || keyCode === 191 ) {\n\t\t\t\tthis.Reveal.togglePause();\n\t\t\t}\n\t\t\t// F\n\t\t\telse if( keyCode === 70 ) {\n\t\t\t\tenterFullscreen( config.embedded ? this.Reveal.getViewportElement() : document.documentElement );\n\t\t\t}\n\t\t\t// A\n\t\t\telse if( keyCode === 65 ) {\n\t\t\t\tif ( config.autoSlideStoppable ) {\n\t\t\t\t\tthis.Reveal.toggleAutoSlide( autoSlideWasPaused );\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\ttriggered = false;\n\t\t\t}\n\n\t\t}\n\n\t\t// If the input resulted in a triggered action we should prevent\n\t\t// the browsers default behavior\n\t\tif( triggered ) {\n\t\t\tevent.preventDefault && event.preventDefault();\n\t\t}\n\t\t// ESC or O key\n\t\telse if( keyCode === 27 || keyCode === 79 ) {\n\t\t\tif( this.Reveal.closeOverlay() === false ) {\n\t\t\t\tthis.Reveal.overview.toggle();\n\t\t\t}\n\n\t\t\tevent.preventDefault && event.preventDefault();\n\t\t}\n\n\t\t// If auto-sliding is enabled we need to cue up\n\t\t// another timeout\n\t\tthis.Reveal.cueAutoSlide();\n\n\t}\n\n}","/**\n * Reads and writes the URL based on reveal.js' current state.\n */\nexport default class Location {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Delays updates to the URL due to a Chrome thumbnailer bug\n\t\tthis.writeURLTimeout = 0;\n\n\t\tthis.onWindowHashChange = this.onWindowHashChange.bind( this );\n\n\t}\n\n\tbind() {\n\n\t\twindow.addEventListener( 'hashchange', this.onWindowHashChange, false );\n\n\t}\n\n\tunbind() {\n\n\t\twindow.removeEventListener( 'hashchange', this.onWindowHashChange, false );\n\n\t}\n\n\t/**\n\t * Returns the slide indices for the given hash link.\n\t *\n\t * @param {string} [hash] the hash string that we want to\n\t * find the indices for\n\t *\n\t * @returns slide indices or null\n\t */\n\tgetIndicesFromHash( hash=window.location.hash ) {\n\n\t\t// Attempt to parse the hash as either an index or name\n\t\tlet name = hash.replace( /^#\\/?/, '' );\n\t\tlet bits = name.split( '/' );\n\n\t\t// If the first bit is not fully numeric and there is a name we\n\t\t// can assume that this is a named link\n\t\tif( !/^[0-9]*$/.test( bits[0] ) && name.length ) {\n\t\t\tlet element;\n\n\t\t\tlet f;\n\n\t\t\t// Parse named links with fragments (#/named-link/2)\n\t\t\tif( /\\/[-\\d]+$/g.test( name ) ) {\n\t\t\t\tf = parseInt( name.split( '/' ).pop(), 10 );\n\t\t\t\tf = isNaN(f) ? undefined : f;\n\t\t\t\tname = name.split( '/' ).shift();\n\t\t\t}\n\n\t\t\t// Ensure the named link is a valid HTML ID attribute\n\t\t\ttry {\n\t\t\t\telement = document.getElementById( decodeURIComponent( name ) );\n\t\t\t}\n\t\t\tcatch ( error ) { }\n\n\t\t\tif( element ) {\n\t\t\t\treturn { ...this.Reveal.getIndices( element ), f };\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tconst config = this.Reveal.getConfig();\n\t\t\tlet hashIndexBase = config.hashOneBasedIndex ? 1 : 0;\n\n\t\t\t// Read the index components of the hash\n\t\t\tlet h = ( parseInt( bits[0], 10 ) - hashIndexBase ) || 0,\n\t\t\t\tv = ( parseInt( bits[1], 10 ) - hashIndexBase ) || 0,\n\t\t\t\tf;\n\n\t\t\tif( config.fragmentInURL ) {\n\t\t\t\tf = parseInt( bits[2], 10 );\n\t\t\t\tif( isNaN( f ) ) {\n\t\t\t\t\tf = undefined;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn { h, v, f };\n\t\t}\n\n\t\t// The hash couldn't be parsed or no matching named link was found\n\t\treturn null\n\n\t}\n\n\t/**\n\t * Reads the current URL (hash) and navigates accordingly.\n\t */\n\treadURL() {\n\n\t\tconst currentIndices = this.Reveal.getIndices();\n\t\tconst newIndices = this.getIndicesFromHash();\n\n\t\tif( newIndices && ( newIndices.h !== currentIndices.h || newIndices.v !== currentIndices.v || newIndices.f !== undefined ) ) {\n\t\t\tthis.Reveal.slide( newIndices.h, newIndices.v, newIndices.f );\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.slide( currentIndices.h || 0, currentIndices.v || 0 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the page URL (hash) to reflect the current\n\t * state.\n\t *\n\t * @param {number} delay The time in ms to wait before\n\t * writing the hash\n\t */\n\twriteURL( delay ) {\n\n\t\tlet config = this.Reveal.getConfig();\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\n\t\t// Make sure there's never more than one timeout running\n\t\tclearTimeout( this.writeURLTimeout );\n\n\t\t// If a delay is specified, timeout this call\n\t\tif( typeof delay === 'number' ) {\n\t\t\tthis.writeURLTimeout = setTimeout( this.writeURL, delay );\n\t\t}\n\t\telse if( currentSlide ) {\n\n\t\t\tlet hash = this.getHash();\n\n\t\t\t// If we're configured to push to history OR the history\n\t\t\t// API is not avaialble.\n\t\t\tif( config.history ) {\n\t\t\t\twindow.location.hash = hash;\n\t\t\t}\n\t\t\t// If we're configured to reflect the current slide in the\n\t\t\t// URL without pushing to history.\n\t\t\telse if( config.hash ) {\n\t\t\t\t// If the hash is empty, don't add it to the URL\n\t\t\t\tif( hash === '/' ) {\n\t\t\t\t\twindow.history.replaceState( null, null, window.location.pathname + window.location.search );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\twindow.history.replaceState( null, null, '#' + hash );\n\t\t\t\t}\n\t\t\t}\n\t\t\t// UPDATE: The below nuking of all hash changes breaks\n\t\t\t// anchors on pages where reveal.js is running. Removed\n\t\t\t// in 4.0. Why was it here in the first place? ¯\\_(ツ)_/¯\n\t\t\t//\n\t\t\t// If history and hash are both disabled, a hash may still\n\t\t\t// be added to the URL by clicking on a href with a hash\n\t\t\t// target. Counter this by always removing the hash.\n\t\t\t// else {\n\t\t\t// \twindow.history.replaceState( null, null, window.location.pathname + window.location.search );\n\t\t\t// }\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Return a hash URL that will resolve to the given slide location.\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide to link to\n\t */\n\tgetHash( slide ) {\n\n\t\tlet url = '/';\n\n\t\t// Attempt to create a named link based on the slide's ID\n\t\tlet s = slide || this.Reveal.getCurrentSlide();\n\t\tlet id = s ? s.getAttribute( 'id' ) : null;\n\t\tif( id ) {\n\t\t\tid = encodeURIComponent( id );\n\t\t}\n\n\t\tlet index = this.Reveal.getIndices( slide );\n\t\tif( !this.Reveal.getConfig().fragmentInURL ) {\n\t\t\tindex.f = undefined;\n\t\t}\n\n\t\t// If the current slide has an ID, use that as a named link,\n\t\t// but we don't support named links with a fragment index\n\t\tif( typeof id === 'string' && id.length ) {\n\t\t\turl = '/' + id;\n\n\t\t\t// If there is also a fragment, append that at the end\n\t\t\t// of the named link, like: #/named-link/2\n\t\t\tif( index.f >= 0 ) url += '/' + index.f;\n\t\t}\n\t\t// Otherwise use the /h/v index\n\t\telse {\n\t\t\tlet hashIndexBase = this.Reveal.getConfig().hashOneBasedIndex ? 1 : 0;\n\t\t\tif( index.h > 0 || index.v > 0 || index.f >= 0 ) url += index.h + hashIndexBase;\n\t\t\tif( index.v > 0 || index.f >= 0 ) url += '/' + (index.v + hashIndexBase );\n\t\t\tif( index.f >= 0 ) url += '/' + index.f;\n\t\t}\n\n\t\treturn url;\n\n\t}\n\n\t/**\n\t * Handler for the window level 'hashchange' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tonWindowHashChange( event ) {\n\n\t\tthis.readURL();\n\n\t}\n\n}","import { queryAll } from '../utils/util.js'\nimport { isAndroid } from '../utils/device.js'\n\n/**\n * Manages our presentation controls. This includes both\n * the built-in control arrows as well as event monitoring\n * of any elements within the presentation with either of the\n * following helper classes:\n * - .navigate-up\n * - .navigate-right\n * - .navigate-down\n * - .navigate-left\n * - .navigate-next\n * - .navigate-prev\n */\nexport default class Controls {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onNavigateLeftClicked = this.onNavigateLeftClicked.bind( this );\n\t\tthis.onNavigateRightClicked = this.onNavigateRightClicked.bind( this );\n\t\tthis.onNavigateUpClicked = this.onNavigateUpClicked.bind( this );\n\t\tthis.onNavigateDownClicked = this.onNavigateDownClicked.bind( this );\n\t\tthis.onNavigatePrevClicked = this.onNavigatePrevClicked.bind( this );\n\t\tthis.onNavigateNextClicked = this.onNavigateNextClicked.bind( this );\n\n\t}\n\n\trender() {\n\n\t\tconst rtl = this.Reveal.getConfig().rtl;\n\t\tconst revealElement = this.Reveal.getRevealElement();\n\n\t\tthis.element = document.createElement( 'aside' );\n\t\tthis.element.className = 'controls';\n\t\tthis.element.innerHTML =\n\t\t\t`<button class=\"navigate-left\" aria-label=\"${ rtl ? 'next slide' : 'previous slide' }\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-right\" aria-label=\"${ rtl ? 'previous slide' : 'next slide' }\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-up\" aria-label=\"above slide\"><div class=\"controls-arrow\"></div></button>\n\t\t\t<button class=\"navigate-down\" aria-label=\"below slide\"><div class=\"controls-arrow\"></div></button>`;\n\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t\t// There can be multiple instances of controls throughout the page\n\t\tthis.controlsLeft = queryAll( revealElement, '.navigate-left' );\n\t\tthis.controlsRight = queryAll( revealElement, '.navigate-right' );\n\t\tthis.controlsUp = queryAll( revealElement, '.navigate-up' );\n\t\tthis.controlsDown = queryAll( revealElement, '.navigate-down' );\n\t\tthis.controlsPrev = queryAll( revealElement, '.navigate-prev' );\n\t\tthis.controlsNext = queryAll( revealElement, '.navigate-next' );\n\n\t\t// The left, right and down arrows in the standard reveal.js controls\n\t\tthis.controlsRightArrow = this.element.querySelector( '.navigate-right' );\n\t\tthis.controlsLeftArrow = this.element.querySelector( '.navigate-left' );\n\t\tthis.controlsDownArrow = this.element.querySelector( '.navigate-down' );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tthis.element.style.display = config.controls ? 'block' : 'none';\n\n\t\tthis.element.setAttribute( 'data-controls-layout', config.controlsLayout );\n\t\tthis.element.setAttribute( 'data-controls-back-arrows', config.controlsBackArrows );\n\n\t}\n\n\tbind() {\n\n\t\t// Listen to both touch and click events, in case the device\n\t\t// supports both\n\t\tlet pointerEvents = [ 'touchstart', 'click' ];\n\n\t\t// Only support touch for Android, fixes double navigations in\n\t\t// stock browser\n\t\tif( isAndroid ) {\n\t\t\tpointerEvents = [ 'touchstart' ];\n\t\t}\n\n\t\tpointerEvents.forEach( eventName => {\n\t\t\tthis.controlsLeft.forEach( el => el.addEventListener( eventName, this.onNavigateLeftClicked, false ) );\n\t\t\tthis.controlsRight.forEach( el => el.addEventListener( eventName, this.onNavigateRightClicked, false ) );\n\t\t\tthis.controlsUp.forEach( el => el.addEventListener( eventName, this.onNavigateUpClicked, false ) );\n\t\t\tthis.controlsDown.forEach( el => el.addEventListener( eventName, this.onNavigateDownClicked, false ) );\n\t\t\tthis.controlsPrev.forEach( el => el.addEventListener( eventName, this.onNavigatePrevClicked, false ) );\n\t\t\tthis.controlsNext.forEach( el => el.addEventListener( eventName, this.onNavigateNextClicked, false ) );\n\t\t} );\n\n\t}\n\n\tunbind() {\n\n\t\t[ 'touchstart', 'click' ].forEach( eventName => {\n\t\t\tthis.controlsLeft.forEach( el => el.removeEventListener( eventName, this.onNavigateLeftClicked, false ) );\n\t\t\tthis.controlsRight.forEach( el => el.removeEventListener( eventName, this.onNavigateRightClicked, false ) );\n\t\t\tthis.controlsUp.forEach( el => el.removeEventListener( eventName, this.onNavigateUpClicked, false ) );\n\t\t\tthis.controlsDown.forEach( el => el.removeEventListener( eventName, this.onNavigateDownClicked, false ) );\n\t\t\tthis.controlsPrev.forEach( el => el.removeEventListener( eventName, this.onNavigatePrevClicked, false ) );\n\t\t\tthis.controlsNext.forEach( el => el.removeEventListener( eventName, this.onNavigateNextClicked, false ) );\n\t\t} );\n\n\t}\n\n\t/**\n\t * Updates the state of all control/navigation arrows.\n\t */\n\tupdate() {\n\n\t\tlet routes = this.Reveal.availableRoutes();\n\n\t\t// Remove the 'enabled' class from all directions\n\t\t[...this.controlsLeft, ...this.controlsRight, ...this.controlsUp, ...this.controlsDown, ...this.controlsPrev, ...this.controlsNext].forEach( node => {\n\t\t\tnode.classList.remove( 'enabled', 'fragmented' );\n\n\t\t\t// Set 'disabled' attribute on all directions\n\t\t\tnode.setAttribute( 'disabled', 'disabled' );\n\t\t} );\n\n\t\t// Add the 'enabled' class to the available routes; remove 'disabled' attribute to enable buttons\n\t\tif( routes.left ) this.controlsLeft.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.right ) this.controlsRight.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.up ) this.controlsUp.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.down ) this.controlsDown.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t// Prev/next buttons\n\t\tif( routes.left || routes.up ) this.controlsPrev.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\tif( routes.right || routes.down ) this.controlsNext.forEach( el => { el.classList.add( 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t// Highlight fragment directions\n\t\tlet currentSlide = this.Reveal.getCurrentSlide();\n\t\tif( currentSlide ) {\n\n\t\t\tlet fragmentsRoutes = this.Reveal.fragments.availableRoutes();\n\n\t\t\t// Always apply fragment decorator to prev/next buttons\n\t\t\tif( fragmentsRoutes.prev ) this.controlsPrev.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\tif( fragmentsRoutes.next ) this.controlsNext.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\n\t\t\t// Apply fragment decorators to directional buttons based on\n\t\t\t// what slide axis they are in\n\t\t\tif( this.Reveal.isVerticalSlide( currentSlide ) ) {\n\t\t\t\tif( fragmentsRoutes.prev ) this.controlsUp.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t\tif( fragmentsRoutes.next ) this.controlsDown.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif( fragmentsRoutes.prev ) this.controlsLeft.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t\tif( fragmentsRoutes.next ) this.controlsRight.forEach( el => { el.classList.add( 'fragmented', 'enabled' ); el.removeAttribute( 'disabled' ); } );\n\t\t\t}\n\n\t\t}\n\n\t\tif( this.Reveal.getConfig().controlsTutorial ) {\n\n\t\t\tlet indices = this.Reveal.getIndices();\n\n\t\t\t// Highlight control arrows with an animation to ensure\n\t\t\t// that the viewer knows how to navigate\n\t\t\tif( !this.Reveal.hasNavigatedVertically() && routes.down ) {\n\t\t\t\tthis.controlsDownArrow.classList.add( 'highlight' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.controlsDownArrow.classList.remove( 'highlight' );\n\n\t\t\t\tif( this.Reveal.getConfig().rtl ) {\n\n\t\t\t\t\tif( !this.Reveal.hasNavigatedHorizontally() && routes.left && indices.v === 0 ) {\n\t\t\t\t\t\tthis.controlsLeftArrow.classList.add( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.controlsLeftArrow.classList.remove( 'highlight' );\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\n\t\t\t\t\tif( !this.Reveal.hasNavigatedHorizontally() && routes.right && indices.v === 0 ) {\n\t\t\t\t\t\tthis.controlsRightArrow.classList.add( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.controlsRightArrow.classList.remove( 'highlight' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Event handlers for navigation control buttons.\n\t */\n\tonNavigateLeftClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tif( this.Reveal.getConfig().navigationMode === 'linear' ) {\n\t\t\tthis.Reveal.prev();\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.left();\n\t\t}\n\n\t}\n\n\tonNavigateRightClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tif( this.Reveal.getConfig().navigationMode === 'linear' ) {\n\t\t\tthis.Reveal.next();\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.right();\n\t\t}\n\n\t}\n\n\tonNavigateUpClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.up();\n\n\t}\n\n\tonNavigateDownClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.down();\n\n\t}\n\n\tonNavigatePrevClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.prev();\n\n\t}\n\n\tonNavigateNextClicked( event ) {\n\n\t\tevent.preventDefault();\n\t\tthis.Reveal.onUserInput();\n\n\t\tthis.Reveal.next();\n\n\t}\n\n\n}","/**\n * Creates a visual progress bar for the presentation.\n */\nexport default class Progress {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onProgressClicked = this.onProgressClicked.bind( this );\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'progress';\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t\tthis.bar = document.createElement( 'span' );\n\t\tthis.element.appendChild( this.bar );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tthis.element.style.display = config.progress ? 'block' : 'none';\n\n\t}\n\n\tbind() {\n\n\t\tif( this.Reveal.getConfig().progress && this.element ) {\n\t\t\tthis.element.addEventListener( 'click', this.onProgressClicked, false );\n\t\t}\n\n\t}\n\n\tunbind() {\n\n\t\tif ( this.Reveal.getConfig().progress && this.element ) {\n\t\t\tthis.element.removeEventListener( 'click', this.onProgressClicked, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the progress bar to reflect the current slide.\n\t */\n\tupdate() {\n\n\t\t// Update progress if enabled\n\t\tif( this.Reveal.getConfig().progress && this.bar ) {\n\n\t\t\tlet scale = this.Reveal.getProgress();\n\n\t\t\t// Don't fill the progress bar if there's only one slide\n\t\t\tif( this.Reveal.getTotalSlides() < 2 ) {\n\t\t\t\tscale = 0;\n\t\t\t}\n\n\t\t\tthis.bar.style.transform = 'scaleX('+ scale +')';\n\n\t\t}\n\n\t}\n\n\tgetMaxWidth() {\n\n\t\treturn this.Reveal.getRevealElement().offsetWidth;\n\n\t}\n\n\t/**\n\t * Clicking on the progress bar results in a navigation to the\n\t * closest approximate horizontal slide using this equation:\n\t *\n\t * ( clickX / presentationWidth ) * numberOfSlides\n\t *\n\t * @param {object} event\n\t */\n\tonProgressClicked( event ) {\n\n\t\tthis.Reveal.onUserInput( event );\n\n\t\tevent.preventDefault();\n\n\t\tlet slides = this.Reveal.getSlides();\n\t\tlet slidesTotal = slides.length;\n\t\tlet slideIndex = Math.floor( ( event.clientX / this.getMaxWidth() ) * slidesTotal );\n\n\t\tif( this.Reveal.getConfig().rtl ) {\n\t\t\tslideIndex = slidesTotal - slideIndex;\n\t\t}\n\n\t\tlet targetIndices = this.Reveal.getIndices(slides[slideIndex]);\n\t\tthis.Reveal.slide( targetIndices.h, targetIndices.v );\n\n\t}\n\n\n}","/**\n * Handles hiding of the pointer/cursor when inactive.\n */\nexport default class Pointer {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Throttles mouse wheel navigation\n\t\tthis.lastMouseWheelStep = 0;\n\n\t\t// Is the mouse pointer currently hidden from view\n\t\tthis.cursorHidden = false;\n\n\t\t// Timeout used to determine when the cursor is inactive\n\t\tthis.cursorInactiveTimeout = 0;\n\n\t\tthis.onDocumentCursorActive = this.onDocumentCursorActive.bind( this );\n\t\tthis.onDocumentMouseScroll = this.onDocumentMouseScroll.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.mouseWheel ) {\n\t\t\tdocument.addEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF\n\t\t\tdocument.addEventListener( 'mousewheel', this.onDocumentMouseScroll, false );\n\t\t}\n\t\telse {\n\t\t\tdocument.removeEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF\n\t\t\tdocument.removeEventListener( 'mousewheel', this.onDocumentMouseScroll, false );\n\t\t}\n\n\t\t// Auto-hide the mouse pointer when its inactive\n\t\tif( config.hideInactiveCursor ) {\n\t\t\tdocument.addEventListener( 'mousemove', this.onDocumentCursorActive, false );\n\t\t\tdocument.addEventListener( 'mousedown', this.onDocumentCursorActive, false );\n\t\t}\n\t\telse {\n\t\t\tthis.showCursor();\n\n\t\t\tdocument.removeEventListener( 'mousemove', this.onDocumentCursorActive, false );\n\t\t\tdocument.removeEventListener( 'mousedown', this.onDocumentCursorActive, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Shows the mouse pointer after it has been hidden with\n\t * #hideCursor.\n\t */\n\tshowCursor() {\n\n\t\tif( this.cursorHidden ) {\n\t\t\tthis.cursorHidden = false;\n\t\t\tthis.Reveal.getRevealElement().style.cursor = '';\n\t\t}\n\n\t}\n\n\t/**\n\t * Hides the mouse pointer when it's on top of the .reveal\n\t * container.\n\t */\n\thideCursor() {\n\n\t\tif( this.cursorHidden === false ) {\n\t\t\tthis.cursorHidden = true;\n\t\t\tthis.Reveal.getRevealElement().style.cursor = 'none';\n\t\t}\n\n\t}\n\n\t/**\n\t * Called whenever there is mouse input at the document level\n\t * to determine if the cursor is active or not.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentCursorActive( event ) {\n\n\t\tthis.showCursor();\n\n\t\tclearTimeout( this.cursorInactiveTimeout );\n\n\t\tthis.cursorInactiveTimeout = setTimeout( this.hideCursor.bind( this ), this.Reveal.getConfig().hideCursorTime );\n\n\t}\n\n\t/**\n\t * Handles mouse wheel scrolling, throttled to avoid skipping\n\t * multiple slides.\n\t *\n\t * @param {object} event\n\t */\n\tonDocumentMouseScroll( event ) {\n\n\t\tif( Date.now() - this.lastMouseWheelStep > 1000 ) {\n\n\t\t\tthis.lastMouseWheelStep = Date.now();\n\n\t\t\tlet delta = event.detail || -event.wheelDelta;\n\t\t\tif( delta > 0 ) {\n\t\t\t\tthis.Reveal.next();\n\t\t\t}\n\t\t\telse if( delta < 0 ) {\n\t\t\t\tthis.Reveal.prev();\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}","var DESCRIPTORS = require('../internals/descriptors');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) {\n result.push(TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","var $ = require('../internals/export');\nvar $values = require('../internals/object-to-array').values;\n\n// `Object.values` method\n// https://tc39.es/ecma262/#sec-object.values\n$({ target: 'Object', stat: true }, {\n values: function values(O) {\n return $values(O);\n }\n});\n","/**\n * Loads a JavaScript file from the given URL and executes it.\n *\n * @param {string} url Address of the .js file to load\n * @param {function} callback Method to invoke when the script\n * has loaded and executed\n */\nexport const loadScript = ( url, callback ) => {\n\n\tconst script = document.createElement( 'script' );\n\tscript.type = 'text/javascript';\n\tscript.async = false;\n\tscript.defer = false;\n\tscript.src = url;\n\n\tif( typeof callback === 'function' ) {\n\n\t\t// Success callback\n\t\tscript.onload = script.onreadystatechange = event => {\n\t\t\tif( event.type === 'load' || /loaded|complete/.test( script.readyState ) ) {\n\n\t\t\t\t// Kill event listeners\n\t\t\t\tscript.onload = script.onreadystatechange = script.onerror = null;\n\n\t\t\t\tcallback();\n\n\t\t\t}\n\t\t};\n\n\t\t// Error callback\n\t\tscript.onerror = err => {\n\n\t\t\t// Kill event listeners\n\t\t\tscript.onload = script.onreadystatechange = script.onerror = null;\n\n\t\t\tcallback( new Error( 'Failed loading script: ' + script.src + '\\n' + err ) );\n\n\t\t};\n\n\t}\n\n\t// Append the script at the end of <head>\n\tconst head = document.querySelector( 'head' );\n\thead.insertBefore( script, head.lastChild );\n\n}","import { loadScript } from '../utils/loader.js'\n\n/**\n * Manages loading and registering of reveal.js plugins.\n */\nexport default class Plugins {\n\n\tconstructor( reveal ) {\n\n\t\tthis.Reveal = reveal;\n\n\t\t// Flags our current state (idle -> loading -> loaded)\n\t\tthis.state = 'idle';\n\n\t\t// An id:instance map of currently registed plugins\n\t\tthis.registeredPlugins = {};\n\n\t\tthis.asyncDependencies = [];\n\n\t}\n\n\t/**\n\t * Loads reveal.js dependencies, registers and\n\t * initializes plugins.\n\t *\n\t * Plugins are direct references to a reveal.js plugin\n\t * object that we register and initialize after any\n\t * synchronous dependencies have loaded.\n\t *\n\t * Dependencies are defined via the 'dependencies' config\n\t * option and will be loaded prior to starting reveal.js.\n\t * Some dependencies may have an 'async' flag, if so they\n\t * will load after reveal.js has been started up.\n\t */\n\tload( plugins, dependencies ) {\n\n\t\tthis.state = 'loading';\n\n\t\tplugins.forEach( this.registerPlugin.bind( this ) );\n\n\t\treturn new Promise( resolve => {\n\n\t\t\tlet scripts = [],\n\t\t\t\tscriptsToLoad = 0;\n\n\t\t\tdependencies.forEach( s => {\n\t\t\t\t// Load if there's no condition or the condition is truthy\n\t\t\t\tif( !s.condition || s.condition() ) {\n\t\t\t\t\tif( s.async ) {\n\t\t\t\t\t\tthis.asyncDependencies.push( s );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tscripts.push( s );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tif( scripts.length ) {\n\t\t\t\tscriptsToLoad = scripts.length;\n\n\t\t\t\tconst scriptLoadedCallback = (s) => {\n\t\t\t\t\tif( s && typeof s.callback === 'function' ) s.callback();\n\n\t\t\t\t\tif( --scriptsToLoad === 0 ) {\n\t\t\t\t\t\tthis.initPlugins().then( resolve );\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\t// Load synchronous scripts\n\t\t\t\tscripts.forEach( s => {\n\t\t\t\t\tif( typeof s.id === 'string' ) {\n\t\t\t\t\t\tthis.registerPlugin( s );\n\t\t\t\t\t\tscriptLoadedCallback( s );\n\t\t\t\t\t}\n\t\t\t\t\telse if( typeof s.src === 'string' ) {\n\t\t\t\t\t\tloadScript( s.src, () => scriptLoadedCallback(s) );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tconsole.warn( 'Unrecognized plugin format', s );\n\t\t\t\t\t\tscriptLoadedCallback();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.initPlugins().then( resolve );\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Initializes our plugins and waits for them to be ready\n\t * before proceeding.\n\t */\n\tinitPlugins() {\n\n\t\treturn new Promise( resolve => {\n\n\t\t\tlet pluginValues = Object.values( this.registeredPlugins );\n\t\t\tlet pluginsToInitialize = pluginValues.length;\n\n\t\t\t// If there are no plugins, skip this step\n\t\t\tif( pluginsToInitialize === 0 ) {\n\t\t\t\tthis.loadAsync().then( resolve );\n\t\t\t}\n\t\t\t// ... otherwise initialize plugins\n\t\t\telse {\n\n\t\t\t\tlet initNextPlugin;\n\n\t\t\t\tlet afterPlugInitialized = () => {\n\t\t\t\t\tif( --pluginsToInitialize === 0 ) {\n\t\t\t\t\t\tthis.loadAsync().then( resolve );\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tinitNextPlugin();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tlet i = 0;\n\n\t\t\t\t// Initialize plugins serially\n\t\t\t\tinitNextPlugin = () => {\n\n\t\t\t\t\tlet plugin = pluginValues[i++];\n\n\t\t\t\t\t// If the plugin has an 'init' method, invoke it\n\t\t\t\t\tif( typeof plugin.init === 'function' ) {\n\t\t\t\t\t\tlet promise = plugin.init( this.Reveal );\n\n\t\t\t\t\t\t// If the plugin returned a Promise, wait for it\n\t\t\t\t\t\tif( promise && typeof promise.then === 'function' ) {\n\t\t\t\t\t\t\tpromise.then( afterPlugInitialized );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tafterPlugInitialized();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tafterPlugInitialized();\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tinitNextPlugin();\n\n\t\t\t}\n\n\t\t} )\n\n\t}\n\n\t/**\n\t * Loads all async reveal.js dependencies.\n\t */\n\tloadAsync() {\n\n\t\tthis.state = 'loaded';\n\n\t\tif( this.asyncDependencies.length ) {\n\t\t\tthis.asyncDependencies.forEach( s => {\n\t\t\t\tloadScript( s.src, s.callback );\n\t\t\t} );\n\t\t}\n\n\t\treturn Promise.resolve();\n\n\t}\n\n\t/**\n\t * Registers a new plugin with this reveal.js instance.\n\t *\n\t * reveal.js waits for all regisered plugins to initialize\n\t * before considering itself ready, as long as the plugin\n\t * is registered before calling `Reveal.initialize()`.\n\t */\n\tregisterPlugin( plugin ) {\n\n\t\t// Backwards compatibility to make reveal.js ~3.9.0\n\t\t// plugins work with reveal.js 4.0.0\n\t\tif( arguments.length === 2 && typeof arguments[0] === 'string' ) {\n\t\t\tplugin = arguments[1];\n\t\t\tplugin.id = arguments[0];\n\t\t}\n\t\t// Plugin can optionally be a function which we call\n\t\t// to create an instance of the plugin\n\t\telse if( typeof plugin === 'function' ) {\n\t\t\tplugin = plugin();\n\t\t}\n\n\t\tlet id = plugin.id;\n\n\t\tif( typeof id !== 'string' ) {\n\t\t\tconsole.warn( 'Unrecognized plugin format; can\\'t find plugin.id', plugin );\n\t\t}\n\t\telse if( this.registeredPlugins[id] === undefined ) {\n\t\t\tthis.registeredPlugins[id] = plugin;\n\n\t\t\t// If a plugin is registered after reveal.js is loaded,\n\t\t\t// initialize it right away\n\t\t\tif( this.state === 'loaded' && typeof plugin.init === 'function' ) {\n\t\t\t\tplugin.init( this.Reveal );\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tconsole.warn( 'reveal.js: \"'+ id +'\" plugin has already been registered' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if a specific plugin has been registered.\n\t *\n\t * @param {String} id Unique plugin identifier\n\t */\n\thasPlugin( id ) {\n\n\t\treturn !!this.registeredPlugins[id];\n\n\t}\n\n\t/**\n\t * Returns the specific plugin instance, if a plugin\n\t * with the given ID has been registered.\n\t *\n\t * @param {String} id Unique plugin identifier\n\t */\n\tgetPlugin( id ) {\n\n\t\treturn this.registeredPlugins[id];\n\n\t}\n\n\tgetRegisteredPlugins() {\n\n\t\treturn this.registeredPlugins;\n\n\t}\n\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","import { SLIDES_SELECTOR } from '../utils/constants.js'\nimport { queryAll, createStyleSheet } from '../utils/util.js'\n\n/**\n * Setups up our presentation for printing/exporting to PDF.\n */\nexport default class Print {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\t/**\n\t * Configures the presentation for printing to a static\n\t * PDF.\n\t */\n\tasync setupPDF() {\n\n\t\tconst config = this.Reveal.getConfig();\n\t\tconst slides = queryAll( this.Reveal.getRevealElement(), SLIDES_SELECTOR )\n\n\t\t// Compute slide numbers now, before we start duplicating slides\n\t\tconst doingSlideNumbers = config.slideNumber && /all|print/i.test( config.showSlideNumber );\n\n\t\tconst slideSize = this.Reveal.getComputedSlideSize( window.innerWidth, window.innerHeight );\n\n\t\t// Dimensions of the PDF pages\n\t\tconst pageWidth = Math.floor( slideSize.width * ( 1 + config.margin ) ),\n\t\t\tpageHeight = Math.floor( slideSize.height * ( 1 + config.margin ) );\n\n\t\t// Dimensions of slides within the pages\n\t\tconst slideWidth = slideSize.width,\n\t\t\tslideHeight = slideSize.height;\n\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\t// Let the browser know what page size we want to print\n\t\tcreateStyleSheet( '@page{size:'+ pageWidth +'px '+ pageHeight +'px; margin: 0px;}' );\n\n\t\t// Limit the size of certain elements to the dimensions of the slide\n\t\tcreateStyleSheet( '.reveal section>img, .reveal section>video, .reveal section>iframe{max-width: '+ slideWidth +'px; max-height:'+ slideHeight +'px}' );\n\n\t\tdocument.documentElement.classList.add( 'print-pdf' );\n\t\tdocument.body.style.width = pageWidth + 'px';\n\t\tdocument.body.style.height = pageHeight + 'px';\n\n\t\t// Make sure stretch elements fit on slide\n\t\tawait new Promise( requestAnimationFrame );\n\t\tthis.Reveal.layoutSlideContents( slideWidth, slideHeight );\n\n\t\t// Re-run the slide layout so that r-fit-text is applied based on\n\t\t// the printed slide size\n\t\tslides.forEach( slide => this.Reveal.slideContent.layout( slide ) );\n\n\t\t// Batch scrollHeight access to prevent layout thrashing\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\tconst slideScrollHeights = slides.map( slide => slide.scrollHeight );\n\n\t\tconst pages = [];\n\t\tconst pageContainer = slides[0].parentNode;\n\n\t\t// Slide and slide background layout\n\t\tslides.forEach( function( slide, index ) {\n\n\t\t\t// Vertical stacks are not centred since their section\n\t\t\t// children will be\n\t\t\tif( slide.classList.contains( 'stack' ) === false ) {\n\t\t\t\t// Center the slide inside of the page, giving the slide some margin\n\t\t\t\tlet left = ( pageWidth - slideWidth ) / 2;\n\t\t\t\tlet top = ( pageHeight - slideHeight ) / 2;\n\n\t\t\t\tconst contentHeight = slideScrollHeights[ index ];\n\t\t\t\tlet numberOfPages = Math.max( Math.ceil( contentHeight / pageHeight ), 1 );\n\n\t\t\t\t// Adhere to configured pages per slide limit\n\t\t\t\tnumberOfPages = Math.min( numberOfPages, config.pdfMaxPagesPerSlide );\n\n\t\t\t\t// Center slides vertically\n\t\t\t\tif( numberOfPages === 1 && config.center || slide.classList.contains( 'center' ) ) {\n\t\t\t\t\ttop = Math.max( ( pageHeight - contentHeight ) / 2, 0 );\n\t\t\t\t}\n\n\t\t\t\t// Wrap the slide in a page element and hide its overflow\n\t\t\t\t// so that no page ever flows onto another\n\t\t\t\tconst page = document.createElement( 'div' );\n\t\t\t\tpages.push( page );\n\n\t\t\t\tpage.className = 'pdf-page';\n\t\t\t\tpage.style.height = ( ( pageHeight + config.pdfPageHeightOffset ) * numberOfPages ) + 'px';\n\t\t\t\tpage.appendChild( slide );\n\n\t\t\t\t// Position the slide inside of the page\n\t\t\t\tslide.style.left = left + 'px';\n\t\t\t\tslide.style.top = top + 'px';\n\t\t\t\tslide.style.width = slideWidth + 'px';\n\n\t\t\t\tif( slide.slideBackgroundElement ) {\n\t\t\t\t\tpage.insertBefore( slide.slideBackgroundElement, slide );\n\t\t\t\t}\n\n\t\t\t\t// Inject notes if `showNotes` is enabled\n\t\t\t\tif( config.showNotes ) {\n\n\t\t\t\t\t// Are there notes for this slide?\n\t\t\t\t\tconst notes = this.Reveal.getSlideNotes( slide );\n\t\t\t\t\tif( notes ) {\n\n\t\t\t\t\t\tconst notesSpacing = 8;\n\t\t\t\t\t\tconst notesLayout = typeof config.showNotes === 'string' ? config.showNotes : 'inline';\n\t\t\t\t\t\tconst notesElement = document.createElement( 'div' );\n\t\t\t\t\t\tnotesElement.classList.add( 'speaker-notes' );\n\t\t\t\t\t\tnotesElement.classList.add( 'speaker-notes-pdf' );\n\t\t\t\t\t\tnotesElement.setAttribute( 'data-layout', notesLayout );\n\t\t\t\t\t\tnotesElement.innerHTML = notes;\n\n\t\t\t\t\t\tif( notesLayout === 'separate-page' ) {\n\t\t\t\t\t\t\tpages.push( notesElement );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnotesElement.style.left = notesSpacing + 'px';\n\t\t\t\t\t\t\tnotesElement.style.bottom = notesSpacing + 'px';\n\t\t\t\t\t\t\tnotesElement.style.width = ( pageWidth - notesSpacing*2 ) + 'px';\n\t\t\t\t\t\t\tpage.appendChild( notesElement );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t// Inject slide numbers if `slideNumbers` are enabled\n\t\t\t\tif( doingSlideNumbers ) {\n\t\t\t\t\tconst slideNumber = index + 1;\n\t\t\t\t\tconst numberElement = document.createElement( 'div' );\n\t\t\t\t\tnumberElement.classList.add( 'slide-number' );\n\t\t\t\t\tnumberElement.classList.add( 'slide-number-pdf' );\n\t\t\t\t\tnumberElement.innerHTML = slideNumber;\n\t\t\t\t\tpage.appendChild( numberElement );\n\t\t\t\t}\n\n\t\t\t\t// Copy page and show fragments one after another\n\t\t\t\tif( config.pdfSeparateFragments ) {\n\n\t\t\t\t\t// Each fragment 'group' is an array containing one or more\n\t\t\t\t\t// fragments. Multiple fragments that appear at the same time\n\t\t\t\t\t// are part of the same group.\n\t\t\t\t\tconst fragmentGroups = this.Reveal.fragments.sort( page.querySelectorAll( '.fragment' ), true );\n\n\t\t\t\t\tlet previousFragmentStep;\n\n\t\t\t\t\tfragmentGroups.forEach( function( fragments ) {\n\n\t\t\t\t\t\t// Remove 'current-fragment' from the previous group\n\t\t\t\t\t\tif( previousFragmentStep ) {\n\t\t\t\t\t\t\tpreviousFragmentStep.forEach( function( fragment ) {\n\t\t\t\t\t\t\t\tfragment.classList.remove( 'current-fragment' );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Show the fragments for the current index\n\t\t\t\t\t\tfragments.forEach( function( fragment ) {\n\t\t\t\t\t\t\tfragment.classList.add( 'visible', 'current-fragment' );\n\t\t\t\t\t\t}, this );\n\n\t\t\t\t\t\t// Create a separate page for the current fragment state\n\t\t\t\t\t\tconst clonedPage = page.cloneNode( true );\n\t\t\t\t\t\tpages.push( clonedPage );\n\n\t\t\t\t\t\tpreviousFragmentStep = fragments;\n\n\t\t\t\t\t}, this );\n\n\t\t\t\t\t// Reset the first/original page so that all fragments are hidden\n\t\t\t\t\tfragmentGroups.forEach( function( fragments ) {\n\t\t\t\t\t\tfragments.forEach( function( fragment ) {\n\t\t\t\t\t\t\tfragment.classList.remove( 'visible', 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\t\t\t\t// Show all fragments\n\t\t\t\telse {\n\t\t\t\t\tqueryAll( page, '.fragment:not(.fade-out)' ).forEach( function( fragment ) {\n\t\t\t\t\t\tfragment.classList.add( 'visible' );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}, this );\n\n\t\tawait new Promise( requestAnimationFrame );\n\n\t\tpages.forEach( page => pageContainer.appendChild( page ) );\n\n\t\t// Notify subscribers that the PDF layout is good to go\n\t\tthis.Reveal.dispatchEvent({ type: 'pdf-ready' });\n\n\t}\n\n\t/**\n\t * Checks if this instance is being used to print a PDF.\n\t */\n\tisPrintingPDF() {\n\n\t\treturn ( /print-pdf/gi ).test( window.location.search );\n\n\t}\n\n}\n","import { isAndroid } from '../utils/device.js'\nimport { matches } from '../utils/util.js'\n\nconst SWIPE_THRESHOLD = 40;\n\n/**\n * Controls all touch interactions and navigations for\n * a presentation.\n */\nexport default class Touch {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\t// Holds information about the currently ongoing touch interaction\n\t\tthis.touchStartX = 0;\n\t\tthis.touchStartY = 0;\n\t\tthis.touchStartCount = 0;\n\t\tthis.touchCaptured = false;\n\n\t\tthis.onPointerDown = this.onPointerDown.bind( this );\n\t\tthis.onPointerMove = this.onPointerMove.bind( this );\n\t\tthis.onPointerUp = this.onPointerUp.bind( this );\n\t\tthis.onTouchStart = this.onTouchStart.bind( this );\n\t\tthis.onTouchMove = this.onTouchMove.bind( this );\n\t\tthis.onTouchEnd = this.onTouchEnd.bind( this );\n\n\t}\n\n\t/**\n\t *\n\t */\n\tbind() {\n\n\t\tlet revealElement = this.Reveal.getRevealElement();\n\n\t\tif( 'onpointerdown' in window ) {\n\t\t\t// Use W3C pointer events\n\t\t\trevealElement.addEventListener( 'pointerdown', this.onPointerDown, false );\n\t\t\trevealElement.addEventListener( 'pointermove', this.onPointerMove, false );\n\t\t\trevealElement.addEventListener( 'pointerup', this.onPointerUp, false );\n\t\t}\n\t\telse if( window.navigator.msPointerEnabled ) {\n\t\t\t// IE 10 uses prefixed version of pointer events\n\t\t\trevealElement.addEventListener( 'MSPointerDown', this.onPointerDown, false );\n\t\t\trevealElement.addEventListener( 'MSPointerMove', this.onPointerMove, false );\n\t\t\trevealElement.addEventListener( 'MSPointerUp', this.onPointerUp, false );\n\t\t}\n\t\telse {\n\t\t\t// Fall back to touch events\n\t\t\trevealElement.addEventListener( 'touchstart', this.onTouchStart, false );\n\t\t\trevealElement.addEventListener( 'touchmove', this.onTouchMove, false );\n\t\t\trevealElement.addEventListener( 'touchend', this.onTouchEnd, false );\n\t\t}\n\n\t}\n\n\t/**\n\t *\n\t */\n\tunbind() {\n\n\t\tlet revealElement = this.Reveal.getRevealElement();\n\n\t\trevealElement.removeEventListener( 'pointerdown', this.onPointerDown, false );\n\t\trevealElement.removeEventListener( 'pointermove', this.onPointerMove, false );\n\t\trevealElement.removeEventListener( 'pointerup', this.onPointerUp, false );\n\n\t\trevealElement.removeEventListener( 'MSPointerDown', this.onPointerDown, false );\n\t\trevealElement.removeEventListener( 'MSPointerMove', this.onPointerMove, false );\n\t\trevealElement.removeEventListener( 'MSPointerUp', this.onPointerUp, false );\n\n\t\trevealElement.removeEventListener( 'touchstart', this.onTouchStart, false );\n\t\trevealElement.removeEventListener( 'touchmove', this.onTouchMove, false );\n\t\trevealElement.removeEventListener( 'touchend', this.onTouchEnd, false );\n\n\t}\n\n\t/**\n\t * Checks if the target element prevents the triggering of\n\t * swipe navigation.\n\t */\n\tisSwipePrevented( target ) {\n\n\t\t// Prevent accidental swipes when scrubbing timelines\n\t\tif( matches( target, 'video, audio' ) ) return true;\n\n\t\twhile( target && typeof target.hasAttribute === 'function' ) {\n\t\t\tif( target.hasAttribute( 'data-prevent-swipe' ) ) return true;\n\t\t\ttarget = target.parentNode;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Handler for the 'touchstart' event, enables support for\n\t * swipe and pinch gestures.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchStart( event ) {\n\n\t\tif( this.isSwipePrevented( event.target ) ) return true;\n\n\t\tthis.touchStartX = event.touches[0].clientX;\n\t\tthis.touchStartY = event.touches[0].clientY;\n\t\tthis.touchStartCount = event.touches.length;\n\n\t}\n\n\t/**\n\t * Handler for the 'touchmove' event.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchMove( event ) {\n\n\t\tif( this.isSwipePrevented( event.target ) ) return true;\n\n\t\tlet config = this.Reveal.getConfig();\n\n\t\t// Each touch should only trigger one action\n\t\tif( !this.touchCaptured ) {\n\t\t\tthis.Reveal.onUserInput( event );\n\n\t\t\tlet currentX = event.touches[0].clientX;\n\t\t\tlet currentY = event.touches[0].clientY;\n\n\t\t\t// There was only one touch point, look for a swipe\n\t\t\tif( event.touches.length === 1 && this.touchStartCount !== 2 ) {\n\n\t\t\t\tlet availableRoutes = this.Reveal.availableRoutes({ includeFragments: true });\n\n\t\t\t\tlet deltaX = currentX - this.touchStartX,\n\t\t\t\t\tdeltaY = currentY - this.touchStartY;\n\n\t\t\t\tif( deltaX > SWIPE_THRESHOLD && Math.abs( deltaX ) > Math.abs( deltaY ) ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tif( config.rtl ) {\n\t\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.left();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaX < -SWIPE_THRESHOLD && Math.abs( deltaX ) > Math.abs( deltaY ) ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tif( config.rtl ) {\n\t\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.right();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaY > SWIPE_THRESHOLD && availableRoutes.up ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tthis.Reveal.prev();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.up();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( deltaY < -SWIPE_THRESHOLD && availableRoutes.down ) {\n\t\t\t\t\tthis.touchCaptured = true;\n\t\t\t\t\tif( config.navigationMode === 'linear' ) {\n\t\t\t\t\t\tthis.Reveal.next();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.Reveal.down();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// If we're embedded, only block touch events if they have\n\t\t\t\t// triggered an action\n\t\t\t\tif( config.embedded ) {\n\t\t\t\t\tif( this.touchCaptured || this.Reveal.isVerticalSlide() ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Not embedded? Block them all to avoid needless tossing\n\t\t\t\t// around of the viewport in iOS\n\t\t\t\telse {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t\t// There's a bug with swiping on some Android devices unless\n\t\t// the default action is always prevented\n\t\telse if( isAndroid ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the 'touchend' event.\n\t *\n\t * @param {object} event\n\t */\n\tonTouchEnd( event ) {\n\n\t\tthis.touchCaptured = false;\n\n\t}\n\n\t/**\n\t * Convert pointer down to touch start.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerDown( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchStart( event );\n\t\t}\n\n\t}\n\n\t/**\n\t * Convert pointer move to touch move.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerMove( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchMove( event );\n\t\t}\n\n\t}\n\n\t/**\n\t * Convert pointer up to touch end.\n\t *\n\t * @param {object} event\n\t */\n\tonPointerUp( event ) {\n\n\t\tif( event.pointerType === event.MSPOINTER_TYPE_TOUCH || event.pointerType === \"touch\" ) {\n\t\t\tevent.touches = [{ clientX: event.clientX, clientY: event.clientY }];\n\t\t\tthis.onTouchEnd( event );\n\t\t}\n\n\t}\n\n}","import { closest } from '../utils/util.js'\n\n/**\n * Manages focus when a presentation is embedded. This\n * helps us only capture keyboard from the presentation\n * a user is currently interacting with in a page where\n * multiple presentations are embedded.\n */\n\nconst STATE_FOCUS = 'focus';\nconst STATE_BLUR = 'blur';\n\nexport default class Focus {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t\tthis.onRevealPointerDown = this.onRevealPointerDown.bind( this );\n\t\tthis.onDocumentPointerDown = this.onDocumentPointerDown.bind( this );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.embedded ) {\n\t\t\tthis.blur();\n\t\t}\n\t\telse {\n\t\t\tthis.focus();\n\t\t\tthis.unbind();\n\t\t}\n\n\t}\n\n\tbind() {\n\n\t\tif( this.Reveal.getConfig().embedded ) {\n\t\t\tthis.Reveal.getRevealElement().addEventListener( 'pointerdown', this.onRevealPointerDown, false );\n\t\t}\n\n\t}\n\n\tunbind() {\n\n\t\tthis.Reveal.getRevealElement().removeEventListener( 'pointerdown', this.onRevealPointerDown, false );\n\t\tdocument.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\n\t}\n\n\tfocus() {\n\n\t\tif( this.state !== STATE_FOCUS ) {\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'focused' );\n\t\t\tdocument.addEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\t\t}\n\n\t\tthis.state = STATE_FOCUS;\n\n\t}\n\n\tblur() {\n\n\t\tif( this.state !== STATE_BLUR ) {\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'focused' );\n\t\t\tdocument.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );\n\t\t}\n\n\t\tthis.state = STATE_BLUR;\n\n\t}\n\n\tisFocused() {\n\n\t\treturn this.state === STATE_FOCUS;\n\n\t}\n\n\tonRevealPointerDown( event ) {\n\n\t\tthis.focus();\n\n\t}\n\n\tonDocumentPointerDown( event ) {\n\n\t\tlet revealElement = closest( event.target, '.reveal' );\n\t\tif( !revealElement || revealElement !== this.Reveal.getRevealElement() ) {\n\t\t\tthis.blur();\n\t\t}\n\n\t}\n\n}","/**\n * Handles the showing and \n */\nexport default class Notes {\n\n\tconstructor( Reveal ) {\n\n\t\tthis.Reveal = Reveal;\n\n\t}\n\n\trender() {\n\n\t\tthis.element = document.createElement( 'div' );\n\t\tthis.element.className = 'speaker-notes';\n\t\tthis.element.setAttribute( 'data-prevent-swipe', '' );\n\t\tthis.element.setAttribute( 'tabindex', '0' );\n\t\tthis.Reveal.getRevealElement().appendChild( this.element );\n\n\t}\n\n\t/**\n\t * Called when the reveal.js config is updated.\n\t */\n\tconfigure( config, oldConfig ) {\n\n\t\tif( config.showNotes ) {\n\t\t\tthis.element.setAttribute( 'data-layout', typeof config.showNotes === 'string' ? config.showNotes : 'inline' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Pick up notes from the current slide and display them\n\t * to the viewer.\n\t *\n\t * @see {@link config.showNotes}\n\t */\n\tupdate() {\n\n\t\tif( this.Reveal.getConfig().showNotes && this.element && this.Reveal.getCurrentSlide() && !this.Reveal.print.isPrintingPDF() ) {\n\n\t\t\tthis.element.innerHTML = this.getSlideNotes() || '<span class=\"notes-placeholder\">No notes on this slide.</span>';\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates the visibility of the speaker notes sidebar that\n\t * is used to share annotated slides. The notes sidebar is\n\t * only visible if showNotes is true and there are notes on\n\t * one or more slides in the deck.\n\t */\n\tupdateVisibility() {\n\n\t\tif( this.Reveal.getConfig().showNotes && this.hasNotes() && !this.Reveal.print.isPrintingPDF() ) {\n\t\t\tthis.Reveal.getRevealElement().classList.add( 'show-notes' );\n\t\t}\n\t\telse {\n\t\t\tthis.Reveal.getRevealElement().classList.remove( 'show-notes' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if there are speaker notes for ANY slide in the\n\t * presentation.\n\t */\n\thasNotes() {\n\n\t\treturn this.Reveal.getSlidesElement().querySelectorAll( '[data-notes], aside.notes' ).length > 0;\n\n\t}\n\n\t/**\n\t * Checks if this presentation is running inside of the\n\t * speaker notes window.\n\t *\n\t * @return {boolean}\n\t */\n\tisSpeakerNotesWindow() {\n\n\t\treturn !!window.location.search.match( /receiver/gi );\n\n\t}\n\n\t/**\n\t * Retrieves the speaker notes from a slide. Notes can be\n\t * defined in two ways:\n\t * 1. As a data-notes attribute on the slide <section>\n\t * 2. As an <aside class=\"notes\"> inside of the slide\n\t *\n\t * @param {HTMLElement} [slide=currentSlide]\n\t * @return {(string|null)}\n\t */\n\tgetSlideNotes( slide = this.Reveal.getCurrentSlide() ) {\n\n\t\t// Notes can be specified via the data-notes attribute...\n\t\tif( slide.hasAttribute( 'data-notes' ) ) {\n\t\t\treturn slide.getAttribute( 'data-notes' );\n\t\t}\n\n\t\t// ... or using an <aside class=\"notes\"> element\n\t\tlet notesElement = slide.querySelector( 'aside.notes' );\n\t\tif( notesElement ) {\n\t\t\treturn notesElement.innerHTML;\n\t\t}\n\n\t\treturn null;\n\n\t}\n\n}","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","/**\n * UI component that lets the use control auto-slide\n * playback via play/pause.\n */\nexport default class Playback {\n\n\t/**\n\t * @param {HTMLElement} container The component will append\n\t * itself to this\n\t * @param {function} progressCheck A method which will be\n\t * called frequently to get the current playback progress on\n\t * a range of 0-1\n\t */\n\tconstructor( container, progressCheck ) {\n\n\t\t// Cosmetics\n\t\tthis.diameter = 100;\n\t\tthis.diameter2 = this.diameter/2;\n\t\tthis.thickness = 6;\n\n\t\t// Flags if we are currently playing\n\t\tthis.playing = false;\n\n\t\t// Current progress on a 0-1 range\n\t\tthis.progress = 0;\n\n\t\t// Used to loop the animation smoothly\n\t\tthis.progressOffset = 1;\n\n\t\tthis.container = container;\n\t\tthis.progressCheck = progressCheck;\n\n\t\tthis.canvas = document.createElement( 'canvas' );\n\t\tthis.canvas.className = 'playback';\n\t\tthis.canvas.width = this.diameter;\n\t\tthis.canvas.height = this.diameter;\n\t\tthis.canvas.style.width = this.diameter2 + 'px';\n\t\tthis.canvas.style.height = this.diameter2 + 'px';\n\t\tthis.context = this.canvas.getContext( '2d' );\n\n\t\tthis.container.appendChild( this.canvas );\n\n\t\tthis.render();\n\n\t}\n\n\tsetPlaying( value ) {\n\n\t\tconst wasPlaying = this.playing;\n\n\t\tthis.playing = value;\n\n\t\t// Start repainting if we weren't already\n\t\tif( !wasPlaying && this.playing ) {\n\t\t\tthis.animate();\n\t\t}\n\t\telse {\n\t\t\tthis.render();\n\t\t}\n\n\t}\n\n\tanimate() {\n\n\t\tconst progressBefore = this.progress;\n\n\t\tthis.progress = this.progressCheck();\n\n\t\t// When we loop, offset the progress so that it eases\n\t\t// smoothly rather than immediately resetting\n\t\tif( progressBefore > 0.8 && this.progress < 0.2 ) {\n\t\t\tthis.progressOffset = this.progress;\n\t\t}\n\n\t\tthis.render();\n\n\t\tif( this.playing ) {\n\t\t\trequestAnimationFrame( this.animate.bind( this ) );\n\t\t}\n\n\t}\n\n\t/**\n\t * Renders the current progress and playback state.\n\t */\n\trender() {\n\n\t\tlet progress = this.playing ? this.progress : 0,\n\t\t\tradius = ( this.diameter2 ) - this.thickness,\n\t\t\tx = this.diameter2,\n\t\t\ty = this.diameter2,\n\t\t\ticonSize = 28;\n\n\t\t// Ease towards 1\n\t\tthis.progressOffset += ( 1 - this.progressOffset ) * 0.1;\n\n\t\tconst endAngle = ( - Math.PI / 2 ) + ( progress * ( Math.PI * 2 ) );\n\t\tconst startAngle = ( - Math.PI / 2 ) + ( this.progressOffset * ( Math.PI * 2 ) );\n\n\t\tthis.context.save();\n\t\tthis.context.clearRect( 0, 0, this.diameter, this.diameter );\n\n\t\t// Solid background color\n\t\tthis.context.beginPath();\n\t\tthis.context.arc( x, y, radius + 4, 0, Math.PI * 2, false );\n\t\tthis.context.fillStyle = 'rgba( 0, 0, 0, 0.4 )';\n\t\tthis.context.fill();\n\n\t\t// Draw progress track\n\t\tthis.context.beginPath();\n\t\tthis.context.arc( x, y, radius, 0, Math.PI * 2, false );\n\t\tthis.context.lineWidth = this.thickness;\n\t\tthis.context.strokeStyle = 'rgba( 255, 255, 255, 0.2 )';\n\t\tthis.context.stroke();\n\n\t\tif( this.playing ) {\n\t\t\t// Draw progress on top of track\n\t\t\tthis.context.beginPath();\n\t\t\tthis.context.arc( x, y, radius, startAngle, endAngle, false );\n\t\t\tthis.context.lineWidth = this.thickness;\n\t\t\tthis.context.strokeStyle = '#fff';\n\t\t\tthis.context.stroke();\n\t\t}\n\n\t\tthis.context.translate( x - ( iconSize / 2 ), y - ( iconSize / 2 ) );\n\n\t\t// Draw play/pause icons\n\t\tif( this.playing ) {\n\t\t\tthis.context.fillStyle = '#fff';\n\t\t\tthis.context.fillRect( 0, 0, iconSize / 2 - 4, iconSize );\n\t\t\tthis.context.fillRect( iconSize / 2 + 4, 0, iconSize / 2 - 4, iconSize );\n\t\t}\n\t\telse {\n\t\t\tthis.context.beginPath();\n\t\t\tthis.context.translate( 4, 0 );\n\t\t\tthis.context.moveTo( 0, 0 );\n\t\t\tthis.context.lineTo( iconSize - 4, iconSize / 2 );\n\t\t\tthis.context.lineTo( 0, iconSize );\n\t\t\tthis.context.fillStyle = '#fff';\n\t\t\tthis.context.fill();\n\t\t}\n\n\t\tthis.context.restore();\n\n\t}\n\n\ton( type, listener ) {\n\t\tthis.canvas.addEventListener( type, listener, false );\n\t}\n\n\toff( type, listener ) {\n\t\tthis.canvas.removeEventListener( type, listener, false );\n\t}\n\n\tdestroy() {\n\n\t\tthis.playing = false;\n\n\t\tif( this.canvas.parentNode ) {\n\t\t\tthis.container.removeChild( this.canvas );\n\t\t}\n\n\t}\n\n}","/**\n * The default reveal.js config object.\n */\nexport default {\n\n\t// The \"normal\" size of the presentation, aspect ratio will be preserved\n\t// when the presentation is scaled to fit different resolutions\n\twidth: 960,\n\theight: 700,\n\n\t// Factor of the display size that should remain empty around the content\n\tmargin: 0.04,\n\n\t// Bounds for smallest/largest possible scale to apply to content\n\tminScale: 0.2,\n\tmaxScale: 2.0,\n\n\t// Display presentation control arrows\n\tcontrols: true,\n\n\t// Help the user learn the controls by providing hints, for example by\n\t// bouncing the down arrow when they first encounter a vertical slide\n\tcontrolsTutorial: true,\n\n\t// Determines where controls appear, \"edges\" or \"bottom-right\"\n\tcontrolsLayout: 'bottom-right',\n\n\t// Visibility rule for backwards navigation arrows; \"faded\", \"hidden\"\n\t// or \"visible\"\n\tcontrolsBackArrows: 'faded',\n\n\t// Display a presentation progress bar\n\tprogress: true,\n\n\t// Display the page number of the current slide\n\t// - true: Show slide number\n\t// - false: Hide slide number\n\t//\n\t// Can optionally be set as a string that specifies the number formatting:\n\t// - \"h.v\":\t Horizontal . vertical slide number (default)\n\t// - \"h/v\":\t Horizontal / vertical slide number\n\t// - \"c\":\t Flattened slide number\n\t// - \"c/t\":\t Flattened slide number / total slides\n\t//\n\t// Alternatively, you can provide a function that returns the slide\n\t// number for the current slide. The function should take in a slide\n\t// object and return an array with one string [slideNumber] or\n\t// three strings [n1,delimiter,n2]. See #formatSlideNumber().\n\tslideNumber: false,\n\n\t// Can be used to limit the contexts in which the slide number appears\n\t// - \"all\": Always show the slide number\n\t// - \"print\": Only when printing to PDF\n\t// - \"speaker\": Only in the speaker view\n\tshowSlideNumber: 'all',\n\n\t// Use 1 based indexing for # links to match slide number (default is zero\n\t// based)\n\thashOneBasedIndex: false,\n\n\t// Add the current slide number to the URL hash so that reloading the\n\t// page/copying the URL will return you to the same slide\n\thash: false,\n\n\t// Flags if we should monitor the hash and change slides accordingly\n\trespondToHashChanges: true,\n\n\t// Push each slide change to the browser history. Implies `hash: true`\n\thistory: false,\n\n\t// Enable keyboard shortcuts for navigation\n\tkeyboard: true,\n\n\t// Optional function that blocks keyboard events when retuning false\n\t//\n\t// If you set this to 'focused', we will only capture keyboard events\n\t// for embedded decks when they are in focus\n\tkeyboardCondition: null,\n\n\t// Disables the default reveal.js slide layout (scaling and centering)\n\t// so that you can use custom CSS layout\n\tdisableLayout: false,\n\n\t// Enable the slide overview mode\n\toverview: true,\n\n\t// Vertical centering of slides\n\tcenter: true,\n\n\t// Enables touch navigation on devices with touch input\n\ttouch: true,\n\n\t// Loop the presentation\n\tloop: false,\n\n\t// Change the presentation direction to be RTL\n\trtl: false,\n\n\t// Changes the behavior of our navigation directions.\n\t//\n\t// \"default\"\n\t// Left/right arrow keys step between horizontal slides, up/down\n\t// arrow keys step between vertical slides. Space key steps through\n\t// all slides (both horizontal and vertical).\n\t//\n\t// \"linear\"\n\t// Removes the up/down arrows. Left/right arrows step through all\n\t// slides (both horizontal and vertical).\n\t//\n\t// \"grid\"\n\t// When this is enabled, stepping left/right from a vertical stack\n\t// to an adjacent vertical stack will land you at the same vertical\n\t// index.\n\t//\n\t// Consider a deck with six slides ordered in two vertical stacks:\n\t// 1.1 2.1\n\t// 1.2 2.2\n\t// 1.3 2.3\n\t//\n\t// If you're on slide 1.3 and navigate right, you will normally move\n\t// from 1.3 -> 2.1. If \"grid\" is used, the same navigation takes you\n\t// from 1.3 -> 2.3.\n\tnavigationMode: 'default',\n\n\t// Randomizes the order of slides each time the presentation loads\n\tshuffle: false,\n\n\t// Turns fragments on and off globally\n\tfragments: true,\n\n\t// Flags whether to include the current fragment in the URL,\n\t// so that reloading brings you to the same fragment position\n\tfragmentInURL: true,\n\n\t// Flags if the presentation is running in an embedded mode,\n\t// i.e. contained within a limited portion of the screen\n\tembedded: false,\n\n\t// Flags if we should show a help overlay when the question-mark\n\t// key is pressed\n\thelp: true,\n\n\t// Flags if it should be possible to pause the presentation (blackout)\n\tpause: true,\n\n\t// Flags if speaker notes should be visible to all viewers\n\tshowNotes: false,\n\n\t// Flags if slides with data-visibility=\"hidden\" should be kep visible\n\tshowHiddenSlides: false,\n\n\t// Global override for autoplaying embedded media (video/audio/iframe)\n\t// - null: Media will only autoplay if data-autoplay is present\n\t// - true: All media will autoplay, regardless of individual setting\n\t// - false: No media will autoplay, regardless of individual setting\n\tautoPlayMedia: null,\n\n\t// Global override for preloading lazy-loaded iframes\n\t// - null: Iframes with data-src AND data-preload will be loaded when within\n\t// the viewDistance, iframes with only data-src will be loaded when visible\n\t// - true: All iframes with data-src will be loaded when within the viewDistance\n\t// - false: All iframes with data-src will be loaded only when visible\n\tpreloadIframes: null,\n\n\t// Can be used to globally disable auto-animation\n\tautoAnimate: true,\n\n\t// Optionally provide a custom element matcher that will be\n\t// used to dictate which elements we can animate between.\n\tautoAnimateMatcher: null,\n\n\t// Default settings for our auto-animate transitions, can be\n\t// overridden per-slide or per-element via data arguments\n\tautoAnimateEasing: 'ease',\n\tautoAnimateDuration: 1.0,\n\tautoAnimateUnmatched: true,\n\n\t// CSS properties that can be auto-animated. Position & scale\n\t// is matched separately so there's no need to include styles\n\t// like top/right/bottom/left, width/height or margin.\n\tautoAnimateStyles: [\n\t\t'opacity',\n\t\t'color',\n\t\t'background-color',\n\t\t'padding',\n\t\t'font-size',\n\t\t'line-height',\n\t\t'letter-spacing',\n\t\t'border-width',\n\t\t'border-color',\n\t\t'border-radius',\n\t\t'outline',\n\t\t'outline-offset'\n\t],\n\n\t// Controls automatic progression to the next slide\n\t// - 0: Auto-sliding only happens if the data-autoslide HTML attribute\n\t// is present on the current slide or fragment\n\t// - 1+: All slides will progress automatically at the given interval\n\t// - false: No auto-sliding, even if data-autoslide is present\n\tautoSlide: 0,\n\n\t// Stop auto-sliding after user input\n\tautoSlideStoppable: true,\n\n\t// Use this method for navigation when auto-sliding (defaults to navigateNext)\n\tautoSlideMethod: null,\n\n\t// Specify the average time in seconds that you think you will spend\n\t// presenting each slide. This is used to show a pacing timer in the\n\t// speaker view\n\tdefaultTiming: null,\n\n\t// Enable slide navigation via mouse wheel\n\tmouseWheel: false,\n\n\t// Opens links in an iframe preview overlay\n\t// Add `data-preview-link` and `data-preview-link=\"false\"` to customise each link\n\t// individually\n\tpreviewLinks: false,\n\n\t// Exposes the reveal.js API through window.postMessage\n\tpostMessage: true,\n\n\t// Dispatches all reveal.js events to the parent window through postMessage\n\tpostMessageEvents: false,\n\n\t// Focuses body when page changes visibility to ensure keyboard shortcuts work\n\tfocusBodyOnPageVisibilityChange: true,\n\n\t// Transition style\n\ttransition: 'slide', // none/fade/slide/convex/concave/zoom\n\n\t// Transition speed\n\ttransitionSpeed: 'default', // default/fast/slow\n\n\t// Transition style for full page slide backgrounds\n\tbackgroundTransition: 'fade', // none/fade/slide/convex/concave/zoom\n\n\t// Parallax background image\n\tparallaxBackgroundImage: '', // CSS syntax, e.g. \"a.jpg\"\n\n\t// Parallax background size\n\tparallaxBackgroundSize: '', // CSS syntax, e.g. \"3000px 2000px\"\n\n\t// Parallax background repeat\n\tparallaxBackgroundRepeat: '', // repeat/repeat-x/repeat-y/no-repeat/initial/inherit\n\n\t// Parallax background position\n\tparallaxBackgroundPosition: '', // CSS syntax, e.g. \"top left\"\n\n\t// Amount of pixels to move the parallax background per slide step\n\tparallaxBackgroundHorizontal: null,\n\tparallaxBackgroundVertical: null,\n\n\t// The maximum number of pages a single slide can expand onto when printing\n\t// to PDF, unlimited by default\n\tpdfMaxPagesPerSlide: Number.POSITIVE_INFINITY,\n\n\t// Prints each fragment on a separate slide\n\tpdfSeparateFragments: true,\n\n\t// Offset used to reduce the height of content within exported PDF pages.\n\t// This exists to account for environment differences based on how you\n\t// print to PDF. CLI printing options, like phantomjs and wkpdf, can end\n\t// on precisely the total height of the document whereas in-browser\n\t// printing has to end one pixel before.\n\tpdfPageHeightOffset: -1,\n\n\t// Number of slides away from the current that are visible\n\tviewDistance: 3,\n\n\t// Number of slides away from the current that are visible on mobile\n\t// devices. It is advisable to set this to a lower number than\n\t// viewDistance in order to save resources.\n\tmobileViewDistance: 2,\n\n\t// The display mode that will be used to show slides\n\tdisplay: 'block',\n\n\t// Hide cursor if inactive\n\thideInactiveCursor: true,\n\n\t// Time before the cursor is hidden (in ms)\n\thideCursorTime: 5000,\n\n\t// Script dependencies to load\n\tdependencies: [],\n\n\t// Plugin objects to register and use for this presentation\n\tplugins: []\n\n}","import SlideContent from './controllers/slidecontent.js'\nimport SlideNumber from './controllers/slidenumber.js'\nimport Backgrounds from './controllers/backgrounds.js'\nimport AutoAnimate from './controllers/autoanimate.js'\nimport Fragments from './controllers/fragments.js'\nimport Overview from './controllers/overview.js'\nimport Keyboard from './controllers/keyboard.js'\nimport Location from './controllers/location.js'\nimport Controls from './controllers/controls.js'\nimport Progress from './controllers/progress.js'\nimport Pointer from './controllers/pointer.js'\nimport Plugins from './controllers/plugins.js'\nimport Print from './controllers/print.js'\nimport Touch from './controllers/touch.js'\nimport Focus from './controllers/focus.js'\nimport Notes from './controllers/notes.js'\nimport Playback from './components/playback.js'\nimport defaultConfig from './config.js'\nimport * as Util from './utils/util.js'\nimport * as Device from './utils/device.js'\nimport {\n\tSLIDES_SELECTOR,\n\tHORIZONTAL_SLIDES_SELECTOR,\n\tVERTICAL_SLIDES_SELECTOR,\n\tPOST_MESSAGE_METHOD_BLACKLIST\n} from './utils/constants.js'\n\n// The reveal.js version\nexport const VERSION = '4.2.0';\n\n/**\n * reveal.js\n * https://revealjs.com\n * MIT licensed\n *\n * Copyright (C) 2011-2021 Hakim El Hattab, https://hakim.se\n */\nexport default function( revealElement, options ) {\n\n\t// Support initialization with no args, one arg\n\t// [options] or two args [revealElement, options]\n\tif( arguments.length < 2 ) {\n\t\toptions = arguments[0];\n\t\trevealElement = document.querySelector( '.reveal' );\n\t}\n\n\tconst Reveal = {};\n\n\t// Configuration defaults, can be overridden at initialization time\n\tlet config = {},\n\n\t\t// Flags if reveal.js is loaded (has dispatched the 'ready' event)\n\t\tready = false,\n\n\t\t// The horizontal and vertical index of the currently active slide\n\t\tindexh,\n\t\tindexv,\n\n\t\t// The previous and current slide HTML elements\n\t\tpreviousSlide,\n\t\tcurrentSlide,\n\n\t\t// Remember which directions that the user has navigated towards\n\t\tnavigationHistory = {\n\t\t\thasNavigatedHorizontally: false,\n\t\t\thasNavigatedVertically: false\n\t\t},\n\n\t\t// Slides may have a data-state attribute which we pick up and apply\n\t\t// as a class to the body. This list contains the combined state of\n\t\t// all current slides.\n\t\tstate = [],\n\n\t\t// The current scale of the presentation (see width/height config)\n\t\tscale = 1,\n\n\t\t// CSS transform that is currently applied to the slides container,\n\t\t// split into two groups\n\t\tslidesTransform = { layout: '', overview: '' },\n\n\t\t// Cached references to DOM elements\n\t\tdom = {},\n\n\t\t// Flags if the interaction event listeners are bound\n\t\teventsAreBound = false,\n\n\t\t// The current slide transition state; idle or running\n\t\ttransition = 'idle',\n\n\t\t// The current auto-slide duration\n\t\tautoSlide = 0,\n\n\t\t// Auto slide properties\n\t\tautoSlidePlayer,\n\t\tautoSlideTimeout = 0,\n\t\tautoSlideStartTime = -1,\n\t\tautoSlidePaused = false,\n\n\t\t// Controllers for different aspects of our presentation. They're\n\t\t// all given direct references to this Reveal instance since there\n\t\t// may be multiple presentations running in parallel.\n\t\tslideContent = new SlideContent( Reveal ),\n\t\tslideNumber = new SlideNumber( Reveal ),\n\t\tautoAnimate = new AutoAnimate( Reveal ),\n\t\tbackgrounds = new Backgrounds( Reveal ),\n\t\tfragments = new Fragments( Reveal ),\n\t\toverview = new Overview( Reveal ),\n\t\tkeyboard = new Keyboard( Reveal ),\n\t\tlocation = new Location( Reveal ),\n\t\tcontrols = new Controls( Reveal ),\n\t\tprogress = new Progress( Reveal ),\n\t\tpointer = new Pointer( Reveal ),\n\t\tplugins = new Plugins( Reveal ),\n\t\tprint = new Print( Reveal ),\n\t\tfocus = new Focus( Reveal ),\n\t\ttouch = new Touch( Reveal ),\n\t\tnotes = new Notes( Reveal );\n\n\t/**\n\t * Starts up the presentation.\n\t */\n\tfunction initialize( initOptions ) {\n\n\t\tif( !revealElement ) throw 'Unable to find presentation root (<div class=\"reveal\">).';\n\n\t\t// Cache references to key DOM elements\n\t\tdom.wrapper = revealElement;\n\t\tdom.slides = revealElement.querySelector( '.slides' );\n\n\t\tif( !dom.slides ) throw 'Unable to find slides container (<div class=\"slides\">).';\n\n\t\t// Compose our config object in order of increasing precedence:\n\t\t// 1. Default reveal.js options\n\t\t// 2. Options provided via Reveal.configure() prior to\n\t\t// initialization\n\t\t// 3. Options passed to the Reveal constructor\n\t\t// 4. Options passed to Reveal.initialize\n\t\t// 5. Query params\n\t\tconfig = { ...defaultConfig, ...config, ...options, ...initOptions, ...Util.getQueryHash() };\n\n\t\tsetViewport();\n\n\t\t// Force a layout when the whole page, incl fonts, has loaded\n\t\twindow.addEventListener( 'load', layout, false );\n\n\t\t// Register plugins and load dependencies, then move on to #start()\n\t\tplugins.load( config.plugins, config.dependencies ).then( start );\n\n\t\treturn new Promise( resolve => Reveal.on( 'ready', resolve ) );\n\n\t}\n\n\t/**\n\t * Encase the presentation in a reveal.js viewport. The\n\t * extent of the viewport differs based on configuration.\n\t */\n\tfunction setViewport() {\n\n\t\t// Embedded decks use the reveal element as their viewport\n\t\tif( config.embedded === true ) {\n\t\t\tdom.viewport = Util.closest( revealElement, '.reveal-viewport' ) || revealElement;\n\t\t}\n\t\t// Full-page decks use the body as their viewport\n\t\telse {\n\t\t\tdom.viewport = document.body;\n\t\t\tdocument.documentElement.classList.add( 'reveal-full-page' );\n\t\t}\n\n\t\tdom.viewport.classList.add( 'reveal-viewport' );\n\n\t}\n\n\t/**\n\t * Starts up reveal.js by binding input events and navigating\n\t * to the current URL deeplink if there is one.\n\t */\n\tfunction start() {\n\n\t\tready = true;\n\n\t\t// Remove slides hidden with data-visibility\n\t\tremoveHiddenSlides();\n\n\t\t// Make sure we've got all the DOM elements we need\n\t\tsetupDOM();\n\n\t\t// Listen to messages posted to this window\n\t\tsetupPostMessage();\n\n\t\t// Prevent the slides from being scrolled out of view\n\t\tsetupScrollPrevention();\n\n\t\t// Resets all vertical slides so that only the first is visible\n\t\tresetVerticalSlides();\n\n\t\t// Updates the presentation to match the current configuration values\n\t\tconfigure();\n\n\t\t// Read the initial hash\n\t\tlocation.readURL();\n\n\t\t// Create slide backgrounds\n\t\tbackgrounds.update( true );\n\n\t\t// Notify listeners that the presentation is ready but use a 1ms\n\t\t// timeout to ensure it's not fired synchronously after #initialize()\n\t\tsetTimeout( () => {\n\t\t\t// Enable transitions now that we're loaded\n\t\t\tdom.slides.classList.remove( 'no-transition' );\n\n\t\t\tdom.wrapper.classList.add( 'ready' );\n\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'ready',\n\t\t\t\tdata: {\n\t\t\t\t\tindexh,\n\t\t\t\t\tindexv,\n\t\t\t\t\tcurrentSlide\n\t\t\t\t}\n\t\t\t});\n\t\t}, 1 );\n\n\t\t// Special setup and config is required when printing to PDF\n\t\tif( print.isPrintingPDF() ) {\n\t\t\tremoveEventListeners();\n\n\t\t\t// The document needs to have loaded for the PDF layout\n\t\t\t// measurements to be accurate\n\t\t\tif( document.readyState === 'complete' ) {\n\t\t\t\tprint.setupPDF();\n\t\t\t}\n\t\t\telse {\n\t\t\t\twindow.addEventListener( 'load', () => {\n\t\t\t\t\tprint.setupPDF();\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Removes all slides with data-visibility=\"hidden\". This\n\t * is done right before the rest of the presentation is\n\t * initialized.\n\t *\n\t * If you want to show all hidden slides, initialize\n\t * reveal.js with showHiddenSlides set to true.\n\t */\n\tfunction removeHiddenSlides() {\n\n\t\tif( !config.showHiddenSlides ) {\n\t\t\tUtil.queryAll( dom.wrapper, 'section[data-visibility=\"hidden\"]' ).forEach( slide => {\n\t\t\t\tslide.parentNode.removeChild( slide );\n\t\t\t} );\n\t\t}\n\n\t}\n\n\t/**\n\t * Finds and stores references to DOM elements which are\n\t * required by the presentation. If a required element is\n\t * not found, it is created.\n\t */\n\tfunction setupDOM() {\n\n\t\t// Prevent transitions while we're loading\n\t\tdom.slides.classList.add( 'no-transition' );\n\n\t\tif( Device.isMobile ) {\n\t\t\tdom.wrapper.classList.add( 'no-hover' );\n\t\t}\n\t\telse {\n\t\t\tdom.wrapper.classList.remove( 'no-hover' );\n\t\t}\n\n\t\tbackgrounds.render();\n\t\tslideNumber.render();\n\t\tcontrols.render();\n\t\tprogress.render();\n\t\tnotes.render();\n\n\t\t// Overlay graphic which is displayed during the paused mode\n\t\tdom.pauseOverlay = Util.createSingletonNode( dom.wrapper, 'div', 'pause-overlay', config.controls ? '<button class=\"resume-button\">Resume presentation</button>' : null );\n\n\t\tdom.statusElement = createStatusElement();\n\n\t\tdom.wrapper.setAttribute( 'role', 'application' );\n\t}\n\n\t/**\n\t * Creates a hidden div with role aria-live to announce the\n\t * current slide content. Hide the div off-screen to make it\n\t * available only to Assistive Technologies.\n\t *\n\t * @return {HTMLElement}\n\t */\n\tfunction createStatusElement() {\n\n\t\tlet statusElement = dom.wrapper.querySelector( '.aria-status' );\n\t\tif( !statusElement ) {\n\t\t\tstatusElement = document.createElement( 'div' );\n\t\t\tstatusElement.style.position = 'absolute';\n\t\t\tstatusElement.style.height = '1px';\n\t\t\tstatusElement.style.width = '1px';\n\t\t\tstatusElement.style.overflow = 'hidden';\n\t\t\tstatusElement.style.clip = 'rect( 1px, 1px, 1px, 1px )';\n\t\t\tstatusElement.classList.add( 'aria-status' );\n\t\t\tstatusElement.setAttribute( 'aria-live', 'polite' );\n\t\t\tstatusElement.setAttribute( 'aria-atomic','true' );\n\t\t\tdom.wrapper.appendChild( statusElement );\n\t\t}\n\t\treturn statusElement;\n\n\t}\n\n\t/**\n\t * Announces the given text to screen readers.\n\t */\n\tfunction announceStatus( value ) {\n\n\t\tdom.statusElement.textContent = value;\n\n\t}\n\n\t/**\n\t * Converts the given HTML element into a string of text\n\t * that can be announced to a screen reader. Hidden\n\t * elements are excluded.\n\t */\n\tfunction getStatusText( node ) {\n\n\t\tlet text = '';\n\n\t\t// Text node\n\t\tif( node.nodeType === 3 ) {\n\t\t\ttext += node.textContent;\n\t\t}\n\t\t// Element node\n\t\telse if( node.nodeType === 1 ) {\n\n\t\t\tlet isAriaHidden = node.getAttribute( 'aria-hidden' );\n\t\t\tlet isDisplayHidden = window.getComputedStyle( node )['display'] === 'none';\n\t\t\tif( isAriaHidden !== 'true' && !isDisplayHidden ) {\n\n\t\t\t\tArray.from( node.childNodes ).forEach( child => {\n\t\t\t\t\ttext += getStatusText( child );\n\t\t\t\t} );\n\n\t\t\t}\n\n\t\t}\n\n\t\ttext = text.trim();\n\n\t\treturn text === '' ? '' : text + ' ';\n\n\t}\n\n\t/**\n\t * This is an unfortunate necessity. Some actions – such as\n\t * an input field being focused in an iframe or using the\n\t * keyboard to expand text selection beyond the bounds of\n\t * a slide – can trigger our content to be pushed out of view.\n\t * This scrolling can not be prevented by hiding overflow in\n\t * CSS (we already do) so we have to resort to repeatedly\n\t * checking if the slides have been offset :(\n\t */\n\tfunction setupScrollPrevention() {\n\n\t\tsetInterval( () => {\n\t\t\tif( dom.wrapper.scrollTop !== 0 || dom.wrapper.scrollLeft !== 0 ) {\n\t\t\t\tdom.wrapper.scrollTop = 0;\n\t\t\t\tdom.wrapper.scrollLeft = 0;\n\t\t\t}\n\t\t}, 1000 );\n\n\t}\n\n\t/**\n\t * Registers a listener to postMessage events, this makes it\n\t * possible to call all reveal.js API methods from another\n\t * window. For example:\n\t *\n\t * revealWindow.postMessage( JSON.stringify({\n\t * method: 'slide',\n\t * args: [ 2 ]\n\t * }), '*' );\n\t */\n\tfunction setupPostMessage() {\n\n\t\tif( config.postMessage ) {\n\t\t\twindow.addEventListener( 'message', event => {\n\t\t\t\tlet data = event.data;\n\n\t\t\t\t// Make sure we're dealing with JSON\n\t\t\t\tif( typeof data === 'string' && data.charAt( 0 ) === '{' && data.charAt( data.length - 1 ) === '}' ) {\n\t\t\t\t\tdata = JSON.parse( data );\n\n\t\t\t\t\t// Check if the requested method can be found\n\t\t\t\t\tif( data.method && typeof Reveal[data.method] === 'function' ) {\n\n\t\t\t\t\t\tif( POST_MESSAGE_METHOD_BLACKLIST.test( data.method ) === false ) {\n\n\t\t\t\t\t\t\tconst result = Reveal[data.method].apply( Reveal, data.args );\n\n\t\t\t\t\t\t\t// Dispatch a postMessage event with the returned value from\n\t\t\t\t\t\t\t// our method invocation for getter functions\n\t\t\t\t\t\t\tdispatchPostMessage( 'callback', { method: data.method, result: result } );\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconsole.warn( 'reveal.js: \"'+ data.method +'\" is is blacklisted from the postMessage API' );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Applies the configuration settings from the config\n\t * object. May be called multiple times.\n\t *\n\t * @param {object} options\n\t */\n\tfunction configure( options ) {\n\n\t\tconst oldConfig = { ...config }\n\n\t\t// New config options may be passed when this method\n\t\t// is invoked through the API after initialization\n\t\tif( typeof options === 'object' ) Util.extend( config, options );\n\n\t\t// Abort if reveal.js hasn't finished loading, config\n\t\t// changes will be applied automatically once ready\n\t\tif( Reveal.isReady() === false ) return;\n\n\t\tconst numberOfSlides = dom.wrapper.querySelectorAll( SLIDES_SELECTOR ).length;\n\n\t\t// The transition is added as a class on the .reveal element\n\t\tdom.wrapper.classList.remove( oldConfig.transition );\n\t\tdom.wrapper.classList.add( config.transition );\n\n\t\tdom.wrapper.setAttribute( 'data-transition-speed', config.transitionSpeed );\n\t\tdom.wrapper.setAttribute( 'data-background-transition', config.backgroundTransition );\n\n\t\t// Expose our configured slide dimensions as custom props\n\t\tdom.viewport.style.setProperty( '--slide-width', config.width + 'px' );\n\t\tdom.viewport.style.setProperty( '--slide-height', config.height + 'px' );\n\n\t\tif( config.shuffle ) {\n\t\t\tshuffle();\n\t\t}\n\n\t\tUtil.toggleClass( dom.wrapper, 'embedded', config.embedded );\n\t\tUtil.toggleClass( dom.wrapper, 'rtl', config.rtl );\n\t\tUtil.toggleClass( dom.wrapper, 'center', config.center );\n\n\t\t// Exit the paused mode if it was configured off\n\t\tif( config.pause === false ) {\n\t\t\tresume();\n\t\t}\n\n\t\t// Iframe link previews\n\t\tif( config.previewLinks ) {\n\t\t\tenablePreviewLinks();\n\t\t\tdisablePreviewLinks( '[data-preview-link=false]' );\n\t\t}\n\t\telse {\n\t\t\tdisablePreviewLinks();\n\t\t\tenablePreviewLinks( '[data-preview-link]:not([data-preview-link=false])' );\n\t\t}\n\n\t\t// Reset all changes made by auto-animations\n\t\tautoAnimate.reset();\n\n\t\t// Remove existing auto-slide controls\n\t\tif( autoSlidePlayer ) {\n\t\t\tautoSlidePlayer.destroy();\n\t\t\tautoSlidePlayer = null;\n\t\t}\n\n\t\t// Generate auto-slide controls if needed\n\t\tif( numberOfSlides > 1 && config.autoSlide && config.autoSlideStoppable ) {\n\t\t\tautoSlidePlayer = new Playback( dom.wrapper, () => {\n\t\t\t\treturn Math.min( Math.max( ( Date.now() - autoSlideStartTime ) / autoSlide, 0 ), 1 );\n\t\t\t} );\n\n\t\t\tautoSlidePlayer.on( 'click', onAutoSlidePlayerClick );\n\t\t\tautoSlidePaused = false;\n\t\t}\n\n\t\t// Add the navigation mode to the DOM so we can adjust styling\n\t\tif( config.navigationMode !== 'default' ) {\n\t\t\tdom.wrapper.setAttribute( 'data-navigation-mode', config.navigationMode );\n\t\t}\n\t\telse {\n\t\t\tdom.wrapper.removeAttribute( 'data-navigation-mode' );\n\t\t}\n\n\t\tnotes.configure( config, oldConfig );\n\t\tfocus.configure( config, oldConfig );\n\t\tpointer.configure( config, oldConfig );\n\t\tcontrols.configure( config, oldConfig );\n\t\tprogress.configure( config, oldConfig );\n\t\tkeyboard.configure( config, oldConfig );\n\t\tfragments.configure( config, oldConfig );\n\t\tslideNumber.configure( config, oldConfig );\n\n\t\tsync();\n\n\t}\n\n\t/**\n\t * Binds all event listeners.\n\t */\n\tfunction addEventListeners() {\n\n\t\teventsAreBound = true;\n\n\t\twindow.addEventListener( 'resize', onWindowResize, false );\n\n\t\tif( config.touch ) touch.bind();\n\t\tif( config.keyboard ) keyboard.bind();\n\t\tif( config.progress ) progress.bind();\n\t\tif( config.respondToHashChanges ) location.bind();\n\t\tcontrols.bind();\n\t\tfocus.bind();\n\n\t\tdom.slides.addEventListener( 'click', onSlidesClicked, false );\n\t\tdom.slides.addEventListener( 'transitionend', onTransitionEnd, false );\n\t\tdom.pauseOverlay.addEventListener( 'click', resume, false );\n\n\t\tif( config.focusBodyOnPageVisibilityChange ) {\n\t\t\tdocument.addEventListener( 'visibilitychange', onPageVisibilityChange, false );\n\t\t}\n\n\t}\n\n\t/**\n\t * Unbinds all event listeners.\n\t */\n\tfunction removeEventListeners() {\n\n\t\teventsAreBound = false;\n\n\t\ttouch.unbind();\n\t\tfocus.unbind();\n\t\tkeyboard.unbind();\n\t\tcontrols.unbind();\n\t\tprogress.unbind();\n\t\tlocation.unbind();\n\n\t\twindow.removeEventListener( 'resize', onWindowResize, false );\n\n\t\tdom.slides.removeEventListener( 'click', onSlidesClicked, false );\n\t\tdom.slides.removeEventListener( 'transitionend', onTransitionEnd, false );\n\t\tdom.pauseOverlay.removeEventListener( 'click', resume, false );\n\n\t}\n\n\t/**\n\t * Adds a listener to one of our custom reveal.js events,\n\t * like slidechanged.\n\t */\n\tfunction on( type, listener, useCapture ) {\n\n\t\trevealElement.addEventListener( type, listener, useCapture );\n\n\t}\n\n\t/**\n\t * Unsubscribes from a reveal.js event.\n\t */\n\tfunction off( type, listener, useCapture ) {\n\n\t\trevealElement.removeEventListener( type, listener, useCapture );\n\n\t}\n\n\t/**\n\t * Applies CSS transforms to the slides container. The container\n\t * is transformed from two separate sources: layout and the overview\n\t * mode.\n\t *\n\t * @param {object} transforms\n\t */\n\tfunction transformSlides( transforms ) {\n\n\t\t// Pick up new transforms from arguments\n\t\tif( typeof transforms.layout === 'string' ) slidesTransform.layout = transforms.layout;\n\t\tif( typeof transforms.overview === 'string' ) slidesTransform.overview = transforms.overview;\n\n\t\t// Apply the transforms to the slides container\n\t\tif( slidesTransform.layout ) {\n\t\t\tUtil.transformElement( dom.slides, slidesTransform.layout + ' ' + slidesTransform.overview );\n\t\t}\n\t\telse {\n\t\t\tUtil.transformElement( dom.slides, slidesTransform.overview );\n\t\t}\n\n\t}\n\n\t/**\n\t * Dispatches an event of the specified type from the\n\t * reveal DOM element.\n\t */\n\tfunction dispatchEvent({ target=dom.wrapper, type, data, bubbles=true }) {\n\n\t\tlet event = document.createEvent( 'HTMLEvents', 1, 2 );\n\t\tevent.initEvent( type, bubbles, true );\n\t\tUtil.extend( event, data );\n\t\ttarget.dispatchEvent( event );\n\n\t\tif( target === dom.wrapper ) {\n\t\t\t// If we're in an iframe, post each reveal.js event to the\n\t\t\t// parent window. Used by the notes plugin\n\t\t\tdispatchPostMessage( type );\n\t\t}\n\n\t\treturn event;\n\n\t}\n\n\t/**\n\t * Dispatched a postMessage of the given type from our window.\n\t */\n\tfunction dispatchPostMessage( type, data ) {\n\n\t\tif( config.postMessageEvents && window.parent !== window.self ) {\n\t\t\tlet message = {\n\t\t\t\tnamespace: 'reveal',\n\t\t\t\teventName: type,\n\t\t\t\tstate: getState()\n\t\t\t};\n\n\t\t\tUtil.extend( message, data );\n\n\t\t\twindow.parent.postMessage( JSON.stringify( message ), '*' );\n\t\t}\n\n\t}\n\n\t/**\n\t * Bind preview frame links.\n\t *\n\t * @param {string} [selector=a] - selector for anchors\n\t */\n\tfunction enablePreviewLinks( selector = 'a' ) {\n\n\t\tArray.from( dom.wrapper.querySelectorAll( selector ) ).forEach( element => {\n\t\t\tif( /^(http|www)/gi.test( element.getAttribute( 'href' ) ) ) {\n\t\t\t\telement.addEventListener( 'click', onPreviewLinkClicked, false );\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Unbind preview frame links.\n\t */\n\tfunction disablePreviewLinks( selector = 'a' ) {\n\n\t\tArray.from( dom.wrapper.querySelectorAll( selector ) ).forEach( element => {\n\t\t\tif( /^(http|www)/gi.test( element.getAttribute( 'href' ) ) ) {\n\t\t\t\telement.removeEventListener( 'click', onPreviewLinkClicked, false );\n\t\t\t}\n\t\t} );\n\n\t}\n\n\t/**\n\t * Opens a preview window for the target URL.\n\t *\n\t * @param {string} url - url for preview iframe src\n\t */\n\tfunction showPreview( url ) {\n\n\t\tcloseOverlay();\n\n\t\tdom.overlay = document.createElement( 'div' );\n\t\tdom.overlay.classList.add( 'overlay' );\n\t\tdom.overlay.classList.add( 'overlay-preview' );\n\t\tdom.wrapper.appendChild( dom.overlay );\n\n\t\tdom.overlay.innerHTML =\n\t\t\t`<header>\n\t\t\t\t<a class=\"close\" href=\"#\"><span class=\"icon\"></span></a>\n\t\t\t\t<a class=\"external\" href=\"${url}\" target=\"_blank\"><span class=\"icon\"></span></a>\n\t\t\t</header>\n\t\t\t<div class=\"spinner\"></div>\n\t\t\t<div class=\"viewport\">\n\t\t\t\t<iframe src=\"${url}\"></iframe>\n\t\t\t\t<small class=\"viewport-inner\">\n\t\t\t\t\t<span class=\"x-frame-error\">Unable to load iframe. This is likely due to the site's policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>`;\n\n\t\tdom.overlay.querySelector( 'iframe' ).addEventListener( 'load', event => {\n\t\t\tdom.overlay.classList.add( 'loaded' );\n\t\t}, false );\n\n\t\tdom.overlay.querySelector( '.close' ).addEventListener( 'click', event => {\n\t\t\tcloseOverlay();\n\t\t\tevent.preventDefault();\n\t\t}, false );\n\n\t\tdom.overlay.querySelector( '.external' ).addEventListener( 'click', event => {\n\t\t\tcloseOverlay();\n\t\t}, false );\n\n\t}\n\n\t/**\n\t * Open or close help overlay window.\n\t *\n\t * @param {Boolean} [override] Flag which overrides the\n\t * toggle logic and forcibly sets the desired state. True means\n\t * help is open, false means it's closed.\n\t */\n\tfunction toggleHelp( override ){\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? showHelp() : closeOverlay();\n\t\t}\n\t\telse {\n\t\t\tif( dom.overlay ) {\n\t\t\t\tcloseOverlay();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tshowHelp();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Opens an overlay window with help material.\n\t */\n\tfunction showHelp() {\n\n\t\tif( config.help ) {\n\n\t\t\tcloseOverlay();\n\n\t\t\tdom.overlay = document.createElement( 'div' );\n\t\t\tdom.overlay.classList.add( 'overlay' );\n\t\t\tdom.overlay.classList.add( 'overlay-help' );\n\t\t\tdom.wrapper.appendChild( dom.overlay );\n\n\t\t\tlet html = '<p class=\"title\">Keyboard Shortcuts</p><br/>';\n\n\t\t\tlet shortcuts = keyboard.getShortcuts(),\n\t\t\t\tbindings = keyboard.getBindings();\n\n\t\t\thtml += '<table><th>KEY</th><th>ACTION</th>';\n\t\t\tfor( let key in shortcuts ) {\n\t\t\t\thtml += `<tr><td>${key}</td><td>${shortcuts[ key ]}</td></tr>`;\n\t\t\t}\n\n\t\t\t// Add custom key bindings that have associated descriptions\n\t\t\tfor( let binding in bindings ) {\n\t\t\t\tif( bindings[binding].key && bindings[binding].description ) {\n\t\t\t\t\thtml += `<tr><td>${bindings[binding].key}</td><td>${bindings[binding].description}</td></tr>`;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\thtml += '</table>';\n\n\t\t\tdom.overlay.innerHTML = `\n\t\t\t\t<header>\n\t\t\t\t\t<a class=\"close\" href=\"#\"><span class=\"icon\"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class=\"viewport\">\n\t\t\t\t\t<div class=\"viewport-inner\">${html}</div>\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tdom.overlay.querySelector( '.close' ).addEventListener( 'click', event => {\n\t\t\t\tcloseOverlay();\n\t\t\t\tevent.preventDefault();\n\t\t\t}, false );\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Closes any currently open overlay.\n\t */\n\tfunction closeOverlay() {\n\n\t\tif( dom.overlay ) {\n\t\t\tdom.overlay.parentNode.removeChild( dom.overlay );\n\t\t\tdom.overlay = null;\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Applies JavaScript-controlled layout rules to the\n\t * presentation.\n\t */\n\tfunction layout() {\n\n\t\tif( dom.wrapper && !print.isPrintingPDF() ) {\n\n\t\t\tif( !config.disableLayout ) {\n\n\t\t\t\t// On some mobile devices '100vh' is taller than the visible\n\t\t\t\t// viewport which leads to part of the presentation being\n\t\t\t\t// cut off. To work around this we define our own '--vh' custom\n\t\t\t\t// property where 100x adds up to the correct height.\n\t\t\t\t//\n\t\t\t\t// https://css-tricks.com/the-trick-to-viewport-units-on-mobile/\n\t\t\t\tif( Device.isMobile && !config.embedded ) {\n\t\t\t\t\tdocument.documentElement.style.setProperty( '--vh', ( window.innerHeight * 0.01 ) + 'px' );\n\t\t\t\t}\n\n\t\t\t\tconst size = getComputedSlideSize();\n\n\t\t\t\tconst oldScale = scale;\n\n\t\t\t\t// Layout the contents of the slides\n\t\t\t\tlayoutSlideContents( config.width, config.height );\n\n\t\t\t\tdom.slides.style.width = size.width + 'px';\n\t\t\t\tdom.slides.style.height = size.height + 'px';\n\n\t\t\t\t// Determine scale of content to fit within available space\n\t\t\t\tscale = Math.min( size.presentationWidth / size.width, size.presentationHeight / size.height );\n\n\t\t\t\t// Respect max/min scale settings\n\t\t\t\tscale = Math.max( scale, config.minScale );\n\t\t\t\tscale = Math.min( scale, config.maxScale );\n\n\t\t\t\t// Don't apply any scaling styles if scale is 1\n\t\t\t\tif( scale === 1 ) {\n\t\t\t\t\tdom.slides.style.zoom = '';\n\t\t\t\t\tdom.slides.style.left = '';\n\t\t\t\t\tdom.slides.style.top = '';\n\t\t\t\t\tdom.slides.style.bottom = '';\n\t\t\t\t\tdom.slides.style.right = '';\n\t\t\t\t\ttransformSlides( { layout: '' } );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// Zoom Scaling\n\t\t\t\t\t// Content remains crisp no matter how much we scale. Side\n\t\t\t\t\t// effects are minor differences in text layout and iframe\n\t\t\t\t\t// viewports changing size. A 200x200 iframe viewport in a\n\t\t\t\t\t// 2x zoomed presentation ends up having a 400x400 viewport.\n\t\t\t\t\tif( scale > 1 && Device.supportsZoom && window.devicePixelRatio < 2 ) {\n\t\t\t\t\t\tdom.slides.style.zoom = scale;\n\t\t\t\t\t\tdom.slides.style.left = '';\n\t\t\t\t\t\tdom.slides.style.top = '';\n\t\t\t\t\t\tdom.slides.style.bottom = '';\n\t\t\t\t\t\tdom.slides.style.right = '';\n\t\t\t\t\t\ttransformSlides( { layout: '' } );\n\t\t\t\t\t}\n\t\t\t\t\t// Transform Scaling\n\t\t\t\t\t// Content layout remains the exact same when scaled up.\n\t\t\t\t\t// Side effect is content becoming blurred, especially with\n\t\t\t\t\t// high scale values on ldpi screens.\n\t\t\t\t\telse {\n\t\t\t\t\t\tdom.slides.style.zoom = '';\n\t\t\t\t\t\tdom.slides.style.left = '50%';\n\t\t\t\t\t\tdom.slides.style.top = '50%';\n\t\t\t\t\t\tdom.slides.style.bottom = 'auto';\n\t\t\t\t\t\tdom.slides.style.right = 'auto';\n\t\t\t\t\t\ttransformSlides( { layout: 'translate(-50%, -50%) scale('+ scale +')' } );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Select all slides, vertical and horizontal\n\t\t\t\tconst slides = Array.from( dom.wrapper.querySelectorAll( SLIDES_SELECTOR ) );\n\n\t\t\t\tfor( let i = 0, len = slides.length; i < len; i++ ) {\n\t\t\t\t\tconst slide = slides[ i ];\n\n\t\t\t\t\t// Don't bother updating invisible slides\n\t\t\t\t\tif( slide.style.display === 'none' ) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tif( config.center || slide.classList.contains( 'center' ) ) {\n\t\t\t\t\t\t// Vertical stacks are not centred since their section\n\t\t\t\t\t\t// children will be\n\t\t\t\t\t\tif( slide.classList.contains( 'stack' ) ) {\n\t\t\t\t\t\t\tslide.style.top = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tslide.style.top = Math.max( ( size.height - slide.scrollHeight ) / 2, 0 ) + 'px';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslide.style.top = '';\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tif( oldScale !== scale ) {\n\t\t\t\t\tdispatchEvent({\n\t\t\t\t\t\ttype: 'resize',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\toldScale,\n\t\t\t\t\t\t\tscale,\n\t\t\t\t\t\t\tsize\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tprogress.update();\n\t\t\tbackgrounds.updateParallax();\n\n\t\t\tif( overview.isActive() ) {\n\t\t\t\toverview.update();\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Applies layout logic to the contents of all slides in\n\t * the presentation.\n\t *\n\t * @param {string|number} width\n\t * @param {string|number} height\n\t */\n\tfunction layoutSlideContents( width, height ) {\n\n\t\t// Handle sizing of elements with the 'r-stretch' class\n\t\tUtil.queryAll( dom.slides, 'section > .stretch, section > .r-stretch' ).forEach( element => {\n\n\t\t\t// Determine how much vertical space we can use\n\t\t\tlet remainingHeight = Util.getRemainingHeight( element, height );\n\n\t\t\t// Consider the aspect ratio of media elements\n\t\t\tif( /(img|video)/gi.test( element.nodeName ) ) {\n\t\t\t\tconst nw = element.naturalWidth || element.videoWidth,\n\t\t\t\t\t nh = element.naturalHeight || element.videoHeight;\n\n\t\t\t\tconst es = Math.min( width / nw, remainingHeight / nh );\n\n\t\t\t\telement.style.width = ( nw * es ) + 'px';\n\t\t\t\telement.style.height = ( nh * es ) + 'px';\n\n\t\t\t}\n\t\t\telse {\n\t\t\t\telement.style.width = width + 'px';\n\t\t\t\telement.style.height = remainingHeight + 'px';\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Calculates the computed pixel size of our slides. These\n\t * values are based on the width and height configuration\n\t * options.\n\t *\n\t * @param {number} [presentationWidth=dom.wrapper.offsetWidth]\n\t * @param {number} [presentationHeight=dom.wrapper.offsetHeight]\n\t */\n\tfunction getComputedSlideSize( presentationWidth, presentationHeight ) {\n\n\t\tconst size = {\n\t\t\t// Slide size\n\t\t\twidth: config.width,\n\t\t\theight: config.height,\n\n\t\t\t// Presentation size\n\t\t\tpresentationWidth: presentationWidth || dom.wrapper.offsetWidth,\n\t\t\tpresentationHeight: presentationHeight || dom.wrapper.offsetHeight\n\t\t};\n\n\t\t// Reduce available space by margin\n\t\tsize.presentationWidth -= ( size.presentationWidth * config.margin );\n\t\tsize.presentationHeight -= ( size.presentationHeight * config.margin );\n\n\t\t// Slide width may be a percentage of available width\n\t\tif( typeof size.width === 'string' && /%$/.test( size.width ) ) {\n\t\t\tsize.width = parseInt( size.width, 10 ) / 100 * size.presentationWidth;\n\t\t}\n\n\t\t// Slide height may be a percentage of available height\n\t\tif( typeof size.height === 'string' && /%$/.test( size.height ) ) {\n\t\t\tsize.height = parseInt( size.height, 10 ) / 100 * size.presentationHeight;\n\t\t}\n\n\t\treturn size;\n\n\t}\n\n\t/**\n\t * Stores the vertical index of a stack so that the same\n\t * vertical slide can be selected when navigating to and\n\t * from the stack.\n\t *\n\t * @param {HTMLElement} stack The vertical stack element\n\t * @param {string|number} [v=0] Index to memorize\n\t */\n\tfunction setPreviousVerticalIndex( stack, v ) {\n\n\t\tif( typeof stack === 'object' && typeof stack.setAttribute === 'function' ) {\n\t\t\tstack.setAttribute( 'data-previous-indexv', v || 0 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Retrieves the vertical index which was stored using\n\t * #setPreviousVerticalIndex() or 0 if no previous index\n\t * exists.\n\t *\n\t * @param {HTMLElement} stack The vertical stack element\n\t */\n\tfunction getPreviousVerticalIndex( stack ) {\n\n\t\tif( typeof stack === 'object' && typeof stack.setAttribute === 'function' && stack.classList.contains( 'stack' ) ) {\n\t\t\t// Prefer manually defined start-indexv\n\t\t\tconst attributeName = stack.hasAttribute( 'data-start-indexv' ) ? 'data-start-indexv' : 'data-previous-indexv';\n\n\t\t\treturn parseInt( stack.getAttribute( attributeName ) || 0, 10 );\n\t\t}\n\n\t\treturn 0;\n\n\t}\n\n\t/**\n\t * Checks if the current or specified slide is vertical\n\t * (nested within another slide).\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide to check\n\t * orientation of\n\t * @return {Boolean}\n\t */\n\tfunction isVerticalSlide( slide = currentSlide ) {\n\n\t\treturn slide && slide.parentNode && !!slide.parentNode.nodeName.match( /section/i );\n\n\t}\n\n\t/**\n\t * Returns true if we're on the last slide in the current\n\t * vertical stack.\n\t */\n\tfunction isLastVerticalSlide() {\n\n\t\tif( currentSlide && isVerticalSlide( currentSlide ) ) {\n\t\t\t// Does this slide have a next sibling?\n\t\t\tif( currentSlide.nextElementSibling ) return false;\n\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Returns true if we're currently on the first slide in\n\t * the presentation.\n\t */\n\tfunction isFirstSlide() {\n\n\t\treturn indexh === 0 && indexv === 0;\n\n\t}\n\n\t/**\n\t * Returns true if we're currently on the last slide in\n\t * the presenation. If the last slide is a stack, we only\n\t * consider this the last slide if it's at the end of the\n\t * stack.\n\t */\n\tfunction isLastSlide() {\n\n\t\tif( currentSlide ) {\n\t\t\t// Does this slide have a next sibling?\n\t\t\tif( currentSlide.nextElementSibling ) return false;\n\n\t\t\t// If it's vertical, does its parent have a next sibling?\n\t\t\tif( isVerticalSlide( currentSlide ) && currentSlide.parentNode.nextElementSibling ) return false;\n\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\n\t}\n\n\t/**\n\t * Enters the paused mode which fades everything on screen to\n\t * black.\n\t */\n\tfunction pause() {\n\n\t\tif( config.pause ) {\n\t\t\tconst wasPaused = dom.wrapper.classList.contains( 'paused' );\n\n\t\t\tcancelAutoSlide();\n\t\t\tdom.wrapper.classList.add( 'paused' );\n\n\t\t\tif( wasPaused === false ) {\n\t\t\t\tdispatchEvent({ type: 'paused' });\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Exits from the paused mode.\n\t */\n\tfunction resume() {\n\n\t\tconst wasPaused = dom.wrapper.classList.contains( 'paused' );\n\t\tdom.wrapper.classList.remove( 'paused' );\n\n\t\tcueAutoSlide();\n\n\t\tif( wasPaused ) {\n\t\t\tdispatchEvent({ type: 'resumed' });\n\t\t}\n\n\t}\n\n\t/**\n\t * Toggles the paused mode on and off.\n\t */\n\tfunction togglePause( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? pause() : resume();\n\t\t}\n\t\telse {\n\t\t\tisPaused() ? resume() : pause();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if we are currently in the paused mode.\n\t *\n\t * @return {Boolean}\n\t */\n\tfunction isPaused() {\n\n\t\treturn dom.wrapper.classList.contains( 'paused' );\n\n\t}\n\n\t/**\n\t * Toggles the auto slide mode on and off.\n\t *\n\t * @param {Boolean} [override] Flag which sets the desired state.\n\t * True means autoplay starts, false means it stops.\n\t */\n\n\tfunction toggleAutoSlide( override ) {\n\n\t\tif( typeof override === 'boolean' ) {\n\t\t\toverride ? resumeAutoSlide() : pauseAutoSlide();\n\t\t}\n\n\t\telse {\n\t\t\tautoSlidePaused ? resumeAutoSlide() : pauseAutoSlide();\n\t\t}\n\n\t}\n\n\t/**\n\t * Checks if the auto slide mode is currently on.\n\t *\n\t * @return {Boolean}\n\t */\n\tfunction isAutoSliding() {\n\n\t\treturn !!( autoSlide && !autoSlidePaused );\n\n\t}\n\n\t/**\n\t * Steps from the current point in the presentation to the\n\t * slide which matches the specified horizontal and vertical\n\t * indices.\n\t *\n\t * @param {number} [h=indexh] Horizontal index of the target slide\n\t * @param {number} [v=indexv] Vertical index of the target slide\n\t * @param {number} [f] Index of a fragment within the\n\t * target slide to activate\n\t * @param {number} [origin] Origin for use in multimaster environments\n\t */\n\tfunction slide( h, v, f, origin ) {\n\n\t\t// Dispatch an event before hte slide\n\t\tconst slidechange = dispatchEvent({\n\t\t\ttype: 'beforeslidechange',\n\t\t\tdata: {\n\t\t\t\tindexh: h === undefined ? indexh : h,\n\t\t\t\tindexv: v === undefined ? indexv : v,\n\t\t\t\torigin\n\t\t\t}\n\t\t});\n\n\t\t// Abort if this slide change was prevented by an event listener\n\t\tif( slidechange.defaultPrevented ) return;\n\n\t\t// Remember where we were at before\n\t\tpreviousSlide = currentSlide;\n\n\t\t// Query all horizontal slides in the deck\n\t\tconst horizontalSlides = dom.wrapper.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR );\n\n\t\t// Abort if there are no slides\n\t\tif( horizontalSlides.length === 0 ) return;\n\n\t\t// If no vertical index is specified and the upcoming slide is a\n\t\t// stack, resume at its previous vertical index\n\t\tif( v === undefined && !overview.isActive() ) {\n\t\t\tv = getPreviousVerticalIndex( horizontalSlides[ h ] );\n\t\t}\n\n\t\t// If we were on a vertical stack, remember what vertical index\n\t\t// it was on so we can resume at the same position when returning\n\t\tif( previousSlide && previousSlide.parentNode && previousSlide.parentNode.classList.contains( 'stack' ) ) {\n\t\t\tsetPreviousVerticalIndex( previousSlide.parentNode, indexv );\n\t\t}\n\n\t\t// Remember the state before this slide\n\t\tconst stateBefore = state.concat();\n\n\t\t// Reset the state array\n\t\tstate.length = 0;\n\n\t\tlet indexhBefore = indexh || 0,\n\t\t\tindexvBefore = indexv || 0;\n\n\t\t// Activate and transition to the new slide\n\t\tindexh = updateSlides( HORIZONTAL_SLIDES_SELECTOR, h === undefined ? indexh : h );\n\t\tindexv = updateSlides( VERTICAL_SLIDES_SELECTOR, v === undefined ? indexv : v );\n\n\t\t// Dispatch an event if the slide changed\n\t\tlet slideChanged = ( indexh !== indexhBefore || indexv !== indexvBefore );\n\n\t\t// Ensure that the previous slide is never the same as the current\n\t\tif( !slideChanged ) previousSlide = null;\n\n\t\t// Find the current horizontal slide and any possible vertical slides\n\t\t// within it\n\t\tlet currentHorizontalSlide = horizontalSlides[ indexh ],\n\t\t\tcurrentVerticalSlides = currentHorizontalSlide.querySelectorAll( 'section' );\n\n\t\t// Store references to the previous and current slides\n\t\tcurrentSlide = currentVerticalSlides[ indexv ] || currentHorizontalSlide;\n\n\t\tlet autoAnimateTransition = false;\n\n\t\t// Detect if we're moving between two auto-animated slides\n\t\tif( slideChanged && previousSlide && currentSlide && !overview.isActive() ) {\n\n\t\t\t// If this is an auto-animated transition, we disable the\n\t\t\t// regular slide transition\n\t\t\t//\n\t\t\t// Note 20-03-2020:\n\t\t\t// This needs to happen before we update slide visibility,\n\t\t\t// otherwise transitions will still run in Safari.\n\t\t\tif( previousSlide.hasAttribute( 'data-auto-animate' ) && currentSlide.hasAttribute( 'data-auto-animate' )\n\t\t\t\t\t&& previousSlide.getAttribute( 'data-auto-animate-id' ) === currentSlide.getAttribute( 'data-auto-animate-id' )\n\t\t\t\t\t&& !( ( indexh > indexhBefore || indexv > indexvBefore ) ? currentSlide : previousSlide ).hasAttribute( 'data-auto-animate-restart' ) ) {\n\n\t\t\t\tautoAnimateTransition = true;\n\t\t\t\tdom.slides.classList.add( 'disable-slide-transitions' );\n\t\t\t}\n\n\t\t\ttransition = 'running';\n\n\t\t}\n\n\t\t// Update the visibility of slides now that the indices have changed\n\t\tupdateSlidesVisibility();\n\n\t\tlayout();\n\n\t\t// Update the overview if it's currently active\n\t\tif( overview.isActive() ) {\n\t\t\toverview.update();\n\t\t}\n\n\t\t// Show fragment, if specified\n\t\tif( typeof f !== 'undefined' ) {\n\t\t\tfragments.goto( f );\n\t\t}\n\n\t\t// Solves an edge case where the previous slide maintains the\n\t\t// 'present' class when navigating between adjacent vertical\n\t\t// stacks\n\t\tif( previousSlide && previousSlide !== currentSlide ) {\n\t\t\tpreviousSlide.classList.remove( 'present' );\n\t\t\tpreviousSlide.setAttribute( 'aria-hidden', 'true' );\n\n\t\t\t// Reset all slides upon navigate to home\n\t\t\tif( isFirstSlide() ) {\n\t\t\t\t// Launch async task\n\t\t\t\tsetTimeout( () => {\n\t\t\t\t\tgetVerticalStacks().forEach( slide => {\n\t\t\t\t\t\tsetPreviousVerticalIndex( slide, 0 );\n\t\t\t\t\t} );\n\t\t\t\t}, 0 );\n\t\t\t}\n\t\t}\n\n\t\t// Apply the new state\n\t\tstateLoop: for( let i = 0, len = state.length; i < len; i++ ) {\n\t\t\t// Check if this state existed on the previous slide. If it\n\t\t\t// did, we will avoid adding it repeatedly\n\t\t\tfor( let j = 0; j < stateBefore.length; j++ ) {\n\t\t\t\tif( stateBefore[j] === state[i] ) {\n\t\t\t\t\tstateBefore.splice( j, 1 );\n\t\t\t\t\tcontinue stateLoop;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdom.viewport.classList.add( state[i] );\n\n\t\t\t// Dispatch custom event matching the state's name\n\t\t\tdispatchEvent({ type: state[i] });\n\t\t}\n\n\t\t// Clean up the remains of the previous state\n\t\twhile( stateBefore.length ) {\n\t\t\tdom.viewport.classList.remove( stateBefore.pop() );\n\t\t}\n\n\t\tif( slideChanged ) {\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'slidechanged',\n\t\t\t\tdata: {\n\t\t\t\t\tindexh,\n\t\t\t\t\tindexv,\n\t\t\t\t\tpreviousSlide,\n\t\t\t\t\tcurrentSlide,\n\t\t\t\t\torigin\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\t// Handle embedded content\n\t\tif( slideChanged || !previousSlide ) {\n\t\t\tslideContent.stopEmbeddedContent( previousSlide );\n\t\t\tslideContent.startEmbeddedContent( currentSlide );\n\t\t}\n\n\t\t// Announce the current slide contents to screen readers\n\t\t// Use animation frame to prevent getComputedStyle in getStatusText\n\t\t// from triggering layout mid-frame\n\t\trequestAnimationFrame( () => {\n\t\t\tannounceStatus( getStatusText( currentSlide ) );\n\t\t});\n\n\t\tprogress.update();\n\t\tcontrols.update();\n\t\tnotes.update();\n\t\tbackgrounds.update();\n\t\tbackgrounds.updateParallax();\n\t\tslideNumber.update();\n\t\tfragments.update();\n\n\t\t// Update the URL hash\n\t\tlocation.writeURL();\n\n\t\tcueAutoSlide();\n\n\t\t// Auto-animation\n\t\tif( autoAnimateTransition ) {\n\n\t\t\tsetTimeout( () => {\n\t\t\t\tdom.slides.classList.remove( 'disable-slide-transitions' );\n\t\t\t}, 0 );\n\n\t\t\tif( config.autoAnimate ) {\n\t\t\t\t// Run the auto-animation between our slides\n\t\t\t\tautoAnimate.run( previousSlide, currentSlide );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Syncs the presentation with the current DOM. Useful\n\t * when new slides or control elements are added or when\n\t * the configuration has changed.\n\t */\n\tfunction sync() {\n\n\t\t// Subscribe to input\n\t\tremoveEventListeners();\n\t\taddEventListeners();\n\n\t\t// Force a layout to make sure the current config is accounted for\n\t\tlayout();\n\n\t\t// Reflect the current autoSlide value\n\t\tautoSlide = config.autoSlide;\n\n\t\t// Start auto-sliding if it's enabled\n\t\tcueAutoSlide();\n\n\t\t// Re-create all slide backgrounds\n\t\tbackgrounds.create();\n\n\t\t// Write the current hash to the URL\n\t\tlocation.writeURL();\n\n\t\tfragments.sortAll();\n\n\t\tcontrols.update();\n\t\tprogress.update();\n\n\t\tupdateSlidesVisibility();\n\n\t\tnotes.update();\n\t\tnotes.updateVisibility();\n\t\tbackgrounds.update( true );\n\t\tslideNumber.update();\n\t\tslideContent.formatEmbeddedContent();\n\n\t\t// Start or stop embedded content depending on global config\n\t\tif( config.autoPlayMedia === false ) {\n\t\t\tslideContent.stopEmbeddedContent( currentSlide, { unloadIframes: false } );\n\t\t}\n\t\telse {\n\t\t\tslideContent.startEmbeddedContent( currentSlide );\n\t\t}\n\n\t\tif( overview.isActive() ) {\n\t\t\toverview.layout();\n\t\t}\n\n\t}\n\n\t/**\n\t * Updates reveal.js to keep in sync with new slide attributes. For\n\t * example, if you add a new `data-background-image` you can call\n\t * this to have reveal.js render the new background image.\n\t *\n\t * Similar to #sync() but more efficient when you only need to\n\t * refresh a specific slide.\n\t *\n\t * @param {HTMLElement} slide\n\t */\n\tfunction syncSlide( slide = currentSlide ) {\n\n\t\tbackgrounds.sync( slide );\n\t\tfragments.sync( slide );\n\n\t\tslideContent.load( slide );\n\n\t\tbackgrounds.update();\n\t\tnotes.update();\n\n\t}\n\n\t/**\n\t * Resets all vertical slides so that only the first\n\t * is visible.\n\t */\n\tfunction resetVerticalSlides() {\n\n\t\tgetHorizontalSlides().forEach( horizontalSlide => {\n\n\t\t\tUtil.queryAll( horizontalSlide, 'section' ).forEach( ( verticalSlide, y ) => {\n\n\t\t\t\tif( y > 0 ) {\n\t\t\t\t\tverticalSlide.classList.remove( 'present' );\n\t\t\t\t\tverticalSlide.classList.remove( 'past' );\n\t\t\t\t\tverticalSlide.classList.add( 'future' );\n\t\t\t\t\tverticalSlide.setAttribute( 'aria-hidden', 'true' );\n\t\t\t\t}\n\n\t\t\t} );\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Randomly shuffles all slides in the deck.\n\t */\n\tfunction shuffle( slides = getHorizontalSlides() ) {\n\n\t\tslides.forEach( ( slide, i ) => {\n\n\t\t\t// Insert the slide next to a randomly picked sibling slide\n\t\t\t// slide. This may cause the slide to insert before itself,\n\t\t\t// but that's not an issue.\n\t\t\tlet beforeSlide = slides[ Math.floor( Math.random() * slides.length ) ];\n\t\t\tif( beforeSlide.parentNode === slide.parentNode ) {\n\t\t\t\tslide.parentNode.insertBefore( slide, beforeSlide );\n\t\t\t}\n\n\t\t\t// Randomize the order of vertical slides (if there are any)\n\t\t\tlet verticalSlides = slide.querySelectorAll( 'section' );\n\t\t\tif( verticalSlides.length ) {\n\t\t\t\tshuffle( verticalSlides );\n\t\t\t}\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Updates one dimension of slides by showing the slide\n\t * with the specified index.\n\t *\n\t * @param {string} selector A CSS selector that will fetch\n\t * the group of slides we are working with\n\t * @param {number} index The index of the slide that should be\n\t * shown\n\t *\n\t * @return {number} The index of the slide that is now shown,\n\t * might differ from the passed in index if it was out of\n\t * bounds.\n\t */\n\tfunction updateSlides( selector, index ) {\n\n\t\t// Select all slides and convert the NodeList result to\n\t\t// an array\n\t\tlet slides = Util.queryAll( dom.wrapper, selector ),\n\t\t\tslidesLength = slides.length;\n\n\t\tlet printMode = print.isPrintingPDF();\n\n\t\tif( slidesLength ) {\n\n\t\t\t// Should the index loop?\n\t\t\tif( config.loop ) {\n\t\t\t\tindex %= slidesLength;\n\n\t\t\t\tif( index < 0 ) {\n\t\t\t\t\tindex = slidesLength + index;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Enforce max and minimum index bounds\n\t\t\tindex = Math.max( Math.min( index, slidesLength - 1 ), 0 );\n\n\t\t\tfor( let i = 0; i < slidesLength; i++ ) {\n\t\t\t\tlet element = slides[i];\n\n\t\t\t\tlet reverse = config.rtl && !isVerticalSlide( element );\n\n\t\t\t\t// Avoid .remove() with multiple args for IE11 support\n\t\t\t\telement.classList.remove( 'past' );\n\t\t\t\telement.classList.remove( 'present' );\n\t\t\t\telement.classList.remove( 'future' );\n\n\t\t\t\t// http://www.w3.org/html/wg/drafts/html/master/editing.html#the-hidden-attribute\n\t\t\t\telement.setAttribute( 'hidden', '' );\n\t\t\t\telement.setAttribute( 'aria-hidden', 'true' );\n\n\t\t\t\t// If this element contains vertical slides\n\t\t\t\tif( element.querySelector( 'section' ) ) {\n\t\t\t\t\telement.classList.add( 'stack' );\n\t\t\t\t}\n\n\t\t\t\t// If we're printing static slides, all slides are \"present\"\n\t\t\t\tif( printMode ) {\n\t\t\t\t\telement.classList.add( 'present' );\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif( i < index ) {\n\t\t\t\t\t// Any element previous to index is given the 'past' class\n\t\t\t\t\telement.classList.add( reverse ? 'future' : 'past' );\n\n\t\t\t\t\tif( config.fragments ) {\n\t\t\t\t\t\t// Show all fragments in prior slides\n\t\t\t\t\t\tUtil.queryAll( element, '.fragment' ).forEach( fragment => {\n\t\t\t\t\t\t\tfragment.classList.add( 'visible' );\n\t\t\t\t\t\t\tfragment.classList.remove( 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if( i > index ) {\n\t\t\t\t\t// Any element subsequent to index is given the 'future' class\n\t\t\t\t\telement.classList.add( reverse ? 'past' : 'future' );\n\n\t\t\t\t\tif( config.fragments ) {\n\t\t\t\t\t\t// Hide all fragments in future slides\n\t\t\t\t\t\tUtil.queryAll( element, '.fragment.visible' ).forEach( fragment => {\n\t\t\t\t\t\t\tfragment.classList.remove( 'visible', 'current-fragment' );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet slide = slides[index];\n\t\t\tlet wasPresent = slide.classList.contains( 'present' );\n\n\t\t\t// Mark the current slide as present\n\t\t\tslide.classList.add( 'present' );\n\t\t\tslide.removeAttribute( 'hidden' );\n\t\t\tslide.removeAttribute( 'aria-hidden' );\n\n\t\t\tif( !wasPresent ) {\n\t\t\t\t// Dispatch an event indicating the slide is now visible\n\t\t\t\tdispatchEvent({\n\t\t\t\t\ttarget: slide,\n\t\t\t\t\ttype: 'visible',\n\t\t\t\t\tbubbles: false\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// If this slide has a state associated with it, add it\n\t\t\t// onto the current state of the deck\n\t\t\tlet slideState = slide.getAttribute( 'data-state' );\n\t\t\tif( slideState ) {\n\t\t\t\tstate = state.concat( slideState.split( ' ' ) );\n\t\t\t}\n\n\t\t}\n\t\telse {\n\t\t\t// Since there are no slides we can't be anywhere beyond the\n\t\t\t// zeroth index\n\t\t\tindex = 0;\n\t\t}\n\n\t\treturn index;\n\n\t}\n\n\t/**\n\t * Optimization method; hide all slides that are far away\n\t * from the present slide.\n\t */\n\tfunction updateSlidesVisibility() {\n\n\t\t// Select all slides and convert the NodeList result to\n\t\t// an array\n\t\tlet horizontalSlides = getHorizontalSlides(),\n\t\t\thorizontalSlidesLength = horizontalSlides.length,\n\t\t\tdistanceX,\n\t\t\tdistanceY;\n\n\t\tif( horizontalSlidesLength && typeof indexh !== 'undefined' ) {\n\n\t\t\t// The number of steps away from the present slide that will\n\t\t\t// be visible\n\t\t\tlet viewDistance = overview.isActive() ? 10 : config.viewDistance;\n\n\t\t\t// Shorten the view distance on devices that typically have\n\t\t\t// less resources\n\t\t\tif( Device.isMobile ) {\n\t\t\t\tviewDistance = overview.isActive() ? 6 : config.mobileViewDistance;\n\t\t\t}\n\n\t\t\t// All slides need to be visible when exporting to PDF\n\t\t\tif( print.isPrintingPDF() ) {\n\t\t\t\tviewDistance = Number.MAX_VALUE;\n\t\t\t}\n\n\t\t\tfor( let x = 0; x < horizontalSlidesLength; x++ ) {\n\t\t\t\tlet horizontalSlide = horizontalSlides[x];\n\n\t\t\t\tlet verticalSlides = Util.queryAll( horizontalSlide, 'section' ),\n\t\t\t\t\tverticalSlidesLength = verticalSlides.length;\n\n\t\t\t\t// Determine how far away this slide is from the present\n\t\t\t\tdistanceX = Math.abs( ( indexh || 0 ) - x ) || 0;\n\n\t\t\t\t// If the presentation is looped, distance should measure\n\t\t\t\t// 1 between the first and last slides\n\t\t\t\tif( config.loop ) {\n\t\t\t\t\tdistanceX = Math.abs( ( ( indexh || 0 ) - x ) % ( horizontalSlidesLength - viewDistance ) ) || 0;\n\t\t\t\t}\n\n\t\t\t\t// Show the horizontal slide if it's within the view distance\n\t\t\t\tif( distanceX < viewDistance ) {\n\t\t\t\t\tslideContent.load( horizontalSlide );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tslideContent.unload( horizontalSlide );\n\t\t\t\t}\n\n\t\t\t\tif( verticalSlidesLength ) {\n\n\t\t\t\t\tlet oy = getPreviousVerticalIndex( horizontalSlide );\n\n\t\t\t\t\tfor( let y = 0; y < verticalSlidesLength; y++ ) {\n\t\t\t\t\t\tlet verticalSlide = verticalSlides[y];\n\n\t\t\t\t\t\tdistanceY = x === ( indexh || 0 ) ? Math.abs( ( indexv || 0 ) - y ) : Math.abs( y - oy );\n\n\t\t\t\t\t\tif( distanceX + distanceY < viewDistance ) {\n\t\t\t\t\t\t\tslideContent.load( verticalSlide );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tslideContent.unload( verticalSlide );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Flag if there are ANY vertical slides, anywhere in the deck\n\t\t\tif( hasVerticalSlides() ) {\n\t\t\t\tdom.wrapper.classList.add( 'has-vertical-slides' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdom.wrapper.classList.remove( 'has-vertical-slides' );\n\t\t\t}\n\n\t\t\t// Flag if there are ANY horizontal slides, anywhere in the deck\n\t\t\tif( hasHorizontalSlides() ) {\n\t\t\t\tdom.wrapper.classList.add( 'has-horizontal-slides' );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdom.wrapper.classList.remove( 'has-horizontal-slides' );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Determine what available routes there are for navigation.\n\t *\n\t * @return {{left: boolean, right: boolean, up: boolean, down: boolean}}\n\t */\n\tfunction availableRoutes({ includeFragments = false } = {}) {\n\n\t\tlet horizontalSlides = dom.wrapper.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ),\n\t\t\tverticalSlides = dom.wrapper.querySelectorAll( VERTICAL_SLIDES_SELECTOR );\n\n\t\tlet routes = {\n\t\t\tleft: indexh > 0,\n\t\t\tright: indexh < horizontalSlides.length - 1,\n\t\t\tup: indexv > 0,\n\t\t\tdown: indexv < verticalSlides.length - 1\n\t\t};\n\n\t\t// Looped presentations can always be navigated as long as\n\t\t// there are slides available\n\t\tif( config.loop ) {\n\t\t\tif( horizontalSlides.length > 1 ) {\n\t\t\t\troutes.left = true;\n\t\t\t\troutes.right = true;\n\t\t\t}\n\n\t\t\tif( verticalSlides.length > 1 ) {\n\t\t\t\troutes.up = true;\n\t\t\t\troutes.down = true;\n\t\t\t}\n\t\t}\n\n\t\tif ( horizontalSlides.length > 1 && config.navigationMode === 'linear' ) {\n\t\t\troutes.right = routes.right || routes.down;\n\t\t\troutes.left = routes.left || routes.up;\n\t\t}\n\n\t\t// If includeFragments is set, a route will be considered\n\t\t// availalbe if either a slid OR fragment is available in\n\t\t// the given direction\n\t\tif( includeFragments === true ) {\n\t\t\tlet fragmentRoutes = fragments.availableRoutes();\n\t\t\troutes.left = routes.left || fragmentRoutes.prev;\n\t\t\troutes.up = routes.up || fragmentRoutes.prev;\n\t\t\troutes.down = routes.down || fragmentRoutes.next;\n\t\t\troutes.right = routes.right || fragmentRoutes.next;\n\t\t}\n\n\t\t// Reverse horizontal controls for rtl\n\t\tif( config.rtl ) {\n\t\t\tlet left = routes.left;\n\t\t\troutes.left = routes.right;\n\t\t\troutes.right = left;\n\t\t}\n\n\t\treturn routes;\n\n\t}\n\n\t/**\n\t * Returns the number of past slides. This can be used as a global\n\t * flattened index for slides.\n\t *\n\t * @param {HTMLElement} [slide=currentSlide] The slide we're counting before\n\t *\n\t * @return {number} Past slide count\n\t */\n\tfunction getSlidePastCount( slide = currentSlide ) {\n\n\t\tlet horizontalSlides = getHorizontalSlides();\n\n\t\t// The number of past slides\n\t\tlet pastCount = 0;\n\n\t\t// Step through all slides and count the past ones\n\t\tmainLoop: for( let i = 0; i < horizontalSlides.length; i++ ) {\n\n\t\t\tlet horizontalSlide = horizontalSlides[i];\n\t\t\tlet verticalSlides = horizontalSlide.querySelectorAll( 'section' );\n\n\t\t\tfor( let j = 0; j < verticalSlides.length; j++ ) {\n\n\t\t\t\t// Stop as soon as we arrive at the present\n\t\t\t\tif( verticalSlides[j] === slide ) {\n\t\t\t\t\tbreak mainLoop;\n\t\t\t\t}\n\n\t\t\t\t// Don't count slides with the \"uncounted\" class\n\t\t\t\tif( verticalSlides[j].dataset.visibility !== 'uncounted' ) {\n\t\t\t\t\tpastCount++;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// Stop as soon as we arrive at the present\n\t\t\tif( horizontalSlide === slide ) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Don't count the wrapping section for vertical slides and\n\t\t\t// slides marked as uncounted\n\t\t\tif( horizontalSlide.classList.contains( 'stack' ) === false && horizontalSlide.dataset.visibility !== 'uncounted' ) {\n\t\t\t\tpastCount++;\n\t\t\t}\n\n\t\t}\n\n\t\treturn pastCount;\n\n\t}\n\n\t/**\n\t * Returns a value ranging from 0-1 that represents\n\t * how far into the presentation we have navigated.\n\t *\n\t * @return {number}\n\t */\n\tfunction getProgress() {\n\n\t\t// The number of past and total slides\n\t\tlet totalCount = getTotalSlides();\n\t\tlet pastCount = getSlidePastCount();\n\n\t\tif( currentSlide ) {\n\n\t\t\tlet allFragments = currentSlide.querySelectorAll( '.fragment' );\n\n\t\t\t// If there are fragments in the current slide those should be\n\t\t\t// accounted for in the progress.\n\t\t\tif( allFragments.length > 0 ) {\n\t\t\t\tlet visibleFragments = currentSlide.querySelectorAll( '.fragment.visible' );\n\n\t\t\t\t// This value represents how big a portion of the slide progress\n\t\t\t\t// that is made up by its fragments (0-1)\n\t\t\t\tlet fragmentWeight = 0.9;\n\n\t\t\t\t// Add fragment progress to the past slide count\n\t\t\t\tpastCount += ( visibleFragments.length / allFragments.length ) * fragmentWeight;\n\t\t\t}\n\n\t\t}\n\n\t\treturn Math.min( pastCount / ( totalCount - 1 ), 1 );\n\n\t}\n\n\t/**\n\t * Retrieves the h/v location and fragment of the current,\n\t * or specified, slide.\n\t *\n\t * @param {HTMLElement} [slide] If specified, the returned\n\t * index will be for this slide rather than the currently\n\t * active one\n\t *\n\t * @return {{h: number, v: number, f: number}}\n\t */\n\tfunction getIndices( slide ) {\n\n\t\t// By default, return the current indices\n\t\tlet h = indexh,\n\t\t\tv = indexv,\n\t\t\tf;\n\n\t\t// If a slide is specified, return the indices of that slide\n\t\tif( slide ) {\n\t\t\tlet isVertical = isVerticalSlide( slide );\n\t\t\tlet slideh = isVertical ? slide.parentNode : slide;\n\n\t\t\t// Select all horizontal slides\n\t\t\tlet horizontalSlides = getHorizontalSlides();\n\n\t\t\t// Now that we know which the horizontal slide is, get its index\n\t\t\th = Math.max( horizontalSlides.indexOf( slideh ), 0 );\n\n\t\t\t// Assume we're not vertical\n\t\t\tv = undefined;\n\n\t\t\t// If this is a vertical slide, grab the vertical index\n\t\t\tif( isVertical ) {\n\t\t\t\tv = Math.max( Util.queryAll( slide.parentNode, 'section' ).indexOf( slide ), 0 );\n\t\t\t}\n\t\t}\n\n\t\tif( !slide && currentSlide ) {\n\t\t\tlet hasFragments = currentSlide.querySelectorAll( '.fragment' ).length > 0;\n\t\t\tif( hasFragments ) {\n\t\t\t\tlet currentFragment = currentSlide.querySelector( '.current-fragment' );\n\t\t\t\tif( currentFragment && currentFragment.hasAttribute( 'data-fragment-index' ) ) {\n\t\t\t\t\tf = parseInt( currentFragment.getAttribute( 'data-fragment-index' ), 10 );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tf = currentSlide.querySelectorAll( '.fragment.visible' ).length - 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn { h, v, f };\n\n\t}\n\n\t/**\n\t * Retrieves all slides in this presentation.\n\t */\n\tfunction getSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, SLIDES_SELECTOR + ':not(.stack):not([data-visibility=\"uncounted\"])' );\n\n\t}\n\n\t/**\n\t * Returns a list of all horizontal slides in the deck. Each\n\t * vertical stack is included as one horizontal slide in the\n\t * resulting array.\n\t */\n\tfunction getHorizontalSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR );\n\n\t}\n\n\t/**\n\t * Returns all vertical slides that exist within this deck.\n\t */\n\tfunction getVerticalSlides() {\n\n\t\treturn Util.queryAll( dom.wrapper, '.slides>section>section' );\n\n\t}\n\n\t/**\n\t * Returns all vertical stacks (each stack can contain multiple slides).\n\t */\n\tfunction getVerticalStacks() {\n\n\t\treturn Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.stack');\n\n\t}\n\n\t/**\n\t * Returns true if there are at least two horizontal slides.\n\t */\n\tfunction hasHorizontalSlides() {\n\n\t\treturn getHorizontalSlides().length > 1;\n\t}\n\n\t/**\n\t * Returns true if there are at least two vertical slides.\n\t */\n\tfunction hasVerticalSlides() {\n\n\t\treturn getVerticalSlides().length > 1;\n\n\t}\n\n\t/**\n\t * Returns an array of objects where each object represents the\n\t * attributes on its respective slide.\n\t */\n\tfunction getSlidesAttributes() {\n\n\t\treturn getSlides().map( slide => {\n\n\t\t\tlet attributes = {};\n\t\t\tfor( let i = 0; i < slide.attributes.length; i++ ) {\n\t\t\t\tlet attribute = slide.attributes[ i ];\n\t\t\t\tattributes[ attribute.name ] = attribute.value;\n\t\t\t}\n\t\t\treturn attributes;\n\n\t\t} );\n\n\t}\n\n\t/**\n\t * Retrieves the total number of slides in this presentation.\n\t *\n\t * @return {number}\n\t */\n\tfunction getTotalSlides() {\n\n\t\treturn getSlides().length;\n\n\t}\n\n\t/**\n\t * Returns the slide element matching the specified index.\n\t *\n\t * @return {HTMLElement}\n\t */\n\tfunction getSlide( x, y ) {\n\n\t\tlet horizontalSlide = getHorizontalSlides()[ x ];\n\t\tlet verticalSlides = horizontalSlide && horizontalSlide.querySelectorAll( 'section' );\n\n\t\tif( verticalSlides && verticalSlides.length && typeof y === 'number' ) {\n\t\t\treturn verticalSlides ? verticalSlides[ y ] : undefined;\n\t\t}\n\n\t\treturn horizontalSlide;\n\n\t}\n\n\t/**\n\t * Returns the background element for the given slide.\n\t * All slides, even the ones with no background properties\n\t * defined, have a background element so as long as the\n\t * index is valid an element will be returned.\n\t *\n\t * @param {mixed} x Horizontal background index OR a slide\n\t * HTML element\n\t * @param {number} y Vertical background index\n\t * @return {(HTMLElement[]|*)}\n\t */\n\tfunction getSlideBackground( x, y ) {\n\n\t\tlet slide = typeof x === 'number' ? getSlide( x, y ) : x;\n\t\tif( slide ) {\n\t\t\treturn slide.slideBackgroundElement;\n\t\t}\n\n\t\treturn undefined;\n\n\t}\n\n\t/**\n\t * Retrieves the current state of the presentation as\n\t * an object. This state can then be restored at any\n\t * time.\n\t *\n\t * @return {{indexh: number, indexv: number, indexf: number, paused: boolean, overview: boolean}}\n\t */\n\tfunction getState() {\n\n\t\tlet indices = getIndices();\n\n\t\treturn {\n\t\t\tindexh: indices.h,\n\t\t\tindexv: indices.v,\n\t\t\tindexf: indices.f,\n\t\t\tpaused: isPaused(),\n\t\t\toverview: overview.isActive()\n\t\t};\n\n\t}\n\n\t/**\n\t * Restores the presentation to the given state.\n\t *\n\t * @param {object} state As generated by getState()\n\t * @see {@link getState} generates the parameter `state`\n\t */\n\tfunction setState( state ) {\n\n\t\tif( typeof state === 'object' ) {\n\t\t\tslide( Util.deserialize( state.indexh ), Util.deserialize( state.indexv ), Util.deserialize( state.indexf ) );\n\n\t\t\tlet pausedFlag = Util.deserialize( state.paused ),\n\t\t\t\toverviewFlag = Util.deserialize( state.overview );\n\n\t\t\tif( typeof pausedFlag === 'boolean' && pausedFlag !== isPaused() ) {\n\t\t\t\ttogglePause( pausedFlag );\n\t\t\t}\n\n\t\t\tif( typeof overviewFlag === 'boolean' && overviewFlag !== overview.isActive() ) {\n\t\t\t\toverview.toggle( overviewFlag );\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Cues a new automated slide if enabled in the config.\n\t */\n\tfunction cueAutoSlide() {\n\n\t\tcancelAutoSlide();\n\n\t\tif( currentSlide && config.autoSlide !== false ) {\n\n\t\t\tlet fragment = currentSlide.querySelector( '.current-fragment' );\n\n\t\t\t// When the slide first appears there is no \"current\" fragment so\n\t\t\t// we look for a data-autoslide timing on the first fragment\n\t\t\tif( !fragment ) fragment = currentSlide.querySelector( '.fragment' );\n\n\t\t\tlet fragmentAutoSlide = fragment ? fragment.getAttribute( 'data-autoslide' ) : null;\n\t\t\tlet parentAutoSlide = currentSlide.parentNode ? currentSlide.parentNode.getAttribute( 'data-autoslide' ) : null;\n\t\t\tlet slideAutoSlide = currentSlide.getAttribute( 'data-autoslide' );\n\n\t\t\t// Pick value in the following priority order:\n\t\t\t// 1. Current fragment's data-autoslide\n\t\t\t// 2. Current slide's data-autoslide\n\t\t\t// 3. Parent slide's data-autoslide\n\t\t\t// 4. Global autoSlide setting\n\t\t\tif( fragmentAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( fragmentAutoSlide, 10 );\n\t\t\t}\n\t\t\telse if( slideAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( slideAutoSlide, 10 );\n\t\t\t}\n\t\t\telse if( parentAutoSlide ) {\n\t\t\t\tautoSlide = parseInt( parentAutoSlide, 10 );\n\t\t\t}\n\t\t\telse {\n\t\t\t\tautoSlide = config.autoSlide;\n\n\t\t\t\t// If there are media elements with data-autoplay,\n\t\t\t\t// automatically set the autoSlide duration to the\n\t\t\t\t// length of that media. Not applicable if the slide\n\t\t\t\t// is divided up into fragments.\n\t\t\t\t// playbackRate is accounted for in the duration.\n\t\t\t\tif( currentSlide.querySelectorAll( '.fragment' ).length === 0 ) {\n\t\t\t\t\tUtil.queryAll( currentSlide, 'video, audio' ).forEach( el => {\n\t\t\t\t\t\tif( el.hasAttribute( 'data-autoplay' ) ) {\n\t\t\t\t\t\t\tif( autoSlide && (el.duration * 1000 / el.playbackRate ) > autoSlide ) {\n\t\t\t\t\t\t\t\tautoSlide = ( el.duration * 1000 / el.playbackRate ) + 1000;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Cue the next auto-slide if:\n\t\t\t// - There is an autoSlide value\n\t\t\t// - Auto-sliding isn't paused by the user\n\t\t\t// - The presentation isn't paused\n\t\t\t// - The overview isn't active\n\t\t\t// - The presentation isn't over\n\t\t\tif( autoSlide && !autoSlidePaused && !isPaused() && !overview.isActive() && ( !isLastSlide() || fragments.availableRoutes().next || config.loop === true ) ) {\n\t\t\t\tautoSlideTimeout = setTimeout( () => {\n\t\t\t\t\tif( typeof config.autoSlideMethod === 'function' ) {\n\t\t\t\t\t\tconfig.autoSlideMethod()\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnavigateNext();\n\t\t\t\t\t}\n\t\t\t\t\tcueAutoSlide();\n\t\t\t\t}, autoSlide );\n\t\t\t\tautoSlideStartTime = Date.now();\n\t\t\t}\n\n\t\t\tif( autoSlidePlayer ) {\n\t\t\t\tautoSlidePlayer.setPlaying( autoSlideTimeout !== -1 );\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\t/**\n\t * Cancels any ongoing request to auto-slide.\n\t */\n\tfunction cancelAutoSlide() {\n\n\t\tclearTimeout( autoSlideTimeout );\n\t\tautoSlideTimeout = -1;\n\n\t}\n\n\tfunction pauseAutoSlide() {\n\n\t\tif( autoSlide && !autoSlidePaused ) {\n\t\t\tautoSlidePaused = true;\n\t\t\tdispatchEvent({ type: 'autoslidepaused' });\n\t\t\tclearTimeout( autoSlideTimeout );\n\n\t\t\tif( autoSlidePlayer ) {\n\t\t\t\tautoSlidePlayer.setPlaying( false );\n\t\t\t}\n\t\t}\n\n\t}\n\n\tfunction resumeAutoSlide() {\n\n\t\tif( autoSlide && autoSlidePaused ) {\n\t\t\tautoSlidePaused = false;\n\t\t\tdispatchEvent({ type: 'autoslideresumed' });\n\t\t\tcueAutoSlide();\n\t\t}\n\n\t}\n\n\tfunction navigateLeft({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\n\t\t// Reverse for RTL\n\t\tif( config.rtl ) {\n\t\t\tif( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().left ) {\n\t\t\t\tslide( indexh + 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t\t}\n\t\t}\n\t\t// Normal navigation\n\t\telse if( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().left ) {\n\t\t\tslide( indexh - 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t}\n\n\t}\n\n\tfunction navigateRight({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\n\t\t// Reverse for RTL\n\t\tif( config.rtl ) {\n\t\t\tif( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().right ) {\n\t\t\t\tslide( indexh - 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t\t}\n\t\t}\n\t\t// Normal navigation\n\t\telse if( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().right ) {\n\t\t\tslide( indexh + 1, config.navigationMode === 'grid' ? indexv : undefined );\n\t\t}\n\n\t}\n\n\tfunction navigateUp({skipFragments=false}={}) {\n\n\t\t// Prioritize hiding fragments\n\t\tif( ( overview.isActive() || skipFragments || fragments.prev() === false ) && availableRoutes().up ) {\n\t\t\tslide( indexh, indexv - 1 );\n\t\t}\n\n\t}\n\n\tfunction navigateDown({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedVertically = true;\n\n\t\t// Prioritize revealing fragments\n\t\tif( ( overview.isActive() || skipFragments || fragments.next() === false ) && availableRoutes().down ) {\n\t\t\tslide( indexh, indexv + 1 );\n\t\t}\n\n\t}\n\n\t/**\n\t * Navigates backwards, prioritized in the following order:\n\t * 1) Previous fragment\n\t * 2) Previous vertical slide\n\t * 3) Previous horizontal slide\n\t */\n\tfunction navigatePrev({skipFragments=false}={}) {\n\n\t\t// Prioritize revealing fragments\n\t\tif( skipFragments || fragments.prev() === false ) {\n\t\t\tif( availableRoutes().up ) {\n\t\t\t\tnavigateUp({skipFragments});\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Fetch the previous horizontal slide, if there is one\n\t\t\t\tlet previousSlide;\n\n\t\t\t\tif( config.rtl ) {\n\t\t\t\t\tpreviousSlide = Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.future' ).pop();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tpreviousSlide = Util.queryAll( dom.wrapper, HORIZONTAL_SLIDES_SELECTOR + '.past' ).pop();\n\t\t\t\t}\n\n\t\t\t\t// When going backwards and arriving on a stack we start\n\t\t\t\t// at the bottom of the stack\n\t\t\t\tif( previousSlide && previousSlide.classList.contains( 'stack' ) ) {\n\t\t\t\t\tlet v = ( previousSlide.querySelectorAll( 'section' ).length - 1 ) || undefined;\n\t\t\t\t\tlet h = indexh - 1;\n\t\t\t\t\tslide( h, v );\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tnavigateLeft({skipFragments});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * The reverse of #navigatePrev().\n\t */\n\tfunction navigateNext({skipFragments=false}={}) {\n\n\t\tnavigationHistory.hasNavigatedHorizontally = true;\n\t\tnavigationHistory.hasNavigatedVertically = true;\n\n\t\t// Prioritize revealing fragments\n\t\tif( skipFragments || fragments.next() === false ) {\n\n\t\t\tlet routes = availableRoutes();\n\n\t\t\t// When looping is enabled `routes.down` is always available\n\t\t\t// so we need a separate check for when we've reached the\n\t\t\t// end of a stack and should move horizontally\n\t\t\tif( routes.down && routes.right && config.loop && isLastVerticalSlide() ) {\n\t\t\t\troutes.down = false;\n\t\t\t}\n\n\t\t\tif( routes.down ) {\n\t\t\t\tnavigateDown({skipFragments});\n\t\t\t}\n\t\t\telse if( config.rtl ) {\n\t\t\t\tnavigateLeft({skipFragments});\n\t\t\t}\n\t\t\telse {\n\t\t\t\tnavigateRight({skipFragments});\n\t\t\t}\n\t\t}\n\n\t}\n\n\n\t// --------------------------------------------------------------------//\n\t// ----------------------------- EVENTS -------------------------------//\n\t// --------------------------------------------------------------------//\n\n\t/**\n\t * Called by all event handlers that are based on user\n\t * input.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onUserInput( event ) {\n\n\t\tif( config.autoSlideStoppable ) {\n\t\t\tpauseAutoSlide();\n\t\t}\n\n\t}\n\n\t/**\n\t * Event listener for transition end on the current slide.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onTransitionEnd( event ) {\n\n\t\tif( transition === 'running' && /section/gi.test( event.target.nodeName ) ) {\n\t\t\ttransition = 'idle';\n\t\t\tdispatchEvent({\n\t\t\t\ttype: 'slidetransitionend',\n\t\t\t\tdata: { indexh, indexv, previousSlide, currentSlide }\n\t\t\t});\n\t\t}\n\n\t}\n\n\t/**\n\t * A global listener for all click events inside of the\n\t * .slides container.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onSlidesClicked( event ) {\n\n\t\tconst anchor = Util.closest( event.target, 'a[href^=\"#\"]' );\n\n\t\t// If a hash link is clicked, we find the target slide\n\t\t// and navigate to it. We previously relied on 'hashchange'\n\t\t// for links like these but that prevented media with\n\t\t// audio tracks from playing in mobile browsers since it\n\t\t// wasn't considered a direct interaction with the document.\n\t\tif( anchor ) {\n\t\t\tconst hash = anchor.getAttribute( 'href' );\n\t\t\tconst indices = location.getIndicesFromHash( hash );\n\n\t\t\tif( indices ) {\n\t\t\t\tReveal.slide( indices.h, indices.v, indices.f );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Handler for the window level 'resize' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onWindowResize( event ) {\n\n\t\tlayout();\n\n\t}\n\n\t/**\n\t * Handle for the window level 'visibilitychange' event.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onPageVisibilityChange( event ) {\n\n\t\t// If, after clicking a link or similar and we're coming back,\n\t\t// focus the document.body to ensure we can use keyboard shortcuts\n\t\tif( document.hidden === false && document.activeElement !== document.body ) {\n\t\t\t// Not all elements support .blur() - SVGs among them.\n\t\t\tif( typeof document.activeElement.blur === 'function' ) {\n\t\t\t\tdocument.activeElement.blur();\n\t\t\t}\n\t\t\tdocument.body.focus();\n\t\t}\n\n\t}\n\n\t/**\n\t * Handles clicks on links that are set to preview in the\n\t * iframe overlay.\n\t *\n\t * @param {object} event\n\t */\n\tfunction onPreviewLinkClicked( event ) {\n\n\t\tif( event.currentTarget && event.currentTarget.hasAttribute( 'href' ) ) {\n\t\t\tlet url = event.currentTarget.getAttribute( 'href' );\n\t\t\tif( url ) {\n\t\t\t\tshowPreview( url );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/**\n\t * Handles click on the auto-sliding controls element.\n\t *\n\t * @param {object} [event]\n\t */\n\tfunction onAutoSlidePlayerClick( event ) {\n\n\t\t// Replay\n\t\tif( isLastSlide() && config.loop === false ) {\n\t\t\tslide( 0, 0 );\n\t\t\tresumeAutoSlide();\n\t\t}\n\t\t// Resume\n\t\telse if( autoSlidePaused ) {\n\t\t\tresumeAutoSlide();\n\t\t}\n\t\t// Pause\n\t\telse {\n\t\t\tpauseAutoSlide();\n\t\t}\n\n\t}\n\n\n\t// --------------------------------------------------------------------//\n\t// ------------------------------- API --------------------------------//\n\t// --------------------------------------------------------------------//\n\n\t// The public reveal.js API\n\tconst API = {\n\t\tVERSION,\n\n\t\tinitialize,\n\t\tconfigure,\n\n\t\tsync,\n\t\tsyncSlide,\n\t\tsyncFragments: fragments.sync.bind( fragments ),\n\n\t\t// Navigation methods\n\t\tslide,\n\t\tleft: navigateLeft,\n\t\tright: navigateRight,\n\t\tup: navigateUp,\n\t\tdown: navigateDown,\n\t\tprev: navigatePrev,\n\t\tnext: navigateNext,\n\n\t\t// Navigation aliases\n\t\tnavigateLeft, navigateRight, navigateUp, navigateDown, navigatePrev, navigateNext,\n\n\t\t// Fragment methods\n\t\tnavigateFragment: fragments.goto.bind( fragments ),\n\t\tprevFragment: fragments.prev.bind( fragments ),\n\t\tnextFragment: fragments.next.bind( fragments ),\n\n\t\t// Event binding\n\t\ton,\n\t\toff,\n\n\t\t// Legacy event binding methods left in for backwards compatibility\n\t\taddEventListener: on,\n\t\tremoveEventListener: off,\n\n\t\t// Forces an update in slide layout\n\t\tlayout,\n\n\t\t// Randomizes the order of slides\n\t\tshuffle,\n\n\t\t// Returns an object with the available routes as booleans (left/right/top/bottom)\n\t\tavailableRoutes,\n\n\t\t// Returns an object with the available fragments as booleans (prev/next)\n\t\tavailableFragments: fragments.availableRoutes.bind( fragments ),\n\n\t\t// Toggles a help overlay with keyboard shortcuts\n\t\ttoggleHelp,\n\n\t\t// Toggles the overview mode on/off\n\t\ttoggleOverview: overview.toggle.bind( overview ),\n\n\t\t// Toggles the \"black screen\" mode on/off\n\t\ttogglePause,\n\n\t\t// Toggles the auto slide mode on/off\n\t\ttoggleAutoSlide,\n\n\t\t// Slide navigation checks\n\t\tisFirstSlide,\n\t\tisLastSlide,\n\t\tisLastVerticalSlide,\n\t\tisVerticalSlide,\n\n\t\t// State checks\n\t\tisPaused,\n\t\tisAutoSliding,\n\t\tisSpeakerNotes: notes.isSpeakerNotesWindow.bind( notes ),\n\t\tisOverview: overview.isActive.bind( overview ),\n\t\tisFocused: focus.isFocused.bind( focus ),\n\t\tisPrintingPDF: print.isPrintingPDF.bind( print ),\n\n\t\t// Checks if reveal.js has been loaded and is ready for use\n\t\tisReady: () => ready,\n\n\t\t// Slide preloading\n\t\tloadSlide: slideContent.load.bind( slideContent ),\n\t\tunloadSlide: slideContent.unload.bind( slideContent ),\n\n\t\t// Preview management\n\t\tshowPreview,\n\t\thidePreview: closeOverlay,\n\n\t\t// Adds or removes all internal event listeners\n\t\taddEventListeners,\n\t\tremoveEventListeners,\n\t\tdispatchEvent,\n\n\t\t// Facility for persisting and restoring the presentation state\n\t\tgetState,\n\t\tsetState,\n\n\t\t// Presentation progress on range of 0-1\n\t\tgetProgress,\n\n\t\t// Returns the indices of the current, or specified, slide\n\t\tgetIndices,\n\n\t\t// Returns an Array of key:value maps of the attributes of each\n\t\t// slide in the deck\n\t\tgetSlidesAttributes,\n\n\t\t// Returns the number of slides that we have passed\n\t\tgetSlidePastCount,\n\n\t\t// Returns the total number of slides\n\t\tgetTotalSlides,\n\n\t\t// Returns the slide element at the specified index\n\t\tgetSlide,\n\n\t\t// Returns the previous slide element, may be null\n\t\tgetPreviousSlide: () => previousSlide,\n\n\t\t// Returns the current slide element\n\t\tgetCurrentSlide: () => currentSlide,\n\n\t\t// Returns the slide background element at the specified index\n\t\tgetSlideBackground,\n\n\t\t// Returns the speaker notes string for a slide, or null\n\t\tgetSlideNotes: notes.getSlideNotes.bind( notes ),\n\n\t\t// Returns an Array of all slides\n\t\tgetSlides,\n\n\t\t// Returns an array with all horizontal/vertical slides in the deck\n\t\tgetHorizontalSlides,\n\t\tgetVerticalSlides,\n\n\t\t// Checks if the presentation contains two or more horizontal\n\t\t// and vertical slides\n\t\thasHorizontalSlides,\n\t\thasVerticalSlides,\n\n\t\t// Checks if the deck has navigated on either axis at least once\n\t\thasNavigatedHorizontally: () => navigationHistory.hasNavigatedHorizontally,\n\t\thasNavigatedVertically: () => navigationHistory.hasNavigatedVertically,\n\n\t\t// Adds/removes a custom key binding\n\t\taddKeyBinding: keyboard.addKeyBinding.bind( keyboard ),\n\t\tremoveKeyBinding: keyboard.removeKeyBinding.bind( keyboard ),\n\n\t\t// Programmatically triggers a keyboard event\n\t\ttriggerKey: keyboard.triggerKey.bind( keyboard ),\n\n\t\t// Registers a new shortcut to include in the help overlay\n\t\tregisterKeyboardShortcut: keyboard.registerKeyboardShortcut.bind( keyboard ),\n\n\t\tgetComputedSlideSize,\n\n\t\t// Returns the current scale of the presentation content\n\t\tgetScale: () => scale,\n\n\t\t// Returns the current configuration object\n\t\tgetConfig: () => config,\n\n\t\t// Helper method, retrieves query string as a key:value map\n\t\tgetQueryHash: Util.getQueryHash,\n\n\t\t// Returns reveal.js DOM elements\n\t\tgetRevealElement: () => revealElement,\n\t\tgetSlidesElement: () => dom.slides,\n\t\tgetViewportElement: () => dom.viewport,\n\t\tgetBackgroundsElement: () => backgrounds.element,\n\n\t\t// API for registering and retrieving plugins\n\t\tregisterPlugin: plugins.registerPlugin.bind( plugins ),\n\t\thasPlugin: plugins.hasPlugin.bind( plugins ),\n\t\tgetPlugin: plugins.getPlugin.bind( plugins ),\n\t\tgetPlugins: plugins.getRegisteredPlugins.bind( plugins )\n\n\t};\n\n\t// Our internal API which controllers have access to\n\tUtil.extend( Reveal, {\n\t\t...API,\n\n\t\t// Methods for announcing content to screen readers\n\t\tannounceStatus,\n\t\tgetStatusText,\n\n\t\t// Controllers\n\t\tprint,\n\t\tfocus,\n\t\tprogress,\n\t\tcontrols,\n\t\tlocation,\n\t\toverview,\n\t\tfragments,\n\t\tslideContent,\n\t\tslideNumber,\n\n\t\tonUserInput,\n\t\tcloseOverlay,\n\t\tupdateSlidesVisibility,\n\t\tlayoutSlideContents,\n\t\ttransformSlides,\n\t\tcueAutoSlide,\n\t\tcancelAutoSlide\n\t} );\n\n\treturn API;\n\n};\n","import Deck, { VERSION } from './reveal.js'\n\n/**\n * Expose the Reveal class to the window. To create a\n * new instance:\n * let deck = new Reveal( document.querySelector( '.reveal' ), {\n * controls: false\n * } );\n * deck.initialize().then(() => {\n * // reveal.js is ready\n * });\n */\nlet Reveal = Deck;\n\n\n/**\n * The below is a thin shell that mimics the pre 4.0\n * reveal.js API and ensures backwards compatibility.\n * This API only allows for one Reveal instance per\n * page, whereas the new API above lets you run many\n * presentations on the same page.\n *\n * Reveal.initialize( { controls: false } ).then(() => {\n * // reveal.js is ready\n * });\n */\n\nlet enqueuedAPICalls = [];\n\nReveal.initialize = options => {\n\n\t// Create our singleton reveal.js instance\n\tObject.assign( Reveal, new Deck( document.querySelector( '.reveal' ), options ) );\n\n\t// Invoke any enqueued API calls\n\tenqueuedAPICalls.map( method => method( Reveal ) );\n\n\treturn Reveal.initialize();\n\n}\n\n/**\n * The pre 4.0 API let you add event listener before\n * initializing. We maintain the same behavior by\n * queuing up premature API calls and invoking all\n * of them when Reveal.initialize is called.\n */\n[ 'configure', 'on', 'off', 'addEventListener', 'removeEventListener', 'registerPlugin' ].forEach( method => {\n\tReveal[method] = ( ...args ) => {\n\t\tenqueuedAPICalls.push( deck => deck[method].call( null, ...args ) );\n\t}\n} );\n\nReveal.isReady = () => false;\n\nReveal.VERSION = VERSION;\n\nexport default Reveal;"],"names":["check","it","Math","global","globalThis","window","self","this","Function","fails","exec","error","descriptors","require$$0","Object","defineProperty","get","$propertyIsEnumerable","propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","call","1","V","descriptor","enumerable","createPropertyDescriptor","bitmap","value","configurable","writable","toString","classofRaw","slice","classof","require$$1","split","indexedObject","requireObjectCoercible","undefined","TypeError","IndexedObject","toIndexedObject","isObject","toPrimitive","input","PREFERRED_STRING","fn","val","valueOf","toObject","argument","hasOwnProperty","has","key","document","EXISTS","createElement","documentCreateElement","require$$2","ie8DomDefine","a","DESCRIPTORS","propertyIsEnumerableModule","require$$3","require$$4","require$$5","IE8_DOM_DEFINE","require$$6","$getOwnPropertyDescriptor","O","P","f","anObject","String","$defineProperty","Attributes","definePropertyModule","createNonEnumerableProperty","object","setGlobal","SHARED","sharedStore","store","functionToString","inspectSource","WeakMap","nativeWeakMap","test","sharedModule","push","version","mode","copyright","set","id","postfix","random","uid","shared","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","objectHas","require$$7","OBJECT_ALREADY_INITIALIZED","state","wmget","wmhas","wmset","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","getInternalState","enforceInternalState","TEMPLATE","redefineModule","options","unsafe","simple","noTargetGet","source","join","prototype","path","aFunction","variable","getBuiltIn","namespace","method","arguments","length","ceil","floor","toInteger","isNaN","min","toLength","max","toAbsoluteIndex","index","integer","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","result","enumBugKeys","internalObjectKeys","concat","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","copyConstructorProperties","target","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","replace","toLowerCase","isForced_1","redefine","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","forced","sham","objectKeys","$assign","assign","b","A","B","symbol","Symbol","alphabet","forEach","chr","T","argumentsLength","S","j","match","functionBindContext","that","c","apply","isArray","Array","arg","engineUserAgent","userAgent","process","versions","v8","engineV8Version","V8_VERSION","nativeSymbol","useSymbolAsUid","iterator","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","SPECIES","arraySpeciesCreate","originalArray","C","constructor","bind","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_OUT","NO_HOLES","callbackfn","specificCreate","boundFunction","create","arrayIteration","map","filter","some","every","find","findIndex","filterOut","arrayMethodHasSpeciesSupport","METHOD_NAME","array","foo","Boolean","$map","proto","createProperty","propertyKey","$","require$$8","require$$10","IS_CONCAT_SPREADABLE","require$$9","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","k","len","E","n","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","objectToString","nativePromiseConstructor","Promise","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","setter","CORRECT_SETTER","__proto__","setToStringTag","TAG","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","iteratorClose","returnMethod","Result","stopped","SAFE_CLOSING","called","iteratorWithReturn","next","done","return","from","defer","channel","port","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","speciesConstructor","defaultConstructor","html","engineIsIos","engineIsNode","IS_IOS","IS_NODE","location","setImmediate","clear","clearImmediate","MessageChannel","Dispatch","counter","queue","ONREADYSTATECHANGE","run","runner","listener","event","post","postMessage","protocol","host","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","flush","head","last","notify","toggle","node","promise","then","task","engineIsWebosWebkit","macrotask","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask","PromiseCapability","reject","$$resolve","$$reject","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","newPromiseCapability","engineIsBrowser","NativePromise","redefineAll","src","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$11","anInstance","require$$13","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","require$$15","require$$16","require$$17","require$$18","promiseResolve","x","promiseCapability","hostReportErrors","console","newPromiseCapabilityModule","require$$21","perform","InternalStateModule","require$$23","require$$24","IS_BROWSER","require$$26","require$$27","require$$28","require$$25","PROMISE","setInternalState","getInternalPromiseState","NativePromisePrototype","PromiseConstructor","PromiseConstructorPrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","UNHANDLED_REJECTION","SUBCLASSING","FORCED","GLOBAL_CORE_JS_PROMISE","FakePromise","INCORRECT_ITERATION","all","isThenable","isReject","notified","chain","reactions","ok","exited","reaction","handler","fail","rejection","onHandleUnhandled","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","internalResolve","wrapper","executor","onFulfilled","onRejected","catch","wrap","r","capability","$promiseResolve","values","remaining","alreadyCalled","race","arrayMethodIsStrict","$forEach","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","COLLECTION_NAME","Collection","CollectionPrototype","callWithSafeIterationClosing","ENTRIES","arrayLike","mapfn","mapping","iteratorMethod","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","CONVERT_TO_STRING","pos","first","second","position","size","charCodeAt","charAt","stringMultibyte","codeAt","correctPrototypeGetter","F","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","IE_PROTO","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","activeXDocument","iteratorsCore","objectDefineProperties","defineProperties","Properties","EmptyConstructor","scriptTag","content","LT","NullProtoObject","ActiveXObject","iframeDocument","iframe","write","close","temp","parentWindow","NullProtoObjectViaActiveX","style","display","contentWindow","open","objectCreate","returnThis","createIteratorConstructor","IteratorConstructor","NAME","KEYS","VALUES","defineIterator","Iterable","DEFAULT","IS_SET","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","STRING_ITERATOR","iterated","point","whitespaces","whitespace","ltrim","RegExp","rtrim","stringTrim","start","end","trim","$trim","forcedStringTrimMethod","$getOwnPropertyNames","windowNames","getWindowNames","wrappedWellKnownSymbolModule","require$$12","require$$14","nativeObjectCreate","getOwnPropertyNamesExternal","require$$19","require$$20","require$$22","require$$29","require$$30","require$$31","defineWellKnownSymbol","require$$33","require$$34","require$$35","HIDDEN","SYMBOL","TO_PRIMITIVE","$Symbol","$stringify","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","description","isSymbol","$defineProperties","properties","$getOwnPropertySymbols","IS_OBJECT_PROTOTYPE","for","keyFor","sym","useSetter","useSimple","stringify","replacer","space","$replacer","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","symbolToString","native","regexp","desc","RE","s","re","lastIndex","re1","re2","regexpFlags","ignoreCase","multiline","dotAll","unicode","sticky","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","str","reCopy","flags","charsAdded","strCopy","regexpExec","RegExpPrototype","REPLACE_SUPPORTS_NAMED_GROUPS","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","fixRegexpWellKnownSymbolLogic","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","nativeMethod","arg2","forceStringMethod","$exec","stringMethod","regexMethod","advanceStringIndex","regexpExecAbstract","R","regExpExec","MATCH","nativeMatch","maybeCallNative","matcher","res","rx","fullUnicode","matchStr","HAS_SPECIES_SUPPORT","MAXIMUM_ALLOWED_LENGTH_EXCEEDED","splice","deleteCount","insertCount","actualDeleteCount","to","actualStart","fixRegExpWellKnownSymbolLogic","isRegExp","callRegExpExec","arrayPush","MAX_UINT32","SPLIT","nativeSplit","internalSplit","separator","limit","lim","lastLength","output","lastLastIndex","separatorCopy","splitter","unicodeMatching","p","q","e","z","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","NUMBER","NativeNumber","NumberPrototype","BROKEN_CLASSOF","toNumber","third","radix","maxCode","digits","code","NaN","parseInt","NumberWrapper","FunctionPrototype","FunctionPrototypeToString","nameRE","nativeJoin","ES3_STRINGS","STRICT_METHOD","SLIDES_SELECTOR","HORIZONTAL_SLIDES_SELECTOR","VERTICAL_SLIDES_SELECTOR","POST_MESSAGE_METHOD_BLACKLIST","FRAGMENT_STYLE_REGEX","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","getSubstitution","matched","captures","namedCaptures","tailPos","m","symbols","ch","capture","UNSAFE_SUBSTITUTE","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","replacerArgs","sameValue","is","y","SEARCH","nativeSearch","searcher","previousLastIndex","extend","queryAll","selector","querySelectorAll","toggleClass","className","classList","add","remove","deserialize","parseFloat","transformElement","element","transform","matches","matchesMethod","matchesSelector","msMatchesSelector","closest","parentNode","createSingletonNode","container","tagname","classname","innerHTML","nodes","testNode","createStyleSheet","styleSheet","cssText","getQueryHash","query","search","shift","pop","unescape","getRemainingHeight","height","newHeight","oldHeight","offsetHeight","removeProperty","UA","navigator","testElement","isMobile","platform","maxTouchPoints","isChrome","isAndroid","supportsZoom","fitty_module","_extends","w","toArray","nl","DrawState","fitties","redrawFrame","requestRedraw","cancelAnimationFrame","requestAnimationFrame","redraw","dirty","active","redrawAll","styleComputed","computeStyle","shouldPreStyle","applyStyle","fittiesToRedraw","shouldRedraw","calculateStyles","markAsClean","dispatchFitEvent","availableWidth","clientWidth","currentWidth","scrollWidth","previousFontSize","currentFontSize","minSize","maxSize","whiteSpace","multiLine","getComputedStyle","getPropertyValue","preStyle","preStyleTestCompleted","fontSize","CustomEvent","detail","oldValue","newValue","scaleFactor","fit","destroy","_","observeMutations","observer","disconnect","originalStyle","subscribe","unsubscribe","defaultOptions","subtree","childList","resizeDebounce","onWindowResized","clearTimeout","fitty","observeWindowDelay","events","enabled","observeWindow","fitAll","fittyCreate","elements","fittyOptions","publicFitties","newbie","init","unfreeze","freeze","SlideContent","Reveal","startEmbeddedIframe","preload","getConfig","preloadIframes","hasAttribute","slide","tagName","_this","shouldPreload","setAttribute","getAttribute","removeAttribute","media","sources","load","background","slideBackgroundElement","backgroundContent","slideBackgroundContentElement","backgroundIframe","backgroundImage","backgroundVideo","backgroundVideoLoop","backgroundVideoMuted","encodeURI","isSpeakerNotes","video","muted","excludeIframes","width","maxHeight","maxWidth","backgroundIframeElement","querySelector","layout","_this2","getSlideBackground","_appendParamToIframeSource","sourceAttribute","sourceURL","param","_this3","getSlidesElement","autoplay","_this4","autoPlayMedia","play","readyState","startEmbeddedMedia","controls","removeEventListener","isAttachedToDOM","isVisible","currentTime","unloadIframes","pause","_this5","SlideNumber","getRevealElement","config","oldConfig","slideNumberDisplay","slideNumber","isPrintingPDF","showSlideNumber","getSlideNumber","getCurrentSlide","format","getHorizontalSlides","horizontalOffset","dataset","visibility","getSlidePastCount","getTotalSlides","indices","getIndices","h","sep","isVerticalSlide","v","url","getHash","formatNumber","delimiter","colorToRgb","color","hex3","g","hex6","substr","rgb","rgba","Backgrounds","slideh","backgroundStack","createBackground","slidev","parallaxBackgroundImage","backgroundSize","parallaxBackgroundSize","backgroundRepeat","parallaxBackgroundRepeat","backgroundPosition","parallaxBackgroundPosition","contentElement","sync","backgroundColor","backgroundTransition","backgroundOpacity","dataPreload","opacity","contrastColor","computedBackgroundStyle","includeAll","currentSlide","currentBackground","horizontalPast","rtl","horizontalFuture","childNodes","backgroundh","backgroundv","previousBackground","slideContent","stopEmbeddedContent","startEmbeddedContent","currentBackgroundContent","backgroundImageURL","previousBackgroundHash","currentBackgroundHash","classToBubble","contains","backgroundWidth","backgroundHeight","horizontalSlides","verticalSlides","getVerticalSlides","slideWidth","offsetWidth","horizontalSlideCount","parallaxBackgroundHorizontal","verticalOffsetMultiplier","verticalOffset","slideHeight","verticalSlideCount","parallaxBackgroundVertical","nativeKeys","$filter","nativeSlice","fin","autoAnimateCounter","AutoAnimate","fromSlide","toSlide","reset","allSlides","getSlides","toSlideIndex","fromSlideIndex","autoAnimateStyleSheet","animationOptions","getAutoAnimateOptions","autoAnimate","slideDirection","css","getAutoAnimatableElements","autoAnimateElements","autoAnimateUnmatched","defaultUnmatchedDuration","duration","defaultUnmatchedDelay","getUnmatchedAutoAnimateElements","unmatchedElement","unmatchedOptions","delay","autoAnimateTarget","fontWeight","sheet","elementOptions","easing","fromProps","getAutoAnimatableProperties","toProps","styles","translate","scale","presentationScale","getScale","delta","scaleX","scaleY","round","propertyName","toValue","fromValue","explicitValue","toStyleProperties","inheritedOptions","autoAnimateEasing","autoAnimateDuration","autoAnimatedParent","autoAnimateDelay","direction","bounds","measure","center","getBoundingClientRect","offsetLeft","offsetTop","computedStyles","autoAnimateStyles","property","pairs","autoAnimateMatcher","getAutoAnimatePairs","reserved","pair","textNodes","findAutoAnimateMatches","nodeName","innerText","textContent","getLocalBoundingBox","fromScope","toScope","serializer","fromMatches","toMatches","fromElement","pimaryIndex","secondaryIndex","rootElement","children","reduce","containsAnimatedElements","Fragments","fragments","disable","enable","hiddenFragments","prev","grouped","ordered","unordered","sorted","fragment","group","horizontalSlide","verticalSlide","sort","changedFragments","shown","hidden","maxIndex","currentFragment","wasVisible","announceStatus","getStatusText","bubbles","offset","lastVisibleFragment","update","progress","fragmentInURL","writeURL","goto","Overview","onSlideClicked","overview","isActive","cancelAutoSlide","getBackgroundsElement","slideSize","getComputedSlideSize","overviewSlideWidth","overviewSlideHeight","updateSlidesVisibility","hslide","vslide","hbackground","vbackground","vmin","innerWidth","innerHeight","transformSlides","cueAutoSlide","override","activate","deactivate","preventDefault","Keyboard","shortcuts","bindings","onDocumentKeyDown","onDocumentKeyPress","navigationMode","binding","callback","_typeof","keyCode","shiftKey","charCode","toggleHelp","keyboardCondition","isFocused","autoSlideWasPaused","isAutoSliding","onUserInput","activeElementIsCE","activeElement","isContentEditable","activeElementIsInput","activeElementIsNotes","unusedModifier","altKey","ctrlKey","metaKey","resumeKeyCodes","keyboard","isPaused","requestMethod","useLinearMode","hasHorizontalSlides","hasVerticalSlides","triggered","action","skipFragments","left","right","up","Number","MAX_VALUE","down","togglePause","embedded","getViewportElement","documentElement","requestFullscreen","webkitRequestFullscreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen","autoSlideStoppable","toggleAutoSlide","closeOverlay","Location","writeURLTimeout","onWindowHashChange","hash","bits","hashIndexBase","hashOneBasedIndex","getElementById","decodeURIComponent","currentIndices","newIndices","getIndicesFromHash","history","replaceState","pathname","encodeURIComponent","readURL","Controls","onNavigateLeftClicked","onNavigateRightClicked","onNavigateUpClicked","onNavigateDownClicked","onNavigatePrevClicked","onNavigateNextClicked","revealElement","controlsLeft","controlsRight","controlsUp","controlsDown","controlsPrev","controlsNext","controlsRightArrow","controlsLeftArrow","controlsDownArrow","controlsLayout","controlsBackArrows","pointerEvents","eventName","routes","availableRoutes","fragmentsRoutes","controlsTutorial","hasNavigatedVertically","hasNavigatedHorizontally","Progress","onProgressClicked","bar","getProgress","slides","slidesTotal","slideIndex","clientX","getMaxWidth","targetIndices","Pointer","lastMouseWheelStep","cursorHidden","cursorInactiveTimeout","onDocumentCursorActive","onDocumentMouseScroll","mouseWheel","hideInactiveCursor","showCursor","cursor","hideCursor","hideCursorTime","Date","wheelDelta","TO_ENTRIES","$values","loadScript","script","async","onload","onreadystatechange","onerror","err","Error","insertBefore","lastChild","Plugins","reveal","registeredPlugins","asyncDependencies","plugins","dependencies","registerPlugin","scripts","scriptsToLoad","scriptLoadedCallback","initPlugins","warn","pluginValues","pluginsToInitialize","loadAsync","initNextPlugin","afterPlugInitialized","plugin","runtime","exports","Op","hasOwn","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","obj","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","_invoke","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","GenStateSuspendedYield","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","invoke","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","iter","reverse","skipTempReset","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","module","regeneratorRuntime","accidentalStrictMode","Print","doingSlideNumbers","pageWidth","margin","pageHeight","body","layoutSlideContents","slideScrollHeights","scrollHeight","pages","pageContainer","top","contentHeight","numberOfPages","pdfMaxPagesPerSlide","page","pdfPageHeightOffset","showNotes","notes","getSlideNotes","notesLayout","notesElement","notesSpacing","bottom","numberElement","pdfSeparateFragments","previousFragmentStep","fragmentGroups","clonedPage","cloneNode","Touch","touchStartX","touchStartY","touchStartCount","touchCaptured","onPointerDown","onPointerMove","onPointerUp","onTouchStart","onTouchMove","onTouchEnd","msPointerEnabled","isSwipePrevented","touches","clientY","currentX","currentY","includeFragments","deltaX","deltaY","abs","pointerType","MSPOINTER_TYPE_TOUCH","STATE_FOCUS","STATE_BLUR","Focus","onRevealPointerDown","onDocumentPointerDown","blur","focus","unbind","Notes","print","hasNotes","UNSCOPABLES","addToUnscopables","fill","endPos","Playback","progressCheck","diameter","diameter2","thickness","playing","progressOffset","canvas","getContext","render","wasPlaying","animate","progressBefore","radius","iconSize","endAngle","PI","startAngle","save","clearRect","beginPath","arc","fillStyle","lineWidth","strokeStyle","stroke","fillRect","moveTo","lineTo","restore","minScale","maxScale","respondToHashChanges","disableLayout","touch","loop","shuffle","help","showHiddenSlides","autoSlide","autoSlideMethod","defaultTiming","previewLinks","postMessageEvents","focusBodyOnPageVisibilityChange","transition","transitionSpeed","POSITIVE_INFINITY","viewDistance","mobileViewDistance","VERSION","indexh","indexv","previousSlide","autoSlidePlayer","ready","navigationHistory","slidesTransform","dom","autoSlideTimeout","autoSlideStartTime","autoSlidePaused","backgrounds","pointer","initialize","initOptions","defaultConfig","Util","setViewport","on","viewport","removeHiddenSlides","setupDOM","setupPostMessage","setupScrollPrevention","resetVerticalSlides","configure","removeEventListeners","setupPDF","Device","pauseOverlay","statusElement","createStatusElement","overflow","clip","text","nodeType","isAriaHidden","isDisplayHidden","child","setInterval","scrollTop","scrollLeft","JSON","parse","dispatchPostMessage","isReady","numberOfSlides","setProperty","resume","enablePreviewLinks","disablePreviewLinks","onAutoSlidePlayerClick","addEventListeners","onWindowResize","onSlidesClicked","onTransitionEnd","onPageVisibilityChange","useCapture","off","transforms","message","getState","onPreviewLinkClicked","showPreview","overlay","showHelp","getShortcuts","getBindings","oldScale","presentationWidth","presentationHeight","zoom","devicePixelRatio","updateParallax","remainingHeight","nw","naturalWidth","videoWidth","nh","naturalHeight","videoHeight","es","setPreviousVerticalIndex","stack","getPreviousVerticalIndex","attributeName","isLastVerticalSlide","nextElementSibling","isFirstSlide","isLastSlide","wasPaused","resumeAutoSlide","pauseAutoSlide","origin","defaultPrevented","stateBefore","indexhBefore","indexvBefore","updateSlides","slideChanged","currentHorizontalSlide","currentVerticalSlides","autoAnimateTransition","getVerticalStacks","stateLoop","sortAll","updateVisibility","formatEmbeddedContent","syncSlide","beforeSlide","slidesLength","printMode","wasPresent","slideState","distanceX","horizontalSlidesLength","verticalSlidesLength","unload","oy","fragmentRoutes","pastCount","mainLoop","totalCount","allFragments","isVertical","getSlidesAttributes","attributes","attribute","getSlide","indexf","paused","setState","pausedFlag","overviewFlag","fragmentAutoSlide","parentAutoSlide","slideAutoSlide","playbackRate","navigateNext","setPlaying","navigateLeft","navigateRight","navigateUp","navigateDown","navigatePrev","anchor","currentTarget","API","syncFragments","navigateFragment","prevFragment","nextFragment","availableFragments","toggleOverview","isSpeakerNotesWindow","isOverview","loadSlide","unloadSlide","hidePreview","getPreviousSlide","addKeyBinding","removeKeyBinding","triggerKey","registerKeyboardShortcut","hasPlugin","getPlugin","getPlugins","getRegisteredPlugins","Deck","enqueuedAPICalls","deck"],"mappings":"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"} \ No newline at end of file diff --git a/public/site_libs/revealjs/dist/theme/fonts/league-gothic/LICENSE b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/LICENSE new file mode 100644 index 0000000..29513e9 --- /dev/null +++ b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/LICENSE @@ -0,0 +1,2 @@ +SIL Open Font License (OFL) +http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL diff --git a/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.css b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.css new file mode 100644 index 0000000..32862f8 --- /dev/null +++ b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.css @@ -0,0 +1,10 @@ +@font-face { + font-family: 'League Gothic'; + src: url('./league-gothic.eot'); + src: url('./league-gothic.eot?#iefix') format('embedded-opentype'), + url('./league-gothic.woff') format('woff'), + url('./league-gothic.ttf') format('truetype'); + + font-weight: normal; + font-style: normal; +} diff --git a/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.eot b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.eot new file mode 100755 index 0000000000000000000000000000000000000000..f62619aef6e6c352304bd6256fe9f767df135e9d GIT binary patch literal 25696 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 VUf;Gn#zx3(#^yaM_Stdm0sz`~o&5j+ literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.ttf b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.ttf new file mode 100755 index 0000000000000000000000000000000000000000..baa9a9500fe6738e8c92b3dae0d3187216967c2e GIT binary patch literal 64256 zcmZQzWME(rW@KPsVK8uW3-QgpwC5=U1EUQC1A~mai>n)hI%7No17idO1B0A<fPe5^ z-%DE<7#J%U7}&442ZuWC_`l;H0|TcI0|SGBf3Ut$xlhk)1_sU=1_p+N<lMx9A1Y#p z85lV4FfcI7C6|>b2;}j-XJFv@!@$7ckXDeM8@xq-IRgW)4FdyHYI<UE0Rsbr00RU6 z5(Wkaj`W<$w5jzRa~T-;*Dx?#7syCWOkq2HWGe&1vpoz93}zV_sfoPP*xDHwo_%3p zU{J}(EvcAn;P;M!;kg6@18Y)FesZFOux}Rw!<!lg2Bs~!i4_G*WlS6l4DSsX7#I}t z5_3~El}pbuFuV_7U|{wr$S*E&S;c;bf#K5(1_pMAf}+#{{ZG4`85n-vU|?XBD^E>I zJMti8H3P%19}El(Yzz$G&||nT$6Jtrfq~&n%AXPtec@thJXnT@fq_Acfq{XEfsuic zF@k}Sfd$M1DFTH%7lQ$V9Rrh#n@<P>Uru649)lEE1;hXUVErJ~Fg9a$YEd2o2h>iG zNlaj~xLC9p7@7OP`rH|2FwA3E!mx>955pmb6AafFbr_8pV;GYd=P=nZc`*4g`7uQ> zRWW%m>M$K))M4@fi+M2pV~$}?V(wtnVK{_<j5>@uj4?3CWQPPn=72Fs4cH7YkI9d@ z0|G%}%rOj%3{wBEgULS(%nV`-Tny3-0t_+?EDTHxA`Dy%;{TsBFfxe#|G~h>VE+Fy z12coo|2GVM|KBjG{eQzC%HZ<<4TIbNHw+&C-!KIIf5R~G{~Lx$|KBi7{{Mzy%KtYE zQ~$qVnD+k-!;JrL7-s%|!!Yar8;05c-!RPi|At}l|2GUv{=Z>Z`u`2Xvj1-wmj8dl z$o&5e10zHD{~ruo3@QvF3^xC-GZZn1FcdS0FqANeFqATgFqAQfFqAWhF!cSu&Zq`< zz4`w)415f3|DQ8>{D006^#3`-jQ`IWX8wQ9Fzf$whS~q0GtBw_oMG|*=L}2!KWA9_ z|2f05|IZng|9{TN{Qo(F27}7~%M9iW0t_zy_c6HrKhEIs|2RXy|I-YC|4%an{XfnS z{QopV=>O9Uk^jFjME(E95dHr;L(Kng3`PGhGZg>7%uw?GGDGSA%M4}zFEf<?zsxZ4 z|2~FE|MxLW{=bi5%Kv=~Q~&Q{nD&1k!;JsO8D{=J&M@o$afaFdk2B2qf1F{_|I-YM z{~u>q^8Yx)(*MU9mi<4@u>AjVhPD5{F|7apjgk5PaRw#^&;Q>T!vB8)hs_r_{~H4b zgUkOv44(hLFiiaahhftHKMa%q|6!Q&{}02||9=>!{r|%t#K6xW!r=D*8-vIHZwx{I zzcGaU|G_Zh|2Kx2|GzQJ`u~k#_Wy4TbN+v0Sp5GR!;=5s7?%G3#<1-FH-_b4+rKdi z{{O+~#UKI>VT36pn7|;;;PU?igWLZf3?Bb~Fa-Vo!4UTU8^gr^9~dV6|G+T${|AOC z|35HH{r`bs+W!v>GyeZznEC$)!>s>57-s+f!7%6l4~E76e=sch|AS%a{~rv?{{LWD z{{IIf^Zy@=g8#pP!{i+UCpaX+|9@eKW#GXX8lbcV(&5e^z#zsT&LG7g&7i`d%Am=h z!=TS##9+)|&fvn}%HYP}!Qjc@#o*20!{Eo@&k(>6$PmO3%n-^D#t_aB!4S_-#8Avo z!cfXk#!${s$57AE!qCdl#?a2t!7!0w62oMMDGXB?rZLQ5n8`4UVK&1YhPe#$7#1-s zW>~_olwldea)y-*s~A=@tYKKk$jm6nz{K<hR6a0jFn(g-V&G$7_<#BT+5cbuzX26Q zI5D{N!Ib^~4J7ve$NxWI2<CxA5E!BY#QzT}=RpiC7*h_W??0$CN73>BER6eq)&F%! zJh1KmL8UQR0fNQA0Ac_C@&6YC0|<i^U?u*40?SJ>Ffk}HXfS9nFf!;c=zvNi1{(%8 z1{Vew1`Y;S23H1F1~&#b1||j%1`h@%25$y$237_i1|J4y27d;B24-+PvN8lQ1Tio% z1TzFPurfq2L@=;3L^4D%a5BUvC4S*Ff&v!)G{!FW0skrfuWIsg`tn3kAaP0 zBEvKW4u%;Fa~PPwamvgvpJ4$53&SFYMGUMAiy4+PFfpuTSi`{1u$Eyh11G~ehII_A z4C@)zGjK98Gcq$UF{&}DF|aW(F=#SyF>o>PGN>@9FtCFC!^vRAV8+10V98*`z{p_3 zV8g%!_8S)i$XDD9?hNh>JYc_ZgMGyb_7x}CSL|S4af5xu&Je;7!ob52$`H!H&Je~B z#=r*lAv4&A%wQjKG9)o1Gw?DLF_bf~g8j(}_9q9}pG;tXa)JHH4fZD|*q<C=f3k!9 z$qn`)GuUs;V83xQ3NQ*VurLZT3No;P{mI1W!RX1r%jnJM!@$ev$LPnv%K)lbKz?RG zib*E0Z<!ff7~B|Gz&>OL=RFPve}-TNE`|t(C<cD8>xICs7Y4gqgrSO|kwFUVVkNMP zl^JF*EMU-NSj4cL!H8ic!+Hh_u*>Yhu5kd@*<1`d40<Sax&$ciF@WlEP%Dc8$^xZC zW~Mca6Bt+-SXhl&Kq-6{gl0O+kjAtCq<|GfKrlOmf{>x!;eHGb3<|%QSRej<$iTop zk4Zy;fnhR8mL-ApA*gl3z{J47zzoGQV7D<aiZC#PS)e)?lxwUQ6c|_-q!{WLrZ6mK zSPJ&j7KR-R*BHJrCNkDDNi!X1x~ssYAfh0pAg`dLpr)X&5U;RCQAtTi_0Mmn|Np@@ zO=eiYu#{m1!&-(d4BHv@Gu&YK!I;7%#dM76h600vfP#dA42E9D|Ns9#{(t`ek^hJP zAN;@X|E~W#{%`uf@&AVZ>;8-U%la4f(Bh%-LxYF<4|N}EJyd$|`N8rBM)#d>N3n&0 zeE{+*Ihc)!3#5$^+I9o6p_maIVjvDE<Ulko3~IZ9!j^@Bm4S_coq>aalYxtYn}LUc zmw}IgpFw~@kU@w+m_dX=6kHETFi3*y0vQHb1~~?K1_cI11|<e%aNVHBpw6Jdpvj=c zpv|Depv$1gpwD2yU<j@)Oc+cV%oxlWEWmlzn!$#_mcfp}p22~^k->?<8CsXPBh@Cp zDD_DQyhZ_)K+y~_46zJx4Dk#J42cX3;JT%fp_-wYp@X59VG_echRF<58K!{im01ik z!S%{KhPmLJxrkv2IDIT<SjMo5VI{b30fkN)LplQkqdx-!!vuyLhAhSqhCGH$1_p)- zhE9+)7-xV<RAM^A3Wh?4R8&F60EQHXB8F0ic19*fW=1zgcTmm-=W&q2^^9r^42;1b zCSy3bN0QIz#puhxz)-?a!%)mn%TUEo4=!cuz_ld<LkmMULk~k2!$U>`Ml*(7Mk7XJ zMiYhtMsr3}MnjM};Jk8};UU9ThFuK%8BQ`>WVp_7n_&&ZX@;u|ry0&O9ALP~aF^jJ z!+eI>40{>2Gc06S!Z3;9GQ(VkY6jm83_2SaguOTT1Vn7`DvR8}plmO(flWKYHWDmW z8>w(*1Ea8>gzg4L9feyPc(iplFzI*)MYt+QD(Y@v*2$Dm*x(Qlp}4^zQg;K34oIt_ zvSL-lUFoxt(%wN45r3uMMoKFyZeZ1p*x*(c36_YAl+fM4s>2%-rMrPmXQL8hM?k~| zg^rjQ=?x5#x*OPaHmZPy9N<D6Izoa9mioFIICT_iL6#hmJ{zg9fmzj4Sz!Z<n%4$~ zfQYWtu0#b8!$Mk7F;cn<%nOPD^FS7IL0l&wEua{wyMbFr;S$(8JUR;c8`!mDA`}$d zmE97v6e1K-lE9jzLF#xxHY-@_D|9Kicey1hcPVr!gRN8Ezz`I%!NEdWF;ZF?WbFor zR1hapcLN{TCfjQgii*+-*SfreA{4rmJry=EghE^ca$ltG27Vo7g=<jDl@%hqgQXQW zFh)jnZD3LJRPIt%=<@7RP6W9G<Q+v2h}7L60Ez}7ZQTumAP;~TLTDc70{KHZF)IPt zCm^o~>nL<7bhU$m%_~K@i+zJaK!lC-fk@pAB08HH92gy(oEW`#2rwiwfJu<z&<GG2 z6rr4?uz^9@Njgbk1EaE2q{0S=pomQj3JlK4PMa7N7@d=yHYg--kW7_Pj0Aa3cY~<T z21e&(<qZtZ$;!H*WXj0E`2RlxKLZnk7Xt&MCF?^5W(IZ!F$TsB9Qqp=uWexxWDsD{ z-pI+Q&0t_C&1fvlY;3CRW!`B1`1*C$hrhS7c>j`r4DK!ZG4EnhhU#}<*u=oZpuK^` zcnc#70|$%t238{^6Qx+RH!uloWM$Oe!Y0Td1u=gkE0dtmMrIaEOQ=o8!p6dW@-yYt z<z~sVKKy%=Ngag2b{R4-uq<GG$RN!i&p4fdaf5>X2BvEpnFU{NU>4XY%Ba0jMDXPX z5rK_tjM^L71z&Dp7uYDssJ&4@@a0BDM(qt|QoHOkz6UUfYICt{VA9(lq6cygGxJZ7 z9#Q6>aM=xPdK(1vHn0h7WM}@lK|o-mAV@O(y9a})HunZ5fz6CeqQcr6m<2YoFpCIl zZ(tMH%*rMxti6F<U^551fUx#vZZOFMCiy`mNR1F!4YR;zVX!VHfz4tdb2dwYNhuHs zGE)X5yIB@Qf^^A&bZwRgk((HqL_sM)nT=0S$Z~^}<pxR14Pus?SeQjXd>P9PvX&c! zEjO{U34-|YmK)?OHwam7;$Rm5@wqKG@K|o(w`6dTU}R!uVP#|I;O5~M5EK#?5fzh^ zl982@*TVrA9RwIzSV78#gmEa{;2_1wU|=Y0%xo;I$ZRZZY_1H(%FK$w%FN2_#>~o! z!ivm>$8C;UGqTzowcanaPxXNGL93&d|NdAWwLB_yMD-YBw<;rxD&w|)UJ!hkk?9cQ zl7BHEeCXdlMy7xN7#JB;|7$Y!v&Ar2Gej|Lkka3x!otAEqRqI$Mt_6mwT)uDFE=nK zToc@AE%<VSn7~G3M(qu<MjN?#Uv7{y+GxwDz0p`qP{@Ikg<XhENkvuPTt(b+1GnG? zK}&{>DpG<%8<kWoEe#BX#l*$LMU73(%*{+q)Ya7W7}eF()l5yy&5X^&#Ld;z)znRu zMcLTdL`B3wO2x#*L`B%yl$F%g)K!_S9BQlU9ZiK)f;shh{Zy?)MYMIa*bnd-+T~Rj zo9l|mg`4<l@mh(B8`>+%F*ByM#ionhy~$S?HN(*^tDM(GFwG&++tSRK(Zx!#%q5h& zwplVOtk%gorQSE$PAtXC*T~AsFo1!T!TkRR<}IwB7=#$a7*rU{8N3;0F>KOgV9?&; z!2`;}oA{U*w71BB*<0+5HTih8x7b5?$}C`>GMLA>!AE}s!?i8qf*@TR#05ZEW(x;| z$04v$l~H?(1%ziIu+fE4dy6iZx6zkTd!wSbpwMPM78zwwP;v-v5V727p(-e}LCkW4 zi{NHsO?wX&aZvsi77-USHZnIe7X*c;vJyL+sIW1kGNYiHxtXz%xR|J*h_VtR7Da+; z=5|a_6_7AC7uHU)k#l5b7812Hvy*d4?_^SL{`;DVg-2X~l}}lV@syBWf~~9rGqa$m zoteFyb2SqS3mYFdKPw*#kB|Vn0CT^AMufCQEaO%KH4Ou4>xf@_SRejf$GDYCK$b&P z>YumyUpFJQFe&p`#w|u56;{#zd>FTI3vhCAg5-U81!TEJz^!4!{~wrjSwAsoGMF(q zF=R7rVqsv=-e|)9a+5q0gZ4&Co|lXpoI#<xQH$^81}%751q#NES`30ho0vgq&T@mO z;5HUkNqGY&8&E)s2yNmPkg>G1WY}oJA}F+xmD|#CgQehB9tKHOJ$n^#P$Cr(7gI0? zCqH9TP?9t=H#1jfV^>o*GdELL1BEcVh&Ug!n3}nnxtKT~ld_V!FgU2$McCEU)eOVJ z8Cj~-<h;~`xj3YS)pR8VSvN?D+K0xOCA!+J%{0$u&eG7gkiN~u#V_ZWD<P{Vr6nyS zV4*0Wz?`bUDaB~rlAO}5DQeEg@tRqLM>D#_&r@-Rb?kwf^sW1rm?Uj_bi+2Vw6vl@ zBSN=gy_}qsHjA{6xOPDNTz|cM@W`Vj^DagKaQ&eKsXd@o2jd17SWN_~DOlk(k)`}B zIY_+#*6;N1Iui$*DT5$`FazTTA#f;j3clPZ4AvklA}$2Vt4x9>=0c!=VRF(9S-i-@ zvQg8&Yf+%nM5fkbOaATp7n0u2sLN=7U>>9S@sRqN|JH-e*8F#!@dL8ieAhOz!p)Xv zG&2_xG*M?_W)~9|5)@%)(p=>4G(|UL3E2GLt0A?s7$X?%k1c1kWaJ9TYy5Zg-?@GB z{v83E?Zy0@DTehSXzWB-oL$^p++5vUo!wknT-|F;akGzKbMYGOCBn0Wm#{om>I#@K zBcMxZira<_ZlGR<7o$G&ZI*rpZUzQnML}ahMN>sVWkE$R#-cTh#s7NO{Oe=t{I`rT zY7Jx5zhw-J47&fmF|sf`W?*BGW7xo~zlDv3ffH0-vg>bTVAS5o!uN6`2ROK_8JUfR zO_g;$JkkoU|NF+s1*+p28N3*eGZr&-GBAVmGw5$*W_}5Z9+2iOj3S`27gVW(3V%gY zMK4BBupK|dz{p_Az`)4E@R)&_L6%_?11L{0v%qz3WaN7Z)n?6Ts%(1w`eTsaIR57{ zodl<cU<QySpfZV3kU@n-djq4uMrKBBP}@X>MH{3QRHNJ6ePa%((HZnWl{$mKMn=(} z;EG-JC(~vIMkZ!Zowfl|JBb@JDs!x0l3X;I4Lq>U1RCjMn#lTzL6Sk6!HQuM8_1O! zTrW2XgL1As*Gt9?I^Z-VCH!)Ol)y$6M(vF}!Y?=KGHOFA3t={J%LQCpK*~07>81wF zd~EE(f}kn`Qn*2iE*EA+ISc#TY<pW7MP_D2SsT~XbXRkEMdrI4f(EjJG8}v+(gJdf zrisqZ+Q!Cu4$g_p<?+tWx+W%CZqD(4I+@FrL@flBt^ahY2%8HiL)vqa3=E8&tPdGD z859{dFz9dL<YABo#W5E+j<>LgFz~QwZ{!9?v#_zCv7j;=I~%*?<h!kc3W1p{bAG3= zK2*~P69L76IRgVzKkFw31qO45P28Y>5aW2sxIs~WgTS>73`QFTg<ozE6xb-msJ)S0 z_~iyhqm4?8+8d<=1%)<pGlPS}SkY9`%v=amae~SqSw>@U#R&=pkhN^==1dX)7BxmR z+IlTm=5BS5Pf$xoh=<w6*e4?K_RX`5h9}p><d!F{&CCoiG`G_VsMtJx(yA#Sx9R@> zz*NcliNT7Yn_-g*D7K`SUv4r7Ig*w6<raPc6?0zgjr?pc88=w#Z%_ccS6&F@$PMxW z8@WKWztGDK#sV93KurWuzLy(B^*8G9z1(QSsJ&5MK~QKTzksFX1}?$PtWqkVrol#I zQ9+>%`j!kE1*8OpHpwgKSXx?c;1}GWZ@Gb0Xd{C$xUpaijbvFy5q3UCc2Q$cbAS!p z9sso(lwoxmxHX}sZf?g23me^=d|X-vyc~SI9<IWU+ICDFd<LS@oWeJ?UADO!glj3X zFqwHWnVG12tl#9M&Z0lX(%4Zws?tP8L7sI7vxH`m`W96OaXGu*eaQ=@3<?r_#6_l_ zw_-BewlE=J%7R4DT#+OL0~4s-%*DXZpvb_uK>(5_SVb7vS+v1TWL5@H-0^|q4qT)d zn<@(`Ga3t<8w*M@hMh`Jzx!|Ro<<&CMvs3x7(EU#U;m@YcwP4|Xf&3Q!R!AArf$}U z3>pkk(7I2V{pAK}{f)e!WTOenKO01iHmVE1+$bpca)Y?h26cgr@{HOWIfP$s)B=UO zx}eZTX%<V%4IF|Sg+)L$p0u){&_*!^OUn(spr)CDA*}6SDrlmvrmV)!#tts`AOR0* zIY2U(Eu)vV)8>t?+N$;wCB&5U86*C_+$AZiprj(eud2q+$GGiG;>?K=3m5}p13Q^H zxs@0#Z~u8Ar><#h_-{jjp0=)LsWm9foc@1cYG(b!pu}LnkOlRX9;`+eVSc%VSDi(k zS9>EbsB$+1d2yq%@XHPSMjMm`Hfl3!Z;&(sd2fT1(MBUi?TyL|f<hbQEjMTjZsY~~ zQ)q*nCBsHubwQyG{FWO;1UE`bffEump+J18#11JuK#9p1lwcG<Eha%bMq?w8kJ*%! z)SR?E)~@r=R<)a~Z_mf0DJjjybyw5#-y%<qyG)7-@~W!xib{;8x&ED<{<)0C#Xj|_ zj6C6L>JqYsbK<%Ky1M*&|D-dX5YsRe{%0p_2%5!Y1kDLDnX*1)U<3CE*&)3w5l|k2 z))U|czNsPyqtC;qcmG~yW&8DumE|tDEo6!mZuX#%1DB|J94|MCgYu{;^UE!^>TKe? z+8b>_g{uQ7<TgkfZB!9@xj{t$lo~cz8g1m}d$~c#Xrm*jlm#VCR(VUy4O)Vm)Wi)z zxsO|DBO5;`mDqw3jyyjs<UoxfGjlUrMiVu4J4RbZP)bo^XOm?V5fkTQ6cuAKHv<(x z;B2YRWCm??Lb#^9Le}1lEZ#OkJk}OQrm7z6)_ACy7+F}~X6E56;o;)qvC`vbVdmvg z)#l;m=F!&SWOUMWh_Uncw~w~g+Ymn2)M!#beTvVNDSk=y0h5eO=Z0TqWO8(J@@PnQ zv@v1&^F~M4*dZpz!5mb)GFblqz*Nopi9wM;pCJdDzNFb-ZsGxjk{a{NEh4%sJiOW) zML_Ax031sEMjI7`Uv5w`+Mpn?QJhhGgQgLv{M~5CsJ&4E6iUoImX;gDLCx<C>_Qt^ zxIrN#A}uJiQ9;qta)Ykm1~GV((F~lxK*>oElHvrxp`fO&W~wYKXkrFVV0?_qN@|vx z?u<$9n%Z9fR(OGunSnhopQfY~8`r&iD)LH7OiBv!DvTlBe%;-E-OLd=K^+}IIsa}K z`P8fadm5+%PH2qnj9Y~b^hN%;im4kw#~c({62M~)Qs6NMP*Y+9ixH?zuz}SGI_>~! z76^jI9j;%$e*H1itjC~y>Gkg$BS<eB0~Z5GFE_X>+rVxFYQ}8fFxtoiuHv9A8L)PD z_q4+6*CFj0uqmK=#EW4a^G#M31~$-Q1yfE&Q${c5{=aTayZ#h1b^cR5&X~fOa{Qkv zc-+B@@h<aC79OyB8H5#0!O)Aj|4$(ZGu~ZueGLPenV<ndQBIJVe+rp){dHT%czXfk z?c@LE{F?)+ubCJ?WpWJb8wM2y4Nxts2#R)A_LqzsG{Lp3su8HD+{meBWCW^eIk~kr z%JM=AOF;oap$)9y?vyw*3A2MMRZ&4>P;p^y$7pWH1S&1m)!5mDjZKv$Hwj5<>T3w| zuyE=)$ms6l6*c0JVwIJY(sh|x7wtXs`gN8!A!aJ(s&dj=?wP*Tlm9a?G8kJ%gz)Ne z80iPACwb*FGpC3AIuB|NGB7bX{r|wM&-#hMn8A)=3d1H=P%X^G^Kz3O$P>amFSjV! zvg+|_Z&3obLAJ=4gLyJw9^(dkP-5Q5C-`y$pTI^1M(r&okmj9<z(#9E?G55a8#M%9 zZggPO-e{sAD72MJScX+e57ZyB7Tn08W@))WLudoLCBsG~E<vFU9F`kw1vjawYgk%Z zZj><>6xtvGPUB+Wj;1=eJ8lXJ6;S6<mJ!@6V-pn=0rx`1jRj4>BJ6yOqKtwj;6yK? ztmLGko_g$B)(qp)WD|9Dv&0lLRW?yI17DYkGUD38B1=@%(vKZaQCDHSsxK~OsL!ac zm8oCbA7*c@Wx`x(sBdSdYply7subt*PkIfPsHz3Cq;`QpeZ4`x&flqw$4zA<|5=)X z(y|Bx1Jg^^hYaitybRh5j2rmCA;T#264caXVbtEp%J*_3Kd6PyC@8d<jh%xR(v7xe z6gCz%W>%DDG&dF(7P+BuRrC7ef1j)!*m&3+7>)m(WqtU^hViz#Iyn6@GXya(FzsM{ z$RGrsJ&t79#0ZKpVeXfk1VJ$-%l&eTj0mG3ul7b6P=&3kzd_>K21TQdtRgQr^76gh zsK%(hkyk=cXalDu!$x67L7@#ypekzvtK|k6kl+Sc!415Y28PCp;O31wxc3Q4fZB}0 zg3tn&8O8`=6xb8&E@2SpD=(WCfBw*2Cj}=b1t&*ECnrVDy4-C=ZrytBPId)1;v;_j zVmvQyuwbEqIMXb~iDJ5Kt-4~MeCG211Gvqu&)@@Xu?us(+@uNeiwvkz0T-7W#f4vj zhB5dVwKpgjZR8OEm7L(Rl3!d<Xd{~@sC1MO78KgVtEglNu0bIEXwdkCnYpPld^AT8 zn#(|~SWq7u(yeA=M`_2O;}o)#7EoYjVH4F?5>z~g+^$D%%AY^4Bx)|8YRO!#E?^<3 zVs-vJqG=CG6R^1AV~}Ogg~k*=_sdPZAm0gazhvAXr@uk`+D3Mfm!KvT!$tvqK~R1$ zFtlbgGBY<5GBsgR*JA{SJlH=VZ?N+*2CbX3UPnVxQbT9m+;w;D?F59FnV6V`1nk^H z0~q<feP`qk2zC4Qhech^$R)<()@_dj2NO94MsV8kVSUKJ&7j1<xPb>;+JZWLoGjWK zIE^;)GHP#R1hs9LK?M@1*$*mmK`pZ&#$W#)pFPVc`;YB0<GfFd-Jrq)VjgHdk&{83 zfpG(uKB%nU!Y%?DEr#|^tQp}(+&z1i(eUplrv4`o?F@|Y{+a<pD#IoYP&yW2ez{2t z6gsk?xQ8^wB!pjXkPz4?z^DyM$K1j%Hz-5eVG<y>vRiHt5ZuJUs|9IGfRnWdhoI0V zPA+bckgVWlCLSfwU>2y^2^rrrG8Z=%R1`Ia)RXFJNQDYy<OQB8B&19%Pq|Aq|2rMQ z!Dk{RC<p1)-9=3ioSZ=pPCCXB9!&3c|NEdK4C>G^cS1UL&z~cw2}qcM@-H_711NAn zoi{;cLFJ&kYwq4%bC;?AZz1c$zmu5qKzSpGfq_vU+<z7U_n$#E>qbW5m!SSK11OPz z^xXwb=rS_!{Qt-ZiVJ=QQHD)Sps?fx1)+dGs87IPU<fWl%}fQAp`PXu5uWAaepg7= zn2Vc_G0?Yz<<##86HzrrXgYbr`jA0@L7IVagP{Hf_G=qCgkEkG0yXp51%)<nff9%{ zqo6&bvAD1?v#>HVJJ=7#yliYUZ#+AFeFrzkT_%xgdHKJE%%2$F|KpZq;se!{5dVj; zK4f48rx`YQ8suQn-pCHF?!gI9If#kr-|f3+Sw$f3VeVyp$RNy+&%n4rM1KS8HPEaB zXjVfMG8b^5{)Yf)<bZDjv%m(H0~-ZJe{K*su*=@}+eC;kzrY5*0~^`Jes176z_6W} zg`I<sUqBEvngGI#7$VRy22d1<3xm5(#)68>?8@rQia}?2IQrsxIe5?f`_#<E!rlDu z6Z0pBKYq-c9RBdJKKvUH5Wutn+=c+<|Ld#|8F(RaEiP;fifVOc<)G6%Lf4Oi3Fa`j zKOa~h{#oV5EC4DqVCCV^9>ZV)mo;0!WsL}fHp3<^P^RW(dAWf}e<KfQ;7C+|gW$D| zY{D-$iZN<4Y~<w;6xzUM2~N~TkWqSYu_q25h!48ED5JVMdHLPD$tv>lN=#8nCGS6! z#Qlw8JZh@f)}pBoN?V}upI)Xtte+U<7z{wYS8#7dm+R$bZe2DG?TuXQFE>emoS_2B z7?83>Uic+wC_$4^8#E9C?%iq13kq$NV6(K`ASk$zgBMh@aI-;LC%TZT5k5X71}ZH; z)ubSDRf2Pn$lStXww0U&vk-FWfo+^fsB|y4mIariF~PASNI35Tr!g^x5C%w>gCA72 zi0f|<z6NTCbAra^gkNryfMk_}Y+q)8@&wBU7CpWV%m-LDvU2|9+rV~!VKZnR37j1^ zGPCLFA!Pw!V`k7GhZ;(hSQp>zwYA%J`0iadWov5{rs}_~OgA;Rm)*SiH=S{xyh%^D zi2^8IKyy4Fm}aqlVlZS#g7%JdIbLp(1;vFBsF7l%zd`ZZMgbw{T#up9OVC6esN*eW z1S)ty?MP!r?Ty+3f<jw(S)|o<K}|>w!3{i?3>$@X1%<Y9Fo=mO8p4OsK`la1n*}<{ z18TOIn}9~~Km%ovIsi1!BPs%#;W1S;_d2lL*TG3MB~H@Z+dx9_riJ@@7MA`1M<FF| zFGo3Pt7v<1A;x8=Q`(E-S7tW`OzqT(cbd%XW)d&5AiI^hAZ~)Kb!lmFjGj)0-LfFl zN>JI&!oa}P3~mpC>P8OzjSSq{TcD#fkf~Vk$eppNBFn|Q7ymZ0{QJ$s@()t42K@iP zG>`QmgCv7KqD{oOK?>ZYL^OrKgO}2b+8aTQpbc!GG8vvUL30Q2vR=(pP&t5E2{KS= zEvv+Qmy^#}T0s6TqiMV=Xk1d)(KViB&F>IUb4JCAWeo!(gAfA)6DVDAf>yk3-~wCC z$@g*tr@%%~YnGYsC8&zu$igWow2_GsJlF)9TL#qx>dZpV?moSq$HB{y&-(C}JnO?h zM;#oPt-)oYBm)EU7uJUiq6~fvj2pzj=8E#Z+#m|B;kWQZ`Vah&;XO{?m!Qt^Mo~~r z&j_mNL9JDOp^dDdaThMZ4eXX1I6)l;=zKG%32h9njntVTE|EO7CY^_aH*L-7vk@$U zY;g<X*aTQ3K(1ms84>Z<ob}<KPlkrfd=Qd>5wyOX=_2bx20?}ousMhg0!AA_4S9Ye zP+OjjQF{ZI(MEQmm!LM2FeFpiPJK5OlBpQ<_%;Y0VA;qB%2dn;b{+cq<`_gqKyM?1 zAO~2IU+^d22EGHkZ2rGl2$AH{<J-V}fMp}6z)!vn90ztC%7z)prpLE|^#IF8cJZGZ zIXF2$lD5;{fwD0721bF+OpMIJ+MAddnGuu83=aIDp>oiiFeeu`ay<vi+<JO?jN6!) zSvk1*VD%q7rwfAv5K^D3Gb;-V+^lEiV5z_P<-^TNHV*cRTOSw?3JLwQXBKBV^{-h- zh_Uvs83Q9|-h*i!xUAO#w<|X=T-(Sk^l}3?Wcr>}=q0#q$;K@xw22Y4JOGqbr5Oc{ z1)*`p_vr4!oB3=kZ27DY|19`h&(z4A@K2tPj}f$1jgdiwfq^LwJRS~ew?aq38Nnl- zpaPB?qut7Aswk?+D8l6RZvkV%-xrLU|CZin(Y}5A_X}_u4EnFl_z;{oLFR$-CZjf} z9n1}0<p65MBDI6X6-|`|jZGDU82eA1`d4`MD68%f21W*s|31tDY;zcx84z<D%#g&( zEU=LgV{YTH;u~v7RKw>sm?3i;j9BJ2gc*$)IhYbw{GG)%=f?*207yA%`Cpq6G@rr_ zZohNrgRI%WVzh-xgn=8n0)q+EqXQQO;-ZS+Hm)V(gntF61&*?9JM!x?#2iy*O%_S; zm>`3&F(;!jqq6C7Mr}sz<NumpF>5l(|9!}`15}22{oBP-_&<$-nL(Ig1Ec;%2GIBw zi$1jZDK4sL>cyfyYt0%421Z6zR!OEb){79eO!^xcK%@3>wT$A%>Wr$3=4Y{9+_3{Z z4rBQL15*Y|A%h-+B|{;!Rxsmuxk;FjL3^Vd>r2KBR^YNhpZDbk3DEGqq`=D!`U2p{ zQ8F?z+Q=vH5;VrJQ6JQqWwG4IDJdwlnL}913{*Gp32xxFWY}oNA}F+pgPRA`5s(wy z!pF}bVT4jim>Y|T8-v>apvnO>xCo!ykY(fp55$O@n3)TTfX5yT9W-ri43)+BgirDL zc&AqQ1)OK$)=}kSV`Ags7U7j<&#($R?e1ZuqR7X^$TG{_SY1ZlNg^zlX+y53M?_Sm zzNx5!wUUTIH7h3<J2yKYi@8U3cSyVZzlXBw+OiBx3_<@tFr|RYMkR(oXvwd@{BjdN zC`_b46LreqFkuvUxlvfm2wWV=GHP$+5_k!o%;J&-b%w!%sS0d@LK_*FEG;+kO9={X z5C*rbOd%sFknuv$Tn@V+cz_T-03CE*N!ZrNTVGYx&{JO8$m0BYH9bW|aS2r~IeuMl z+hC^Cfev2$Vy29zev2}dNNTIg{_T-fR|lmP&=`9NOCf_Qs2>lWGv{M_xk(Y^a&b^n zPy@SMNZ{oLApua$0UAu_5O}#k#%QBDqxME_Awi*yEQ+AkmN*}%_a+UREC+SjARQN5 zMrBb@Ea)+s3Yvh&%t1YPaGlQ1ChFwvSkqzWa$Z7NN}82bT1r{syo+5&wUala_2xi# zXRj@}b4=9a6{VPBq!i`VOxh#1c)554ZU(itLGvA;xm!^NC5B*VIs}EeAjsuNVJ;>B zUVy?0nlqF!GJ=P>7-+DTMG)k01#oKP<g&E1+$abNbzVyYLvzTGteLqesPPXOp<)vS z4a>qq-Ai4^M?pr<>O3U$b=A)+=&7knh%1~9wf5!{HTPnD_|Hs^U)Ren_-_JJiLAP| zBsAC|<9AFEEQJj63|b6fQ1=V4zT6}Ya=$7lA8CU_9<-cF!3eZEiU%^<%n4diW3*8R zwA2bzy~<f`;1S%&A`SA1s(_%-W-d`N1xRLrBpW+M<bf1ZMNp#`oQT9h>uMlla!$;$ zPAgK)%uQJjfSVX{%#2~oa?Z=rjWan9FtZC8$O_0Ziu<`u*3~HqZmd$0Fc(m_`poF& z?lDO>eDS<_>Oz(RDt7Z2z-2z;Y1WqvG7PE=o5Vm(MP4@0JObkeS<oB?DETl8yabIE z%Yl21(AJc)EhA+1PL5IB6qc!#MKaH4WU%q+^2;#uGE0gY&oYtEWM1|sih0>CSwjUm zR~AMl#!YM-oq-eNK`VE8{^c|6Vku;>V(?&yVVK9TNrRC=dxMhkMnCqK8x)N;u;_1e z<9WG3M1NyAs6>p_-(Y%egO1Tg0p6DzJ)@0`pi7o`!OhrUM(vG~ye~I9Nd|LhZ{!dJ znXoYqw3N+MP-v63p*g5<3KrbLE2LrT1}eKGg*Hp@$g6>d2RDki2?}jt;1Dpi1<8a9 zZWJ=KwA|nao_^90+@NM@U?>h+vSbA5GC|wBV%ChHfiFQ5HB&WpGh<UFb~bj%kcJ>= z7zwh@iH)62+{7Hx3<gcNsR<*k+yM!I7D(~L_%EE4P!Q){>7s5d%f=_1V4lUv!o;HO zt8K2R?%A4boXW$*FXLsPrd{i<VSLgj%S}SiRL|PQ*^rr?M@N!Zl1)HUoKJj5sj(ij zt>=s;X9IpNUS1_hDJJc}nT)plJOV7@5<4};)zfu@=l(mdY?*E-sc))XqNu29AY`s1 z$}K7=uOcd>#dL|$SX#nZK*i|aS$R=IK`DLk>UYR^0;tRs2dzs07nE$EE`@~tMoCb= zk{{G{69t!kkfA^Dz&a#hfTkUlgU++@NQ)VrQ`Pm9mR2<tV>-`V%q1Xg_@|S38mO=n zF%@HEybr23!F?@8MeukGJ9xeV(sBSbK^O&IBF}XQDw`UcDhHiEfBrm6!lv^K3{3wo z|Ep(|2AA!U3>pj@SoJqDG8-Fj6l8w6fx!sew&%UJLCk0)rvPYDb)z&mQL~FevL1Nc z1~mAmtfa2T2$}}a<>3%DoNFR`o`p}3TZWmZ?ELv{`&pRS+Px;T)c$VO7gexlVPs-G zc^*_YgT^6h!Q(mUi18d=@OTbr*~P(^AF3ct6Lx4@lSASs-v-VD8(0N4v$3)ZYj0v> zWk+gXZUHwf!Hr4AO{{F3dXUcIMh-k<L+7Q~xmePU@0q$Qm51v*W3!Whz&~rIFN`_= zZmTez0);O)E}`LzJl-XMGTwFmJY>8ph=GB514|(TXh+T_1yKH!Fy6?<0h+Z1&AWgm z9~m}+YQfENYU&!`a?F|$kp#fQz^G{fl0(?oK@rC$AT4Wth(%ah#^R8wu9t+ot-2_W zPP~+~fj)8yDdrG@rxZaIEm6)|ekpx1#yH5B6;ldJA%i%BA_JrX$4Hl(M8(9xgVo3m zgH~zmP<Iean{f<G4EFy&Fa@y`G6*qfFgQc&0A<#foA^L=fCQ)x0MFZRR2O^+o2>^e zs{+l|tAmPuLCX#Df}8nRBtXNYprt>MRA<KsTH6N+7DVA7A}S~bD<15b<(!tKnwgof zLJIjb&cn={{D!guQq17uUz$<e$78atPH7O61E`1(Tk`iTld+<NrGTOt8|&Y*pz>eY zm<?192mPxDhZnRS29Mn+5@`F#A-8?x;B6m8P@ZRkw0t%Ri->~5SlAd;_JIcmz>5w* zWg^n_s0f>q8fNQ9RYF`*QBUn(J>zNA29W2UX`qT2(*Dr~x!>zwJyQ%zAp^+$fzUVr zxgTFULKb^FLXibL+yrhzY~<zzO=rMc5uov6QRG$xWS)ynNexRYLR>;sO%K+J_-D%c z&=a{80dl;gwmKxOGJaqwWDo$2)Nz6m4I5~PP7vI102OU~MjM4dr70(ypwK2h(4rbh zi3+J|O_e~)WI)+QSH(q1BF;fflIc7%m!p~z$1@u-J-%8{8KnCE1Ct+1A%h`9A~bY# zd0uXk2U!N57B|x0pnMIqyc<$^8VZ6dPtX{Ugb}#blr#dZ{)LSJ$)bz_iRcOnZQ)>$ zkOU=QM57UD2nf7RQq&lnyWoRBa!jxhAVaTZEnZf3iU~Gyx;%VpnnD~0HEn0Iu(r4w z+bbt&>1ex~OA0c&HHXxv1=hr-nj~0gm>XHh>FP>bH@l`Yr}$Q9#+k%v8G0+U+iN(3 z{44VR1LIBBQU+NDEoe(#kP|ZD!*mU_MnY8JC1_cRJSbQNK?#-{G}mbioxumSwfGpJ z*$g~|qAaK^k|}R8%Set@l$Aw*MMgrKkE6Hud?xd<zlUZ8ce63FF`i~*Vq|ev4PesU z#VGpkHMp<q_x}S^0!spe1gIPWx66e=^`oRdXvr7DMqyB!l?&WMLTal*TdQm!2Y?2T z{8V+kq-B-Og;>s?=Vg@^6PG%FI@s1*K-gS}DUK!KPoEg8w1_NoIduHQizR`9lR*zW zC$xd_+D0bcmzz167&){zGJw`|>u==beYu$hEWpeQ9!G+X-$2G}1h${qe$s_QfWw6) z;r9ZTgumq;9!#B(HX(B<O9F!^!$ic`ks$KekpPSK2H4n<Ab9KuRKXos@Ldd2!GT6+ z7!R;)6qWqRw?X*8W)V?gVeL&KqQc0v8v~=Th$ysnV-yyF)oucywPQ@6<zmp`C(u;g z22Q~Z9FXA*&@2IHt^nc*2r05`O#n9sSHPNOdmTA=xx%W$xOg}nLEd5#x3~ZMk|p8q zb_WM0PY4N0H=s#?D3$~UL5B6P@u!W9yr61r1ET;qe+cM<Sg>Iz-j^FeWjSmdD*Ejy zgipcaQ0zbXHZUF7btv=QY={i<IFuA*9O}?gm^S!m6AySCiot=KfsqMR-J=a7F>YaE z<$w+#;T}FZ8N$ZG7IN~yhQnTLENotfHZV%d$^CoE<isTR@0YwhBir9cAU{j~%V$br zNnns<uw>Z4tG|&0)M12-c1rTT+#o5iQG`)@qcHDFP_t;GBxsQ}BNu3Pk6|MRub|Kd zP}Y%V6k%s$=VMe?QWu4`f1!g*lKVJ>j6_{oxR{ItC5wW+1dg2wV&P;7VoCU2uO#iL zCcwtRw1XujvVmpG-vCQX=-dqt0|OHaI30t=h!A5=oGjX)1|Rk@Cu2q)#vlJ4Gs^xm z{qXPc9;QDl_WT8JlxAeG{b$Kk&iaKx3p7d(UP>;<^Kt{X{ze|2mm3)LH)?@;6561t ztqqX%A{!(ioijmJL7@$zmJAyicm#zuu?h--`U_fu8$>NP$O&zdP?dyKZ=hvmf+Aw# za*XDtN}#1bpyd#Dpx&~%9iy?S8YpZ;!E=AMo=TDiCPs^EJtCyd9qjEL%%vkdY8M-s z7)UC5F&<^M)>HUbTrxpZU7l$TznD%5W3Nw^hI)n{V{eI$82=h3d3DVRCI5<5wQWFg z7xa&TQ3yN^hTLWogtgf~Q(i#_4*X-_0I!u{WU%~a$y5vuhX4l1bc`g=OX%PdXi6Hq z22WdmgW5IF4iC`IA3;bsu&W6QZBVjg*vJFwakHyJRud{&Zjcn(C?pT6B!xxA%s`7V zK}$r;O_jj&x}d!Y?4m}n(BWeQg#jO<W!(}Z6MYFKPcKCYeG{W4bx2|H?>W?ujJ--a z*364-G}Re<k;3C&v0sL|MwZXNVo-R1!l00qkL4s=GlLR?F1Tec&-QY&h&(HY_C{_{ zN><hfjm|J^WaSnV+Q4ABQC>t4v{2B%P#C)AM~(^9E-_aJm$&MA?4VwCVLP9qLzG*N znN^lqkbSvbyNHZ+h*t`mo`ANvmXeNGq+<iChn0p=w3m{il0n=GOCzl)cNQ5g2~Ghv zHvJUv7@H~c7ba`)I3F*A9K$A7(0(p%@O~~(DrPqVtx^H4NdYzaj7^n=m6=%~l<9TQ zIx9wfFva}kF(cQ%Z;!zwHgj1(=5paOSJ+fp6toWvM46@+T=#emBACB0ay@<wUX~7; z^I&4|`d80r30+49-Mhw&ws%d~m|0of*i_l;y?LYd_3QuYS$sBu*O@#0Z)NgflV?z2 zFkxWapbBobfEK3;f=8M*u}H{+1`I)6Zz&`20vK*VL7`1d;H4rUzYB;98ViEf7(&LF zK;wa+MRU**Ch*oEL8lAViE(>XRMnJ})KpdW>Ki0fUts+6?~2^N%Z&PbQ)lPQHq<gx zWr|TT(==?4nC<1x|K*e1ziZ$+nC1TmW)aq}46Y1&88(@K#xk@)b+DWM28(MO)dgN| zc2KwA(B3EuX`bsdYHu{)d%4jaGPQ6h<lR$H!Oge9QecDifsLxnKQ|~J*sP+eEUdl3 zQed-{rM0m3CKXj>L>0El%F<d;$dX};vX!-pDx@YuVuQ--jSd!|!FW3-P-&tr2wMIl zE3}PUidR}*NgFiQpf3p8kY*sXg<o7jQ5ZBBVPI$uNw0FOpfNc!aC&72&3u}fnt<X( zU5^RAG91*>0<B~d6%iI!7BvRX;<B@`OyUw!HRKQ!;gjT+Wlb<h>*U$PEF~_dE}^Di zDY5P{n}oQysJNb!l=xMr;O#T~9sJlP?~zwE)b_OZmlHK+W@F=F<7YNLwp}b$M~j(R zSe&mk%_FT-(l4mq*iGBq#x!JOS{*ZUMbeCrfB!@~bDWY=IaHm&aR6GQ2U>R_$xzAw z?rt+&+bAi7s9c1=l?$k~aB$AY-Jk$x*#K)TNQ(dD+aPg(VKW1xgd`|988<RYK>NI) z+GsNqGaEZ7&_o2cv2uW>Tv$LnVWG{u0z5*Hu#;v~7Bv=C76mQWH#P;255VfDBa=65 z*l>5lh7FUC+{|NVVasEE_?N${v-95?#*og=E~bz0sSpMxMgdkyrVr3D2x*2*%uEd0 z8`z9DGH|@yzyjW&2^t}1Ffe2^HdO}YW=4Vi`xzDY?`M@fapD96GlS{>4{YYFpBO|K z)EN92Rzg<%ZBYU58{5Rs#Gt)J3e4W3ZN|#atGz`VywY!rmpz#01?Dks@CW6wEn<S; z{bgbTpds8XR^WZ08>|FC)94$Vjkf4R1YC_k<M#55+FQ85>Nf^3YHzdxEtXcX++ZZQ zjbBQe)y&=t6k_^98}*by1CaJ+f<oK5M8)J83|w5nop)goAu$$XBNgzXC^Z#jB^Guz zCLsaPPBKt4o{vdEk5Lsi)@rIO3hSeSDg)5iB)ceRvL4)-6*aB6!YDCkE~C_y^71SH zp3R;8?|D{sd3oBlSIsT&wxy(Od;jm(t8I*lVn!8i>h7Ff%<MdhLR_M3Jo2JkqRd^) zVn#*ongL87X8(HzGJ#QY&Rj;xD-{)4+5cYrd%(yBHsfte^XqMCY1>jw^pfOlGHYuE z1mwAdl$nGD_!YQB6>4iu^pfNp(m?eGVowfuMXDDgbk_~&L<r>g0<F>9gFD8IOu=zv z1dcyO$l6S#II?2Y-k@!?#Q+>DTXewG1_SWoeOSymK#LrK_YWaCKwFP*gVq6-jXKgl z`8MbtVA!mst)mOc0b07y9AG6TD71~ARZ2zO*hEF#a-$AtNI}_>VWX)EC=$iw8Pqim zKr*0?8R1A|H5LRdh_qug6#y+a0L2}6<cr8ii=Sv7KRwGr;l+`Oy7r=cd?F4+#*-&w z?!U>56Z8}O7@7XnGBRn)T3gC$g31m?OIBs3<E%#!d!|5bH5T~NCD7a(WKSETqNyUI zC1c;eB39)^;4v-6S*(&ww_)>QjQSgyK`jEryqK}MGUKfIi>|Xuf~LhlXIC(FGF)fQ zWngBI2JQXX2;XJJtqodH4V`-fbqTLuXX<<ccHgRh^-N*^Co-^s_6xCq_k{6-_6xCt zX9%~j3Nq-iXhWC#vx*wC8=IRluCmw2(9Q2{ZS4iQlZip|UkOt#O9FTevl#<uh?^I> zf|=pkMnO<39K3j0id!4hJ{1>yxk1ecG|0A5Tu@MG123ox1RjYNgKSy^Pnem5Rw01L zE+K7mc0MN1*rlev>$KW9E7i?B@)`!30(`KQ%;I_+a?G-lQv0r7&x-XeVrI^C3=h%M zvQn3k(R9!BZS7)Y_|IT!mgvo|&uXL}%zWT612cGT_$9kM13LpZgCMy6hwK{!P1rL+ z)+(^_fwvGs=5#qMH?Rn9V`Jy!;^q;A6wR<DxXj|l>dfFNaQHIZ>_rQ*4Uv}OGTQCj z`RgBiIWB4TvoHz@ZDV8S;Dp$`fmIN;kPfm0*xcA$8O?s(1q-joAlcuFWIM9o`4~hP ztQi<Lh=R)Hjc9%sgUyeF{l1-zos*lFk6#2-;IayV*3f`fT|u0nZfq`Ytgei<7`b?_ zt^MBKJBr8-@$f)$3Q9OAGN?18GJx9hvOF(02!Q8qK^aB^o7+GuuRv=~H*zRif?{Sn z8#|wXw5*ak#C01%qjwA&c?1N7HgbqqT5gaO+@NT=K^D{_LUJ`|G#4^vX=ZK;YDGgw z$k@?5;=n4SCugjwtt&31B?V&Z=oxB?3u#MMBYCZ!nNNUOP?(KNd<KXmEXc+u{96?f z=Pb}Prw>hYq73%%(FnAV7l(%YMh?(+Ulu`7*mLm+3W-8}2i_iq<PT$0XwZX>Xn-fe z%>Db9fZZp(e?KF5MR@DUU+*9eV(~l)%D*r-6*90hfL4IYGPE#k;MU(F3$6<`Na}Cl z2eZH{jv20jQpjdbMg|UT*dB32R@uzU%EF<&MH*aJZ;;mC!V6|?1nuz>=LEHz*#$t2 zMrpyV+<g385WnyWZDa;*p4=!YD=4&?lZTfBTxr8{7L$mWk(r5_5+rpqnV1=giLfcb zJt!E}5E0S92lnGMJsUke8;Ca<?P>x8Yl42Qf%<j1mA1B(7RbL$pmjPdptCCY8H5=! zA*(_`{t|u(Iy?f@jI&+(?hK?712yCLK}&LEeuCEKY-VB<6xQA>03tUrF$yBu%^L(P z8MZPoGQn4dGH!;kL2YL6l3QWO7G2PuIz>}OW?^GNfjd!;Ve6y+PSl>p1#&!ene-nU zCZ@mtK;y$M|LURZ+|3xGp(BFAC@bB~!TAHUyvx`KbFsSxqxME|P|w!@Gy}*lxP?vA z$P~2Jfng&>3*Uty^#RfA-%mJbX6O>T2>#boXaxhFJ7e-;muKK+;Ac=n>|10M0c~Ff zt)v2-?g1(ZHZk+?f%eIRwjh`)f+{-D3Upy{V|Aoe=&}nJWI=-%R3wAePB1V~Vm_$s zMKT{$B}2_`-3jjVg67a5?iT{PUl?BfgZk2(M&KbTsQW?rg8|k3=8%FF$qJ@DcJ_Pw zZo_Qx@BrBZ+27&At`80;VFu88DiN?v8+eRBOO&9NfeuIkS+<#(R{&azftO7~lchPd z@sDI352zckZy(IMlPAID1{3IPJ4SnUc?Qs#F$~}u5VW0m(fq9ZyLZ{;ckcWFS||kx zU&a|Qb=Hi6%HR;YdzWRwqU)>=L4m~de;)$_;}&*#2GD*k24;wlnT-XNo%Y%~?CHJD zboVY>nuiC}NCxKrrx_R+SF!7Z?dE1+02O+m@gk7xP513<ynA=SzI|+ICx2XIeb{;u ze0CcHbnlBQgAv0fX3#2k(9Rc7w`HRQXwj>h{s#GL8#zT@f_fwj8zqDVg*G#C3NnC8 zBhV57lx-D)%8=~|py46NLSuG5MiD#Y-4%9>(jg&8J1js8^pSU2{GIeSi*eHv#)&9f zEg<2=be&zEftNv@A%$Uskp4zxo|hZMK((Pfq&D2B32kk&d_Y;d&Mo_M0~dHTE*Cer zslAz*1;PRsLK}s|1cf&8Nm+s>?KY@eZcrB5AZ-b%L<B*L@u4fsK}|2vzGd*h5=xbb zwD!D~RYp(N1Y8|zf~rGV9X&%WaUm^9<VES2)gdqFoH+10b#{3MNd{R4eFk@EiKfE^ z-EFT7T4N2_yCWz3a)X?}Mh!-7&|)9ZhI`N^M>$YgCM6Bp0w%agSe6Zv<x$tKg2ooW zJvMeWc2EJp4C~B+2JyfxOq5~^d0DmTqWM|+kj)zSx8O4s@7(!I41F6uGh}ZH(f*S% zf_f3WCKu#C4LLy}sJ}q#YCy}GKtoNS^%vNW763K=i1**k`HQZn5#v9`U0A%wfb2g7 z1|tSvX#DBJ;!h0}f5zY%Nm2Oa21W2bXt3u@Kxf2&BTvB+v<G^#u(T{2s6E3Yv{6nT zybu^qEJ6weoJ-^}&r#6b11>w1iSsL{Rf-Xr;JwU<^lHrD3Od&XJj3h+^RFe>%MEh+ z8})f!ZcqZ{QEgBjbp!j~MEK<f6M>C(pp{?3;9<FqCSd>TTUu_g6WlDUpbPc?CM7j> zP&(eItt2S4NlMKaJ~R&+Fau>t@Ps;i^@%Xfb}I=1lz^Uzb-`^~Ey-G<f@}+@jf>LS z<rVp5i=H1?p!q=`n%|8X{GllZHOHHPLkyAQ!70X+QF|jKyUT*J`&MB#8EFG!XqquJ zBA8~t^YqXS-ry+=C3Q7WM-pf5H{Z8!8M5!I_w8fEaRdkBu9Lsm(7el<1F9UE8La=m zVVcPLjX|D4lfjtbDRkbNfzjA_qZ-%CO(LL?TmeC2<Bj^D++w1?LHZhaSGSfCXjeDr z91TT7&=kM$%Z;Xxvfeh}?NU&qbOVDP=u|S$0Vi^hQ_19h?y|Len*%<Tj1jb~TR>QQ zGe4t%u=WN9fz3h;peCz4h-3k+`c{NVXn}+_$ul6gVudU>F)@Nq3FEh9*viB&B(JCi zsz~(o7`H=Ow?gp4!9Z2YMkUZu86uEl+r*8{;pG$Ps4R13=+ZGZcF^3kxVbPa1|*>? z?ZiZ_8~N=LAz7D=S4y{v-!T?)2nq|o@b<}&@|Q!<Ku3s2L|@w&atMmFoR{G=eQoG5 zD8eeiN^2Nj{F4Bmg2H&0@v4%jg{B(lcytCP2Jn6eXjyCzO?SeeAeRFtH&ByVTmUqY z0Zwk<jtXcDN(wYryNOL&7Svtg5!xUF8l*rin_#=))Jz4HK{X84T@sFq7G&evDFJSM zg4*}UZnVMfMk!dc9_~!g#*K|^pj^QtxDjg=f$Ts~iwmm*A1_#R9hU<^Ei+X2DS*}p zflEJd7%E~5Lr~fU_co+Jg*?9?A{4Qg@o3HjjUixlsV=0^i_@{7RxmR(z9D6eB7-Y( zXewcItum}{Bn1jeP~S*eMotl0zQ`+JDPK_C3mGZL>R@w7vl*v@VeM#8f0Sthw0~m^ z?%!b91p(^gfObJ_Wn^aI;pGRpkX3L4A1GZSZ-)Ryv;cfdgy@2W*U`5{fMONWr`iJD z`=!YM+FHlQ@^S;e{zfj)@*VI7Fz^mL3D6=Fem*Qa>_8<eXm^wdJ6q7*g_+gWDa)8{ zLpIqlW+a!q`%n`9@lPh>5mUXkX3#D>Mg}Ja2BsCPpBU6Zy;xBO2JH<D#v4J~c2z*7 zAuHR<P27wO+FN*_69pRj8w9RxloEKkfdf>nDhR#=HG4NIfChBrz(f5!pxIC<@Tq-r zpi_7@C_oyskaH_U*px+~4pbHeHQqssx70xsPHLb7FPzS)sc7jKsklqZ%S(7fRA_{0 zs(M8@y8rv)@62*p$I3#-)S=fS;>)v8=Y!goHH`6h%5t=va%y}-!aN(m?E>&V1lEfT zdJIMkwhUF!GTsVhCxRU~(HSG}L@<W#L@<NyM6hSn-e@cVTEh-%6-WwhFaYgL+QK2M zWn=}4W<J4<+=if;4J*)s8`Lccpk6#^Y#iE1Ah;y~R8TRSkhCqqbkTxrM-sOtuqf}? z@jD2yKY^J65muH+VTHPD0}@vH$YF)PYXcNk&|Mp#@jNS7NST2bIr9l_;<mN{H>0S# zeFJoYB`I4tctE8p3#r>USj0gC`N&~q%HY6I4^3CLDCx=(oUY7}!^#Yrt}LPH%85~X zqnU)D&?XjrQ&2UAoU#m|;kB9D2t4z`u+bJXaalsTzOb1w!ifvoLMJVKX+lPbMM+Fz z%-QblSku^b20aEZhERrnXt)I-h1&)b$ntv&P=VqEYNv;R!_gZ#9KE68=m!nQa7OKo z-V%aBn_2XY+(5HbpzT6iLED8~f*|>GGq;6}1872Eqg;@n5O}YUA4s7SXrf%-#tYJx zCq5kQ7|qQPJ#g@1KG>+VFlm7s$0p7K8MYP?)sbM6U^bN2G}O}pja%oE9N^5{OrX(i zc5cxb%-l?Z%pwAy;q78XHfLag=JSWpGSQKt78(nvrJ|EQsD{H*DsECTvjZ)-0PWCn zhL($)SoDoR`(j|hZeR#47B_L*JAgAgH3~-1>J>!Tg1QLAWO&p4`=>#}v3vi1Vs~ya zXP@}(1P?YA@e`nNX=vE7$uj6Mm@zmqcrvVjhMgU93O3T;;t3v)-{7jh#SF}1+~5Tc zPjlXv8=Q<bm<xa=Y6V!dHyG$|Fc;V;A@Fj81egWdfuv*wN!FX)`8YYihwgyRLhxqP z-pFYnD72kLSW?T-%+&*weBD8-<+zPNg$Kh%IXh^|1_k~`S5HBq%?8FM`Xm++La@<% zL{JMshxCaF?r!jCzZ5jY`5@!{M3%EGvfvqk-)xA0&x1`0fXiIwMJ$C3b_|{jAq<Nl zA-{pcc%vJ~%T3_5uOh53Hz|WQ3&<O9)MI_Q!QY5+Lnt`h?Rj5r&;XSvngTC3*b8iQ zX4KwbWVBI2@Z|<CBiQ*P!A2W-1z&>p9)&S#Z`9Nf6xzUIxxra*ld_c?sC1SP+Q<f) z#}W|S$N?G(*(d^9%FSlEQO`|KXgdQxpOl8A6L_VAGH4zPUg?8+T%aYth;wS-+pECi zU*MHUkPa}GeTj^S{a2vyuSj*C58i@xkOQ>K8@2^2(a|{+|CYr7$ObJLa1Lm0hHTMN z6-8{(GBF{zi;-~^cn_Dd{XEd#w14$XkUfDq@KxV@D7yl6!C{YeSD+rF_C_I4;#E`E z1cfcP;AR#@4J}Y%%^|c=TL;vb5+{ADAauS1=Z?WO_L`Zx__q!I$pO!5FoVv{Vv1nB z$RN+4%%BJNA$<3pCTQn{KG=t#-FGVR-FLc1pf$Uo-984;-FF-1K>aKp!Obkvil8;@ zpk3{twT_z5jd&`MEDD+9#F0{<W2A`0fNwLN%Ay6?){ywdvmuYEeaDVJx4|(A+LZ^| z8wc9w3GuTQgC6`m2e_ZXI}YJ~-l(8$1oyQjhOa?Kn)3*5Vv*JZMKGt(Mjc&HtdhO^ zklEN=8K0+NI}j&;T6TnYAu{EHnsN-t@vO#R2s*0>T$aH7tOJT?BX~Tk!+mT3_c7@7 z3K39ZmQzpz`4uImH>#+DysZO`YtYm;<j8VkBhdM8NT*l9O9eJ|VQ4#zxaj7C^t)9F z#yI17cX!k%XJCP*^M}xMZp4rdDOoqdLjau8A*02(QaWhZ7#ae~kPz6)BCV*T5898t zfm3KBXj+qDBZ=u9RNo^405pGuFZw0+?_U880NH)}aBo9pJb&WPX;`9X$^}*IO#kmQ zFfb~D*YU73z~{*n7cIz6Ie#9ssr{EeO9E(|1$1W9WSBb8JejGnIcO)~f`!*v5_W<T z6m*`9^&-kV8EE1QI#0%S{yeLsyZa7^k+69(=$b#wd9wEN=V$HP$0~W^mpn_t&Jzqw z3_kxqFvYR{U{GN&V}PCFYRvi)yiIPS7AUns=9*POdnb%Gs0wTZtvLm4BLK}ZtAf(0 zl(YgUmh=U;3bRPcX@Li8IYFzI88#|t34#thMNXoECZGea^%?aT)!9Ka9PHxeV&dSM zOBB9wj2*UZ%!gUdX=$37sR?UsszscTFf$i(E)zGqWQuu^3V*aip}NQ+$R;v5W@b*v z@yU=~WF^5&6aE~Ea0-$TX69i|Vddt~im>+xtn#aNiu$`3vad|l7P6~M4H_3rDXiBS z#2Ji1GgPqMp&Mi&1O1Ai>K;7MZ=w$xpk>$y+ARv*mA6q=5p)g^XqmaT;09yM4f;ah z?Y6k~>Va}9uJ%6W9#cm)31%Ekdd%&oaXYa#+ClA2W(M%yKh}%jI|DR8^ElwLNfoyH zPX-j*kllZvHCvFY06?`5WbGDc9z#&r(sF~M;8s2nF%}tBQ2ojYT3!R4t%8(6@V(yP zu?N^jVR)2c?gLa_v>@9Y5{<H;Xfy_$f(?mA#AZNH_43;d5^*Yau!uwU6X--ue`sl= z2=f!tjz(d@mm5@#HV6xB1f7EbO2ME_jl!VOUqQ<avVvRqSR@odyFWoi3}|u&hp#Yv z1R5;B^c8e>Biu)<;EDvt7Du>`SZqPro&nikk__6Q6CS{Er2+GoJSeW9CzOL)nUE98 zL7vhD9mx&KmV&~d?H(IcAh9J6^O?8=e2f!4zM$0vh6gb{#}BC^)Ct8JxQf7xHn{(; zGYB#0FxW8^K;z9C=077=P#<Qa2G7e4GN7!d0_wX%P7u`<e7QkaV52#x2LnAYRF^?e zXtSWO7}$^If?N5d)L4wHA<1)-4CoYG&>bH#pjlS%G2STU5xl33+6!lAQ-;eB5h5-~ z9d9j31w^;Io^Tk!vMiU_3;|d#I~_f#Gq6DOFX%i^F$N6=9rzg(s5uzYPDabYpcXP{ zkbaY(uo$SYRutUM$08~sqpGO`38sx&+PKpNXy_MuRR=sDgL=%E2}2rGZ-Te=!V`WC zsQyGt_l)OH{5C`LA&V_&&AI*mO-w;7>lkDhR2Xy^br?3WGcagx;sh<<&}MzPNdmM9 zR0)*$A>Nb~e7TuT7PL5x6}<Fp1FJstxW5gu;HBoErKfy?FE@+wsdH#=5dkaOs0W>4 z`~N`>G{eTSffal!5UapOHhIXcK=MC#*?xQf3p~ZfDzKS_Ra97;6?82RJDZ5G_AWct z4<;bF&B7oqXz#liNCnGgSr7%+x>*Ip1!+?Ssbkr!2BJ2xup(dQqXNFmN0kkHmyfU| zg9A4UE1R&0sF<vZsv2Z24oos`WnmW<gYMA)pSZSB9kj=mQ$iawC<5sqinBxJ<e>Yp z)!|ceu)3957*e;|a|_$c2Z$J%Lbhac%9_e~i(2ca8$<VHYw+jRf;MKWF^a1i##mMQ z2|%`H>u4kxRt5;`hAsJ*#W+n-!cyt4HsjNOxk?h|;I&WSJ*2D`86+5FP<N5a>Td*{ zzCq+JQc&H2Whbff!Ub7acat&}LeC1KlKr4*6)g52S+M9jR{MAEU|?cE*e#FhcLjaW ztvbZ+poOmg!eYGuWN{RB7r49cU|@#2;UPHu6;NHFsJ~GOG`mCGK3>quD$u47EY6St zO?2(wkKGxdts@Lf4B&m5tQWy+0K5=8H6gRGlDwdS5#-I9pov(}_LxnO&6=Qt@j-L3 z8-&4AvBYfM1jQK6?VAf0UB|hF6V%XVVgR2h06ud=3BFzdv?m|j5JWoL2l+fDBF+>5 zpQeQEJORjQO7I=|L6Gx&kWN#=d7c2|KqXmq(4Kr*b!`S_Xjp^J0F-4=Wbi|THe?1A z6xvApVnH*YprGEu$i*!s3o89Z1UJJbL4}1jf+s<V331RqE>H@=73x#>?PFBjw-0x~ zgOdt;J-8cmjWlR&I^K2puocpq+1SC$@;9&wZ3La91YL6rIw4zK(Ns~I5p+TweBrPi zXsbmfc-=5)(Jkx4!;5}hhb$Hbja5MAtByj)u`8kN5!6v^$b1!+QS6OM=yQ9>W7wNH zgtb6}s2f1jRiM7BCBsH)j9@F8Dv~%mkN^sUZ0Kkzc<7FZW5<|F7yXWdkD-FX3UtQa zOZG4Zb_PiXc~E-e(cdBpoy1iDk8Pl>ZC8Y@Z3i9O4&G70BPb~)4@!EhLZF4z8%23Q zi}nRTJ9A;{z?mTfSdguQptCpC(IPZLQpq#cLe0}Ei&sd+L`GCwTooyH8O3Eq^!X&L z;siLw*mz`r9fw6V19<G0DTDPYgC2tegExHM$OC!Q-B^E%4b(?IU>`Xm&lovEXN+7R zL+jwX&>SH%Z=eYZ@cD9}2_s`0(6~A{-pwsQmGnjr%vm=V(9pY$v7pdKeREI%z%D#7 zCp`a#5kw@W2RDo$6el%toJ0xc-+qXM!o(o*uO58Py)=U&Ln*^1$W2h<#>Sf%K|2uz z^tW(>gLsRS3<D#t_C_htN(4xeB`x%FgR}tXGB40obfAmCK&6(jG-!#glnglKa0qT@ z5|;#(Ukn?$L02R2S#Dqu+{i0zX}OV627K#^fuXUmqA=tL574kV<cJCrb2D>gW@Tn! zV`g<_c9AEHe2){%B=~GK)%69;4HF8TWz|JBuWGo@0Hr3->7NE>G8&qy!d*gX9-iK+ zQlQd<NfwlxK;s66|LU2tSPB`O7<?JlF>JC2HB{X>UV^VE+GGxDyUKu?tb(jBHwnsc zX>WEA6z2p@)Ic{&GH&n#CogB-mm9=E9Uaiwan1r8tw1XXy^M@DDhj;Ztf6Sdp}oZz zvJ1~xe~Si~wb7qZd!v}RpwI?;%Z(bwf<jx_1ZB*v-NEyc+6IC`8}uwU*b8pb&;_k6 z+~6*>!3uOv@n!}EMQ_LuF(@SL*vvskpMbWJ%Q7m%_v8wSh+_>mHB*o<C_9>ir#H<^ z1^E~a!>lscrFliTdDxiP_*8YcS<VOeRit|R@Wp`xR?Pqwuw24?V#<a#wwey7x%d=S zj6B>KSyp9xn6vP)bF*`CvQ`_2C|N6rn(9|ZMR<7T{td_tLkoQgCv_QhWA~kkvfAph zjPmmBpu5LG_X4m7G3YZGgI1cr)+-_13;<bcD30xB0MLp<P|pao3WHy8Gn=L%cmRt> zXoHa@rTZm}&6QEs9pbwzpm9EEVHV=<FMJmUFuvOXN_(L3^$^yJ45|#83^C9e3w6#! z3!J#H&Y5UK=S()LX<C9-)NEo=1T9G2z#+6j!;)bmInyPeA$44*D<&;icpd*#3F8+~ z8yd3q78I9e4DpE7Tu5;V8IQyom!Kg@P+V>_FazJ!g%q0`O-w-p=alV#feerk9i?iJ z<~s6nQv9(BYQlr&!v23?g2XFjb79~c%OG=MnxM*-LkQB#Co^(EEA?>Bg>me$v)|Ku zn@|*keF#dska$i4=h+yn@k~UX-DqG8j^~Y_TRk@L2yFx}5T<aGld&oBnReIt^F+t) zbI{p-;Q0~Iod#6Nv*1%uH*g4T1l@x}W}Y=w#u=xx&z~m{pKrl_g2W}oc^0x+Z8Mvu z322oYC_0UdDbKUw#^%cG>cr>SzT3Tf9Bhe=Ri<S-c6fNuB+qJr&(`1&+Nc4(vWA=j z8RB=G@ypSByLXSh9sW3GS_AeWsNE0R*S3Q_h=GqmlmT?-FyuZVG1x6N;-Fnss`?w` zAh*<jZVzGyowNr!hKOOKxEPN6Y9Nke7DU-ug>r3;aqpepz4o@kNPDZ0_f>($emp#W zcB9>4!wkBgka-idPp`=k4y_?kPwa)%kf2tV7^G3p13R%7R6*i7v3C=%vI=;e7o;I% z4m}4AI%bS|YA++`c2!YhEXVFa4)0|=1Ul!2z!AR8(x78-K<9(rgx~9=3YuRP0JS-V zxnFJq9j>!ck^AKqMg{>EUhNGk#v2(yn^cS#H>iQG(AdCav{4weL&s>7upp={Dy+h( zy-83Q#1v%U)CSFsfG+psg6)X|Z5!Ok1-_t=+0<Cj7!*Z9q9RP}e2m(Rg2JFRw$Q_5 z^%#`}jYXB!E7#3kr=tP7ZfN}+l<S7<&CQvXEn=GK78>yH<M(g>J_UrjGcEgPE@$G9 z;BotwM~sV++&>r4K?qEscmv-n2|5q2gJBbB<?tpckS9R{GJH%7+M8HGZE6kXms@za zHTZb7HwYPT<Y9ifLBNP{1LO!}IRWrSGEqkDO`N<cpcQ5!0-%G@HuH&c^J#Apg4|xK z1KVxF3fdyaEx1up!_sntsL%#=ONNaapflXWEJ0iEIYEar!!}%rgHL2J2A$9%s0`jN zr=+fCE+S@ZWM(R8qNc<q>ZPvhZDcE~q^*5kU;n(7o{WNzj{128=n;!dr-SXhbou2r z9EylI^xM+QT$In-x&btv134xeG*<^%ukFL`2Hx9AXb&tesB4L~hg1=C3O)QLCRN7X zf5p)KoQD^I@-nFH7{PiJI!_O~YXfzb9=<kX1HSbro8%Orv-IE-p+U1}pwp5_o}dQ} zXCNl%@lDP<gM3p9ou0=tH-B@{pXac-c~F}JRDSuehcR$7$TC<lY!J}jA_?w*f_A!t z?n^@2Gz%J!1f~8>%se8X(A_90ASkpE#6}Hg&=wK!zDekTTx!TWkGUjNJYy`?Jgu^M z1yxLCM76}BQNSoJEe0N(5aa+2P9WmrDuX<OA%hJAZ2SoxALgttH>l`u(S^F#7Tm4} zt)D=wnX!hiAOUSZgRY+dUz^DTS}UXiz6gaAR-KqbSCD|#RBY5$0bLfU0UmvTj49w= zHw2MK8kP|zF48n4RM3WNGzrEalP)xzAcHu6t|MX-5uZt9=Mm7k%dp+}|Ja((pNB>d z=oDr|oWRzy42C>{x`+i|9$9?;yez@+Wjt{nv3dnm?l6MK!TnetGRQG>F>I0p?b+Zq z-pI-F5<F(Jk%a{`ExSb+oD8?Ha>#+kZCF9$Hu9hpxrJK<yhWeMXd|aE=#VMU4R2g5 z+Awiuqs`KspvgJ`$Owi4qxMDtPVf?u4eWxOc!VWDbCcXc8^kObHp&SL3T+gX1|>>k zK}AtTQ2ipPC<+>X5CxUC=HTHR&=>}M>w27-1izi8nt>o_9LGgYmG$A{f2E)PB|SDU zlT*`B0}bI!@KFOD@5SH*J%iVT!Jc6&!zM#e^#aOm0*0X4P(YMZdy_0^^afnhShK#| zps5c!`AV8adxN^dHNh=vkRUMSHe}`1-e?M%o(A7(yOBrm<pxuu4Lsn3C^wiHZ4?)L z3BJ#Bv!b{Nhc@gmB^~`OijY76U3LpPr*H$4<wg-5L7^=Itonwa$?J{cih@F$RKQCb z88)hcPQlW)++ZlUQBemJD8hoEEulu@V&Z~|u(Q8y8I46j%g5P`!3Vd)2faX{1l|NK zYz!OiVRz!pG)`aUEXVwB6|<axv@sv&0ajCU2}w8jn2k|Fp^KQTisT9>*}c<b1!N6` z*qIr{nT!{Q>rV1;|F`S2mAZhrgi=*waEXp62V$URf{&~i%Vamk$Mft|1T2NrL3tIl z7s!V_h=C1sTaYlc&8LVsw806~7Im;)gUFBUL7;}`k9E*YN$s_DilC$hDH%cM=Yy&( zCGaLA64%y2y+T|eDA0SmZ?C-_55b%XTJGZEfwG>GiNO&%&ZWm-%8&=`GYc`l+@t~8 zP9+W6<Y)%Ug&W0$!S_$_F=}s+hvY;>qm7{T5}@YnCRWJq5I(^zY}^_Kpz?nMr_d&L zV-s*aCj^>OX6N7pg^sk~CNA*e2?Il6Hqhz+M#Nr*2widL!Yob1rHH1G#UzZTvF^m& zjL7&7GKj#!0KR*H^&*26gCm1KLn6Z>#O({A@Y@%BdBC?X#DQ{X64LDp8v>wrFF5gn zkB^Rm-o4-{8N~s=dm$NAK$!{(ZP7L~w{`@Lp+pI8;}z1dv32nU@g#+|g6?0igKP#7 z@rB;N02<QY5C^@1A(TotFhIkUnZQL1JfvO25Cs{dlE-lygA`e}F|f{cci-`ICZ0PP zWI<&DBt3_L=V6+#q~{GtvoMhTPgqknXx|ewWrJp4Hb7Fgu?;AKKq(tK^@25JZ$zGW zAu)|(w1kLD?!K^w5U5oMp0^@4<umy}n?tZ>BLgfCTxGCg@L`Bz$YEH6$O8%RJP-lN z1DQN8H`wcM@c>s{j2m*1b3-&VH~2zwLn<^kgh-|$azh?+ZtwvGZz?!9*n9X#fOyc{ z;0#Ls3>!rvpt->xB$o-z4GGlB4H%(M<&04bnH%%6%7#oYYKcoyH;?>AnK}D86@P9) z<d-Dy9CZ$s{KB{avaT9yE&(m7hUOB`?kdovBpWyA`fPCN51p3Ann%be{Xs*h#1#D} zK;x%G7W<&_Q&@U`2)=K}harw(0V2Hz!P7hR#+_(TnIDgw%6*}!+!~U~K|B2*_w9ru zQh5SWD)$7Z@^F+JcfcjS7ibEN0qxG6XlNP_qEZ@1yK@KB_=l}Tgr90dVsVdj>yGOA z^E}8G?~qs23n3+2*3;+zSfJj$11aaB=b3@pE%{i}Eu!6GWVAs{U?U%+_C|RVBW#Tq z15nEZQp7`M>Nr7X>oaVmQqqMTaYj_?g`96jT>6EdZw5`n>`CA>3~IM5L8M_sy9Jtt zakpEbX*h~edxMV=^x7yKO&3pa5gaAB6?}0NXshZ5Xj$zAYQ~_aV`{ftu%u&UX4ry6 zF)Acw+3Ox2=>;OxP0eh2;8V<hAH+z}pt2Y=mIN9L=LYp>KvzG5Zd(Bzs0CfU7X-Pa z+Zxim0v!bgxvP68xbX_UzX*JPpDaTHWM#w#5y-j-$OS+WphLeQi{)emUT$RKFfsxy zXa$|+CL#d70e+(>=mtM_9!tv&B7&P)*!Wq&6aW06D-Jm=H!uorVrAz54^SHm8jBi> zE331EI*gE=fue%Sf+nCje|Ev3^DBDyI9M`?nW{=ld+Ms5GZK^LVPkzLu*2Q?-&000 zQxSeIhrmBs%;kpC0$hK38JHND7#Ntjz;|qmGZZmw5(149@ESwTmu5HK!~hzc<rXsr zk3Mf?<uo$dA|fCJ8YvI~jTA`eZxFf$8j2Paez}oF#K>rq5O^?J2s8pM2+8|wqDDp= zd4*qY;4s?6%LnR_^Kx@)gRki_Fcda5HZ>LnV^L*LkP9jciW{3MGX>mTb2kVQ@M~C- z7Tvvj_wJ(K^FU$GlJx#PWPAg3*DmM|FnQ1z8+d#}1mbddxNl)(kYMK3-oOra{{~hg z#tjOfNez&bL2<#tVPv#PRu1GSS$0nCO>(jzrX0xivI3wJB{za%2(;u06hj+$K=HGI z-;!Y?G-}`;5LFfhA9@Quwipp1%7QF@=L-tZBIG>F(?wBHiymV}2+LCj2B!ai7#J8k z*&`UF8RQw<!8Z$t^Ss=^30hJj45|hdAh!zhLazS=xsDgKp+iO%G{eRUx|x@O*V1x> zu;2!1%MIc}8~7{@44F|^#DfMF5NqO%1(jJqYu>?!!ik7#NwSHv7)ogx>VXbSl?=Ok zmu(g^bpJS)7<~UYugH({tPdHO{(oa&U~Fc+j@P}6+FPjVUM{eEjWxCPgrS?`rL+t| zo8z@4V?g_;VD3fQ@6IdoD}W^d9=>ki^9L0f7&n0KbK{2H1PeMxeIsbNcq0odcojV} zXfPWTLZFdqP*^Nk^aFH5GR)tg^P$-pVCKMYl*MTd7swot8<iLRvIe{7Ap-;B6810# zK?YF<1<)DHTX><(dNF;_J;)3jd09Z$dUAk<iZIvGfwqvzqjW@MMYY61r!M|L>0|s@ z1-e3wf$9Hk1_s7?tXC<qPZcp74qmXQCC+jFJZm}BKFAR7FKy7)I0nZ5&;Qjk8nQlQ z5MuzfbV2LIMD@1_fW5du7&HJU1ZFdC5C`3ZvXMg=bm8M>UJh0c?JbPpfwc{c;PYrf zi^n7wwKwvD?nYs;+`u8YNkABM&lkf+0b$4`8*HEpMH#`DXEA|B%9KH6Im!T<q>HS& z>|MxeCeSi5qlAA?C-|sJp)3yruYVW+SI?LLcDEF0{R;RJd2!B{o7g}*$>CmL+#n5d zHt4c)(8Z>bMjIGGe&Pi?e4`ACb2kczg7PTnN}-Jmp#4{Df*ToyK+!6M-LcH3#-ifR zvg$tP6_JMWOwa#&GRa$23Ur|me5j6X^7-?iauGb=#Hi1n1Ww;l(Dcm+zP^T081247 z(8}<jyLY)j*XwOM54{si5quv9^1UwTckzKD7Ibgzb0*L+q09{Y@YU)3prI=P{f&a4 z)#?186_Sh$pmSZp2URLFikZXC1y>KcdzaCAN2vQ<A!R4lhra~5qkTJAPW_HB5!K@a z`GW;Ke%%Y*{|H(QtpQ#Q&B<+Syit-FRG%<zP}1KZ3cfK$P~atKfJ_;De<Ec6rKz$o zY%JAOP+1Usnmp_tMerSsUm%w$%A9B6(*<3oSPHqe@n<IZMn(5&=r<~Y%I4eupEF*B zj(y5PcC>610{K~3f1?P<&qAQf5CuUcE@XufGm@88A;+b}Kz+?N%iVp)j|FHRXZpYI zUp*t}d?$7WSq2vd$Y?zqC*+Rg4U+mBc|lhK%YkQs*^D-d3V=rE!RIuKg3e@Tv}D-G zD=8?nK^9yEaDbd*ZY-`Ws%*+E#|SxW$QE=7w+Lv^U0qGxsqc30%=4AZJj^oOdVDPB zWliQ9igNI<YVOz}F8)gqbh((lf~Y=A_3!4%UhQm5plTN!H*Z)UG6*n;Ge|QqZjjL5 zz<zBbhtNw<#g6YrNa#lVpu5JrY-}@cJUe}T2RFyvU7+SSlSs9^{NF<6PmJ&XaZ57s z{oDZFa1YLlpf&xqQ2VlA_JOw2bMS(#1Rec+kPa7G!kmwKuO-;|=$BhUoeyarLfk%> z@8JZO8%!bWK@6-6oZ$M5OCL6q%E6)yy1W@uFS2of>qYRv!;s^EnVA0FzH7T+(e<;e zBA_i83``8t3=E7hY+Jx(5CdpeCFnq4>G_MU8=pVV`e(;aA4pvUPDh|MRICg<U^{tH z>;&~4!F4ekH<F#OH~?D<4*IjKBGAwVx99)$LhlphVvuKG1l_j909v&!@Dg<3G!KXg z+9}EcI)4pRRKUzTe_jlf3|Sxk+~3#Q+6PH@3=B*mY$q8&?gQNjhT^^r97f>oEy#%* zz_+hM0tLE8Bna$4M)kD9>mFxWMgIL_<a+W1dPZ<LxLo66U;sG)rvChSM!&Se>+Y-% z{|SQ^h(P0n^&vP;K=z}=3FsPR_>E*J_M0k0E!Vydij+SGA4Bc+0^7?Dvln!G<9SBK z>(^Ny{#o&afssLzfq^L(e6}2eusP@iZb5TXc0px9c1=en=6|;<EAKfn85;kcbC$_D z{%#!O=f8<2pt~p-<QW(kx3NBC;AW6xVBEk1n!DJ-25F%3GHP#R0|huMD8Ply1&v{5 z%BP%9NjaawWa#&|ky+92t{>y$ztw*5aKFwT#K6lS2zD#-8ONZV^{07+t{(*xOBO7= zj(l)2C;>vkErs<WxO76fiB(1)v}YJ)&o{Vk0#Cr9-VAFBN!=JX1!pW+bRFAvZP1!m zP&suS9DX9`?uI2Zu&coYIPD_49hQipdzirY$jX80R`Av(@J+Jv`WqEM^$gOUb=>ZU zS&88Vh|L%`9>@JQ1Q)rG@PmXuravIlWJm`}dx0kW?Cp?!0$Iofs>dN_LE?fUzd)_U z@CzSgnID!IfjfeU0aR(Fur6X?V*tBB4AigX1$E3};VH%|D6~mNRu0_F76xCIqAY9- z>Sh}op(hI#P%*K_55py_BCV}`zv8gC1e`~L{{3YFr44b04#+scMh+p^4hlA7(9IdV zpu0jPK$&NwIPc31OyHA4SsArABGqz-+}{g>cDnLy5Ea-Ua$qB~*v}0t2N*Upvp{aI zWQ4Q8hrF_igBH7h`hy&Tn*@b~!83!rJc5vJA?VT_anRjVZ0v06redJe43wGGl?8*2 zUKipy&2Hi~!%~)!iIM5L5D)9aKOfwf!+y!<ID~Vb=h9_lVPqC?`?CrZ$BYa?|6YOb z@s(#tgZOO|BO_?DFDRU)I9`GdLWlNUL8phw3xGW*F97P^Y~&Moxk(&6G9WI*sSVm* zxlvpmd}`$eKEVx~mJAz(g#?8*h*)l9loEv8IALH28VNB2ovjS&a*Klwrv<qmv}_AD z76R*aD=|9<FEv*c1P_L=B*a0w-8Q~|tn(~9Io5EiifAx58$t#|z-L23*1)=f_dDt{ zctJ-wbzo;kV?E;>e7370Yz-RtKvE6Cjlyh}mY~J2SkHJxIp!SH$%L&+gO8%2taL>_ z<~#}1hpa|E>KJ*ED|30gv$L)V_>5h~AB%pzM?2>jv>pa>e#BAe`4O<Q7EpJe<2^rO z6MXmiW<L1&5s-UZuy4r+`w)HSIp(f&H;~tA32wB%x#)Kg+NN`)xC>(dowQ&JI-3c+ zgTx9JcZT5ezPG4DJDiYRfI7l2H|Pj#Gz0C^5q`N5bWSDcGOLYJ+Lo3Z%mg<J%c(<8 z`rfDnURIzES_&(r1nRee7L7sL)aGVrr+j0~YLRfdw>w6EUY(fOMw?aqc^@O@5pjQ& zK?r<OOe%COE$E~e@Xg^`tS>i+>u*tjh7n|s2I$NfYzM{&3WHY8ZqOIp$|tVC0y{7U za;Wh}1yI=|3|{sF3Mce4DzF3);q;*m3mN!UK}|x51#RisZzqg|!veY=k7*fu5Cb## zUISy$i7H&6bwr?CFAiFh0nYU%`WslTZA3cfTmW*$_eMF;01YEE_?+|2T;faypm|aO zp^b*1RqqCd;07@0gdET+9#E+TI#>m99y~_I2dOt*u;_XWv!a}ZeJ<pTZR7&rE^=yc zUa;so+pHZwA0u`gAr}FEI?+-A>jKchBrFU<|35G_gU>92oIw%Du!#fYXHY311S+_} zr^x7n{fu-51+U;s(5VX>#X-G$W=7EX3+Nmf4k0EPRq);vUZIUzpmW*~{zi{^*wh!& z2^8kaLJJmMw`0a}vpoC=3TMczX}{gjj-i0vFt1_<Jx~U8{0b9;3j+i5I@X5_;tZM$ zurtKfI9_fN1jVT=s3Q$oH7+6i5_H-h=m2ccayMS1joP4AmaLkf&?XK(en_hT5`#!9 zoj|wAv$5mI*RJVIF8>~%J<BNjcTbj+nSvrSDAu%u_#h{vGnz&_IH?;#mqh8Sxj95Z zV@g#<;ZHUAM08Ny3O+xEc?C-$gF1sHg9}3sB)@{rH#B2?xk1DTezKu1>&p%HMvNO= z!3_uv!Iv8}z?U+DPcyWFpJwO`Kh4mMQG25XsAaAOx{-0SGK(&Fw+6;>hM)s^H?Uc5 z&=uUwCn*Kq|Ew&uK@oIwIV2B*k~PXQQ(HzwP!d;Gf}SD|pCN+BI3sL-qAVl05=eJ; z$buhVs4L9F7{)B;ye!?>ITL=4g{%NP6)*<#2<yrU$S{J=7P7R2pIN9cC;N-h&D~>? zjg4;D5{xv#cwvdWoW20)m_i1~ojbdreGDnkt~(x3q7VjceUR4QAbt&W;WH=S%Z;qU zFG1sY;2{RKFEc=mFP04~dVCw053p=x<^0LFfeqaLVr2sz?!mZ`nGJeHA}44^rvRwe z1DaJ5HfFYCG&NDvW(1vYz$^$o-#X~7b@AO^Tf1$C?=~)2c%9Ep+1gr#srqj#(@o9o zWjAl`-0}Mx<34$lo^BHbP<jBjrx`!6UStqp5MeN9*u)9Ss%)U?80a-{0xvi48Eu4J z|F%g`2(s*%6SN$Rj~{eP5xB=-0-irIRbuC3WQTQibX8oGB;p*zB$>{G&Ov78a#T~| zcxEG}$5#vLS22V8>!8tZUIq~cS<s!<;4l*dg_)fG1}T&<lZPD5a*&iT18@9?-2@2= zD`*!6TX2CpF`ek)1?fXEZ$}HWf8C59SPH@8Ri?;c25D_GLc&ZEIySITPz*Fqi$BDm zE(<!36lg-Ao&j>G{kDS+C7`4?P}s#WY@%}5ZR7+sj|Bw5LnWvw4z@}YOQKVUtYc(D z4@XGn2|ewxFfcIw0-s?g4oZ6hptQ#eN_)@&K!KMVM2+BMfSXtu!8iPD6ae+EM8(7* z<tU^l$7~F(_h3norT0$nUVGbo<NyVovFG9OOCLE*L1R3s|35Izg6<Q}g_MXJwK-mH zk_KgAAyCK81bioyfY8eg44|1aeIfADK+xq&Vn(2WO3;8kXv45RsH<UM2|j~xD=&+x zHe@LRhu}sY&=n;cg|r2QwsJ6tiOZuNm<w8bs}8zx-NYP}lg&-k)gU(?gH~69u&4-V zZ?!4tbV^louLH|{9h@{%;v~(z4I~6_T6k{l4{#Jx^7e9+leUVs7Z<VxZ5m#7I;FiR zer0xJz|>Bic&EwCZYJ>}3$i<ynG513*jksC7RTu6WY{eWGOc8J02*%qg@YgKMeyFs zd{{W}yxb%UiWm{lY@vz%2E}U|1q5N?AP5f!38Rgm%dsVmK&Rks)K?S~0&ScY03Um& zDYOL~7NB+vJSar81%<Y7Fi1#(E?IyaQUuyCffN#Epx&4$;udIeF>yI2<bW{rTGrxa zWv7^6Bd5#5r=}^yaZuBKL5r)gy>gP4j<&nGq@X(}Al#Zm>eB*iVpB~LEHuoGEaY@` zrLCJ?vzVDve5*6#OyaZ*y%pN+HJq6*gZEE^!U2*V%oqw`;ee7J%!x=3piRf1^Z?#; zjF}=f@ql(7TQX21O@Mab5|b=uKvo?vl9Vz)3lo?aKw$z&8)gg@urNVM8|Fl$4N#aU zf*J`1mK*d1H<(#&5D?m6Xt_aC5S&|#z+3D&gy3OAaUubS3=!#M;U4f6QH&%c6==Bp zt7n?U`jtVS!HfZ(XK<tyW9TX~ti=Z?Xaw{HA*Yyb&=lMT$}*7a89{sRd8m+5pp^_U zDTNPI_mGlK{$B5e-vg}rub#<|r35uh2&EMRqYVNApo={=Ac_)Ln1IgCge4KsEzlc4 zNyO9)Jp4pi5`hH?5lMsz93(_1kbmCL0D<J4S?u!Q@SsL{VrYp}!$3Aga|mwY0qu&W zLMmZ~)TqRyl39I_P0=KjC#<PEcY1h0+MYBiQw+gniW$62F);;KJ3{dAp)A3`LWhV1 zvlujz?O;oMnZnWy+SvjL8_*bYGkXvNI|CnhE{h+sPKQ;5ft^KrqX47!Mpn=|9nht~ zpz}yU!>-1riqNJR%f-7F|2BF+8e=T~elxNBdkkrUf#*X+{(oTl#rlvzmO+I<3pyex z2pTO`)!)E$ZG$vq9$3<7qZ+8&D##`%w1FGcKQjj1-UaD?n}QepD5<NNf^Sz<7F1@1 z>}3|olsB1WB*!Ys$|ArbBcaX5(c61IlZhWR6~(;l@1a@2-E53(jHf{}!Op4yOuD-m zMgP6d0nbo@?y(2^oAn_BKSMObCeWw}WXhU><>dxuqfNY^)e@}68+mwMZeTZJ+#sO8 zf$JKmg97SjvlwmS<N~d^;$-I3-t52$T7<>L2@>F9010sMaB73s5`b1(DT*pXcIpZ$ zn;M(4Fx6j7NVppi!1C|$;~5M8STi48I0HP+F7p2a<4xA142lfN44Y&?E84`3HwtpT z1P@7X;56RI!1i(jx6uX`ebB-%R!}2JNq>U^cp)1v=*l9aO}q*qH-HwZZ4fis?7$0h zmjW+HOabgJ1r|>2jgZ9#!luTi%BC>4fltx_4WoniZh;$sf+Cr2jD3~8y&Qbn5;80T zEUcoeaz?XE<e8W4I=pDn;az_(2dFx;FfuWoW@KYz>kgj9WCxCO$lYQQ43Z3H4CT-` z7v_4oL0*5O5zosF%AjVg9?12OAv(k{D&WCrP(chjKxLDZEO?PP=r%7!@QPa=p-sx_ zpaVr1HYy7X3T@(*0G}=^FSt=k-O_S{o)D;#Hxk^S0ZKrSF%KiqNV~Zp%KcerE6SLV zPFclzr&bcu;m2B%EZn>-h?7+rP2*jiwT+E+9bMyD*8C1p5;Yf4v0_;RKLQ!F?u?ZU zc5w+Lzd_Duyv`uOU<5kn4}7YwFvrUc3i=zhV290u!^c>EqX{TmAf1-DK|yd6FX;SS z%MCI@8zogNEjMThZZHD-UKO-O91@YBu{u#>L1jVE?cz$H>*DMgaUJ*Ur>f&6EvsxU z#B%;TFRQeexYT(M1*FrS#o_+dlEi-AqJRLipfK_kExe%P*`W8LLFOZ1V_4uj+#rie z(c&Gn-5C_`8^Mzh{DPo?8y+FZh%97e9x+~x5}%5uirC|gvG-pwt_T9{KnL~5AaQXN zd{(6*w5=%&>V}baR;an6sUo&;1UUg~n8ECa<Q2%ce<D&|k<*6{_Ct<XMhh*_5zCO! z0uA<q@`xPx=p-H?=vY5!>nbdVs0(hyHtLTYiqLUxq&?MG!_)(^BgGSO;2o|2Mmzit z5!P23Bp9?9Y!P9-K~^8Sl@)Yy!bTnR6fX-;@oGXFB^5!l7x42gpeJ6yQ#qzLu*8Zk zh9|H_5rz*ya}bdDn#Ul?pva)fP=^#_vie&z!B^vKP}Sd}2xc*E(9+)^eQk>}_{iT4 z;zk>k1vWAWzudr}4`Qh^YH#2(+9D5@1($uG^FGv-1%<Y;$;c`ws)EjvX4oi;DC;(= zY6=Q%mX?#3f}Ea)vyg+`dBX<1=mu+KPK;^@4{zXs+-QTNAY;r1-(a&Aa%&CrY*#i} z1_=fQ1`Uw^;iZ?1{uT|euQ#ZGCt(Cwv>7*Og2vXiD1m*rK}i5q%Wshb^S}qXD@j4F zq)`)e;Nsxs6BCz~kyqdXFCs@S^JHKtV55qLpwMP1Svg6t|8XV*bnjzH1f`J;5fM<& zV~>6mpM&BabY8_K=v<2;=vGQln_;6kXce6jc(OrS7<OdfM$iNc=)6E__ymiv;3h66 z&@}x90iliZir~R6(0mDKVJ!BNO%-&Q*?iD!iV|ct#adR0`7S5umK^!JjEeK2vnM!e zAkbV1GlTN~4@{8z9b_25XYq0{FlcWS2bFNJvv|ch1cf%i##g~E!c~WW9HhKp;dOh= z8iSDqbnT<$j$glmZM_AA&4rlaSQ7s9iLpwH$TF9M#$Xv40{+!AEn)@T)78VUNfYD_ zcCMF@qgBACG4dF1P}JWd1D?OzAP-uMDhFmWZh)Ku!Yur91G4~lK^GtBl5V5Tl6>48 z+FMk>OIAV2P7=ZrG1>^asfHVLqy#(YXgNti(9Pp~LYqZp<UwOV3>!5;*Cl|ePXj|? zL0Dtc%v8`ARAaKUvE$mjuC5kvS021m{VubTthItdBFcV$SrudBTzd;SB}P+FbHGYP zz+6-b#EN%y)Rp8yJ_A5ig3nmn*_DBj!S7!^QxZ!8gEqq~hD{ovaAD(kxrq<7^<M!* zfL0`I;5ObM1v}z&g9IpW#G!!$sUMgHz=5O4sJ(&9Xd|dOC~mY_h*yzAdy6b2RAlwH z2!UA}L6rwHXlO(Obd$mcRm%-RLK_q;H}DE>5|xkwcXc&DL$X4k`$^dZHz<J`7NAf9 z&6k*g7D8b;0Remt4P<Gi-+3u<F=<xb^N`ibptBc^5(=DU)%jV3%#~%Oy>wJhGf(}~ zDJvq)D#l#&djWhga4Kkda2%76xv+q@EvU|rWME+a!XCsR${@oK$-uZl7Cc8J%KLJI zr~s&IvV~ueL4`$o1HZsVF3@TGye~mVd~Xy5`Hs<YgMi>BCNUY%b}fFP&8#fqpmJja zm*6IL&{giBiySv_fTlU58I6TOC-oW&D>Jhzt20AL=r$V3Q)|+BIC#_6oIV@DBFGlE zAdXFdH9{3Kz6Dx+&2%y%;;%XD!#|%44Vn2MBxH{b6N3l?19K_sMX>wlBit|ea)X!= zk{3WXr@_1+2=)SK*5<&1?_!Wy8wNeT4U7j^Hi}CA<l7*8V6%v*u(0+f5m8}<E`=^- zHa<ZiONK2BjKYwmG<uAi7==ajptCvPRohH5;8W^AVITqOq;d&uVwaQ#1q`R)Mh+=( zX@or#)FJDEMV74z;O5{8ShH-eBL^>6Salc|52qswWZyh!K{u1Qz5U;pED3+NJ2)_T zLP$s`fZ~ylfq`iqdk_O?uaXr5;|5`HJaP-Y+`uickqy+v6nY6-h`f;-6mvY58`uQ5 zF*398@(T)qoC`Ul*T4|@+F7W>_~19sHo~Ih&w{`8OpVM5|K$1j7#~6%fqWjg0)sbr zO*RMHOU4b58->wMs0K}_!cVAH069TKa3l0MaLAp)#2rs<4jL82bvpH2$Vebd!tZ(| zX-72yHWsEGEGdx<EL;8tSXwe|0K1$SdRMPL_>38020I4E4I<b=541506nYzZ_$}e# z$0r~Ray+ZhM(`16=phKXN*Hl@Z^gcSj0*erW8B|+@+9braRzXDW{P7EV&G)pWdNNC z#Rp&a%FY5_s?QIdirU1?#RDoyAZHaZnktGaGJ+}>5hkyH3m6mrzF^e+x3pvaqU*O= zv~S=3{epE3cs!hkfq{vI^&%GYISH9>3^t#K@yEZ%jI#esKm2=~IDgUgJxqUA?D@;W zQV6OKVeU`DVm_w(xiQ^us*K|PgXhn~oWB&biGhg$;{JzN%*S*;n)x92n<^u_f7bc) zFz081jE9H6JOd|#066>w(ZgQ|5&lSLazVo%GTesZ1sCw-l^xU@Y=+<=Gl)O<!0{l! zzyMku3^Ku(5jyCD>_}e7&=b_5teUWKB}N8S1_s7mtQQ%08B`fIu<CE*0`>X%KuH(6 zJqC0KI>SaTRzaZ+pymG7jDnzBl*P@}l$F>-Rp;4w8>&l$+SIkNw8pz~ED-2f59vR% z{HtebW_?I-yowiGstH5Ks~92MY9ZrQj2xg5R_JgQWabrOw#dJF#+$6A;PEOmXzLzh zylSJQf)RMcYNIHVpwLD+P-AW*kz-fTQDE$2S3f|m!aZ~aUFFKaz{tqLD#-+y&y-`> zz^K20*?1!xs4!#K-^c;#K(R3j3T<GrG%#d@6yJ<2kUbpWo4PRdgEVhoHe%d>qMsF{ zAChJmp_81Dc}-AQF*3@tiZeX~@5fR=+5IJ?4>~m)W%m~&WW5Da_mWW_qZh_nj&d9U zXiSW82CEQL8hGuuECYCV=SBw5=phR@*>42hguu$E%>eSIsWRh?bLUuvKpBOJF^%OP z(+oCQ26hI1h9HIw%=%mSA)OO${VnWZ7I;LD@!A$naCc+_r@%&DM(r(-D_lTBcN=** z1%);<v#~RQ`y<@^po70zSQ)@Q4+iL+qOkrIV;cCDP#$n!iuE*dpNWw%=3hP2G6n_) zAqFF`OE{nnH(~t^jMuhsL)v5_jG(Owf{?T5IhX~7HZrn;y1Fc&bEfPW*_4&kKr2to zmD$)CV+s?D%mob8H0}5$%#u~*x+kOwbqT9!sL7cbNUDLu&5~7!={R_Aqb)e^q3*<# z0SDg}=*~u2P=dj+|B?}Hw2TpHw2aXbw3$)PSW{aUeA6#tph#PiRT9fiMm}Ni_~3O` zNoEi5`Yq7u{h-b;i}6M#wwD{&jKG^3Il(assw_Zh@A`s8*FkrluuAR#-><^R;Kg{H zv6!iofti6pSkY9`i&696b;jd|K>j9Qj;WLBF0&5<GlLw%1_u3&%%CM!kW>abk`FWx z4oPTW8<{5m&1LF5%)rRt#nj2%4Av)%q7O+iv*n-TOr3|pd4|D|`3oZl>q7=M1_g#q ztV|5rTNqhD=aqqT9(cD0-%D@~HZT+h9k!s%Y<S(>J*|-W3wS3u*pIr*Ul>`yW@s^h z58OmH1GMUz31Y@ZCRWh)OEzdRC~T@MYOD*|)WQ4(J_fG)?;9fv!(;IJa!@W|Lv;-c z#3b<Q7G}_>yRL^vTH*D7-x#?bgX7Ya`3sXZ*e$#aau6SF;5LRj2t01irw=aX;r?NT zc*_**Ek=DX1@+xym>-!K(98uLE4qOTm$_h{34@#`YHSKR#`HOefcO&ZRH$43ePgl) z`<0hL29y&wa2juccz6Sk5#t89ORX8feq}WVQ>Gps=>^vr^}!UxI53IR|2%Maav+;3 z&1ej|@{v^-Oqmv@xw~Iy)CW^6|G*|b29w}84q`H8a%0hC;AKz*xpWH`G+v<XEq3rB zcd&p36%n9AP{CIi22IIG^YWOGk>%mVY?v{{%Ofjef`=Dq{KAxhfw`aIF?eqiH-kK6 zz57NM4rAku%q%ZAvT+$1F@jg~gY%y?BcyQ%iZ9da*BPCzUuSf@e*G~BK+>}5{|`*> zSU)k?Go(OQV2X0R++++|$)W}t6mbAe@ocoTH8R>LDg1JytfG+-=)N66M(qt+MxfR6 z8+42|f{vaOlmuP90Xj#U4|ENTJgB|Ruu)A^P-rV7KZCXoXyqO#{eZSb!iP$b?->Qn zWPmVuGmN+x=>B2kRqBxW7t?HJq;Zt<970yo0t(D8U%q_F!X~P(B&c|vSxL^yH8tJU zTwaMeJ3E_6`5j_xB_ss2vQgFYU1w+KJ9PmIK^3czkXTn29ngAp*VuQRo#6D~#cawP z0dAX!GWantZV&@)^aS1cCB>q>K?FQ_v4sax<M0T8s+ld&a|p#jSL=!j3T@=#w6xsF z!!0PZ5wz)HqX1}cBrm9w3UA053kn;91}#80NGN+{6lVO}&zP4UVC<LC>B8pR#aj7y z50gvA-w?)w|Lj4SY0bZbjP{T?^J3~`+Q)2)DCa<JGTh}{$=@EP&NU2-Ak8c>EHMns z45pBD1Ips;EZX23HK1%p(99IWwJprxi9;y05mFKw3MvYM4EVhSWE3N)U(B?L^#g-E zgEqq^Nl=mzWP1r`fR8(1y0$^qXd`G`gVPAKxdJ}-C}=FGXv+v$1}G+Os>cXfku1xo zERuPC`uTseIE1WZ%tScY<=HjtmRrbYGB5iR1;Q)|vc}5N?x1cKBMT#EkLMiF_Aj_w z<Uli&;N8-^pr({ODEV%XfjEKP2(o=if>%&zgAizf3DT@ohB*YZUmMjW85tZxR`M$6 zm!P?07uXRjzs|EhM7RPpAIZSL*dOD=<0c%>Z}XKwo&yw83>Pkz#)B9j`v1Ov3~c7? z^B5QyI6x<0fW$#@!#?lt4F(4GdH?tQ-@#@M5&_FV3C0LUYY3BR6$1l^&DhM~#U#Su z$8v$ekZB8pD)UPQbLKDxLq<~uOD01GCniG%O{S#`UMwmMUW}#;x{P}myciuBOqnh) za4=nAaACa7Ajx!_!JKIwgD%q=21%v^3|>ro7@U}V8911BFqks!VX$P(V(<cC79|ER z7-ni^kYvtaaANw)Aj0&LA&BV+gA3D7h9IUAh9IU4h9IVg3@*%E3_*;I3_*;`8F-i( z7=oB$7=oDZGXybfFa&|@X1c%-#B`Ivh3PRv5Ys*eRi<_Z7N)lh0ZeBYgjjeOB$*yE z2r%to;A1Lc5Mh#H2x69C;9!zsuw?ONFlE`r;KjngsLC{z!H{VkLl9FdgA>y_1}~<` z3{H%<8AO=&Fz_&KVhCa^VhCc)`G1)S<c=bSAm+aeK_GFai468&ed`#!7{4<FF_kf> zGJa(cVcNvt#}vgNz}(3o!j#1zz*NN`$t1$S!?c0HmNA7Ph-m|ZB`X6%AyWZ^DG0;k zpoYPT*^q&S=>mf!3j?D7TMmOMD6By=3j?Di3j^aUhU*LrEDVgRm|7V$!Qu9oK?I#< z@n#SJhb1T+kuc-L|GyX~g8cJ;A7jb?(@Z}ZMBw3gg~0_Jo(S3+9FCx{gy91W0!&vJ zf|%|yI5DkcFvNzL?=l#I!*Mc$6DS;En6c>peQ-DyLG511-~$gsP&lGvP#7X(P#A*Z z2t<SY46+}c2BjZR9O9yXG6XR{X7FPA`Tr(3o<U&)awl#Y;)jO}j^MO_g9fEhkYAX& z7?_wgF|aT;{{O>R^#2<Y{gAQf|82&`|IZnV7{tNp8I+DdY4|=UZU4W`nDc)hIDI!V z1cA~SD4jDFF-SvcaJpw&4oUw^p5Q#9$#{i99vpw0p!orb2Dt+!2aZ=z_=4gVLYp#8 zWDsJ$&fvoQn86;DcfjfQF+&g%%>vF(Weln~>2?MdW^D!$P@V&)dr&$7#TjneiD?sq zGB{mrV(<gyPjDUq<xfz&g3=c#pMvrV8qIhclD9$jF#ly_0bv#fMtSDHj5C=3GN!RG zFvdXg2*Y*e^Ptj?fdNJ{buln7K4)NHbcJAs&kPKVZ43+yISdS-`~}0zY7Ab?XTW6~ zsO-}Pm35%}iGrsy1Ti0BFa_xcnaQlnV9LCb!Hb!L!HXq^fq|KYK?GETKuTCJslX7% z7{&O2X%Vvna{_Z8^B(3~%%50<SoBytSQ=QKuyV0Ruzq4wV(Ve&V%K2b!(qh{!BN98 ziDMbZ9!@FFeVm`TqPR|Q3vgR-M{r-_e!=~ZM};SdCx_<*&m&$p-Ui-Zd_H`~_@3~q z@dxoQ60i}-5tt&dP2hu|h@gg`onV;Y10g%1Swg>r(}b6ZREca5IVZ{^njl&xdQ9|> zSe)2CaT#$x@naHP5>65Y5|1QfB$r8^ld_TulG-E9A#EZZCmknUBYj4uPv(=XknA1V zS8{9QPRTuz`y($WUnRdw{)d8{!WM;pie-xDl>C(Hl-4OdQkGKIQ+7~}P%cnDredbD zOjS&^Pfbs4g?f(qJ`FyN6peivKQxUrXK5K|9n((IQPDZ1+o0#6w?p4Ze~p2T!8(IO z23HK;7_u0482&O!F}h&vV0_EO$5h8O$8?qH8#4p54zp+GZsr{pau#)#MwUyg(ySg? z`&gf|aj@BAt7f~xPRg#x?w-A${RIaGhbo5?j!BM_oOqlXoGqNAoNu`#xjMN%al7Rn z<6-8p&vSw20WUeP8m|}L4&F1o_jo_>k?;xdS>wy$tLAIto8!C9_l2L8Uy<Jhe-(c( z|2Y2+|8@R1{NDwL1gHf#1!M(u1sn@_6{r;$5I8CDN{~~~ieRbWwh)PsMWHgGeW4%1 z=7jwSHw&K>ekH;zqAKEFWK$GR)Qo7Q=v6UhF-KxP#X7`x#J-8EiTe=m6yFs8BOxl` zR$@frro<mfEy+U3Makb%EK;VV+)Cw2wMxxOot1hn^+TFWnpfJqw0&t0(uLCX(o53U zrT@v0!2z{0EHd0Ok}|3?=42eoc$CSPX_1+f*_XK^^8pBEWo7Nkx|a1X+a<dL)KXxK zWXNS;1*cmk21W)Z1~E`mgmF4pgn@ydVHX2410xIQXp;c&PDK!#kwJ<f04mPJz{ijU zWivC_F;qa=EDTx<+n{V#h6;uUP&ONb24e)2&B<WK*Z^hoFt{+n)C)0aG5&&zpI{JU zQh~BhG8iyfLD{Dm7?@!8o@U^Jv2QXnNHLW#7%><y7%*5eC@|<UD1do}42BFk3<?Y( z3>gfm3<?ZB45<u>4CxG|U|v2$8iN9ZFGD^<8CX1tAqOlT!cfUjz>tcj+MOYvp@boW zA(J7QA&4OrY)TG8B0~{_Ap_`yK{Eye25W{;25*LN20sRC6y3;rb<uRAx(QjO0-DM& zhE#?khGK?HhJ1!R1_cy*0~mrC6u|yRc1;G@&B<W(Wl$XkP}f>B<T4~OWHY3K)ub`# zG2}30G9)n=G3YUX)EF@sG8i)$F_;qV6Y@eigQ0|>grR`Jib0=29~{D|;CO(=6DXE) z(c-8C8bf*vAiw3JxKM!sUl@inq%tHiq=7@E1Rf$G&=ldtkO&T01qL&4XqqutF&Hvf zGFUN~g3}c!g&8uKGUPK9L1V!UZc;EqAwwxcCPNWJ5d+8vOpx64Kb;{B!a^k(Bf))s zCI)5(76w)ZHU@SE4hBvJE(UG}9tK_pJ_ddU0R}+^AqHUv5e88PF$Qr42?j|9DF$f< z83tJfIR<&~+`bZnGJ^_(DuWt>I)es-CW97(HiHg>E`uI}K7#>+A%hWvF@p(%DT5h< zIfDh*C)Nx$47Ln*4E78T42}#=49*NL46Y1r4DJjb44w>L4BiYr489D04E_uO41o+m z48aT`4518R4B-qB43P{`4ABfR46zJx4Dk#J42g_PjLeKI42v0B7+M*oG4wHXGqN&t zG2CM4WjM@mk6{tRT85Jh#~Ic!Brzm2OkhZ1IL(mCaDw3!!+C}?3}+e6F}!3*W4O$4 zf#D*<dWLj{i44~mt}t9>$Y6NQ@Rp&IA&ViCA)6tWA%`K4VF5!vLm@)}I0uw6lrWSr zlry|ys9>mKsAQ;SsAZ^OSjbS%P{+`~(8%zH;T^*+Mm9!vMh-?!MlMEfhQAE|7<m|Z z8TlCb8U8aeFbXgVG72#=G72+_Fp4sYF^V%vFiJ8?F-kMaFv>E@G5lco$tcgLz^KTm z#Hh@u!l=rq#;DGy!Klfo#i-4w!>G%s$MB2cI-@?L0iz+K5u-7q38N{a8KXI)1*0XS z6{9ty4Wli?BZkL}c8vCn4vdbBPK?fsE{v{>ZjA1X9*mxhUX0$1J`5WeHZuA$`Z4-5 z1~3LP1~CRRhA@UQhB5qR_`~po;VEM{V+3O)V-#aFV+>;~V;o~VV*+C$V-jOBV+vy` zV;W;RV+La;V-~}1#%#tM#$3ichGz`V8S@zn7z-J0Fg#?q&2Wd|F2e(cn+*3Eix`U; zOBhQT%NWZUD;O&os~D>pYZz-8>lo`9HZg2w*v7D(;RwSPhOG=o85<bd8CEkkGBz<b zGxRXLXKZ0Oz;KYgG%wS@z|t5>n?Pts11Rmn?wFgHT$G>3o(Q4Y9FvMt%Tn1A!4$h= zetLdhYBqZ!gywcm&MZnU%}vWmt>8{Zu(_O5@=FqvlT-6bxRT*aHkahYqWnCz6bR*# zT$G<!!tM&Oh&>fTv$=w8VoL>6T&{54T&Zv-yDP+c_EZSX<_a+}6-;rvBOJn=j$m`S z!wuj{hckKHlk;<P6CsY}Nk`&vdm!|3XCT-t9!ZHsEE!3OMQolWnK>z`Y?)w+-4o&i z_Dl%P<_Y!!TPB!d_k_5WJrhDRd3rHrW^sEV%;nBPuz9?Z9Kw^0!bvYmP0h<m%uC5k zX7fo*E-guA%K=k7KFI2FkT`5U;E-X<0aGkKDfuNVIVt%iY<^&kY<Xac#}7#hPaYD7 z%@3@REe}j_=Oq^87nc;}7i6R|yXK`cr{<-z`$Ig<o)4kf{K39v%Lh}u{u!lt>4`<9 zxjBiYCA|5_JhmXP<!nV@iYExkTAm^#4qFh|a<(D}6%1C+Rt%=NgAqZ;U5sF}g+LUS zfGL&`P{fshA}$mhV{D~hiaiwKX7*AD%@zuFG+QZ{Vht_I%u8o21(Cd=$S&tCMdq=G zLL!#E6hd={BizAVj>L{cVpk&AY*ApZuvLL6t|)j4<*I@+S#$F9(u=`))yU8hN;`pQ zBLf3)9yT&CFog1rpfotI8yOgY^SY6Nfhknn3`(0rX$vTA38lg28yOfv%{4USO3O?y zElN#EEY5%^F?55_Mo`++jm5RJC?70n>gK$I@qg<E#$E>R4IBXx8yOk<A~(9RX-6n- z5Qy~NAQBXzxS=6Zb_1JsOa#LQW(C&`%-Sv+SQK10G3zmDgE_1UuA5klpd2;@*G;US zp&WJv*G+6?P!5NJ>n3(PD2G$QbrT0n50`@LCeE!;8EysFO<Yw_4v&KCCT^%bj2n2N zw(}{tZsM(F(%#7IR;KN;fnULO6W>BOS3tpa6aOAKS5U!qlRyHTE2QAMNiY=76;^QF fB;*L^iYT~l64r%rBR7a>GcYhPhO9nvpMe1YLyKYU literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.woff b/public/site_libs/revealjs/dist/theme/fonts/league-gothic/league-gothic.woff new file mode 100755 index 0000000000000000000000000000000000000000..8c1227b200c3432a2502e97b87ae0508183629df GIT binary patch literal 30764 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 bYr<_XpLa?~hkSff&|?P1kkv=-GcW)E<5&i_ literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/LICENSE b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/LICENSE new file mode 100644 index 0000000..71b7a02 --- /dev/null +++ b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/LICENSE @@ -0,0 +1,45 @@ +SIL Open Font License + +Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name ‘Source’. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL + +—————————————————————————————- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +—————————————————————————————- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. + +The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. + +DEFINITIONS +“Font Software” refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. + +“Reserved Font Name” refers to any names specified as such after the copyright statement(s). + +“Original Version” refers to the collection of Font Software components as distributed by the Copyright Holder(s). + +“Modified Version” refers to any derivative made by adding to, deleting, or substituting—in part or in whole—any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. + +“Author” refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. + +5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. \ No newline at end of file diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot new file mode 100755 index 0000000000000000000000000000000000000000..32fe466bbad41f637ded825e38b23ce8e7f10181 GIT binary patch literal 75720 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 SuWOv2waz&1@JuV{lmq}Mvo=5g literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf new file mode 100755 index 0000000000000000000000000000000000000000..f9ac13ffc68e47f6176a0a8a367d658c9df61e87 GIT binary patch literal 238084 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爿+J(w^%)ph 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%0D)CQP8oK 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 b1<n;$aNQ)P3*$y^5Yc8}3|YhVjDZ0FdhQ;) literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff new file mode 100755 index 0000000000000000000000000000000000000000..ceecbf17f3bb88aac360fe25cdc72fbbe78b00c9 GIT binary patch literal 98556 zcmXT-cXMN4WME)mZ1}?<!oa}5yod$NXTStbj=`=B42*ji7#Qpr7#IS&iYM2*xrO*L zFfjgMU|^5|;e6J1K6e*aHwFeK2?hp+c?=8;cif(Po^TKF4`yIs+QGmeaD;)uq)Ub6 zl)ig#s1pN&a18?kM-l@Azf6#Pt)+jkz7Ye1^aBP4hG+%`hJ?(`3vMUpCKfO-$k;G2 zuvjxNu&ISi%nwX1D^XxzP^e&FU<d+Xetq7ew1V_p1_p&Q3=E7L85o#SgSY4}Pfsi^ zU|>*cU|?Y2fMS94oXRu?2Bi)LMpFd_rgu;5HTU^sq$Z{?Fov&SU|=v|U|=v~|9|#* zMn-BP17r9d1_lOY1_lNdzRT>7GjdBR7#JfM7#P^p85nq1O)t4BmXn{H$iNt<!N9=r zkb!}B1FM8@OKxIC0Rv+?4+8^(0tmBoF(v0E=B6?*rt2^;aBDCyXvW{QODiqNFD_wV zEDB*@;JwYjAj^Kl;m_5AqSOKg#s&ih28M$S42%KG@0=_wPfbc=U~KpTvKWN9o`<Zd zxRsocl92F#AxVtQj&0eQDOdh1`g6yIO-<Z<z5v_4IY%bhu!*vnu?ZxkBrvUdl9=#k zdkf<d?$sI$8+LPXf#Vkx^9&c}cngAfXQwwz2hkTU?oO?^rFzbnkI_+t<-w||H+K$* zg+E{r+HO#1-gkgg$C67~!mm+SAtKp7RZaiuPpg-wvIQKDMk+Q3uof1blY7|I{`U)q z{+_q}?mr%}UkdL?IlFFip1H-=^caO5SENE#iCl7vu3o-(uI6Tbs~hgIZ)fLyvz?W& zWl?vBiqLLx+uica)e_3pGQ#@0KewL>{<g02Ue@n7JEFIAegDHevrScofuZ8o+bG_G zP}ga8%imWkw){yl@N#ha;hWGQ^sip%NJoy#nKa3^gFTZIryg`%;36BNdE~{S?ykNh z!^o~pF>0wB^(JrBP-_*OS!nc5Ky<P44>rS;n-453*6Z+kcC2{$_t%}@_x8Sjx_82c z7uUkhzWsIX?QQ$z{_~4}m3;T^=+x+Zc7b_`mzYkJ)5`LHFXnBX;%ql%^0iNCK`BSI zB5QyD+G<jAw*T7tWphkdUthD#v;2PH|F<TtQ7R3;l&g&Qo&9abWy`EFcin-E$1k&H zIewlKw)xHW|GK~D7Hs|NS97?I-)AX{*?Z;(K1(KjHf9r!PF=-UVyk+&JX8PeV&;;L zI{*9&)?e&uJ^uUFFZ5qI_nfgrkrDqh?H^ilXMfh1`aia`nJ@k+Delneos+^p&D}Ha z{bTkY^M4xtlYIXmcF*kZ1-kE_SN+rdufG3i{S*6-o_1&Fe@MS`GG243Q0S^tA<m(F zQmfTgoy=;}3Q}DaGIizBRZeRIR$qxK?cWt|yFxC|e?@x8)+)cN0;`4pRXe`s*{ao= z=H<Ejf}iF}fv60P{c1mVxA;w;q;@i2AWEyG^FoRLJ@q?Lf2AFzm!|BSA~W&N>`C>p zFZdSfI?eyaJ57-JM7~MoYTr-gv-ecpkY}k4xg}%tbkF_$%0ALdTz*CQUaFgaA!}iK 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%0AtAHL<1Nq5=CcK=x78G*=^%fu{- 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 DLmDr& literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot new file mode 100755 index 0000000000000000000000000000000000000000..4d29ddadd1bfb7a66ca71b1a0a1091b4c6af6f19 GIT binary patch literal 88070 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf new file mode 100755 index 0000000000000000000000000000000000000000..00c833cdc9c85ca99a4e952eb93724c5b7e64003 GIT binary patch literal 288008 zcmZQzWME(rVPs%nVQ_GA40i1*o?Oqs!05xkz!2c(7UG-F+Ahz)z&MA2fkDRI#nsJS z-&>G@fpG@|1H&En0RP}<{_PPA3`|oP7$UB?2ZuU+``<s4fgw7BfkAePf3Ut$7VCn` z3=9>27#J85l5-OaYMQ6UFfdfcFfg#0C6|>b@bBWA$-q!Qg@J(~D6JqpH+YNwat4O_ z7Yqzcsp*Nu1q=)f0t^gI0SpWb9O*fgX*v3_?F<Y}5e&@P5*ew9DI8PJE@EJQ3sPs6 zk&&9npTHTz!2EUv0|SFfMs7(3r&V$%1M}N63=D$na`KZC*=OvEU|{}V!@wZ8B{#96 zfVG>+m4QXjfPsNQAulmE)%V8iOa>Og00sul(1QHp5<B+23=Aw*D;O9w{uC6Y7M#0% za2^9o@)8CH#+dTdq%^KqA!`^|QW+Q+7}&sJ$-w{$OFjms%#_spqWs)E1|}CbpAZJV zoWznm1{DT2kWvOl1||j$1|9~+e@no+u!}N)<rpr^0fjjO!`bN#OF_CXT-==jmf>Mw zVA#a4i-Czjnt_qw5(6W{WroWPObk~To-r^oJZE^$z{K!^;S&QR!)J!i3``7P82&Rb zGJ>=+F)}i$FfcNzGO98#F{&|EF)%V#Gfre+W}L*doq>^Q2h$D)CZ?TCyBQdn_Au>b zU}D<Gw2y(2X+P6`1}3HhOwSk?nVvH}XJBG_!EDXI$ZW%$#K6p)%$&@?$ehBQ!obX& z%ACf)$ehlc!NAO%$&$^$$iTwDz`z8?tc=x+onT!a42;a)%t=sP5cOaOGH@~YF-$-S zI|Z-_4FCUwX;26<Gl(%TJ4U%GFo-z^g(xtHg#>vkFo-drs$t1aEy`n%%1tcFW>Cn@ z&dp}fE6%J+WiVj?g)b=NS-~tO24<+qtYA6?6xLwO&LF@b!JxpP!C=5(!QcRvWn{2| z(CmCrdIE&z)`HSa3~Y=H42(QQ5MT2>5jA6AWSPW#j)9S73j+^B1;ZzX9}NE(Ss1w( z1sKH`Wf+whH5m06O&F~h9T?pheHeonBN*ctQy8-t3mD57YZ#jtI~e;Ir!dZ9T)?=D zaSh`p#vP3N7>_WXV!Xh3jqwiSBgPku?-;)@{$gTaVq@ZA5@M2Il4DX~(qb}TGGnq~ za$@pe@?#2NiegG&N@L1lDq^Z&s$*(l>SCI}G>vHv(;}u7OzW7oFzsSGz;ul14AUj1 z8%+0@o-n;)`oQ#!=?^m#GY2ytvk0>kvjVdkvktQnvjwvqvkS8qa{zM~a}0A5a|UxB za|v@5a|3f5a}V<*<{8ZMn3piGV&1^Kjd>3PBa<d;E(0Tz513p8Cd<L32blB%lb6Bd zED*`a10tDDg2`GC$tVCKnVy5md0=t{n9K!}5OxfhZ3!lo!Q^Bx$p<2tRY4>Zn9T?= z#}+K2&LY6T$jHQcoq>_b6vSp$1+!&AY{rAEZx|Sv1VC(tKOk|2Kdil=+yo}Ux)^?e z#F?W&YM4U6q&Ap@uq{Ds#$90YAedBTRb^mg(gm|0f=DJX$#@dPX8Z&uuYyRHW{@pR z>%i^=n+bKNE?5NYawbR^LR<?DH->*;y-pxC%&j0c6C@neSy&htnJ$9Fk<Db91{MLE z&$JA|W@G^Cbpnx$A3!9N7nsy$J;=bwq|LgFfe~UCV;o2qgk%D%XHsQhU|@u@eL%V( zp~rZir4by?ATow!76T)b3s^)ROe%uOaxj?yA{lu=BvUS!^aGKMk|2_48ko!glQCe@ z3rt3VNhdJL0V1I`hJo4VK_t^25XpEIOs)cvObj3rsuJuHsJ#%=Am)QjU;>d$3<?Zt z4E78R3~mhZ3{nhT3|$N+409OfFqkszVc5f9#&C$?5Q90x35Jsl77TY7?lM?0d}8>- zV8ig0;VXkJqY$GogB_y*qalL>qaC9igA=0zqcejuV;EyNgF9mkV+?~QV;o}wgBN2q zV>W{?V-aH!gCDpg_Gdc4bbuj%=`_<BhCrqpOg9*UnI17cW(Z+=&Gecfj5&|Fogtig zF7sT5Lgrn}yBLa?FEU?bC}#f7{GFkM`7iTdhEf(47FC8a1||kbY0SWE!|cJp4=#;m zm_cQ@3Apq&WiV%8V7SM?!0?2Df#DSc1H%Uf28M483=Drj5zD~9$icwC$j89ID8j(N zD8<0QsKCI$sK&s+sKda(XvDz4Xu-h1Xve_7=)%Cj=*7Um7{I{57zV0885kIo7#J8c z7#JAy7#J8!7#J9<7#J8E7#JAa7#J9P7#J8QF)%RBU|?XJ$H2e{s&iK{FfeXlU|`(F zz`(eNfr0T50|Vm;1_s7+3=E7{7#J9DF)%PbU|?W;#=yY%hJk_c69WU|4+aLte+&#v zEDQ`xTnr3M0t^gHVhjvSG7Jn%N}$RRoGQU-oPo+DC^s-LP>Y1P6JpxnVI#RDharrC zk)ecvhk=tpgh2|NJ9HR~7%Uj<7+e?_nf8I|StfljsR|}FK_ufzFu4arGDU$%#xG#< zDu`s@WYA!+V6bHHV2EIdWG-NCU~UAppBVd?J;60A7r2cGYR7`=b5MoN$eh6Rje(Il zkAa6FmSGRWA%+tS=NPUq++ujZ@QmTjP^ou8_2vJ|42(=!U~(UrECiEDAd*o8L^7QO zle0i1BM*pVVgr*4z+?cJd;=!ufyoshl2H;wGF5{~eK4sCCMSbQ0T9Wo4I-IXKqMo? z1Sb$1BEsYbW^01U3@`~c6KXQUKTQTkCNGdU!yhnN`A;2GTY%ZWKqPY-h-9(^lVH0T zKKyfHU}Vk!kq}*sVBaxr0;>rEk&F*PBoml~%Fg-+s<|(N#lfzE=w-SN7Fh-+!R9kT zd<O{=7mzsAUxxpz85kMCp~?gnX99-?b1RZd?t|1re8dz5X4`{FWe^FC3rOrFfJMM@ z!MFy*W=a8*kocMgW<x|`Kx}A;d4SkVLLib6VpkZLeHKJA?E#UDPr)QO2BEPGHh~GG zl8Hf(L5;zbfq}uC!Ja_?Tqj9_YanBAePaTyV@$zyj2XCIu>#j3woGT3&M?@4YY}^< z$4rkI9Kf}RBXb^eErSztJ##xl5V+=uW>IBPWr$&5WMF0NX6#|?Wt_k`kpa|t76bJU z85kIp7#J8d7#JAzK;<gPtqcq}NIwQU21bSu1|9}B20o<Hf|2<kt2P58i!o~m10&N* z=En?-%wEht7#Nw8nEx>_GH+qAW?*DsV=!T`VhCY~Vy<CsVqj!oWb6Xj2<d}?^f26F zSjWJ~@Q8tjL4-kz!GOVx!G^(!!GpmMq>CYeA&nu2p@^Y^p^l-2p^ISx!!(9D42;aX zKqU^dG>Bxl3nH07JxNBU$sjf}s29q}EDK^Yf@(!ZrhX8cITu7iL_oC;10y52jAI6u zam=6|AtTcQkQ%6&F(5Wm7?=c?cMKv7Y7ANodSG9<F?c~;`IRxA=>XFi<~-&i<}#2^ znZJWezJ6veTqPfa0fQO?BSR1a4+Ap;2RLLI85me^gF=V3A5Jne)-pCSHjUQ))UNR% zwIPIr)YQ}>k<A=DY=lc#AA$S5W(;KvD;V}Md|>2abYM(kEMRN{_f|hJ@iECTsWDkF zc`-#WB{8i4_cC8Gb1*A0J21yF_b@MF-oku}`3Cbp78w>RmI#(2mIW-kST3+!V|l>x zjO7i>H&z)|D^?%YAl3}lGS&sG+gL9!@GyP*f0F6@|2IrO{{LY5_5Tyopa18X{{6qo z%=Ld8Gxz_y%sl_EGV}ev$}I4|lUeBhT?ST$%?x}DpBao9?fySzVrMXB&SfwLl@kAp z8LSyN7;OKaXNdlPogw!BX@(*OO@`|Kj~O;Gs4{G3@M3t&;KlHs!J4U&!H<EBLF9iL zSat0G#|%XbwhYz(KQK2l@G$T)i2Pr`5dHrhL+t;D3`GpN4AuW%GHhTFVc5hF#ITtm zgW)Yh2E%)XAVznvS^3P(42ldK4E+D!Fhu{q&k+0n4MP!w07Lcvbxe&6+8{HTTfzC+ z`u}9G+g|;D%)rXP|NjGn$p7mM*8hJn6fwjwH8Myuurcuef5>3{{}Y2P*c3m8>i^fl zGK>t?|MxKnF-ZLX!XWkk3)9#CZ<xOQzt8mj|4XJH|6elw{GY`1>;Frp-~TT%{rP{L z>F@uiO#lABVdngQo0;qXVP^jS=a~imA7>W)|Cm|m{~HE&rtklMfJ6P?{~yfU|KBk4 z{J+i2_x}yE!2jC}%na85Pczv5Kg|&P|2hK`gZ2MT2HXFu7+4ti|2Hy-{O@FN1o`g& zc?K2+$N#4x{$}7|DEhyHftf+%|5Jt{26d)J1|9|`2LAuKOpX7~GYB$$V~}L}&S1;* zgTa>R=l|<WzZh(pe*gc$^oN0u=`RBZGw1&w%v}H9Fmp4QGV?IVGV?NMGV?LWGV}lc z!7Rui0(LhG)3^U`n7;r2#Ps9;eNbv)U}XCC{}TfjL)!mc&`>$e^!@*RrXT;`F#Y_$ zj_KF`H%!05YIiaH`+uE*ogwZ2C#Wf~boYko&;Q3v|Nj4AU}O6B|2i~9zG3?H{{uKQ z|NVaq*9S|lkHIEG(knvtF4On_kC}e_|HSkQ<g@>$ng0F1&%n))_J0A>*Z=34zWsm7 z^!@*JrXT;WGyVK;&-Cm6X{O)*4>SGwf1l~^|HEJxvNELo|H1U_|9NoyKx{bA0P;D^ zWsku=XJzL4{}dW`kD2-Y|6msQf0}`rnd|>2W*#u_Is+#|+W)J}od4f|QvocVdH;W4 z=KFt}S>XQ+aHxX9<S{eX|NBU$JqDS^EcE{a*ykYG^H5n(IsxfD%q;Z(HdyvPlIb9q zfb{NS7W)5~fsL8#KTIF8%nxvwoMz_yf1a7^|8-{W|M!`B{@-Wj{ol#V_y0UIKR6{` zXBPbb9PC1vIX{?r{=b2y)AP(i|9>!mLII>7l!9S0hZz`|n;E1Tn3!Atzhv?J|CE7| z#q<9~F!_>!iN)dn7Z$hwPZ>B_?EimZarpm<#qs|e7N`H8Se*Y~WpVv~m&NV>OBVP4 z?^rzk-(_HDarl3i#p(YK7U%y*SzP{qVR8NciN)>zeHQosPZ?NP9R9xp%ewym0TN|k zWN`qwi^bvpOBTofKUiG;|6qa0J!N2q+Wm#a<Np^1E*AU$kHI32|G%&}{r|$^{C@?D z%m0fku3*#evv~af!Qu%j_gEbM--f#K7s%}(83s16%OGxt+3^r8!@}JB|03A;Ad}tx z-(_HAFa!7Nv>8kptQl+>92ue+Vi{5y(it)tsu`LY7BMVlc*S^|se<V%(>JE?Oh1@@ zGW}xu&Gd)qFVjC}PG&A<Ze|{4US>XKer5q?L1rQ5V&+=rX69BFdlm;4M;0d*XBHP0 zR~9!GcNPy8PX;DOHBgOWz-2LmA(FwBf#Ltz|3Uwc{y+Oai@}9q+W#*MpmrLlzc&c* ze^B3cz})fw{{JNm3=A#<<^UWP|G)o#(f>F9cl`(T=W(c^xA6b_^tKU~ee?~L|Fs}@ z{O<&jnE3zs|L6a2!W5^4$bY~8>;A9%@5R8tP>E^&|Hl727#RL9`@iFV<A2Zy5T+8k zi2N_4i#0@8GKgF<g9ztRUCIA9491v-{$B?X`+uH+;s3$^F$~5GLjSKr#HdaFU-$nZ z1H=EvAano!`2YAnsNc`PAkQGpU<eXpVEF&x{~HDd5C-x8KmPyazy1Gp|Ih!A`9BRL zf&*(ZXfnwDe++K_YyLm|f7<^}h%GqOGk|^j1ES{t8xZ~f7Xt%>A_HhHm;vO*|36@Q zK_wl?MgI>oFn~e^gkf?RG!Fv@gW~@$3?fMSA2aZP^kb;SDFAlQkN-aqX5dsxu<iz# z0m3*<fJ^+p{r~a*AOAmr{09jWxD=T2|NQ?q|Br&1;28S<7~-q{(->qKKqJr)DI6ro z4gY^I$U~(6KW5-#VEBI;<Wq<Ue)9j1|1Uu*h$-v;KLx48hW|hQ|Ka~9sEiPl#!G?2 z0-h4!N~IxfCXk=tVsOU)<6x!$%&%Y`I-$<Mz##trF$0K3#35)*3|%FZ|NlNHydi1v z|NZ~h|KA3WQ40P41WL1z`1*etq!{8uP}qW9zlZ^p!$1<)u{?t!gTVji3_=VH|386Z z|Nrg(*BLbb-~WFY62G9_fL$wGl;b~WCJV&HQo?|Q5g2=zf#gB%2E{L!Mua&ZNDe#x z&-MT4|K9&8AT$5(`oHae0=UL|{C^@?J!t%%;s0rn`~N=&iTuC*|INRX|6~5U{CD{e z8hHc>;>7<`{)1*z82<13@AW_7|276i28RC=|AWRhaq2;q_#g9s%l}pe25=lBOJK0^ zq}aRv-+;><kU0o_iU=k;3moTPKqO4&|9J);21N#G1`bHcijaes{SZI#K*9>94~>>* z5MogL|As;Q|6NdugUW)|eSphL5FZqCAev$f8f}Kw6Xcl%N)ZU15Fdl`4_pkiYDk(v zkwF9$CJ-4=YXAS{|80mG2#*0zj$~i}hXc?5#|+Z{-+<W=t+M|g|K9|PH4yjzWBg^@ z|NEfW|NjP*@<HnHVSH+^%5mT}4H_n}(hwAfKNxrz)ET59K0$Uhj13B#{~ti<2)DTm zme3RrD%C(3q7+olL0CkP|Dov@tDn&ILu+hwVGth_haj3X{QvR)ECz=EyZ-NCVEE7V z|Mvfz|8M@^^k4n|y8j#gPyB!Wf7buo|11CfV_^7y`#-33W%ysqpvmCIzyNNGW3lXi z>;HC8ui*d9|JVQDgedsG=YReG4gX{QFJNH!zvzGa|1?-`gvg_l|0N+J|BwFngRpRu z5LaQ7|9=|fD|DIv+t5YO`H&m}5&gf1L4-jBRI2^I|Nk~5j3N0A<QIq<1o{6Uf{nuB zVc-F`i$HB7csc>KKVYgLX2N&~8kQOnBFHRAx`v7T|H1&8RnlYt)eNB3moNz;Xhdm- zY9>M}DCa_W{}(Z6GAJ^bGH`(EhyP!|5ZpulUky<KB?G|e1lo#%iXkXaeiZ??LqTm( zm^cpu!~Y+Ua0ZuFU~^%T==A?~h{*q^|3PzZ5DpF!W+tXI$o<$vF~wjauoMES@&2Fx z|CmAOzcGUd0}q4j|A+tG{y+YIAKW4-XJGih=D#txP6pRH{}(a1FvKx1{4a-@gi8NE z`F{tv8~~>gNSyqC{Qu<tUH>aV{fGbS{;&DJ;Qx~UU;dv()rsK!cY?70U;hu9Cxmct zkf8X(F7^K|wv-1e=W*zH^ZyH^2Kav;)OLfa0=H@Ye*v|y{$B^T=B|SB<^RY3FM?G3 zZ)E`WXh2M?7?LxfaRfGtf#LssaEp2uZug@a1uBO?;fhGZsPf1>kXmFug8lzGsLjB@ z05S<l6x5eOa8X#$p4WMpAX2EngfM7mdk#Y!QvhZfq`ikJk1PVo)u3JtxF*L@kAU(B z>iEh3$Ao)3p!AJw7r0IpfY^v4j>G|nB&Y;H62r~>Phx3?+azR}|LXs*|KIf=Gy-b+ z|MLIq|Fszy{xA4H2XpM?KWP0L1E{a_52e5L|I7bR{}2B^{Qu<tZU47{LJwp<$Z!8Y z{m=bB3&dk!_;39`1T;Pc;b9}e>EzA-(_j<07`VVRl0ryWLUJUC4PyP@_5V63Z~O<X zIY3g2$%Lm9Nc)Ei)b|0$5kx6!EW|M|FvKy$!Adw#2@X-lzyR|PbY$QSL>x5A!BGGI zI>Ri6IT$Gcqy)KDnGYRtHf0E6a0B%#K_ep|Mc`5&JXXTMzyMxF4GKl5c|N#D2S9!U zg$C4&U7%4FXgf9uB8H!Yv<5)oh^!87BG~QFp61K{Zy@mkaT!!SSOtg;k^{9FL2ibY zf~P?}OpqKg7?F$r|M<TQW(TO3N{nt~HQ*Ql3;cfvHWkz=fbd}<4CawWz{3Qr4U}TR z<uI5>904n>K`9u&4p3NvR6uG#5DPc{-wl$3v;slt1Qv2&QD_<k#R-Uyz#vsbnSK+L zG8q^^;RqTrVqie-5u(-v2-Be~)SLws#GpW<NuU*27!o)HI2go1;};Nj!PLN0FtmmQ ziwlA3SuhKU_#XypNq_|YulWBMn+lK|CjLM9AGj2R$Pg2D5S0)T+~<>KP)FAHzZ+E7 zg5ny~n)&|*<}L;X2I>Fz8R|hgVQB`$CV<^Qt#k&4|K}m;3zl19x}Yf*KH3WzV}r?J zr-`q3K)wK(fnqACbqf+i!;qYWXyu|vBg&K8p!P3B4wBCPUx${)a5WHF>?A0K!({%S zhLlV&KD2}ckMJ@u;BVEz^*|YraD;O3QV@UQRf0`Y8QkN7j*+7(`2U7M8!RHrpbVx# zH3h!0a<C#KLWm)OAqq4Of+U7urh%9c|AFEW7N;Ol2>!nYmd`+P|9`+j4$?kg@B@V_ zlnv2<L4x$-4j0tA9GZ?lA<_ZDI7E8_r0V|<wElDqxNgN;+Jjw!7<oh(4Q4??0n7xA zmYfE${{MicLmaw5?RikRfYpLa-v1vMj6p5|i4coH?!sNO{0El`C}#2f-v;ho{36vR zWK%%p6Ugl#jFdiz%4slj{(m8+e*sgCn}&oknmmrO1g;7+-U*u30{6T?eNK?f|HuDx z|8Mz!{r_Rmj5??m1hrrPzX7$HK=OnzC>Nlsfuywm*FkL?kjd!ssQmw4ppg&InBo5n zR2kBE$n^$HCn&wa*u>DFSuaTHB1SbXH6T-<ayWWXP+8m*4+CgU#S&7B<5osM1~h*M z8YcjaHiFg;6Hty-nwBoXGj0!a3n;h!zl&Px!Q~!<`WYY<;5HXbm}DBe>9~ynuMrXf zjSQoffeZ})H{jNVAp=^Y4w`iX#SkK$AXpe0Fa;28AIRJcrV84KKyo;3%%;@T|JVPY z|NjM)W)Pu6zM22uf&0Qx1F)4bP$}>nI;b9o)%c*%a`4=MGy}tb>Ho9-zX8w3tpK$@ z|53aG1=O4QfA;@%&{)j>H=r6G<_>K1f6%N9sFvRLA5<1#Q$my&C^XO&Li)$(q65h% zF5VIDM$g5hxgA?g2`Q6snFEmp$J{$mi2m<o&}0w+jiUXp29FHi{14g}#qj^(|13~l zf=E%gOazI8+XNW>Nl<O}|0dY3>;IqsKl}eCSRF_M77S}U{l5<yx5lD?C?V{v2Z*n+ z8vvS#hRJ|K;1h!;cqSh*`^E-p5B~?v{oeoo2{gC<|2{s`U?xGwF_B7C=zI!j=K3Va zOpwa|kHI#9nD{V~DfpD(lKcM&tBVP>*&xP&R$)R|I7mYIABQ#~g~5IAAOEqes)HFo ziT$8nC<sH$0;gBJy%LBzP)qgy{r|l%9x4qo1tfwkZ-T_}<Nx>nm;awfK+QT(n*+Q) z7QaHWWI-(w)Vc<D2!m?^<dG3H8~-0h^z4Z%NstWymmDbZL40Wm(u-`?;9&n3K^jFO z+exq#hHe0^c)~V{_U{vH-R%Ee|L<c{fo?iBK59Bas6Zc?g18K%8nYz&zXQ~d1NjN0 z3S+DQVJJx~kX;ZBsA&e`Q`i_ZtQ>}@1d(8OfJf3n`2ZwBDgOT$;R28k!R9eCu(7x> zFfxRKc_1Q`!5>61FfeE`1Tbhaa6@^hlm>V&Do88@T*L4(@H2=p*f7{K2r@V@I5Idh z2r-B-I50Rch%vY`h%rboNHNGT$T4^`C@}akC^4wOZ2_5~#$W&*mDFO;X3$}P^wM-0 z7#Q>!^cf7mJ4}rkOc+cV%oxHMEEpmfEE%kj^n*^m0hxk~gFvS&Aqzm+(6vbn!B9Rs zxZe$4cfi2IV8g)AU;~AY3=k*=_JbG$1Trv)F~~uo5`!m0AcGnb)M8L)(1Jp!1z=x* z`~blWVBeTAfS@IV0fQw24}%&U^E0S3AY(BGJ<ypu3^oi}7+8=&hXENofWu9n!I6Oh z4Vy7IGcYg+G3YYrg2!w?^{p#|9-Ix*3B&pfVhjdw46;{(!I%Mtr5H>Ykg*JdDFX=0 zF_<x6!wL)*3`z`^;P|#;P+@>zkogP@;tYli@(ku+zk}QivKN~fAU}fSK=y*{VqoB9 zFaw7oB7_+jj2J+Bevw7!!R7^r6(~(Gfa3?`R#-@a!W$IQFbori(I7v;!WBe={0G7y zKY}nQ>|huahM>>`&3_=L7h>3;IK+oRVGqI}_u#^yxI)LUxB|r?ItIBH8RL$N00szz z#UOG#f@XXmI)fO389?O>gf}!v$cQ`xIL|ULm@+uwfS{6rd<+U3JrIEtbK;aimB8pl zp-K;Go;3p>_>=|)20QQ>LZJOy!VIEdH@h)-Ft{;DGDtJXGI%lgFeozkF(@;rGFX!U z85sD$HV804pc?}Of-N9G*fStQ0*V=27=#%hE*E7$Ky+OY+i{bq>LKbR84wUO&Wel~ z7-Zqli-8bCHeHbc0+kt1p(+Cex`9u00_k7{5l{>|XNHA=8FcytiwlD`gBetu0nBn? zkO7}VW6dA{J_Q3V31>KiYd8=WR6+`Z&Rqm?;Issk#{jSMgcv|)(it+aFc>qiG6*w( zd<<IQ0#XP{C*lksC<Z=LP?CWiB+OvPV8<X1#r6zR4AKl13>*wr44e!OV0nms9WWb} zuwh_eux5bnb3l@kgR(*8FNmqjAczDZt_6uBFz75E&`L`P2B~0XfIvuiBGL$m1@Z#~ z!{Qp0BOoFm5>yMr;vG~ja54xoh{CZ5gE#{+2B~Ib5C`p2z`!D)UHeEF;bPDlRb*_( zAOR0ggeqi~9RtXf5R7a;hz${is1RbXXF$eG3{ngr%*-IofDN-Sa4@hkaDwC8fkBu7 zf+048%m(QJ`JaJ766|jfA00#d30hfT54MY)0TCh)lR%_711Lp<SoFt;_yM^UxBZYX zgoP)_|1dU)hJ`CAJV6)~b}$SILr~~RF@S0_M0x>*9U%-#L-;Wyt$^G^3Pz77WIo8f z$QXB+!0G_dIX|EnM2<%RxHcOGNANxyxByic3RE$LSVLgF8BiLLWDsMp#Q{O31o;@# zHK5as)R2S`Z9F7FC{q<mgDB9+M=Bu3ki(J;mJCh|deGJ$h-P5mhVmfdATfOg9tHyj zBL-du69zs8eg;btASg&cCh0LiAf#o<0Jj6e$4)|Yz(|N1ka^fK!rc&+AQICam}#WY zAd_Gi)aysapglFP9y+8KO)SaF0D+*^8Zzc*fIyJjAwGr72!U41Xh8%R6d9Np+!)xv zbrtC38PFMEA`C1H@(c<L91JQ9Dhyl<Y7CAH+zg-=r8<KbgD-;?xHqH65X6wcpwE!X zkjh}kkk63MV9!v<P{`oGP|Z-y;K)$VP|x7R(9AH4!I@zW!+M5jhOG>{81fnRFkE3M zWw^%hlA({`HNzW*MGWs4-Z3m;_`vXiVJY}@%Vi8-7``zqXZXSJn_(5hUxvR7>lpqs zGBT`ZWM*V$*u==nXveS_biyseTSgDYXofG0v5X0f9E|CV8H_xPix`(M@-Z%BT*fHK zxPoyLqY&d3#x0DpjN2HuG0HLSV7$dB&v=K4h0%$Ljfsshn~8(Tlre|NnaPcD7Lx~) zC*wROZzdnc1x$fVfsBio!k8i$7lTeSW?Tk3$Cz<B(|)E`j4PSmGQDNI%Jhfn592jv z0cHWl>&$t~g^V|ti<wIp?=Y7$S2EsXu3?_b_>g%%^GYUW<~_`ZnE044Ghbs8Wxm0D zmr0WO8S_^rdFH<?yiEEm{46R=4lLR%)=Xh6wk)<x=`0Q`4on#=ZY*w0nV_>Qn6f}8 zZ!vH&oMI9}In&q$bixJrykbz913A-}g@KiUje&!KlYxtY8+@J+D6a`H2r>vU2s4N< zh=NCXAm<)?fX_Yl0H1s8L54Y?lafJoF|y6<1nd@1Ow1`^=t(vzPG*>roLHR7Fef=V zw}4?$N?v|0!-lk?#AJqTIhpB+3<q-ZlXDo3<(1|ZF`UWIE6ruNlwXvR$8e(n#J*Py zGUrKgW?mY@hvMAi0)}tJ#Ri59|B8zZj2Kypiw%q!xr&PoOc(`<iw#T}#fnRliWy~! zOACq_m8w#U@)<#WNYJ<%sJ+Pq4lmFNkf6F5bb>P|6hVFgiSaTpFfcRlfJ-e9AJnD= z`5D9p%@;9(N3a+{XN@y3g8N`B;I^|2XcZU(Be+G*1db0g21fAc5+j2&gAoHGgA9WK z10#bh_{2L%NP@;vSQudO1+qZ`L@<C33ua(sVqjooW?*1sVNhgnVenxHVTfT!VaQ{s zU}#|IV3@!#gJA)~3Wf~~I~WcyoME`aaEIXu!yAS#41X9|7<m{)7-bk$7<Cv;7;P9` z7=6I0ijh%(ff;m`9P1hgpX(0zbT~$?2jHFo6Som}7?f4OJq?`V7`Z`bF@a8}Rs+j0 z@(Muo^8J9&LLh%KFfa<`K=`7d)ASe^7)75z_+nCEeavEVVoqXJP_cPX`VEx+0-?pV zptKE?E`ri4p!7W`{Q^pZPAq3&V3dHIa?U6*2_h~5b(^Fd#1E1IP#UUEvVwt$=?P;# ziyccEvoNy>a|d%La~E?ra}RSr^E~E-%&VAJGp}J@$70R=kog(&bLJP!FPUF4e`OJ2 z5oHl$kzg@kv0>o@t6ampj`=wA3Fec`r}3&bV(w+`W1h>rh<Oq7V&=unOPQB4FJWH7 zyo`An^GfEG%<GxgGjCwtz`T)pBj_An=C#agnfEa7W!}fUpZPHJVdi7Z$CytspJBel ze2MuY^JV7C%vYGNFkfT7!F-+hCi7k9`^@*5A2B~-e!%>I`8D%v=6}rpnBOqJVgAPa zjfH`QfrW{MiG`7ck%f(gjfI_sorRNylZAtYgGGQvfQ6rhpGBNSoJEpFl0}L|iba}5 znni|1hDC)%g+-S|m&K69kj03_oW-2QlEsq6g2jS)K8r2roJY_pkIWO8&oRGce#;`u zBFiGjBF7@nBG010qQIiaqR4yzbb>Go7Yi4QAd4XLd}b?V8)jQ(J7#-k2WCfRCuV16 z7iL#xH)eNc4`xqhFJ=p7OXda43z(NPFK1rCyn=Z*^KRyY%tx4yFdt<;%6ygiD)TMo z+st>E?=jzFe$4!s`3dtA=BLb0ng28YXJKYxW&r_K7FHH+7H$?E79JKM79kd47GV}` z7Ht+C79AEn7CjbY7GoAG7AqD$=84Rcm?tw&VV=r7jd?or4Ca~4vzTWy&tcxgyoq@; z^JeBP%v+eZGH+$x#=MPrJM(tt9n3qJcQWr}KF@rC`5p5+=J(9+nLjXpVE)Mbk@*wz zC+5%0pP9cfe_{T?{Db)?^H1hq%)gj_Gyi7(!~BOuiA9M;nMIjJjYW+`okg8RgGGZy zlSPw7i$#k?pGBX=gvEr#l*N?AjKz%k5c5T>ryyZF8Oev)k2!!jh&hBgj5&fiiaCZk zjyVB*zWP}PCI&ACZt#qUJcB#~BY4b$i6M_6kAaz?g`uB;g<%TAECvCFISh*##2HpG ztY(mBSjVu7L6Kn(!x08OhGPuJz-LmQV6b2~#qfZ^lHn1<BZdHmCk#&*0vVn$JYxuA zc){?RA(-JU!&`=MhW88~86v<p2t+e{WBADs!|<EoH$wurW=~}J&+wliiII_!ks%pe zzo#&=GIBAbGV(CmF=R73FuE|zV{~T>VOY!<#u&}8kujDrmSH<%1!D!n4#sN6c7~md zeT@AK#~3FwPG&g4IGu4i!%4<PjH?(<fzG#QxD2ZO8E%1Ue}>zPI~Z>=++n=Uc!%L1 z<2}ZEj0}tq7#}b)GCpE_#K^?>gz*U@GvhPHXN)Y2FBo4ivNFD6e8tGd_=fQfBRk_e z#&?Vyj2{?3Fmf_}V*JF&#rTDZnUR}`m5G&6nu(pslu?Fh57Qn-Z_xSLj6O_XnK>AJ znZ234855a(nSB|PnEjdk8Izd<nFAS9n1h*v8B>`<nL`=Vn8TUF8Pk~~nIjo9n4_7a z88ew<nPVBVnB$q_8MB!anG+dvnA4fl8FQI)nR6NQ7#LYx7%CXPF)}c6F^VusF{&_{ zFuE{?Fs3k;Ft#vGVO+wv1<RTKf0&q<IGFgDM3|(Q6qwYQbeN2oEST(=T$sF=0+_;> zVwjScvX}~(%9v`HnwUD6KqvaoV_L$rifI$m4yJufN0?4AU0}M#bcg8?(+j3|OkbFO zF*7i;G4n7BF-tJZF{?0ZF&i+OG21XZF?%rkF^4cmF()vmG3PKBF;_6xF}E;xF;8Hg z#yp345%UV>b<A6scQGGeJ_atkZZO|te!~2U`2+Je=07Y<EF3I+EFvsYED9`YEIKSk zEEX(w3@pqB%t}njOa%-q%!bU$Oesu-3@psX%&N?y%;F48ES@as3@pq>%qq+x%wi1e zEcVQ5%o0q|OleGCnf`-LP-9kSmSm`9N@x1U%)r3T;>fJQEX7d9l)?0!nUR5=#fe#y zS(>4oDU<03GZO<li!-wpvkX%#Qx?-tW@ZL<78ho1W?7~<rfjBP%q$G-EUwHt%yLZe zOgT)ynOPawS=^X)ndO-hm~xr^FtahRv$!+sF)J`7GUYM-WoBn!XYpXxXI5lNV#;Uw z$IQXN#GJ?C!@$Ix&*IC##9YAQ$H2r~$l}ky#9YJ@z`(>@%o51J#9YD>#K6Q{$`Z`L z%v{D2!gPRviMgC5l!1x4f+dWBiMf&`oPmkCiY0=9iMg63l7Wf2h9!!DiMf^~nt_SA zjwObHiMgI7mVt@6fhCTCiMf#_o`H$Ei6w!7iMg32k%5W1g(V4eMjcBs0~2!_O9}%M zb302a12c0T<7B2YAonp&0lANHKFEEHQ$g-yoCb0q;{pa|<`Tx~Opie>WK3jWX3k|U zV*=S&&ImHIf^h}|Gjk<l1=DMg8yRPU+{ly)awFp`kQ*6igWSk$3UVVO$o>Y#N{|~F z=YZVEI2Ytb#(5w&GJ@RI%2)+*BO}O!cE*JaOw7lb4l*z?pI|z~z{Gr#=`aHm^J%7| z3{1=&OlKLGm^+!yF)%TAF`Z{%V(w<Tz`(@Z!*r2>iMgNY3Ih}KDrPeVCg#=5<_t{C zy-b%Fn3(&RE;BGO&t-bVz{I?V=?Mc9^IoQ>3{1@Xn4U2(G4BW6Rl<CV=?DW8^BJaN z3{1=ynNBk>F`s2R&cMWcjp+>o6Y~wG_Y6$T*O}fjFfrd`ddI-Te3$7n0~7NErmGB0 z%;%U+FfcJ6V0yv8#A3@-#K6RSkm)4@6Z0*m4-8Dqx0yaNFfrd@`ozG*Jdx=d0~7Nk zrt1t$%#)dJFfcJsVY<n{#5|Sh76TLWG^X1OOw7}n?l3Sh&tSUCz{EV0=^g_U^DL(O z3{1?knI14OG0$Oo$iT#Wp6Mh56Y~Y8Qw&TjUMv|5Of23knG8(KhnQY5Ffvpy@G|g0 z`vjmKfjEN%gCxAoD#xJ4pw6JdpveH4t=47G1J6<$G8i$yW~t4=r>a{qSc7N8L30pp z4DJjb44w>L4BiYr489D04E_uO41o+m;F+yZhA@V3&>8FuQ4G-xF$}Q`aSZVc6Bs5k zOk$YKu!LbL!!m~D3@aE`GOS@(%W#z8IKxSXhYXJyo-#aVc*F3H;S;D8%kYnpfsu)k zh0&GKjWLulo^dtfX2z|I+ZpdN-e-Ks_?Yo2<8#KBjISBrGQMa0$oQFwg^7*Hg~^p^ zFKFDI8C2gfGWantGPp5tFo-e8Feou-K+jEfU|?d<VytCgVlV-dUSKi=OlmRKgX&E% zX#yrg80#4r88{gF7-lf6W7xrPjo~^Y4<j$6CCwnjz{ns6Zgqmj`&r<sKqpN%;7|iI z0i>n|tcD4Et~Dcr0@x&k+Zh=_CowZJLR2w=ZIb}20jUJt)&ntvk)aCQYcXSpU|?n7 z0iE8;AjhD>oX)_+*uWggz{FU`9L~VR*vuTtz{FV19L&JPSi``=z{MZ{3LEA`u!?xF zide9UXfzdpU{QYtCdM{qUyvNLHv<zmWI!iGH!wCaFfyED5MThUeXwG1Ven&!U`S%f zVJKs0V3@=(hhZ7R28LY>N5HrHoM2!A`-_F)4vfXL2jl{<>?fEQV;G!e0An$ngtIP# z+yd5d7c9oaz{bD>x`BwX4s@RpV;@-VGgyw1frXI)rk)WL5}<Hp0pDrV22#gp2vY~j z|6si!zi2V&K+}vHIJNsQ_%Q@BgfK)hL@_-E&+vd!7-+>esAma^6B)*8#u~<2#yZA& z#s<*I*^JGMEsU*<ZH(=p_6xH&voEthb0Bjtb0~8-b0l*#b1ZW_b0Tv(10%zEvhrdJ zLn}iYLpwtULnlKQLpMVYLoY)gLq9yfO<|bIFpXh4!wiO*;N7}&8Rjv}XIQ|nkYN$S z5r$(7Cm2pKoMAY}aDm|x!xe^W3^y2VG2CIe$MAsR5yKOPXACbGUV(Gv2XMap1|F^X z3mT_kWM*V#WM|}L<YDAv6krr$6k!x&lwg!%lwp)(RA5wMRAE$O)L_(N)M3<PG+;Dh zG+{JjG-tGAv}UwpbYOI1bYXO3^kDR2^kMX43}6gm3}Fmoj9`pnj0KPFEMr{3xQcNN z<2uF-jGGv@Fm7Yq!MKZY592<@1B{0lk1!r%Ji&O1@eJcR#tV#>7_Ts1W4r-s@iE?G ze8BjK@d@KI#utpQ7~e3yWBkDQiSY~LH^v`~zZm~8{$pZbVgi>I986qHJWPB{0!%_o zB1~dT5=>G|GE8zz3QS5&Dokoj8cbSDI!t;@224gwCg2phgyB4M9&<i(0dpa95oipE zxs<t#xtzIzxsthxxth6#xt6((xgK=$1alK}Gjj`bD{~ujJFfmEF+E3kzY)}D1oam| zeML||aTiJt5!O4r$b6O=)Hg)#8G?F+pdR5Ha9<GA4+QlALH$2a-w)L91NHep{XI}$ z57g5G_3~_)zq6=9dUxQS9jI3a?$LpIbIkL>y);k{4b(pa_03>CGf=PWDY!qz0`7@{ zdSRd*7^wFJ>UrVocY*p`p#B!9uLbL8f%;gW{uQWi1?pFU`c$C)6sRu+>PLb4P@w*k zDX8bfFq(@7eJ)~9V&G%3WAVg#ny(j&Hv<y`3$))V1g`N!8RQt4Ky^FllyAmm3>V1B zgDiZM<U$t2_zki7kg{9|8f&p&o{ujNve=TF2l0%2P@DsqFEXEHU}U(!Ku#NRF-q%j z6~k(93vnI8dWH=Q8yPk+Y-ZTPu$5sO!*+%p3_BTiG3;U3%dn4OKf?irgA9il4ny0L zry0&NoM*VmaGBvM!*zz647VBXGTeu^FkdpfW_Sx8tN6_Do#7|LA9zcXjgf<qi;<U+ zpHYxem{F8boKccdno*Wfo>7renNgKdol%ofn^BihpV5%fn9-Ecg3*f6hS8SMk<ppa zmC>EilhK>em(iawkTIAslrfw!k};Ywo^dhbQpV+sD;ZZau4P=$xDncl-O0F{aWCV3 z#)FK98ILj^XFSPxn(-{-dB%&3ml>}zUT3_CtDVdEmGL{{PsZPje;NNXF)}eTu`;nU zaWZi;@iOr<2{H*Yi86^ZNis<@$uh|^DKaTDsWPcEX)<Xu=`!gv88R6&nKJEV+Q*#B zzy!*N%m&Pc%*M<{%xcW)%o@y^%v#La%sR}v%zDiF;Cu+`JAmfJ1sRyYYj>C#K)I0x zs#}R!nOT)tg;|1Gl39vbnpuWfmRXKjo>_re5wC7W1~z7O&}}RXBH&h(6a%Pj3mN<d zwW639SQ%0nm>3wD)tEu+XF+Xi85A`TInY^*ObjeckxY>c3`~=mCNnTHOE9Z4Ffm&* zgVxtDGcYlLdN`1Ac}N=#p_7q;34Hq`NJN5J5q#sM1A{E%WX36s^BJcyPGelaIGr(( zDTXnLaRy@r<4mSh##xNBnN1m!87mp*FwSM1$C$!c#hA*tklBpc9MsoiU<Ti&!vIdV zQjGD8@eCk$v$3dwe8T{_0}dSWOvy|s%%aR9OwkOr3}p=EOtDOHOz}(!Oo>cMc*Bl~ zfscWOC7mUWC4(gs)OKYMVvq-yju3MTm<pN2nZ=mWn9`Xtm@=8Nn6jC2m~xr&nDPmj ztH&Th?1}6QObkrml)%9BpP7S!i-8HW0+;DOGXpatGZQm2GYc~-GaEBIGY7VjOeEc3 znf`%wb1^V6XEB535SSQ5nZ7cB=1`cJGnqm6fx<)_7-X4+35+1)91jK0y{MAiItQ&9 z;bMBt^oHp@(_5x@OrM#pm_9IlWCG1Va4`fTl_C|89L~VRV8I~CbcWf4=`7PZrt?e} zm@YD1VY<Y0nduSJRb~sOYfRUfZZO?sy2W&x=?>Ffrh82HnI14bWME{FWN>51Ln#Tt zePl*g#>u!!1qLPt2?kE4$4pO{o-#dSdd~EM*^=ocxc|?|-~%iB7(*GSGp+{pkr?C{ zc$f|_9b`JhbeQQV(-Ed)OsAQSGo4^M$#jZ=k%5On58i)(_Q)CCKy7C5oEE4z4C!s{ zXJBH81l<73;0?~rAQIFg<^ZKjrhU*p6{sK1#E`(C3(9Rw`v}A!ma>EyRL-a{t1{z@ zU0raQ@tHsjV=3prWuOtWF`m8|GxJBr2@I?ZEUd;XpflKJL1?D43~5Y$3=B-%te_On z#KfY&0G?q7l{DaqcSjc|R|W?L-hcnu82&LZFtE>K+NZ$42)ZSTf%!2j=tfA;{5xpQ z5rRRb1?Xa69dNnGz#zlG!Xf}F7#SfZgVu}JF&Z*@GNv-tF*Y#vGfrY$$hd*=4&!si z*G$q(=1k5^flQH1iA)=qHZ$#H+QYP;=?v3drpL@I%skBe%)-pl%qq+p%zDg*%m-wh zWj$qmWdme`WFuswW#`B)kliiEF2^q?E~hA`DyJ=HE$1m0ESD^oFV`y9FE?3ky4*au zp9)+GVhU0UatcZcY6=Dl#tK#nwhAr^@d||sl?t5-eF{?)7Ah=JSgx=}VUxmEg<Xom zisFh2ib{%Vih7D6igAjQm6(*+l=zi|lth)Jl;o7Ol{}OZlv0)DRTrpkR^6_;SM{Lk zG1XJ5f7ArkvebpugVdkvss3jA_y7NYaG>%sC@?HwG-32%%z%c#0><@>XBnR{zG9L< z34u*a+nIJV?PEH|bc5+3codtTS%_JhS(#Z49s=&NzOw$ZL9$`+5MYzzkrR_skW-P< zk~5KWk_(cHlFN~6kn5A11P*}(3JeMY3K9x33JMBp3i=903YO3iC{QR-s8#5NhQKm~ z)e0LGwkqsI34vh6XvGQ85D-)nRg#2<K#H=A>H^hGs@qies2)%~rg~EKkD3591fJ<B z{bm4%0Q3Lv|DXOp^8e8P1ONB^-}`_4|F!=Y{Ga^4{D0p6oc|90RsT!<=l#$2@BhDz z|2F(v`)|#^)&G|MoAqz{zv_Qg|0@2K{mcKC@h|;f(!Yeim!1SX@qOa;#Pf;A6W1rs zPne%DJbw0g&f^)6Cq3?Z-0`^Oan0kh$9a!49w$5wc<k}m?XmM?+s8JK%pMs&GI*r_ zNbiyMBjra*k7OT7KN5ZT`{C<{FCRX8`1s+yhnF5+czFKdnTIDH9(#EBVfMp}hY1hk zAI3ZkeQ5Yl`@ydVJr6n`G(Ko}Q1_tvLB)fd2LTT(ADG>5xXW<o{hhaWUfy|r=kc9~ zcQ)Lad&l+m+}rWD&Rm(qzJqxWc<c+D2u3Wy2D+ORR3d;!4v~WavQ7ac0=hvPMB~Dc z@(H%?0pI!&^wDC_dLcyyB?e^%6$VwZ#;ZX4shk*`8C)1#$?78{FeEZ0F(flEfJeN# z8G0F}GR$IFz_65I3Bxjm6%5N6Rx+$+Sj(`60n~5U$glz2Z`jJPonafp4u)L}I~n#d z>;?51nEV(@7}6Nh8M2uI7^)Z+gKpqrYGkNj$YGkv(8Vx^X&OT*(=4Xh44Dj-Onpof znI<q!Vw%p7$56+>z_5y84?{CUDnkL&R7QKI8BF~Q`3&_;fea}OEe!1pGeI}@g4$%D zHAbM-Mhv@|Rx=!CG-HZns$dFZ3TN8Mw2R4~p_<8y$(JdZp^c%Bp_QSZp$9rfJ^?&l z$G|WRJXSZC;VWY{V;Ms+V-aI9V+lhIV>x3fV-6^C!F5PK!%c=#hH8d-hGvFNhG`6W z467JkF?2IbVVKD<k6{tRGKN(Q>lijMY-4C=$YEH+P|VQEumC(h+sIJK;L9+Zp@3lt zLoY)uLplS)1_qrC48q<Ud;%gic$GzNU{JP~*ubV8VH*h+tBq8+vVl=pPeOMCqmII@ z4LsVq8<=#wgCbm&BNcTwFzaMWC~R;Dh)~?%5UIO?MF*r+QCYDn;;!`BNNMk&h={+^ zZzH9Z6*sVIM{IB_iv&wVMoQ>zVAbJ`iPGJ`rn6Cru_GX2gF;74jPwSENZk$WIvZ8M zLJn{t4jmyu1xtP14V*d(wIEB5NS}>V*ubpnsjRSpMa^piLqJ4VYFDBHh+!eEs2C~T z1?B}sfO#Mbxgf3+kQPvk)ZM_Xqi_lA9UdJ8{SEBeF%b$1?#gb7Sqc#fDM?^W(jaxb zAe$8|^%c4l+`HTomAe$Wl)=_1Z(s<D*x+Cxtr#h-46=5ELn??9sk?y>Y?JLZ2}MO| zg=<~jK@kdF%AN`v7(yYg0l6<ycLTqUvcff}<;n^X-oes}8yF)ax;C(=c`A1)D|C5w zDJOzl0`iU`2t?{`5CBDkkhbmyL68SP3?VcRbb<V#oS2n>>=Tezgmo0U6uR0$!RD2s z+{L~@At1s=`aq=a1`(aj3=WJAPEL&8I|LY#8Neh+acBgH42n=rQrN(t>?EC}uz^w8 zDN<pBLr}yf1_cJ^WT#Dx3XIOlP8$@GH%O++C`N)jr@KK^X9J^ivhoH7=VWDFP|{^& zVEq4|fuDhuVH*PjODn4f12bp@pFxO0l!3umP*G5olTlcaSzVc(S)S3@o{^bRa2xaa zKie2t{{4wy;-8kqkze1Q&XLkSnURUr<JXRdjMo`&|9-;Aclk22$Cm>KzWjatPm_5Q z0~5o#|IZm0vBofPGYB$-GHl{xV9?&e%)%hRqRqHLNPh#vwT*1NFF|-S9~%RQ_C`UW zmm382H}VO++|17>$f3POK!QPuMSFvQ{uX{PYojou_C|gIL7|PD%$Al628QM)X2wQh zq9Sa{N@~K!?99r{>pYANJv<DJJych*h?j_`S$nwKn0t7z>K^#>iy6FalZjyob1~Ba z)>Z~q25tsDh7BzG8#s-(Ft9LiuxM{!Gh*DpqrZXm+D0axmm8P_HgYp+Z{*;4xsjJq zo58>kVu>o)swG?46w?$LlfV>f>z;qB7{m5}Nd_hc4+aM2J*=Sfxa1k588%5VFlcWQ z6_YeJHr~LXzga|FLRv-Kcq1e0%gs!JGO{Y-MjKf4H!};!$%BMhSzm5u<K*I15jWbz z%EG0+*@2avQ+pE!H;<8#5#t60{S8vrwn$1a2(f5ykQCU+&ZxbG1I*jR&H+-*&cdm^ zfkR-U7^C(UQHX@77)U}?m{WU$DA-e5c)$`H6&bZRm`UxjZ~tM(Agax^%f9UURuE%@ zl)z>tDRyD)&CFnu4Mc8`6xhru$sw%0K}=vXml(G&$h6J8qCCRdn+3q6Aea;ZksvkV zU^S8gn<c=yqy#og!_1KZi--wqmIbNVEC(V%=F5Y`nH>a}m_b1xAP5R88Cf}bJv6Yv zK?)QhrpCg`rpCg?%!<Os%*LY1V5}^x$gC`Et|+YNu}O8^9{pT>MghZI!=)gOajxON zPsaHsHH`eK|2{G<DrM9!V=VvI3BqOnE|&g_V_XEnrHuLvj0{=-<(cbQ|1jt>bTe$y zU|`VRpl!U7h2!NW4RE|@XmM(9kk;QK#KOP>O4fS%8~CnmloNirK~7+!7NhnCL8FbD z5-&Fh8*R`8N7P1D;g=ir8MQac@d*lTV6@zzCAfjxa)YMOMiyyH%MI*;8<Z?Js0wWq zm$0;C*eJ~+D72M<kxyJgRYlx#gOK1xK@m$!14Da8IYwh6GgA{i7E=>5b5mncIYx1I zJw|0EHc=5d7Euv4c2Q+hJ;p3Qr+IP31tIlQ>q8cHR3~+sM_J~E#N~knR!y!>+Sy)e z8BmlMloQ|<)tJ(`UF_^>t}yFVbGz&)uQ+#?gx>tgdqvKl;)-NoU}f<5|C}v|HG+Yg zL7YLFL7l;vVH(3GRZy5n7;n_(ez}R6i9vgVr13^k?w4CQ`Bj;DwKsBdzuY2k2xiK2 zzhvBC0?zk55-&IK2y7H$)ZWM@@p1#3z(yHH?Ts1|FE?liY}8}a-l!z;a-%7u_C_Hd zL7~l@%%I$2xlvC;P-wHHysDInxFy3zPHjP<%`!?FdMe_U8%5;>g*LPC2r;OLTN)S& zBNYqgB4Xf>Qd3r96J|8#WW*uov8=mu#fr}EW%Wq`eo0Aw0ZG@Ho)-U=X1tFf!My48 z?c1l%-o1Bb!NNuJ7tEXYdn#+;uYSf=Xu_bLrPKfCEC*R57<3t|89W*488&Hx!b{nB zqcP{p4N69vc$pZqH@dUEWZd8d4jDb6mmBm1HgYg(Z?xfmxxq$YqYI<<MghK;8w3P4 zN;7J2lo5Qn(HkVoAt<zg)pCQ2;1*s@V@pv``VbJ>U}m{NT5ywuyqYB_{kR*0(hrA# znx#E7VC<O8^%zY}?3lpiCLa^K9HY1$qq#93BZ$SW$EeQ7sH~*NWG*7dWNc(+4i*p= z5fis#HZ=i-p_8^}qOqpFZcve1ZMSJyuDR2u1lvTpd78!kZgm!V9<zh|_Lav>%duXp z>5*XJR%es6-NPecp0ccNh`p+{i%%3|j7wg;zjDYtFPEY)!^!1Nd5Iw!83zMGj+C~3 z%F=fd=n?U?bPKUa>WnduaZ<804m+D;S<94ZUT!CE@8Y9t9g)Yt2r9!FBfw?2BB%t1 z7T=5;*kENhsQd<%jG!_Csknxg)1cM33@iT4V3KFO&A`hb%)q#T4;=pNd@nchLyCF< zA#-syCQ%U~adtJP75(*@<)x+Nnf3ilmW+IiN6#A`{paxJ%|C}DhG!X%fz9*#H-qsg zvU$wcHgX}%GZQj3VNy326A~0)V)rXADJjpWpD>~R-^rtl2VTEnJaE+T{6Cw2AOC&& zXL$x}UO96N(?ixx415g644_Jh%NSIBvV+PQe*F#1*S4@gif{o&?TswVf<ha(Eg3d4 z^MDx!hQj9J=EmaY;_Tw=>g?*~<?<JVQ-m+e9V-f$I5DV%WmTN<-P?w7K?iI$Y_K^1 zw$F{>D)SbWVg_!8AchSL`Wx7dH!`xn+`wwIiGdMRdoXZuYHwm>05KVvIkmwRCD*kL zOhy|yC0=e|G1|n*1(M?g)m2=aASM?Br#7tSG*uKd7E}~f6jT;;V=QT9EdAHr%9K*i zIN@JG{l7v+@P%EB3<>|1FivB5$sov}&#;M=fkAsCH_J;#P;-I#+D1N!mz$XRxU@Gj zFmrHfgIWU&8@X8pg*Nb68W@V(F`9zf0j97F&YlpK%*Jo%;brXPGokjEdVL6!wUxPj zR!r+r(Ed(Fh7iVsOxjFN49pBlApe3q3&M;WSoAkCFlujM=4Iey(cZ`kNe-rpq9Kge z84or#f;xe%|DQ8fGQ4Eq2DuZdWrNzv;Q^;9Xe$RA5XfzoR#<BV)=mM(gUG)fOq*EO zF)%auGJqTdYAG>GyxhPnu#u5bdn1#?OOTsDwYIJPTMJNS&9Z?(Zv&Iw1_ptR%&b2_ z%@#)1pG=z>7@3$swdMu~DMnB}U^HeFVN$OCd-vZCwr@YV7#NrsqW(W;UchS1z|A1b z-~?%-ZRF>Cxj|BYBQxhq#tm{{AMgl)%WDx(c`fvEqdcSbMiCxZGi;+Izo5`YHU?0| zBrG6gYy?W+%1TUNwjGnHi5`=(5+764-Q!2^-aUH!?vmbO%NQ3`RhJk`%Xnv1riqMR zj1m7<{M+_#+rI^jiHx5A9{&4l-+I2k|6HT3Z6j#hkC9;!0|Rq2E9eX>Uk1=Eh}s(& zIbUwz0yUd9vU0!Nz@g8$fmeS6)3uFUJTEtKF@aMb52yAfCUBZ$V&K%??7+mrslAbp zQF|j7lc3NB4p0ly*i=za*%VX)3Mz^&V$^;Y)oRwr$k)w$I7h%h@pnNt10#bM0|WCs zR$~TP24{v%0-!X>$NX}G6e5JguWe)#dbvrQ4P>jhAg4AcgcvsRfm*8ELY9^rqy#rJ zu!+k;%3wQ2SlMgGXsjrzXbLM@*}Z~xG;X^X(0jPVwAh%j`p=fh&t?Zz*97%gvgAhP zTwWKm>-hCb7LJK2li!_Q6;Rk8;{;AGrvINaPh>S_FlI<&*rX3~9}Dx#4LtfAdD&lX z5Y^u(1Byr!{SEBbHfr&_+@K|}K~dqF;6@>ymm7riH!AYH+$5w3a=8!>r#7h8W!T8W zA}F+pfl<rS(sBc@;6@cyOUn(SLYpKc6)i!rjA(u^DVrLBq8L;&u&aZ7CdUMBeaJD3 zitsUkY7)~h>v^T+)3uWplw|Zqs8(hKby`RJY%2|$kYU-JWu5M;?OZx1%C9jiWI>*7 zTw|VPqMJ&is#BD4LcW)EmPd?kNOeH@bWILEi;z5*u<isCd1H{b8JIw)5;GrUm1f{# z5MhXcq+L+4#b&&bn-f$XZD7)8+#ssIf%Do19;1yMf-g5P8*SnM7fc*%oZ6c>!Hs23 zP#Gl#YUOhZ3T+e+1l60|43Nedli&scP<z6Z(OA$}R9R42P*qXT#LQfokC9!ONq^7g z&GY}IG0tLR;gB?yWz5KDcKLI)<KGO%j1I;s(@CcKQTm{=!ubDl<{7Ng3~CI844agY z;zxr0<pvS`je^WC88@hd+__Pf=jBEXXp4OBFB?$a-XN&Qw?W_l>qZg5pL`oc4=`*L z5Y^LT+$<m{A_~jg8)ZRm7ZL`!9Taz)85sE?sSOfUh$s?P6jfw~#S<igjDsxa6<cTe z>CUKkNwAL6X6pUNrmP=t9WpuJ!K->+m|tT?$gDi;C~dzym-gwJYL-l;lm698${421 z%F0?=U?Xn`-nh=hko5mK^9ojD1_cH^hIEEaG9aI-aJ<~0qrXvv9h@LpK|a+77b${* zFE=O}Z4eaLsL80kQC#rlMgvCejhcdjLYsM5MPxwD8F9gloE#u8>8OB`qqv}@rR7E* z5ka91oR%9{1vhYjqQ*oB<Qp+a>z9v-9n6EJJ#$bq8Rq$<pzh5{S+mUJGz;ups^Tq~ zY?lPAI&GKL9gwi3(rt;rq*}uuTjla9+eu6@M;S%d1q4`U>RVX0T$<w(aq@KBtUNov zd9Te59@F&BbZndw0O?CdF)%PMVU=d!V{nD1z>SO`Z}Nj9ltc6-EXgsWCOJ^8&A}-s zw1LZ#VIw0b!7+pUW2z|1#>K?0Y$nBI9>wfcIx$S0V?BpaL}vm^=cLTZ|33bE@$cBa z9gHT7B8*I+8+n)+LjFHzUdC$7pw3{<;L4D|ut^yd^15s<H#qBW<O8)W-M~SvA@Fho zCn)Dz2!b2h4vg9xh527@FaU|k3BBCt&Zxc7!9q}II~yOXq_VE51h}E?tP5&Hath0t z+CmC26FVkzQ&=k!l;8Q7*hLW;9@=ySmHX;^jKU&vOrWY6+;|Mpc8SpU$hS&r4+v{d zG*&itkkbxyP`AsQ6BjeDz-flIce-_PuVr$ht6zq*VMwmElY3ciOgW>UeQtz{1c&jY z44>)<L*tl6ALF<nCoxV*d;fGtulhJMvxMe2^C%b9`gHp!7js$DJ|=DJ5GNyX>t>In z)*=QbhM@n?nWrJrCO;^I#F$@hkkj9&!v1oDmi|Uoj+cxZAZb$(ls3W5?G5Ti8@Zrq zQ;|VXXd@_(ZIBk+%rC|&2M!%EenFuPLY5ok1UCp<Zqx#$R4xW-a4{(iZf1i5hzZoF zR#S&2M{_U_(lIdyb=vrtf^0K;{SuZ{x&-xXO3IjL7Oz=g=T;SG#bmoAXw}JiW!3hR zoCK!S>WA1VG55#K%D45K`)1zJe{a?W_}OIXTUxeWo#z*I@>JvGfVhK4G<~wbbL!wW z3iBCof6W+@IzbIc0T%5IqWW9-p(8O8ptJ!hAlZ0dZV)m8jmK=11UGq*TPlLER+X}n z8obql-g;q{f)2NU@&*&6EysL@L6AX~ArR4;1NE0hp_a?(ZxFh+fx~E{1n<iY5&|3e zKuHnY*3k#G_CWRMMrI*Fq0QWaqSD~-#?#(oMsg!c+m8k2P}D{s%Tkzg85!Idd6>7b zxG-=sFbJD6it>Vy8*|>jfPe28g%~$5rF1YxOj?k}kv@MCsNLko*v-6!c^?Ba13QBh ztn~<LII^<8WZb}^zmXFhgu<qZqKu}BqHfH2e<m^KF?QG2Gj6E|AFGaLr!J$ZE~6=< zs2k%3MxlT2{sl1SG4f2BpU#oCVA8)89UwdX{y%4CVJ!vsy)z&^?=AA+fZQOVzmXYK z=xBh)A9(p+ZkFbg;nUuz#QSmsufRr8Xu}Ou)bhy)3T@yA)$3cBc_ie)0}D#vBrGZj zE{h~UeQ5?ZUQl=&7z)D*R2Fe%H9HnaCy*VvhwbOIJb%GHLyrJwRgTF#N_GLR`YA~+ zmHPRvCdTgW#>Q?er@a!^&2q_0N=z$t4`|4Zi-|W6DzP{J{TUYiObi+S4ztCvYBRVp zgfLuS*x;zY(VF|^27djG>Z~s}s0(cH1SJeH)|VRs^f$_}zT9A_4{G)?ZU_aX-i>Aw zFE^M8Y?Nfw-smRra)X<|Mjb}&EnJX6!!SsFYIpwgc2IrFx4}nXgYtoms@y*}s2tef zBe2=mM_E{Vldq35XoyvrjZaX>l3|OoimHz<sD9OBL}G(l(i?T$1ckQqvx><XTH8B< z6D7a3pwI?8%Z&k^f<oK47=$Ht%!EKSn4I7SMNpw`B4nmwYy>I^Kvk}qx-z%~fOf;h zjm?dj*^I&MC{R<G1=Q(;^uEQ}l$BJ}m{h@I80Nx|vLd7FHKXa8IX~9L`IJp^4JqYf zF>Z0r=rd2B7-bqH%OYM7V7taJA;8dm!qx81fB#Na#w>Zz9Jj(%cir_F|9&4XWReZC z)s8i_mbKNiO>j|WTyU1r|6OC!re8DKPj|Zc`B?`{?h9Jk6{c?z^e_E`W$wI`>dVu^ z3eNt!yJgzT1tG?oDH(CQ7=<?_g<IJ(y6LMsrGYP^1FcM8U<qNhXJBU#WblTx(l;<0 zZ(?L((B8tv!NAC?y^#&n6oriavWvdlz%H<ng;9GWv-nF;XKo`4yP(i!CPofUaG)}R zMmTsa4GfJLjTx1h6`6$<)%6%bVaLwKc>Dn4@on}0#2VKyPH|9mROFC%RAsgQb&zq^ zzceQ0vxWCcOYavjFf;66U|>mNwPz4!kYP{-wMrO3CBF#gOR%#xs&c;EA}a%Snk*>e zs)3V}2+zw6vPK(31U5=AYH#G@c?oGSvkSl6sLrUpQBg!tXd^clsAVDpYK`z&Zjcq+ z$i;058oArR4sx-eA~?3$*hS?S!Hp4B$RLz9qbZEBgK<LIs!Hdg^2tj)JN6X*`}b<y zfjygE9bY$X-n{dy_9}k05h;u0Im8!qCrwE*Y;WwWEv+vv$WLGZxB0XFKW7PGjbKn@ zFlN{!3-Xf~*UL?;Obpr^dAMFOZcqYyL{RMIMrB5AhK)R8f<jw37&s+CV`rcNGSpU+ zD0H+(9F#8g7@4x7=ihFs-eH|!+8CBFC*RgOduBq?B&URcla2M)=SDIuSj5P*B_YKr z$I`{8??i3=>3%;y_l%hI_)U!9DNrVGxHq%fGjK5oGgv^<0;pBKi3#LFVNfa%0lSc! z=j8@&0nm`kMpn_6pn{5FqcAskXv@IRSWr=cK~RK`Nm(7ztJG%P!5F}3&gc@f;N^^U zv);UZ^LiGm{l69e_AmIeE~cANnh~@dhL3>}WIyv|R(l3+1}~`XoXpTTXJLN1g%y$< z!R=8<C!LcA)MePj2_D|y<mS}g?7+zkCfVU*7?AM`&=`iI=niJKze^bZ{bOP(WVP@A z7d7#p#6+mQ`&jM4r#XT9sgQJrZYLMm^Qd+rY~u#k9SGaNb}=#hV*uG?+5dMLA`PUm zMlh%{6fta4L{9@-q-7LYd9^o6gX#rHx)v0B32JbIib*+vmzyNzxU@GrNJ?{RgOjzS zprFtu9#&8nZ-X4H=`AfLD6~P&a)XTEMnMKk%MCn28#y>ZeL!KfhBqt;2`ZW@3c`|6 z?6QaL-Mg(5jN8)EmK57t7cR^3Xw>}om~n^Gwf5F~^P{0DDZ?(u)B~21v{f17djFnw ziGZXga9py~gX7X35|<m;A*IR&R^u(qT;SZx3`+Enm;@y$CL>U);$YO?z+$wK9X@?y z3>tzGG!|4AR21B?im7nTn!o+5_J7YZ8UH%SRQVUwoQA|9BdE+^W>AFK2aZGdNDR-* zjm$jYAs7Zw5;Ydwu?kf3K;p#y|8r(lR(l2k25p8-;8rFJ*UL>DObptL8w9~!a4w#g zpn-3OjT|h3LK_(vL4gVBrJ0!u8iP~2l6|#qu}5y!8tsU_q(A$@0^D0?F)#k(6E?Hh z3F1DMS*-TpvtGbyYy$^8JiwzM4A(aDfM&0ZK!Y8S&c#M%E|5i_05ArPf-5sJ3+`CO z#$<5dUku~3{r~b`u-gBPXIl7=;m<*)UH?A(3xoJ)2Ll81I#zoIRt6nNSb*9Y(C}ab zCt_xvmz$WuxrUjQQ+p#jH0^>??~YYWKCJe?gC@ewVwGgIXOINV27=1r4V+MSvl}yR zkOG?~DfkjJrNzaly^&MsC3wVJ64dS%5w*13z$LhuiCqv}vvLY;<l_gGz@VPfMixG( z=NN^Jg&9Hd3+kjZGb%GOE6Xv83hp?`$dbev$H;VY5g!Lf&cA<&|NdlgvI(-<|26pc zmQk4L!moo&kE3oy{k!_tk!e4pcGRt?zp|jdJE;CB1=k-z5dUxBhPs*4m~jK73=<Z5 zxj`5*X3s4IF2gnogWL>q;06xCjZ8e2mK(T*HnOl{b+8^IDBj^t-N5*4A_p7aq7DBf zCUS7_vD*LH`tN1hoh+tpzYa3{F^Z&J&i)G;0AXSP)dA00BN&7k)EQi$sZA1A3n+s! zga$ZFMZ{i$>M}Xdz?axdaDQ74RE6<_-J>iiD729aGI|He({hYLq9Wifiyk9%A^_Bf z2DMH2n6g4<T&}ObJToL@CWxL9ve7bQQdHE$OiRnmiBVCLGAx;vEn;NY6qm5+Kf{7W z|Nd-CPTt1IvZ(&_L_fcYr|WA^cKi5rp9HmML1F8{YR|yOAPyRP1f>XY%GxN-`Em;{ zKR93Wf=VxN7X@4o^BZm869BgrK$#lUP1z_8>VP3vx_nI9jFOP)F*Q(yF(-dVqlZWH zw){_bH>_T>{w}M%M(p(btT|~Wf8Q`IXzia^$iT#q^=|_!3u^>}0)q)d1OucZHQ)k| zg9?G1U<wXNMX{F~6a_YFLqpPxQG27dqM*<wRvCWKP#KrtCLvKt@XU*lq@d6SG0P1G zf?K#4L}k>VJ!c_MYZ@HB;HekT3=6o<Ra4hvhV+}UgtT+*hHU*c`MNGLit=gJyM9~e zZ)tSH8|)K5Y$_Cr3g_i$<r3Z0!<V=9^OVN(ll}ZApKnA9|0q^_27U$!hG^8(y-|Ym z<rY2xa1`)?{4WXiKR?gQ4FX0R_ysnChJry+AO#u<295vnazUmqc`O+=3V`M|xhywG z2%@!y7?l~7k)viw+WK18C7p~R2mbB(@@U@j6>}f4+N(wPXUyB9{C69Z`QMXFhZ~z) zLETvfMuxEe&zZlmMlcwIM*9pI7_>Kn%2shui$V^R+D$;6NziyED2~_}wKwXBLS_*a zg&@Ou?1Eca_{8Nj3_)#k9ifd<(x40}2bp9Ql9JW|#}ceCHqm3!XVhbcwbJ3!t4#8Y za?sIDwXigg!x^nplx+eH4(KQO8QK@ljHx{95o0?ozOX~h$xm~iWxAKPL;3RT-cRew zePSw;j6IAs#Y03ag9^QTniEW8yz;DFGGh!~jMW8#B<({Ay#l&3Y_h>^JWB=!76EX3 z+KOQl8)yXqs42aXff+QA3F>5SV7s=FmFMLqR`9?xD>J9|CN@@3oz4at)8qt~#GoE1 zXwJow`TD=?H7pzY`+o<pfbP~|WZ3loIZHXXJT_<8Bnk>o4lYO=X#*d;KxXCvPdxB~ zW+9;kGB0SZNfb1CE)1%$KwT9(CQum$YN;vdF>P997*gy6n%!IC)wm%oZF8d+lQy%+ zpBI%&lC-sxmQ*rJ{CTtJZl{e+=Uq@43tD$8&uY)W%dm`L6EA3fl*bsfenfjC7q_u7 zY-Wy8{N)BlfsLS=fm;+jNe7+*v3wf^>D6%wY+yUUx`A6@1J8k7wrOwQGl*()Z(tMH z%+AIoti727Omc$AP3&x3h_2oS4$BRkmJFNOIN3Qs{XNDlY@9q0rXIMv$Hgcpw1L-> zVIu=Cv|TD_EG)+;ZfwVBE^N%GyzRQGxjLt+rSkQ4|H6*5+W*zAJX2nNwu0&EFVGF; zjGz;>*+BK4BBK$cowh+7;=fId+#<#xA3|E|jG|y4g0hyV5V+wE^5H?<&u2hB+`u5P zLGb|J21bDmtOs@-{Ph7m^TWD9T#s*q^ns21%s*K-a39!pQ0j{=*yoG_o0%9{LF+fb zBnyb#b@0-M8(>*(fz3SJ{KDFsdBG$fh}<A8uvtP{Tv&UvB$$)}k(-zpS&;&Z*>VGm z<t83(ek3to%ME;%n<S;h1%)g(NLg->uw-!HVPfUsmyl*=;pLN*0tG7!Gdl1yv2ye9 zi%Uo=V#@02LBd=F6y{>!B!(2$$f3>*?Fuq0>u=~2(iGwpHxS=7XP2a*1gDUyNZ*ow zFVCJ9k{93*P!>FPn$`ZVYW|h{{OdVPxBseU-Gs1y9c0$@o9gE`)$h-BP&$-nU|{|O z&JSwP(vaU6++o?kV+?AafLbFA8<{{=J3Dw8hA}52lIu7bmEn$(XKepBdG9u9eK}59 zEy+z={!L<R-+M&bT#-Z8RN^qxHm1&hEA%6*tt0dqBmU<94PwkP%(S!3H2OD<f${%8 z1_tJf;BwiBVG|!H-!p&~R&W_JZV-Ts@9@0bD9EV2k(W<UXd??7s1RcS6}haI28PT? zE@Bi^7G&DCPSH+@Q`uF1&8B}jYgq07wR!dX`1E@*R{c5o_XiXBfM!O97zPIBU*LX= z9>nh(*_mH%VgZ${;DIGBeb7oMhK=l?foeue$b2&!sH<zrs0bS5QWTA0I{demIpVK1 z)9Ex8ul|(Z+o0{fga1x4>9ek4U}vyp02{f5k()u7MSBB-{uWj+3tX5nT-(CV3tC14 zno(wzcnRY%8^H$C1QkV<1&u`yGUk2w@b4ts!-Svr6F~b*{_SAe0iG`nhRv65VU%Df zW6=f`7|e{?TbRH+*sSTH^KTtMIf?}_Ysx4Mo;78b#xiSa%&06|$)r@tx(+mD%D~8A z|L-K@8nA!d7{F^@wy=PGv4LHG3j>%1_7D5D4a`Pc*dShF6WGWo@p1#B{suMyn8(;* zqlDtdg36|ff{OO<-ZAF>n|z&3G2tipm|sSQY9=@4de#{5xFl#8gqu;Bo3WbFd>W(q z<hB%!^j0P}X0bo77&90J{(bm216*%N{`<%L{C_?JGlMw824?+@4BRh47}S9Q1p$MB zp}3-`q9pUVKSmP^85kKoSf(*;VBN;R%%A~MzlD*7fgiNUfCW_NZ(#y^0IYE%BdFwO zurx4aG!|B7^w_YYk#*a@2cWiG`Tyt4&CGwmW0SQEn?yjVRuWXD$aB8j#Lvi}y^(|S z<rZdTNq%1Kjm)5xK#;bnjPT11G6EZwK%+pSMn)TjdBAOH5kBzD7-+mw29)2pK}~2S z!A%_epyt&E5m4KTVIwoBktJ%mfdjmTieG304|uRmMHM{d%m$f|6cZIx1`Qf1E2%+; z+y(iV%NbP}?S=IH>>{SxIJ=#w+_t2fpT%QoO#QNDDPA589<^&SbQzhJtW(yHa?^Iw zEY%IUzx(gJa_i73lfyinoft&~bnOB_{$BC_ISU`_CI&GEHHKtJ&e<dg^0yT8%T4Sc zf2%Nqq8&WJ$8c?<IHX@DCh>BExBz%~n@1Ep<+o8B)YBHR+#oNwksUk<DFw=EB9<Fe z1UK+lZeSPMzyiu{g2sa2IWDBZM0V)B0%*oXS&4nc3Kp07Aqi7bj9ts;gt<+1Wam?K zYA~|R@X?lWNO7y2$hzrY@fPa<kJeqq^(VVM9ITV>TI!ppOo<6<PcZ9%^wr}2KW8pw z{==XM%CnI1CFYl#SV11*0gc{3YAiufa5crSQA}1)2vqd*2ySBF1V<4oXo4Ly(ga>= z1e=}{MHy&fit}q;mypzF9HN_G?NS`1uNzS8>`|)g<FYI&X-%yM<A>Tq?QS0WIqHTM zX}w`#Jt^kan)%jlZmowwVW05-IrB-@O$;Io$_&|%mcu3?P}obroGQ=!as!t>;|3K_ zO5P|c`VzGGQJPU3G~)p3A@c}q<mG$0fmeT{Dx>yBX;DF;jjW*gdS1Z|{FV$GC3poP z-OLU0f*TktH=y}R9W;^vNm@*>qy-tGP4Fn69Trya#IdS}kIi~k#GVK1CN#TM+1Z!b zf+kuSKU5xS_p&ox#aRE#uhcS>k^j$@lg@5T9F_(aDWDs+nHWIfzY3h6R2Z@tHi?70 zCBO-d0R@hiTV!~}L8Ch|psb_{_8u=ND;a@?`(;7>6aJSQ)flxm%JPExCj#Qo{t1t; z2)KVDATB7hK?F1lutC^zgAAev2#PLH+G1A(&7GQ=gS#hsOy-K92|PZgIG@@DVR2Ja zP1*h?aBc4QsIahhnxCGsuF-1=lW1e9X`-Jo<A>@)?H*3mYqHE$7wyqj%G0#-Xgzpr z)*|hIQgHcX%fP_Y%X*qYlpzXQQt*K488*(Bo0u3Gv^Ve@ZxrQxxk1o~af6ut1`+TI zBT%`(XS7LJ1k}707Ub04Bq9uAihx?W;*6jnPSBbTF3SyUf*UwN#ek_fWF?R|yPC3+ zEF)z4-nOH6s(y&Fs<~zNrAsTAqw2Zl&DtQ$*C=^#Ugw`>%u(P|C}aMaGJjzH!(h(f z$q>nKieZxrDD<^BUv3fxrT=iYmz%^u3`zEv8;tcgTC={~qUi4;%&Wao5fmFy;5yn% z=;a1=qYVt8c?%2vmm9nUHnQ`*+`z66VugSf@(H}$BohMigNy{H_GSl}5Dx8)dO|NZ zMl)(}^a9oFpdp)$A?$)e+qs3s6t#`5ok9H;8Nm&bmJAzRtObQO=~*yXT3T+<65Pbh z;tpad3T<Rpx3t{gFSv=DO9dn%DYThS#w!Hevk?ca6$MS)njz+I#l#gwL1QG~w!4}- zAET&<m^CA4Q8j3)LJyL#L7h@HZAK-KJZM4}GFbsy^bzCdqH64_ZWv&l-sz+1F3T8o zR$1RNsnti-Pgz>UEA7C#^={3(N@Hf^*i4z(?ok?~o1U~r)>+Zi&{WadM_b#+TCqAJ zqI#cwu|9{mzm0vIG>2wqbWn4QAs=_6a+ZBSV}y~gfVjD)zHMQxTTPsWvRhI_K%BC< zm%5uN8<%<*v$%Prt)ilBghhS@_*ykah7}A9%tyiHf-9s%294Q(%VGg&Su6_9FrZ<6 zCh#yn52N-*Zl0H*1=ElP2JE0-EU5fNDRV(pi6AH+u(1oSSi$BoJ9FN|6;a84Wj>%H z^{h+6(F1=wnG$+yeSQ9dwofxKF?2F8Fc!0RGH^5SGuSX};sMo*yr4wRslSmKw6aYA z>=ft{vCTZ-h4B2)_8mWbjTNXMMOx}EXe`+2Vrb|B!tyIvWeu&Z4fXBpehV=_{sX#2 znd$$!e=cBq`5B}cJQy}{fUM-z-^c=4+9eFKSq3&7xmlWBfKPj)81KuC;F5z~P-vsD zB&b!%0_yQFfGb!=P}>q*(LjbNK}+qBX90thg$$*=3|CZ7)%QB&VyN%pqHpN(FRq@A zD=mg4<oB8xn+4cTLfy##iKEA?n^4CvLDkC!M#xGo&={uhOHfmg50txEL9GB#hJXyY zLdP)K1y?L%V_dQ8-zLWD9slm`V%_vdm5JwH;omik_iz6D1+wS=bH-h)n;7^R<RLZ0 zMmA^~fCM~fBv%mJQ8owlWyOrG7$HTT+KLsjLLB^jVgkC#2|*`WUjF9NRA8y+;4B80 zVJjFI*x11JV=g3(Z4{I=Hr~X@$e<0b_BZevZ<J$xxk1bbHW#DF^Kv5-A9(x-G-x8p z10LuEErAx~0oS4%6+tB!i{(bpfaeA-&~k5Zw^NQmP-qh~3m14zfw7=5sN-pDBqk0T zN`j|Ic0pxu%48Q@(aq21G&8EWQO<8(%&e&^qT&iWS41Tgb}~Qi_ee;I4$Fk4(wTqt zL5X!HB&|Z?<S6qW1`&n;h@U|D2JWMc0-$jqc+LU)MMPjDa@G-ncwhq$XxxWkqX0P0 zSfE3*P-lxm9SX`q-TZ7GbK!Xi?7pKYIS5h@{$T!tI>rgB-jzWu5lA~yL=-W`DT;rL z6IR2)$~Wlv1-Q)!s^IFE#l$SD_wj+!>ok3`?d`LDG+{KPRpQousJ8lWE2u3}4QiN} zr}Tt{^`==^r1gT@CM*8Mu<$YeVGv_bXGmp0Gzk&G32GNI=reABxL=It<pyyhaG;6_ zz}tnO_OBQ;P!a7yK}gjNX%{jIZDa-qu`n!UfNF1$-_+E_CBgdyK&3Zm@Rp4olr~%z zMkGv0g0u}gU0Gb};4MS@Mz4P{tnEdXK_0EUO6!kzd)S$-`?rCq5z#tyb7BCk>xf}K z2~H=<44DjwCKned@q_a4Mo_zp7rouZ%c#9U+6X)|!6UGdO9Iq11Gl?);q5Li(4sDe zjS`^oI(|@77}V<GLTyPJn}f#p!E0zBm6MsdAabj#*@Z>0eHDlGtT3#tE^C{(UzLnW z8_fgJT3z7u&vcgg4}&0sJ0$%hvhzk>u9urQL6tri7i2jy!?lf|e9OcKnYtE)#1g|s zE=X<_K+Ua?_AfNe8&3?gHc*t*l(X+LW`4XSE?;yq2S-}{-$n*T2Fw4?nI)P3Fc>l< z!q#$fK${z~pan`s`WpnVZB!6?xj_N4pF~UO<wj#h?TrecRKW<^L9&&FTTE6(AJkUR z651#!1uDp8Sp<c)Ffa;AX@P{rKurkbT_jBE*v2`<;lrGkAx@o9Ny(ZHL7JvnA!Y^< z^#O5ntpbem9pfTZ?fkV(bHgkQVmc$T4i*-eIz>CGTY`qg^<ARutuuYJo%FNR4a2OI zjn(7@MRZ+~+-$Q04g4Ve48#A=nP##4VvuAgVb~-LYG?64Te%w;jX{0J4Gcz`SiuW5 z!Q-1u44|1bDg6x+*EYhYPbEN&DDbLt3Gm`h2?kE>4V(fSnfYFVy1$@Z6U-8VLK~PY z88-3=3kq!z0M}^zkXE8FXr@Y05VFJq+S)Z0G@K*S$H?>Vi*uN?t)!x6qJBV*iwvl} z$SD5rW#`}PF)0FE^?c$+VO3sC>I{qwv;IG4-o*TvL4+X;QqMrL1siD68C3Uz25%r` zCv-rSlTjO%6`)-Z&>B=uPzPHG+$;xmKp5Ge9S{RU@K7sgD+{Qef^}$Tt%^wUD|cVf z&ByLGGh@L-#$2YdzYBV610t9X{gIs$lzbF4t|bXtqsaW2ffqEN2^wGB!~k;=pFU{n z9cgG&7<u?eS#sSTaeXlkab58}%l<7m%KZ56X|Ks19+SP8Ou_98Mg~I$2G(BY#|(;$ zix@U3fZ|VF(b#w+EAz{ZZ2U%`odXQon;E&dMO4I%VKpHm4`Q5C5M1?v#yJnMe&7L( z%4|T4b21&+Wf%Q%DoB)d1DhV-1{ncX&}Jb8)}Nq311{E|yAIjB2k%?kAg;H8TMyKy z=9l@&2b%nqmif8M_VfF9;Nebe!@#=^sl1;KmgOdPFm#t4+XpkS76pOLvI;W7+MDIT zq&$ekHm<x$UO@&lEGlccL5`SlQ+_5+9tmj~d3Fw7K1nHAIoPl%lxB1gV`Agvf{dTa z$SWw~PzO~G9=|4KEY)z$6aiU24gp2snM>vfDGPE4$O=rF|L@z`ej#~b4gp1xo+HeU z{~q*ccXR7>W3q>^+C7-;|Hv|ldvy8u^m_b#14?tU3=GVr%#Rr)8IZ?PLCFr!SgJT= zRNWptK@DB&!_O$o==$&S_EvENX%2B+vC0kqE;G7ppD1lA!zpbb+0Mklc>A_yh^A(U z=IwvN|G1v(Mr&(F7(54^=khOvc?t7l1{sD525^!G&nJMkm`Z>e4zl_ixUOvk&DhF8 zR*2a=e-i>qYkV8Pa|w{C1keluWY&NadDeho6B{Rwo}L~flm>+~!$t{EAuM9KfkAL1 zt0<`5gOZ*2n3a{Fi$Kln870@95;qp-5Z4ghwB%o>v}07UkFuqNf`FD#SgxEn^W(oa zohG`vOm<{a|9#r4KE{-btBr-bGR6y1ZrU?2FdH&IX5eJdgVa?U**RZsVgc1q;C&lJ zjMv&T@&40gTJiTYlWY_-Lub@qP-g`ccW%(}T0@3XhE4pS)muE^QOymi`dgGBEC&6J zjG(@*k^TmaYa2L?Hp=sX7LRU_7ucvP@p6N%{suPVP4c>+f>~aLQ+ori5xA0)*A*1n zC;{$TFenKMZIsclwA{cb2o~DFFSL;p5@^sp1*Rru){LUyJ&m9}zL2$4Y~cQ>sIrn8 zXkrdD<mG1UsxBy8UKwK^V$Ngb=w!)b9%3F-S<c4JCaCVp#F8zeZ6%YjwQychLRf0t znv9f8VGg0}q>MH3DPajk^UPD@;*90ZbwT|mMut8A7#NM&Ks)zj;bY0n5}<9!TObs8 zAQVy@?<xPsz`^hX+#j(2calk+brpj#LoUN6QBatPK|;zHHYU75S%0GvD9lXsH?UmW zz-P2km+$2U86)tvM|q=7EE=HDVln2_-XLlO+J>=Fg9W-eTp84mX4kc}+@J(qXC^AN zkxvGcz{DZT$-uin!99CZ6E*N6Gf*oK6jtJ*N_<S9VK>k+G;KzEvk-GGb0;TrF7ptx zXxk_o86mGUV;4;UHa0dHn<(4p>tQKzYcrCvg*b#VQ#01YrGzI)+h+O~ZppMxV9J)& zHJ3Mzi%T^R$gq<Fr4=tGKIRR~mJH$yMhu|knjDZV4a}g$bQ1cY6`2ehIru@#_k}=1 zP#c*=1cf%SfrfKIwJ)d(18RQ5hnbX>*x0?y+nsC^Lj1IK{gmTC?8FdX5SytnDa_Q- z%*N3*Db&o-)Y=Ku&R+MgopBNK9|q_ib7n>c?Jb<(HL>7LV@P|<1;Jfw@Ti|YsOh$u zUyz4GdkY^payRgy?lA`qzd-kxBX@Fz&4rDH#SweVL0imOm}|{FJj|^<Jbt?#WM=#G z>mbNowg2}pFJiT1kYi9~C}sdHZV@-$sKgAKKHnsz1d3@XNlxtz{Q4V|A<Z0CqfH$A zAaT&v6vhpZ1zYkwFF{!fv|x)>$;fDngal~M_eOSpBO}m~EryLsQjop?zu+bY9%0aU z4+m%)AZWM%v`8PeFIZjB4&1E;?+Ru%7ZDQ|<YTP0&z}*N71gXCq#0xCl%?rqJtZJ3 zW=5{{iu%&RW~S<_71cgGH!rie>Sn9zvix;mF;~qtb!ESNmCL7kO>XB_DW-MOTR>?b zmw^GihfIgz17uY)*rPi78>EakGO@ng$Sh%G1lnoD4eCIGiiT?&SdBJ{3WIvbo7hA_ zo(4@=Z`KrL<Ivs+TA3!N2@;f(0*#Bwfyxg#fsH!+;GHCTkh1#F=C^Y}W%UMTJ(dlu z2Us^s2>fK(Aa-Eap=odbfoo`1fz2$e%#f|>;$jlQ+MC41BoMQfn^;(xK?{91v#^SZ zgQ`o$&CC)kU>2w>-zcghD6~;g3DkI2QWX^1pk}#2M{t9t<whYUPznaE?E$4=Q*&cb zwgdGk#h{IRQ4!FXnxY(|C}<ltc!L+Csfn6;Zl|h<ibYCySpH12Wc4K1{8D)#Mz?=g zS=b!ym>m9`&nV<%WAe!2aH@3->q#<=a7@&<Yt445a4M2Dm(T6D=bV^kdAL;8To#nR zOc^dSA7v?JP-HM=C}IF@V^C)UuZrdY?e{PP6)_u?1YT}X0xyN$C@S!BqdBAYMkN+O zq0Nl!oQj}sfR5m1E`DhR5K~lWvw)BUXmKdRMs+#RHfsimgrVSOMs^|4Mvx6WLYq0b z_yxfuiNfGr#AfE|=Hj4XDbO}kh=0Y|!5fIx*%8Bppspt$lWDWEnz~YRR8LZ)b-8|b zbepoKrgB?!w|=>Gb3#wGx>J;)VT6;qx>JOqVU&|PqkgM?xraxEen-p%A9d9UF&+Aq z?jGg(tuejo>VCb9=WSEH)YZLG>}*p#)zv*yLFrJRfr0rnt2BcwXgwroJ;MfZ{S89K zTO=SQv4GJAY5fg+##>|{d>$jvZZR%n@FqvmYa1kuHiAY3`HeP-fYYRi5V+#nBnlpL z78M8W^fv-`%|$>RR_MGdXf-`(-W8>$R}=+9&^kj?MG(~Aut45gkwe*9e!-f58yJ=U zZDREMw`s+{EsQ?@wlFHPO8;Bv(&6FJ>C71aw;-W4>E9kkm!wwkT3;rlI*FY@nE^bv z$b4-BixFsA6LdZX8;k{;Cp8uXt+El^Q(j)qxb2S@O9=CtKj4dxnHXaJ*D}vztz<A~ zaA#;?*rW$)v8!`{Hv)2l`j;Ny;YbVqmz&uv7&x>+31@?az(&wkAsPOco0Vi7IJ7q! z3WAfGlHkjYo{ZWXMcF_DRNAJX;>S>MyAZd!o{g=GD=1wl32l<(mj}-{2<Zt5ZDZqC z($cmCOK}T=x9tj>fHs+f>T=MS7JQKn_zVM3l7ft6KnEU8^jJWvq`>=$^qAE77-N$B z<dxI|iu{u1SqB>CyM+0K)K97pN%WOfFpQ}5$lvUcW?UW=6cbW2r8Z<rP|YNJYloof ziT2h`O#7l*v=sx*OcT7c-Sl%bO?^zwz3glwYU7fsbd~*0ZPUH9{hVVAErYBr{p_s6 zYBOCT9Bou({hZyRTr5=;L07{wFfod=Y+<%%tp)F~(P!AeslP$g7&NfEf!_#3F>ZjY zU1JjmpK<^iEE5uc39c3m43Uo_P(|9i!YFR8t8Hnit!vJh03ty=R!NYEww0AOlxARN zNcsPgwV%}zJT~UaP!3rExJ43@x*hd5T5-SJV4}ZKm;2=gWyDN7crVx%5pYccS{A6m zsJ+o#;^hW&fsJyIO%p;a+Tg8Va^|3Y4w9_Ox(0TTeGVp8f<g|QTq1HB1`LL_c95a~ zzRL*|RiFt2P>l{7bK+wX2g@TBj_^fqdQ2(VTRye6e%O|kwe3S|>!&T*iBU7pmX@BG z6%{q>Olj%anNb(*GrBy(Dh=H=Lre=hTl1WfbnPq~V*J|EESaXw`MDu3Zo{wH^Zsl~ zOx*NmUi+Q7;o);{ceLJ~9TGD8c56g`nwg7XfTs4WiuQTN>S2a1=9$w#?Pn$iA0`2& zB$lHLk_<`=4GbH^^*73Lzucgpzl9kRd~Es~c|naeWpI9wl6bj63NkFmENo=7QBVT3 zka~*{BoKx4H>xmdZv@TPZsY_lgOeBB#KsG1?rabOO|mg;lobaJsS8?KZcqSCByMB_ zb@MsF-Fz-kEdtI1ptcWq3oU3+7c#8~nXxuE<zw_Ybd|}}!?aMtz_>4<x*&~@Q!~vz zCcoC!G$3ML4b$b^0#T<>ZK*It^9jxW@_ke-vXe{=gVqW8F)%U2Ftjr>FgG%=G4L{| z!cIEa!o$nJ&Z516%Lp_Au#pEmY{kwE%Blv2!lsPk%);zYDuz+q^W#TPT?oZ^w4Tw{ z_TPbjd#xDl;7m~Y3qC)9=`jN<g8^(u6zt>x7SM44Y~WgnS>oj;7G_ZW&H|ddgRB=8 z25rL@bYsqIXG*F6`w4U!044kLSs3)0dYO$`w}A78DT6J;YKBcFpthkIIC?jkn1LK% zqQR-X!O&;}zdkJ2*y?Z50;@pIF?OIdfSO~rm_nl7%xHtDz(z|(?Jc?x0bP__WY4I* z(b7~<XbZojvN0>DK-3l7XkcV%xj{~7gP|qEMl%yZp)Fh@atsC_Nn61Uy5QshYEFO} z@Yr*dupoE?IUBpUvbwUUsj(5b&985l(H#)bn`vvC*&7hhonaTGACTu{Ul^pXA5`Gr zloy~sXSP$ErgB`Idx&X-s=g(QV$|epYwPUEQBhN}Y;3ZoM0r()>FbA8dU;et7#c=Y z{(Hx`z{XS6foD~J|3x=>70?BF`Yh*})mdE_m>Dz~Ad7VwSRrc$H!`rkWCZPiV?aMT z0ki>*QJ?V#%lXn$P}?PhIiD$nwVFYgL7u?})N9xx4heHvL@A|!7UoijqDc{y*F*$` zHbT}fgYy<_{W5yMfd<SVTh>A}Jz|WFV>~orbXu5;OBe{V6x$}asj9jq*jgvLsHnIk z*m%UndHBS|gWT%IzyLlIgPDOJG$IRHqYOGD0(58;xA8_+_LmztjW)4>7hSUOacUzS z*Te`}thIs7Xd|!0%MBbxn|MJ-S2*x8bAoc+CO%$J666DoRk9d?mUDr26M$AyAs>{% zocCuE?68dbdZzq(#@2t;_5Y?aW-~A{1TnWV^|S3^kYey**u)L$`txzW1QliA^)=F< zsq>9&5-&Hgfg3Pvyr4;Q@Jdk;K2B}Wi8~A%xk1au_$@bxgAOPV0k!{-cKk81gB!2V zgJ0N#^gDwpC+Y^|I4}nNy&W?l&M?T`I82#M(Ji#O-ZDF<*s;(jq%|*5*DuP&5L6y` zFy}D!vh88eVhCc`#0}~bb3x)+Lw_R+_e=0V45*CN22VsPOT2_^|CE(@3EIBLu#pRL z3V|}HUBNB5LBVo^pwK1}QCaZNx-hIspr&kUWCn?2$buhG#$jWJw;enpRMYI8;+jh{ ziUOQ;gOmeI>q3lU+%)~{Trzb1GAxs3uyDATJ9xRed4vSoS-P2Px>|e4SOge*B*+M) z2AD@UC`N$l3`WLfEYq0z!0V(GK;;|mby5a~jKapujLUXxc+N77QQ_YMuzrRW|I(QE zF+XMy2h9k9$6>*%RY2<=K+{4SKuu9da{;nS2sD}r9wruk2|6taI!p}e42pxMrbR6` za0+e!4Hkp;b24mX15MV7g2z)py%We71!Pzou~0=#U0iU*il`*NQjg``d@R;|Vb<|V zT>sKoYmvr{17eiScK*8#O8+7MW0<$Gg7%sSfO0%&gBf^nupl^pvP0?+b^*}YCL0By zJ6j;VPisa&(D4t9g2sX&UaecQqg?X$b^0-FTf^L4xhzBX&jjP#6@Oe=AO8aHvuI@! zVyt8qVc-U>LF3ei?o)<R;FD$$U3rjYpyN!CnoRI5$xIVrdrBD@JOBAG9b#Z(5M)qi z*dPcShXIcZFkjoqBLSJY;b9hp>}g^!Fl4j?_teadp~;7xu`?*e*)Ay8#L&YqD97sG z0xo?`O>Kb%IRZ`&x{kWiY@l?$iMf^WG20Rb4hCyTx&Wtg*hx9ys*e+##6g*n9h?K% zK~*1UDKi_pAZTG1$UBfzNR$OPxkPDZHM9N+<58FY^N^_=yqDXSNq}h$%TaKd=>RG- zH;Qw=+#n0x1q&`MH;PDr=RiTT%UlvKH<DLQ+8TuwIM^4485)Ka+S?a~88s$`g~i2% zg(Wg)1vN(M>qj;Q1vP-_z}%MBoc!iyP&&zHXlE8iZ)0p=GJ-ZU5N!-b7IsJ*!(5oz zoKch!O67n2=*}ql@A+RSeUQ<a(ZTlL;rf4vtPo64K4M{L{{NiyA8P~y2Llg-ID;(1 z8iq|`pjG3X#+$f63uRf1xA01Ea`9?!5H#Mx3yzEp!bY1Uzy+>^0H^jwMlJz`1Be76 zhb4AE^9*8)+8ZQ|wunN8hy;u_Ax_cTBnIvyit%!4gS&*Fc-+XsX=%AZOmHg~HxIvr z40sbOXbIT{KJbVzn>1*^P8b%=!i>g@s-}$KgGEG@P1TJ}&6U}k!Ex^ZIeF{=W5DF{ z^0FsSI5^T-X26oeZ-3BXWA9v;*#3#cUA-DN;r=oPW>A>0i9y3eonaPaxBn(-Q1?!P z8+0HJgZ2g%<1GRzoLs!x8wI#uqKAP7jxYeFB4LS_n}oqf#0X1qYHv~mue?$O?HdG5 zP$Rsq2=+R!0BE>?VWWh!pwI>x(E7!#?7YHkis~xhv)PdR&&dcH02Bj_OrlmbkYEr6 z2LqD=_Id|BM3}Z>uZLK`=hn%xMlfhG=rLF_*fX4A*kl1pFWSbNBtYp!$9SV4_e*dM zx&=~0ZPB;V=H}JjU~IfaACi7djW${7gDPw*BTnrtEE*tbP$kB=!2uj_$hFr7Wr2+r zjM^KljkcIWl8%wlCUXmrZgW#k?M)WuAf|;rr}joiM(vHVpdvuea-)T^pwJc_T|+BS zzlvd_mA;_R1_MiQEx3h&Q5oFb+CY9i$cZhz5w08=UBR)yI0Y#&GA$ugVg7B$Or+p) zEa_i9cz#=&L7gFkVUs+lO|A+auLT`B1>R}}SrEZ5^b)ks2(*odL*V6RX?7XNaR%V+ zYcilcUo4=>ZqU+L4xue<LXyyv3_z>@7&fYc&WvDS7Zn4iIdKy^7IkAWJ{D0(bqJp2 zRYM-wO)~Tda8luz#-(T*;HICH>Qbhk?6e|p!Tv8E(DOvST=J3=(n>u78gt`f5=?`N zZ7m`^lGd>#KnH)pr>HWpgs^opurqKoh%!LWsY2|4=K=4g0`Gtq1J#}z(RRR#gN|`y z7Zlpc#K^(L!wW7x7(u7G34+%Bf);->D>4fkiz_o@+XtV0U`y{Z%)Rhz-B172!nVVs zxKR+B8#zdDBd3rE#ErQ3=?j}1<JhaOyyd`i(5_jO{rXJXo<2o!BR_*AW;jB2rGdi{ zvS$=696|H_ppyhZ;m9oj8n0y7$S5Evv_TX(9L<eEy(f08VVQ7r$<eM(j!rww@MK-~ z^l5iDQjo&k+snYtAkU!5Faa_jhlqCtSeR~*(cj3;3OWpQvjDdYhxSHsR#3lyaf23e za^PUp-Xbpn8t31jU<4Zd7iQGnplF2D|AZZx0NREq4+?xX%MHSUo0+&7#X-GD5zx7i z3>z601cf%JB6}HB*n-Ap%s|IIg4$-F5eGqRiOG*E%1hJ9+*DRpmm>~|jU_xbB-AQs zDw-R|)hlW$nwkD7h9x!@1~vvzerRN1XAowPWzYnje#rnTcj0G3h`>WeP=ABEG3cnj z4T?sX;jxiV{3U4LCuj$&iulV7Dgqmk!+?)NP-qh)8)#wk2020SikA&4LYtUCQ?Q`3 zl|W}SNFoOWQo|8(rUY_vfONh@GHCP-Gz#a5@ceZUA0!S-!ECa+=H|NER#txuq26cK zg^Dmh!+{-ij|Au>98HFK=qUuA>p(~2C_*Y6b^R@(U=~_%2r+7Jk%J@;IRVhP6LeB& zg9K`z2!U2{vT;~iZd8#I6xzbb$14p!BUD0g1C!+j7NL!-oS?Z4=ph>$)fGWAvqGR2 ziZQIHfu{`QgLNPa-68!gq+miihQl~3Bq%2*C?qS!Qd8a1QeD#$7EJJiIhbRDl9GZ# z5)wj;Ei8=nEiJ)yg8%~qn?88olPE(RWUcH52IGy$2RCdGGTOo?zymr;gpc#(7FG^0 z6MT$=nEnQyYoPOXVatMexKPe;*zCZ`&8fW+v{oE+qzL2`2Sq_J&CIAMsLaMLz;uw= z>+dnf+y7LV{Qk22i#o+9z?i_1n+G~~0er#(WBb2KCIO}uw{L^@4Ew;(;3$Ng!m&jY z9A}XI!#rG|_2JMdb4KXVx6m^fK>H2!poiS53JMBs=V29-RnpKj2IXKq!HrtlpxBXB z5)|5`p{)l#_)Jq!Xe$Q;rx=lEcwqEpvhW}3!MF^is{=im0s9#rf0khOgTQBgFkfct z2CsF7?v_W1Jd{&6Aj@xIaRoj<02Dtcr*44uxN(BIx;&trfRJ@s;P?_{G!|C|pNauF zf#Yxbfi1o8NMh@L3QkX;vkPGEA$ST1k?vsttv`mi0hD$a&5hZS-0_baT&+Qm0|C_) zpuQ2p9m1fI5KtM2J6s?~3g8bH&~Z*U!UbBbA-U;q474_bhY!eI-JoqIkn?evFS9j* z=P#5QiXkNvF4ut$Q&cqG$j|a}gR~KBR}C(w@^FIYkA%cuf|lZe&e4$r&4Cz!S9}VA zjw|FB1)t%L60JxjGxCfGvUlP^1uv)oMw%Rf9l!!FhqYm)FDU#$3p7gDy1{34sWWV1 z0j<FY4P=04(pav6&j$gGv#^5><Y0uHEH4OZX9*e$9@x^WzlyE<>8~hIAqMJyGBGS+ zU|^CU(L7K~h*{8BaLJYf&ns7fVgP0$)Bmpw3{1+<cB2-<CJvDMIKd}|@aS*gxCY*t z0NQ`e%>kOcWnu#jBr_NoGDG7Uv@(zz8poDkqr1DIhBN>F!N9<z0FGbKPJl>AsR}-I z8Z=iW37M-BHe%c$11df@^7Fjh%*M~dp}mno{N)A){f%tmFE<N-1;oT5+XFx|1sj<; zEiE^Kj=qCz6fiJEt|CAVLgsV8V(h>wE>OgQxbT?z#Rm#lI2ROOE({DT8^Gs6NQ3r1 zfkw(eXVQYVj)KpIVB+It;nm(CWxRz6T-<JufOvoxyj2KvNP)P~CVp^tpC8m=<pnRS z-~|n}@<UIL5CwaNVIvc0r3bq(sNNGcH5Y`PH>4;iY-|KN$5xvWR71EdL>xQxZ^f!v z;Dd)4jsBfuni#>!<O@51h-u>AU$8TX{@Eph`~o`TqLi(dL6||Cp&639z^m#({Z3Bf z4I293MxeaWW*Kn}4(*M~tS>i+7%^_p0k;UD2aAX>YH!hoRQcNANvJIf5S{|!&=FnG zISin+txT31<+TNcHi|1lW}86gF<_jLf_mf#_=q=*hT)D4s0WcqBDDjN+l1H;C}Blw z7lKw)fzK;p>juxsXoJ>R^Mi&bP){s@cpUA-5|HOWCzfpHXVm~LU}o4z;-Mv=UK8Pi zOBxSs=_Ts$66TDj1M449wL{oHjH+7>JSWOSOwCV0RVD*7<V+c89O>hTBLi^aM2jOs z(47V%f<mA;(gybnNsS|DaYoo*WzfQoXs>}QJDA@<c~PCgo}q>Tay}Ds`rBZmzfqg@ z<pyJ;%?8>w9NHVrSzm6@Fai(qFkIUR^|A(|_7;0c4zw2lt!vz30^yl}C;v8biM<35 z>=@e%3T@?=RMuuSCo4d(_SXmpPYRBVN?dUDqW0$)7+9cbq7j^LjT!7gWim$2-C(G{ z!Pa=AHp|Nm=2*gOqn`Ln(7gsGjM^Km#9wZ(LJcVsJy61tR0h{<Bxi0MjRwLYRSBwz zKs6GgDM4Hy{em_xkeV3`j0|avOw5y6To||+7=$?)%{dvxIT_hG8Pgc;{vC>Dv}Lr8 z`gfSoHtOHee}@_47~L41WB=`9bc_AB_usA<Mvs4>W+Fq{|HCX_SZf)i7*rSx81f(^ z+Z#1NyH7xSWEDWWPYl8H=+dGuH%JR?1eJ}TWB!al8<@cj7%5B34Z4C`xy2+o<-n(V z3JPuH;RAIiG{gjjHZn+pD~7F%e1a^p;Av-0p^e<Upc>Gg5ww;Kd`1y$MHl!OC^gV> zE^$UR&@t}9a*WX3pXzB7oLoVtKwX{K6xV0(9y054ZPs@8#wb@Nzl=FilQS*5jhp>I zCqgMH^6ZZKI0bwxRO2#_9T9IPgAaysaazUn_-HrNzkHwWlYdW}+JFv-N?HQiV+1~% zhOL`Hl0lZi8r$hKkb~)=n<+r8BLV2a^q|veHi=5fKxP?0Z4vOEbCeTmK=lEZQ);e) zDgaz3)vz)>WnhAwnL{&ofy#9(?qaM2738=a#v%(Yypi3eh&{|8oA%MdOc`{L2(zHj zCQ&KS%qnOm3bYdv)E+<$GidpY#eJt>1u{M-f(l_~X!tcUNHVB07=q4m0<F{Ah;;7I z24(#X`o<e&Szd0?G-BLf1g>kKP6o|vDTsr&K7qEj>xjSHpaY$Hgzkb;QxFu|C<;0> z96J4p=?xsE1r~3e#Zo-r^x+irB7q5Vjtg5i13!Z>gDLt+E+XJv;=DYN^Ws1!xol=( z6BGtl6gUraVKz5rM?26(2;AdDKh%YJ9yCpW+Ml2^)&v+NVP~>}mu+m}7X%N!@q<p~ zkOVWq`vxE*s-T%%CP5=3(4{lr&L$7|C_aXbpfe)D+v`EoR<ILoQI1<%^$Fv+wTGH< zQ}eUtr5pY`%eb#);>3K&zFd|B*5eH34AqcUG5CtCjfxzgArsIxWyTE_;HWp}0WVDh zjdk(~f=2;C=fraggS(ZWWmlqtFF^}%Hfoy-3T=?J+`uQeg+)$74>XXnk<$Qlq@@(- zNK1x|p!2&y3XBCeaf-@;7ZDhPkF^FZ7yz%4X93MbA@*oMu2%xBWCQJV7ZqG_@jyUr zn6{;drFB$hl(lYHrFU45y|Zbiby&DfR7SM5xr=2;SbhbI{K4n?LAkbmxltjehEB$& zUipDe`GE#z`sKPh$&S|kmc~vo?rurZagKf|a~J#pwI#vlr?74VpP!-)8Yv~>1QkeI z8UG0?pz1*ew0!`y<bH#a;1&*kNpKsQ@-tL~jfItoIY&i(!;VIRXQ{AMf>uc|GoXe; z8}xh#{3pqf6AoKJ;h+g>s6ql_gRtNREztEjWFILb&1g*2u`;bYHasU79L$m6Wh1EJ zq0c~EctG0c_|pZbxsIGJz~P|<Isgw59@><Khp@7`GCMIzgy~Svq3TYKP9no)*Dmlm z9gwtA%^=NS$Y9H`1v#ylqMSNp2|IOYgTDSodG41R)QmQ($m?@xZ`9%jZNXvOU<WR1 zjD%lqmN8=B(B5JQY0w*iCvrD2i>etx&L-NT4v`QR*a$tM2(-k{5VQzf)^dY|;5H6^ zNqH45Q_!7c>d=wPjh3K2FASn$pix{7(8^D4%MJXXLw!ICWpEx=1n-q2W^34)A@i4b z4=|d{5#*!pWNs*FDHIQ4I+z<uTMGFQIM#?oJ*HMsT`@DJR#8nc<4;Z)(kVxvJ^&=F zYr*9cs1L9eIkdG=LR%jm+N$6_fjml|Km!!U8la&;C2{aA6rk(gm=Q-mZLk8Jm|`Lh zUb+nGDj<RyG+C}BBPg^Hv=(}UiQq;KeoM;@dO{n`Z7nS~TET)_pS<8kY8ME@gBf{= zHtvKx2i8#FLWFV{s9ymR$DXEH=0VqS|4~2$HS-;)AZVPC1zHwfgopV#<S@r^uGR)a z{VnE@K`~qXE!toftosTr5kTEnM28jm<gLwm!b%+4TdW{y+)96o9)yJ&1tuDTLK`G4 zH&_X7;gIJy1ec+DpaZ$Ur`~P=4LB*|ih_-{=7K^S^)x`e4Pg_UX&*AlWG=|Zj65p` z5rs@W;f@T%0bV{?At6~H9Al}eX$ivE;{xeOFXroE>FHr%85v=wwzj6mcDB&Ene`WV zPrd_#JE)ui-LbSm(|DsP<PJa3@n)c9{~VkzH@F&Yag@~u9dhQ#{c;Pl4VVdDj|tgX zVI=%=gOR{SYewx2%tjk!1z&D(G}<65u+a&$sFnXEct3>^yuP*;+|0qR4=PPI$O>%| z(y;(7g>(|!B&wtdVo3>Yl2L`+^d}2iWz3+eV`KrEKynn^AZ57`RMu<+-9Lq;oB^L6 z0&4iME6Op$SLB1v_d%SKrpKsm%Ezp#2tM(qoKcz4T)@EBE@-liv)hsU{C+v><!Ld! ziH2-{tC@_0@*F&hENq=-r`N8qOgo<dK1j`Nv5SBxQ~9zCeWoDB?-j)v(@-OzFe$0f zsd`<OrK(?jl%c+Isis|_S4=$Uj5U8R^;}D1&?#$wW-VC-$`4EoasPavXObC%cBX<( zC4<kmfmXlraDp0-=<{u&pr!iYSqJ3#wk=4LZChByc(g#tm|-LOgxe+tPAO1G!*3e` zEii`eWdJuBnc!ik$AmHCM(B7mMU)vg$hjg|PdodojXB@O%m6+k4BTc^VbEa6A#_TZ zCb*8nJS9vEv<8V+P-qLQfVe7Xk=6z-!A+E&69#G=5^+|T5vXm5=e#gxeNeNIVQ~8u z)bb<3uM<EGKRkYA;)k~RkmFScGzKIN8Yjnj`kO9}cm-9gpwr*Bg5y;aR4#A{Zsrjd z(ExWc$vpv1n$Z~Ct|P+7ys%~+L0|9M#lQkh&!9F2Xza^|p$mVC-k_(y!OD1}2FuG0 zCPs`KY|(-NG{def{&Iu10OV9F{+FB0xnx1R*TliQ*UZIVZnOg(;0@Z{$!EF2P;j$= zxB_GZk{7gG2y`x<;70VF1vt*dL$0TgXD*2dB}Pyy0n}PRj6&i&LXT+@w2=Vc2?m;H zl4M|DYy_`OXJ>%VaWaC=O5p&H7J|;|MxWyZ<x$X_q~wMjjS(wACwczPf*c^m#8A$_ zz<8fT^Q0M#xk1al%Xe&e9<Tzk@*QR(0|V3lFANM!EUeqW>*L__oM1O%ndf9;gwJz= z+^Me24jRhifu<-+sPVgY!7X6^|AK*mNdUYT4`r?sbm#=9KImRzW){%mE1J%AO28uX zzzPmfoPxOUy?c=J+2CAIyygCX&is(|I)gHU1!!Dd9+cBHnZb=;Ru0hZjf@*C!3kSM z5WMaQl&PhJUT(Bv)ZVB9YVq<~ZqO6l&dS3fAR;c$2g>A9LK{JS4Tg;-nxK96QXHUu zhbXI{&=zhU0TIv=F;IH|QjzH~s<W!Af)Aw-R~2U!6M~F@An)Q+Q-_?cl<QbHGs<s* zsceDYzx#%aELqjQUj0st%7*`bRL{0AU6c~GpxSf3Za})VTbi2^6O&7un@g6LI^*$- zRh5p8ZuNWpriHWyIb~@^nNJOAul={;OZBNq0Zz4>^8IQf46U=LM#)-AN7))iRf56= za)w_ug9w8bLnmZ}2t02JI${cbl%IzFMhWhh8{~~P%SwP}Pq|-i5H(`lpbZW&5y*jS zn?*%HJvuE&Qx<Y!*#>zd(5yOi9u>6PWFzS8vW+ZamX;f}L<NO5Fk5cm5!}o!A)pKj zQU#$6ijXBJu+!I&jxmE?r)X@1)KLQ+w1srEnK-B;hS4X(IPi>R5ppLC+{Xpg1wUA~ zf#+V3=1fseK!c2bpq+pQ8u-C8X9|jbQ1cJR4l`q6<v7>@XfPV%AT%3r<qbNb70+R4 z%mx1*K<jV%`vX!lLl1Jp>5p09ikW~vm;%7HGpIj+94AO~q$qI$8G}KK6VRXwEKVTp zO_VuO{BeS)cM17N99l?18kBhA2I8k(yWsIt4Nhma3>~n!Q6xWYu+|4%^1i_cG&gF^ zp}o<J8!|Tv89RY`RfAi5i!CIp*$QklV$|MZ4B;6IY?R~H-pD2TawBNS#1^zDQ`2&T zksxG-)C`o(jD<FsSfWkt;|~;UgCv9#E)&-5NI1A+(6T4A&GLh_794J%agi)+A%}Ht z6mno8X!kXaxlvKbEHa+CQ37FuG@^mpBq5Z5xIwiRsP;l`kr2usmob|q49pB}3`d!_ zurxA&_D@PP=rMrKT4rYfFD(MyEiS3Q5q1_S%e4&xMjN?!Uv3aH0=3vc6H%b;kVw7& zkJf{Z0#a5|b7Ri?d(%l@-@!p&-w8%DrPSB|JFjnNr*CL$%PgdCXKP?+3+}_m{lCck zgGC5Duc`;?J%ZcR>YUJ1{S-h4Lg|BAN*frAHcAVFr&e_swKob0zXToC1DbP?hR?3* z2yW#Ohs~}E32o#B-$bMi+T;zLUERjWFT^6Nss~EdoRH~P(0O~H=~YmqiNU5<LB%if z<f@oC_!>a<xO`(9P<iDy*(S{k%3f5R5~a_$&8Nsd*H1SyAkRKGK--X~)oEQmC~Az2 zYph$HHsyiNq)e@5Qtyms5)QIR>HSv}z-XS*6Wo~yUK0sEr;c?Sg9w8J==5dK+A1t3 z)j@81fzG;tnvLLNbKr+%gXZBtC)I5d5(V#ahaQ(r=(IXeI}ZKCx(%Q@1mn~?RxWV2 zkAaB+*}btiPu3&Sy_<zZ#Xx(LKzCa6i-Tsw2{{?Gj}zU=jC`Q_0>jPBuOJl!vYTZ< zdt7jYu`IZef-{UkYu%Ya4LtBR&n-e?;*y{pWgB=wn>|4%tV)2Ewi7rX5LRcPd!ZXv zL*VcQXn>s=8uqmeA`A))I-t1+tUlQwr@ukVc%uZ%%MB_<jG&{x7_NaXNZTyR3>xK? z76;!S15HGm)p<BMv^Oe>zucgxzfoNrd1EW6X$v}n9kiuYQE&sB<pxfnjVfBiL=&#w z7rMXeu@r0=LBNuWQIat+NP^CiW8KCe!=QluG&x21X>v-C6N+r;dYT-wurV|K6Xk4o zY<Q0QR5_LzkkkuqdxOrdWd+@7pw1A9bapMc-3>Xm7JN!GWTTcCsF^KpWV8Y8+**0i zViV|12GC>iASc#BZ!!RN=g@945SK(huXY8K)9j$6X=&i&YCYPWnOxA0t7Q-SSG>y9 z2X<hsmFX&s18c$UXh{6kGRQD!FqnW&g8&_YiF_U)=)^4}<BbX|FE{8IF>Wx`-ynN! zqq6u*&}Kf+MqO^9mz(vuxj3{pYKp(ypsBx6U;O1pGwMY3MoneVMJ_U+q%HvsD`Jii zL|$ZzT*Ko}2xl-e0q%6cDvh2Qn4$Z6yukf<QHBs`?+m`H2foh@d<`<_PzW(_QHQoo zi@5D>pcVjp9}3cblS;-v|I86PazJZ{L0idKua=hn@q_Nc0kzd3^Hwh4ITUS%Y3MU3 znxI8h8mu_3D1mgWpwlME6D6SQ{-E=JpneweL@IcK9X!|uzNBP>Fl;Xe&N&fKZ=9H! z5K~1_VrD(~7=NISvfszNxrBKV=p+tM_(1k(f%Ys)GAM)AM1poFAoi|FfmepGae_u7 zwm?pS+{6Rk`OL!sI=;>bwhI6nxuDH!oR9`TrvQAD7HBArlS5EwBO7RK8jIjIMkZDP zQSbp{3>z6iN7%_DZ_hFYEinUaQey^fQbX*}LW=(CG%hzcH&^a7HbvWLTia+`MQzN) zz}9UT5MZbsWUH=j8}$1yJXL`F4M`XC!0E!0VI6w908QzDP9H|Pv1Ws*{ze_{mz#7< zxwJPs=zxxn(Klk;U<FRw&@=*?TGNDhUlZ+88-0aqf?EtAa)|jfYewyj`kJ7-c_rof zLGwHt4M251-Z?a4(+g@a5|eZ|GB~_EJUlrwSmbRJoSYJD6$z#!mPG5s1RLF0Z+(65 zSOz8rwts#slUeN<q#0B}cd~#|(?(`-(8>6q74Q7|8#&otZjplAxGV)~bVCk0gf3<T zorcdQ0l8&aNLo;63lpQHj4Y@T%_g`3)ZpO+ZT#f{Z>I-MY;9x&&AfxI*amG{1K(X? zYy>^OA9SRcIksz~Jz^|X_0{#|qcwwyWpz!Z)v;V7En9D|uP+lLt`rra>E~!B1S(tL zyVpQ<Wcj}+=5@?}81xyeLHqf1LF0DDpc_I!n>S#oXM=+NMoG{#pt&w+Mi4v=Xai0! z2Es2l7zlvwX5I+83P?-<RF!OG)`YAw*l5eB4NeFfxp^!tHz*5k=I77_FK7}r6BODa zDWd>h!o#ppS5i=Dlb8(ngcM`J4H}jk%!M{FXn`gN!LxrGxWUH>VU#Y=kb)k&2|h{H z9Qnj4Gtks4W{L@mu~wB-7t)rEQTNM|)wh%vBz$L*a;3GtJ|9nrxI#pjrjMhAP(Iov zN|1X@1K7G56d6=;+-40)B%o!k>Y&RYNW9G&w5pQO=C@0r6_)s}wPs%R6tw;mH1<=< zx()1BTgaZjjbgA-67bDPP`8SLQ!xX%HzR>M9)zY3BS8HS+*c$qD}tMJ$l<GrBYYtn zkU`<AO<wqd_fiuIV`bPfQ9|JiS}Mu_x%&YU)|w31!y4*t(U+hrS;-D-STBh{cwdEe zng|6ssP_aaBS8CI0@x-pC^G1R_Wgn8t2c_l?&k$<4%OD*s0zA?MGssiKzD|M+8G+W zFE{ElYH!p~5)|4D+8GL-u_HCvBaNI8ikhRKn`A&3@3v1CO?_KieM37t=zKirjxg3< zu>WGP<b@4r{)5cKWBN}_7BcHb<|SgtYjg-iA!D8cWW>k;GT4W8vYmOAzP&xfmvqQG z#^T22#_Y<3B1jo@9zoa9CHUi~zZ<;um5zBw80>y#WdZ?zwYrm|v-(gEo?vHj+_MKX z>ch+cTC?2D*3H1hAjBZe0Nc4M47wf+)LfSaH5+8WSq5|~n6Ln7PxnSv$c{e98YFJe ziDsL4gh01&Fl>|t?TcdtwJ_oP`<TJbW>;p0?eg1!*x<Jb8q^0N+x%GVVcYxIy1Tod z{(1`A;Ro(lCj5WSvW`szd<UHdXxtnzMuKq*9b^H9DDGS6K&O1EFluj61D_fLU2C`z zv_1ngE&{oljt9@xbQ`z?H>yL|RzZdtabHo#Xw1&6OyHh6W{nCanIQbP)iIwb`F99X z9t@{_o1l1&Vco<a!=Md1(F3$g0kT3}f%)YIb$!qU7aO?2rwc=RMWAc3`Sf8MH)Ta% zf);gwwpMWP8X?XVRt9w)K<5f?QU;&Nr_9Z%4LXBWlpoZ=0`KKfmIYlx2<j(^3T_a$ zWZ0-K3Yx_g0}r&KEkjZV9W88XENU#u4!h$L>y<e5P8|QXF?y|<Jb3~So8^os^owzB zm+oqIvo%}Qp1f~g1o!X!Ld!r#rY~#uIJ+_4w=^(GXobWtXoJ#aHZKNl27cIm;W&4S z^XPBn1$F(2+*ZF4w4Hq;4=?79a8pH5<lWz;jDHaO*sp?mv9Ps4pgulm9aJIGsu49% zd7;XR<Jv?>ek8CU3UqV(1}?!ZJi;RCkcBg3EDkYM6eVIIh$Q0=ybC`(K;C6QK4(Fe zAs;gOf-@c@^|uIcgD%_MBp?Y&d;&b2+8aRoy&?OjaBbdq09~iE8N7vm3op3S3OeNs z{qO_S9wu@$m1FeJ;jxC&D+iaMpf>d?R#0DDg~1Hen*z_x;8^dp!AO6jCilxtnnob+ zXsU8*gU9R4!Sw+mE>$7Ls1S?x1~tS2AYIS`pe;IJ4{gxVhaTDrI;?A>D(Lh?KFf_d zYJx&rKnsD4z-=xvA{#YSh=_M#%x*WH1yju8$USaQI}?&GCxXv#h#`<3MD;<(H^7di z#vA>ha~r@1R`bFRtj2Xz19Hs&1GOSS7!l#B@Kz%%ul6!XgZDSqBjr`_#bF94H=AzI z(+4f@Vgzk2Ww^ExC3ZJz^CGY90!=l;;&6jDd@0vPE?LkHAn2v1WJD%X8=8oiT!v^~ zR^z+_m1zdNeaXnM<DVb%7gl=)1<*}upwW^I+-N7>Na=4BVFMj?10IS4A9bS$PVA7# z1H}^P)<!{zmzxA-L3u)u8+2`gATyX`=hOyWuFSBJ0d!)nm@H`FHF7j6^D%=DMS~BT zn3*HRCY!R0siK{#wz|G-oMupQq9r_1S=6n4G+{#|VXdm5bQt$9ig^|D9|j`^YtRXV z;Irl7x!9ZobPD-K8Sa-`jCu7~d9^nhgU)`142OVX*4PMibuDOLpQHr%YDCapVJ`lc z;K2|z@GZ7{=AgB>l7gEAz(?Y2FcI1a8vB42&+?#~3>Y@*$p{K<l9UH6i{2n02)^T1 z2z1A-F}}5YkU&5g58-13jXvVJ_tquMRK!wUQcV~#9wMfyEh=p&3B3xpz8vdSxcUKZ z_KNWF5Op_OLt!pf#O=7qWjpQ9ih;I)k>dMr47BYFk7sb3mjRY<LHpBG7^t--6|(&b zvL+RBtOL1gQsKQ2!nYIi!h0gPb11Vuq$>hC<LUo%mNd3*22}=K&<XpBpm9FrKKvGG z8AVWHmImEzg3^x%ozn}t%S2KRlqn@ar)7e=^q?J-TX|R&)xbk|8{`BxadLph>lijl zgDwD<v)mvfxKWV7(sBb2<XBqJa4&dEHpa4ZK}AzVL2xo<WMYKw&drKl_OQKsw{?PX zTUy$ZVtebtWjP*=n*Sa%?r^%+-g<9-G-D9zFieJBj;V)F--+7#)BS$hs*G{He^0wa z#BX9`0S$S9hhi957{GTTvu<NBXRv1oWJqMV$gs%=6c+GXk>k;BMRo?=iX84E47(LM z3B2Dm2<cX22mY5Eg5b9z2MKJ9f!&H60}3(lt;ilSG0<C)lNq%)2JwL|n&1NMg4h_t zE-2){#SOj~*~-S*8#G8PBe+r08Z?RK<18q&NzZ`+R9t{BNA?G?V3#9@qh5|26azgZ z(hPDdGL(XJpcL_5jtm<)0`JQLZxp5UlH^wCAXCmvDqWV$It?@mxNFz1LwIgYhKzGS z(z!XqT!u~f()k8s*dh6ww2VP9rKQHHy+PLqwqqAMj-|$^4eh~hP!|B*cmclI2PrpL zGHP#>R2LN5%E}|A2p-;s<Oa}bXO!j!)HWCqnIadX!3rH|!JR!=`jMuWKzrmMd1M~= z-tcIKY(^D^O<^c`Boi%<_=56CVi+`!Y;e`zXv6(-lZ`7VP;D$YwKv!sF>c5KXPg+M zjN`@sazhL}<HQJTumsI5SwLE~7Wx~Qjkj1rI57en(_on@4P+`fQ#r__aUf1G(cj_# zR=ha~Bn-ZRJeN^>V+`nIcrMG0mKK7b8>Keb3p#Kss%RMtyZVMkCT4=Nn}g6sF>OoB zjWTKA4Pgu$!+b&6&I^(4B9XIQB5JmaNh3Sk38O|Yc)K1|a$h$_OPqZsmGU9mJfvp( z&*!)^BP=gY1fP)5P9QJp>u=Nq4Ix9$NkC-1jXJ#G!x6C5LZI7XLA{*KJYuY%d!RPT zNeT*W<OCg>Kw%w()L14W%Y6a$5<r-6PD37dhSf#A;CvRzkP5nW%mpQ%g`?#&YfwJ( zcY)=zWc`h?pfF1V=PWOzoMplPa)TE<XL$*1jAGQ@n85pTLxRA@5LiYELCQ!W(Ap`T zQG25o=qNGJ73CYF*ad|)ajUq4Qh$Qrc10~?YZw1;(Af?fLWDMnIctL?WI&hjGHi6Q z2IUzGM4kcbf>l-isCmXKgzP*6-aLsrlOV64it%$%HFi}u46sh`^wD&eWsEwjtZ$jr z>Z9tXEUn^|c3|Clx8_}?F*9;(rr^mQp|H--KKo*Q4sm}Q`#5P1&Cckc<`_dh?ndP- z`+&v>BVhq?b4`8Q!dkbQI16RBqzIfjgGn6TZ(?G|`sc=y#u~w(%3#W{97`VAV5+}G z4LtAx?&pJ9C~Y+}a32bqVL->28%ThsWU*uz(8Xz*f`UR@6xDQeL6h_w3<Ni^@__eq zBjp`Xo&p`%O<6k*dIJIE`U>_e!p*sjK`FM{su^*h`w0l<q(5`Gv^6!=x%>n?+;p9E zrC1R4);ef@%4FnZ*hEr(O4r|#1`gm23Hn>&!7RoNS;S?oWQms>k_lw4Y>dpck=xzU zaznD<CKVSgP+kfVa^MwK)Hb#j^LGx9Pe@A#RZnDRu#E|z3N6agz);)-+8BgV#Iy+s zW;8n{P-h!-OCY-*BbD-+xnWS2l|Vp>wXSML9F_7L<16qD7a?5Q>YAEdega;gK0at} zrXGC8t1yEnWUOfeyD|7knGLMQTbQ}PqZG`bW2zu0nR4^I+`wc6x{#TJQF{Z65%{!C z(3vtE+@N!*Kr5#~N2(eNDuOO45mXcuhW2E3tYRu$v*vF<Y}T07{_j~P<6j4vD*v{F z&d&t(Oql*ZXJBAH%Jz_fok0e)5)E{A<_2NoP2d$663j0*aOyK|kOiNjDZ}$}1DDYT z8G(%=jM^K8d0v99JKHD&I#ZL0k(CXUVnhTtF|+W44vyL=0XkQk$I<}hluht*MbPbB zg5WLD?1GZeu9W!-Hjmkv^Cqr{O7<)BVf_O-Bm5T&>!yFjXI&DG9{AhIl+au2>+@G1 zyawBefq~VU)t*6^K^(La9drrI243S$%%BxA?8cjfL3^3G#f)L6TW)0KG&0&EA|S-X ztG!VK6tWWf8-&0|U4m|)XAv<n+9V_hs+5F4CtL~&Y~*9q-pB?zQh}ETbig?5;vvxS z$C8ZN;Dz<(rpBU*;Hd*;&@F|6%7WsGrixDUL4iJb@|wT>t5z`;{_SV}5XSZX{rmR` ze*{3`&ivuY6VO}$BZB}a+`;oBc?{rdCN>BfZxGYp$jkh4gN*(Lc9`Qguo`V(hQxt1 z*vV2nFE_Gq7#VGnk_I_hik(w?le83wDGhSHl)y&NA|Q~*Kr5hyK#Rk8Eg3e7fi9B( z-<4(xcDksdC`N233ku9w!C3mQ8#yvouuP2L-nTD#DkLU0F`4()`T6{fV3`Pti~o-q z7?@1idKttSz-Nt0fR^t_f+9jhe<L&N%MIK{n>m<8IJ7tNv%cKG06Auq;o25)aFZEy zK@aF;TWKEfegSSq?JYcD3DEw9jS`^!03ytmmK&r6Hwv*?T5jML0v}lcI=dC?*?yoU zv9dT$?<-%0ex&BF0MM#O2B!b_85o!(S*saD86+9XAScFc5(n*i6xQF!%neHQn>m<; zIkY!|u7?8o0er|4=voud@VKbJM$pakl04u+H!eo)E!+@4fX>ku1+7M71YK&fQ5fVC zNuiBwplj^71UGW<fqeuz@4>(j+a5TOZxpfaw8>h5y3_4<9Aw)m0}}%u0|OHmn-}=3 zUKOOXdO>H=GJ+<QP`0yzld_^HXwxYl<DY-)R)N-k{?dko3pk<vU<KV(#tyoL9DMFC zBWOm50Xidub^tJgfuSI1y{VwFAmfjJ8&-hsEBkE-bs7T`D9tl*uyr#)Z%zQ^+fBlt zw8E>ug#}#gZDIi*It#kkZUeg!;|B1;*DZ|T@Z7)%N!p@3FToSmqC$c~8+lp4GhXN& z8bM=00gMjmqE#qUCqEZ}y~)7z{|~5OW}OFiR|EriI|sNB0qwP6;eJV^qc(^NY-DHD z-ogQPErt`B(fVA1#)2#uy`@zvSdqIqzxttp$H)-z&yVpSt387#=&mx*;maF@^*8c@ z?y407?YaTg3Y)puSwII5OMrI=fo?DYEfHqt0*(3bg6=kE*vJc-$rrHPz$&<rfgd!K z4Z1y4S<qMzx}XhIu_`O6MMM~CuCjNtQ_@v8kdM&}D*n$9QLPIKF2iitx;_Rb2ETt% zj4N0>8N?WrK%?)V35X3M;CmlI3-_czT?A#Ej@!U4uvwa2mQQ=5I4}6pHCf)5pyT*A zf*ibsnO8&#G91kd+UO<-ak2o&$)Gj`l9OR$&d3dLzX)y36}BFh>f&mm;KAh_OBX|Z z7Z-g)mmfjZ+Mqzy&4(|mW6L(Qwl>rUt;%6ym=4+p&IXzb;%9J1J?$BCA1P!)mW}u2 zMmFA;oB5G1#pdUE3A%@FBR>zQKL|Mo8`)W)3_TsxVFO{sRcx?%onJhlpao|)h7}A9 zi~-D#8JHOqA+3W=psURoLHFfBwuOMUhCuI7Hx@J&T(JV=8<1Wm2K)cdnIEuqGYBw9 zFqlL4(Xnv7+{6Js3tJL=&kh&Q%Z;GzM_iyTmN0l$oM9seXlE7!BPew3!8-`dOhHE& zf;LydS`+rwy2T#3S!=W-`jY<qIl2UVzsJ6?0Qc5e%!~i{gv~5=V%-m_wi%fIulwf$ z-lxvbAkJXLu!#dyl=A9B4yBWTy8_fv0J&nbpb+?)8HSB4peaNK%MBcY8yLYY2k<&( zuv6HSmDFH^g+a<fhSFY!E2^jJduc<5`~Jn%vvH-xu!Q_xGh?#=n-gTr4m8*M&y8gk z`2IB+h8#$UZs35ow>HS=!!Nkf-y#AogTU<_hHD!^Teg^tKubyl7_~QwOF-H?0z863 zTUoexg+;)-iNpmruv;>06b89m+;SuMplDDR7Sbd$W;EtxRAyur6h`fp>{!LdWN_eL z4CAx?|MFjSA$34l?f=FzE&Rvu=OELre;@vZ{hNW&-(X@`@z0I<G3zD<9tIRYf%6|0 z4}tfZKz2*<2)_h1CV2!l67MHg&}ljtequ-W(~4zmj4O8i+r(JC<KNv~`pACT^hcG6 z=U?I9HH`Of{`-Z+OQ7=%85o!!Ge2hFVK6|7B~Z#?HD=tv3+`+}Vg%GWW55y8?1C#+ zurV&%^=~_4*^YmAcQ8Nx`+-RSZ1v5X|3St4Dh3ATb>Oq-IT_3#_2Wi%(E3ww9^rx& zSDV;bKus!kPEPHO+>F{Ak&m{A9YwDwx@yaT=k=?Yd_c`<(24QCgC>IP==uMgiGl4a z12cm#=*~Yu(AWwW^UDpa`ivVyU^Z+7wc)WDD<WoW1-@)vSxK#D%Yo;GD`bT@`1!;H zbd?i=*aV(F{k4<j<!>%c1(tda&SH>#JN~&buVb}mU}X?xNPvXiMrLNnt)d%5^|!Er z)Aa@(SXzhHtDur(6Epbc2xeAJ?G4NVp!=^k3P?ceSI`E<&1^ippj%HEHuA6u3T+So zuK@#1f5MLHfp)WZtYY%{`w2PD?SBVN#EfZh+GTvsx`~0GL7pKQvLA6H8}rKz^00Ll z8^rWs*O@ZvGj0Ii%(p?n2;^9h3xz@FJV`(<=L2o;+ax9qx*i*J{2;I81}UM9Y+RrT z3^4&gp$$@&28QOKf($7{(Q@Jnl)y#uz)7Sq{%41t2_f^0>sT)^urhGL&IN^sIU{Ig z6Qs083tu)!`#_0BdkbWj$3`B|dSOP;6^fvnk0Hf|q9}NA87NTyeFLo^V+DmK>jlU{ zF(!r;|DQ9NvWYP8Gl(#FAcY|)yhOn{1-dIzfKeNC$1=z|VF}QUNZ^*L0LV5j&{Cm| z;O(2B$$iX#0y_aEco;=NZb1$h)?E-Mfy!A>z5=H~K?YZ}G`NMI6V$8S!VkWu419ki zuF%=Y!wbGu61-9doY0WQM8N@a8+M@>I8c~o!mg`ifP~8naN3e)utN$LN&PLtV5`9; zA!OwvB7`=I@q+I%*oX)hETMtq4AemJfw>1cV3_RT&SGF>kY-?D-oa|mzzaGLo(EJK zfUe{LbypcT@PV$4*uZ485waR#6DJR-+yUL>vWbTi#N=V*)CS%D$gq(abm<2J_@HUf zRSU*~s-mo*%M}ErSFB;I`q#$f`Inoqw=03^#NU=P-KYOWOk{imy1Iiw|NnEwm#mu@ z#6fp~34`qCVSc%Z4OF;-x|S098^pj}OPCYHK=y(bFl`b8J3$QO1W8arW#bVP+RVht z06hf76qLKnMcD<B%Pdnt{l-=O{jx%A`~u=addhJjOd<V2OtpV+$Mnbi-3KkV@)_@f z`j6nXs-@ub^2HfKA?XHuP6?=6z-bIyX9K;+frC+dBexKEH4S*3>PFB#ts6K5H#6~w zfNrV-br4xtLHQqC5wq}tS~SLj#*D(oXg4;1uAM=<pWznxAmBe+|GiARlf|^{*Fk1K zMv=73*?*lt#XG2+g`BAZ+4~)h<W}S}RTwuw_EJL+PXR4X1g!z$hBmuEr=)CPu>_xu z0^Li^Ed*YsC;+ZzS)eW!HwJZZk%vk^M{%H?iqZ()k=pNpGC~45HV6{7|J+zg!Q&*# z46R7+g@i5WhHglUXM>df7HM!D0o#oR4R28YK~Cc3206q%8KA9b!XT%DgI-*43zLYH zv@+<pP7XOiA<%7t+=3e+aUcb1xywNtMR?)@t!;!BEi;e`W$agFU{*7rvf!T^^HJtM z3?d9F40T9;M~<rvDzH1kK=+2pKtn(kT!JFSA83R^Ug9O_DmhqGf>zl;qjIA>gP_o6 zb^%do@On4ULgNkcmKzC0Cwe{9&CiB(-i<Air!h{s!RlYoxFRGUNn_1NkWvpCudsXs zTK9yAOh`VG1P$bI3qj+MP(Fe!fkBHjZTK=6Z21YYCWZ;r*I_;iK1)FcbYB^C^%l6p zvkAOcS^%^t1k!RviVs*MfX25#k+6|P6tvnya0|Pbq%^oy&JC*j83@J!WDz^FGFrA` zg067E2zb_Q&}A(QObm?-46Hq@GZ+LJ)EF8dV+I>!A!Co5BtZj^O5g?`=t@4u4eI(E zn6GW&16RSDn8CN0GlRB&@<B#4)OcQkPs3G%T<Rdp^Kv8TSQ9nSQMY228{{ApT}q(w z4$#3=pe?Zsf|iyWxmg8;Ht>OVsM#@^vau_vnZjx*c1A%g2Q4-F`LJ<oJKE}7yA@<J z?ng~>%m<B&qL~=Y3{CA4qpCOA{^`Z=KWN`4Xiv^_HZSmbE!qrz&|W6W9UvO|8#O^A zO_1Hc&^tdskp;Tf1GL>2c7zXP%@WEHK0=^kPmWPYR0Mo+f*vE2IqdcU6FnyI{RyUu zqJ(dz=x6*x+)Wglz-xjb>$5;(UBV3N4B89<Fn=+>+yvj^4C-HPR0eIHfcgw_0u9(_ zqA$UV&++&SH1&b!z$owv=lW$aG0W<GKnItAXp94+ltBxeL5G##JCmrhv=r?g8cWbB zXUrQ%O!c?ufXh7WTXLZhhq@&f>{+pwpz~KZ%7HG_<CkPrHUQ1(F_3)i2<m_s;W(X$ zF``FQ6f<X_EHi<w#rwfJ51fWA87h(D8WzQP_bS6qYGTyhg4nC9&!`RCoooQf#-Nj$ z;M<e=C6!sRgc5;7ff_=D&t;Ou7*K@l7s8WVm?MyuRlx76f!#5s51OOGNI8rfpr><* zf$vL)r3u*STwD2BHMDd<NB5APCd`f5LEE_qCx&(H^H!bcn7f9kBmlae34EUe<cv(j zIcoYSIUN@JaQ~rZaG3wLf&Hhe52`4+1UKlBcH)*aqcO9wurV{?*bJL6b<3VfleZ9z zLnd!V)ql4^7%~o+#lXOp#A*-T{gn#2H)A6=^UDolM&LQJjgp)%H?SIQVdvsw=G6v` zet=JOWVp6bSnMU}WCl>P4>aw_X0(Z09Ml)!W(BQ<=H>*GJe=B~=@|y_K<!2bVNi=z zSb#y3QB)D!8&MQhRMKNI7Z9>$6jWAX%3_RUv}6wYdyMhUKNTjwKa*yCSRT3Y=a;0U zFF%=<F*-4ZLvMSGS@&nbzkmOpvuOVN1o8*COlHeq{==ZbV8h_dFo$823h4G*dE<?G z%r7@c7;OT@*9LCmjTW4sQ=qrl3afxtlG=inMZ16-ahg0YH)w)ynA#{T_;Q1-5y*F- zGfM^dUv6||)ZS>UDJZm2h1C*t|L;Z)B}>Z<c0!xDCBP#J0)m@_q`|k~Y}8YM+{7*{ zxKSFU$W~~x00ZQzQ47Hh9H1K51eBG<aGeUx23`t{R+F(p4u+2Ns$LRRe8ALldtS_h zBxAO}#Z1N_h4voh=5|gC(n=3lmHv!cRPC`w(<{x+Hr-QG(=*-HHr-2;=`<5VeR0MN zNb;z!E^S3S3c9)Uhg<96>ad;^bMus*u&~}V3yZW~UeIySkUfG?;JZ~M7*JbZpa~uc z&X-&GAooP`A=+S|ivb0UK(~s6W`IE_qJpx%2*04vW?n8yQ2TcSJLp(`hK&M{#cvxV zK*OV;K@CMCP~FGI&Zx|&EXinWWM*ojrp;*2Xw1HYaY@?xTGu6=j3Ed9?fLR(-trZ5 zA58%F#nhtvGv@74{=1FI{O?Jo!;Q_YSs%dJ7}UOJU|>4Sx(z&M1D!`lYB=(O?t22Y z!ni=wz2I4-ji4z}CO*j6mLL=8yci)+PmzlOG(W-u+UW>#D74um&JH@XlZ{;vbS@C6 zeP}!}%-TRvQd7>p%UBZJ@7fZVFFKinBdz{#BfQVW%&_C18%q@U4qgcc4Tf%{o(D8s zH)!Z@kpx$}pfN86FbgHDA-k#&VJ*X`y-`^LGz$qjN(UD5piPaSTimzsO3Eu}fcjtT zpzapv;0t-s6&%Wz#6|*IPXudxWFqxPSnaXI%g;yXLu3q03|{}-n9ef)Vc=&_1ogoL z7#OrS34%Icpvl#ZvRp4AEoCXLmmB!?w=jT%VgsB07IrX;af6cn27zlE6?tB66ykfi zK~Z1>7wBpOW{H;@nDsY;=C?rm1DOQ`g*LETZd4Q!6xtwS$*_?PH08==xlu|$P-v5| zhywVc8Z=J|!<xtNc=kf_p<g#Y8*+SObhsFIF+WC%eo(s@)c=CyCvgS^hE%k8SKxdJ zYW{<-T?XYR$OaTp97}-n6DW>B`3bbQn;+zU0njq`ExcTUqM)Ic4eX$vHN!>;Xtq+o zmaPOK-5KznTuAmpi%NNDr)(J{kD<jQxKs957L>`LV;#`^CCT6q@eR)W1)dIv=P%H- zHxp=tKuFlqa)Y4Y1{O<(jf8R;xE~4Wi6Mvl9C%j@DY&8CFeZku|IeAfv2`;TGnj+= zkA|R;Ezo?II4G;hfpWeDXrTuv1#M6SPtI=C5rtfK1WqlCmK)dwx3lnx%V`*zn1QNu z9ifd<(x6g7jzv&tD+8mDlr-o{7tqmzkhv%mJtlodJ!a6^D8@$64FznXB63XfjB?D7 zvwzh<$7O`2c^uAYouX_LXmCJ3$<NTfaAr*9S&taoY4L>}YEFKd`z+JFv>nQqXZL;r zUo*L`+$W|o$=JhKQ#?e(GN{nYr#Zni#w*X-B{Rm*#aLY+NYXx}&?}%j!zP<G1XKz# zF<Ab8&Me8gjlqz?lp&pA6X;fjjVv55H;I8tK3R^Jj2q1KHwa$as2~Ks@{65Od!v@n z%Z;GrcnY9XvcUd#;AG(zlU30-G6uCzH)siMl9Vz5FX5485fs|Oz$hpM>ZffG1NA~t z0zw^IIEcf80o2g33~}m=N=nvr2+}mo3NbT?s1JynYZYLe?-&=UYUi(Qnj2<e5Yriv zb#V8N4bKY;Or4?~)h)FZ1%>ooqU^0ReYBnQv(yd4tdxz_<OM}^U6R~vvjYwMSQ0@K ze4uoSNCVcOT!$qM*kDTopaWt+X<#Fxi6tl%IB-FdfvK5=H6$Tyl9C4PmSWgQNm78# zo|2LrV7GIUnj*mKxscL?CFneCENQ|DTbclMR6uEBBcl;4Jiw{K*u=~d6dvGYVM?WB zAq=|Ki1?&o0iEL|HF@mX#lXZ6_Roj;8*2oEF@r0^OomOM^s&VnT)%9B6%!j=^|zRS zg%~%uAtx44MsbjMxxoQZcDOTYLuwjE%MIp&4xB7}ylRFfR@SbdKynb;A}+^cV+&%l zLrxOd054GtO$3EDS=l;(4ilHN78KgXz#=3i%}9Fj0;|f5*`bqfq$IA(C^u%1lEnV` zVP2uZz{Ftr&xctOe7B1;!&FEaw8at}nDAm~gR}k?Bd`$T1{dVSXUeF((N5y!20KXj zg32aPqa2hDH!xamFcoy*;ue!-QPDTDuyh6ms-4hAD{IgR<LsbIjHEyXwZ4&{&?XCO zJ5aF7T7n8~7C|XS@=7d>kR?8i&OixQ;#2CsY>ZGvuGgqjrde1a$}~%G9;T>F1J~8; z%A_Q_GHBC-lmy3S2|0`fxt^m=nPz5zDAOQiJcU&qZ2Khf>BR!tupvIBur@*mpTT*K zMS#_wft^8;p^9M>8v}#(7JhIB1Fs|A$iVz^1GCWvN&PJxU{S^mQu-U%u5D!HdAW&| z4b-7$W#-i0#KsC@vVm5OvI=Yv0ky5UC0=ge*54>10luzsBR6Q$pC7#TN<a{l+t@e+ zg*NdCia^@bri!A9g35x-&<PxPfn>>i{a^N)1e7envZ25KcL2+VpC2$1Jb13k@ShLU zES6skk__4mdl)uBW+|cP!EI3ldjrznXEX+#E4YEdXcH?3$o*iiFo6aJwDq@0ffa&J z5s|nCpHh_osRPevN`U7xB|u*06xhhj2kJ?{Hh`;1K*n&HB?N^wFj;Qk6x<}G0N!aL z3%b2vgPP!GVIC#WR2RcWVJShOO$y4OJ<=O_w81MQK&zJcK_daC=E9(fYemqcs1bB^ znjVuWe7y`jm<;EL^fB`M`{EoXZ7Zp$nW!I-<09jZ5^Bs*^<0eN|6X?fy&jVyz*WyD zZWLDK#iah*4Koy(7%UkWSOnNWXHoKlW|~3i0y#l2ZV<qq48V)mSlI-HHgj?F@q?zb z3=D-~kqpiCkhnbz&Cjq{WxNf`tA_udGtFWXVUT2y1Jwuccm$8t;EX%Q4f6UM5HW@; znxq)Dx5!8^D6wd7U^Chx3!YEesKBVb5gKP3r8ot_d(~w@!w?%}Ku0|@Y~+D1dgK6| z`~&h4jtBy;c)%Jdj834H54a+O39<?Tc7Jd$gCv6?Xv7_K<_*ftyn6Z@Wm#WtP&L}D zB&!EH2$%Kc1}P)VJ9=TaCmITXuH6EiW&~PitcH41ud1P-&}LCt4$x7lpk=(EbuO5f z^@68Uz;|pJgEu-eDJ!wDW4Wq#2aZ+KOxnyMe_m8BNz&F%T2jd@@#oE=yPY;Rop)K( z6KWMS70r#~>J>E=%}haUamZQYkUK}FL)Kq_7t?|k_<%c)8@P-&;J<SOvMghR7HC7J zC^&vW3z(pHk3bhFftG>EgA^!06!5^$RR<k7559dw%yNUg;ASBSHb{15<P{VGuN8n^ zYAgo2bPTjzLR}dYDr(qnK|nwHx(w?|Y(|XJubIEaAYB9rF54h?aeIO9;&#Hki+h8V z{zhrggc;;W8AuRpB>75iQ$<lM5&M|&5AHbh0Zo1}F+k$Y1$?G`HhR2?fjZNotS?~^ z2wUI)btd#&a?mnKUcQ&071N;ArJ$8r;7fEia0-HsBj**`#4j!ZZhC;19Dx=O;ED@V zMN#yypUC(FGoV?NL9Pd-J4pC~?mE|INWv1n>iS#cz!k$LIdxD~AScDCy+P3kTune0 zB7s(xfeIICNQ#n1WHr!yC9kxg&}I%%CD7e&xU(ASWDS<6c#1iHg)4WlGNH~{!QyBh zg9w8fLoa$9ftCn^@|F_#xYSLON+4fKigIdikTC+!K0|y7IZ=L#7{rr^+_YJihm!+b zvVzJP8GUHUiWH}y>1Y`-L7`1TY)Zt%B5G)0L@4G&6-Gv4`Gh<(1sY=m$1^(v^zQRA zEHSOD553TEgTDS2S#X?VDPGke0iY%Ty0{2>htUQFM4ZDn_=<8UgAUJS03R{DQ9%kk z)q%C3MLt8(9DMsJ<eE(^$$(KgD<mi<CnzK<#!^$=(o$X15_b+g9F&w46q1k-Vr*ey ztZ!)vKJN*VUoS%M6_|o6HOT32Q2__R1}*(95?~h6^#Y(IFUqLBMG+DhiUJ$e8MU_{ zG5}`A2Hh{92)f%z$Z~_a;3hT+&>i3m8{viPMlBUVp^eg_@KC}iW?{<{;8$cq0tr2J zTm{`Z3c`qcM=?`J2Kq&#%nac4!3HV^WEm70TrkrIct{zN7eL;J6|taUWL{=Lp{=4) zGIH{uE#07lZxlcmR)Lo6!=`OO5f54tuLn9T1UyZNEq0k;6O*{|HjC`jr=amW$o&x8 z!0TT?b1;cG;t{qU9j(BX1}{yAmbsvL7|?p%EkdHOYc2#g@`F3bgvwjcFdb+<5<L=5 z!Db&Zf}Z&)XsQu}85kKh{qtifXSHY01)Wx{2^xXr;Ci_U)bs&2JvZ<fgD$F&25nT) z1JB7py#cy;UP9vK1_?yA1D)<70h(#kwA{cexS2y#4ips(8>JNmg*M1pZqO9mBqpl@ z>3V?T0;RRXj=F;dG(c;v$BYy~`eBt`0YQkfn55P9g)-LFx?$$M_T7ykO6tYNu+y2e zT`cv5n4CIqGB7YQ%=#C_e3$t#gBn8}WIhtyxB)HdgjJ9mB=t86f#x99k^KuA;pdll z37R~E<}C0U9~sbETs9R;%Z)sof<jw_L?yxLk71(_Xc9-va)XNCCVo-SEaV0@p$+nu z8yE#QDkx&)FsSFDy$#ShAaiKbX4a~(6u)x!6)|Df%95Ipqo;FHoCMh2W@apyh+3;6 z?THBssnwqnlzbH2e$i)OV3TA6oiDA)Xa?CUzCql069W^2_9jMd5o2Rx#to2@gc(I& zg0^XaCaFY)z=sNNFq7JKQ1|m022pLU4GaPs6c6xiU=-NEdSKVVUmq+$qO2Rl_4qbO zAK1vx{F8M9_kmpprM~Dgh-!0hU=-NQ#K<bFy_p$IvVh242QPiN0hZ+!*v!MtFRZ<p z7fkYj$PLm0n<b>hg|#<Jf=MY5xrvF9RiR6vOPP&NP{?uvv*iXB%S}Ao{77QFmK*pi zH%Us1gA_<vf{sde;9+9r;g^tRX5r<Nl+r^2j1K%vtlT{O;u6w|n6i3$dK(<17&nSA z3JPr!Q&I(0mj;Hy#=>%pphcbL$Sg)>W<5qwM6oj~!-k6WH}nZ<3UP`Xi0_)SOVUt+ zQ%F^$Z^^%xXHN^s3vdW13m!Xt2)g}-)&8$){+0av>p4uf|Egx)gs^@cWY+YX>gPAr z@6UD6%2mj?upt8jYcDJ4+-*(9Wel4XKsi-h(byPt5a&iVej}qzpbI@VGjef@sE8xt zlLrx>g7Ek}#QK2;6muI8@yT>xmtFM7sUT6-4QzUR8)O7nH?Rq8RABuH+A++<`g7MI zoA-7g`3>TF8@TmATR-__e)54fHcQL=+-3Xu{X1~9vI%TvXX6sq-pm0eIYH#ELn`m5 zgJp@1^j&srAI!j76a+TQD#!?HZ<Yg-@*r{(I~x~L^mABl;I!N%uOI`8ep$;6a>S$$ zekM*H327O5b`DSik(EPAAs{BBgBTMVCl@50$jB=w;!p=tOKzHh?T9j5Getm_k3&FF zc;=EhLdt?10<r>==KuS4wqHnIm_tBOr02+F=pZ`t<G%+z+TGkb-I(kltacA3`#-Ww z;vQW-KD{1)-#{j_p=WUa|Hr_<d=b1(KpeEEj1M%23(EK#xFCzO`L1o`<$<io=H&xz zjbeju=VAcOR<eRNav>#tM$mu}bcZ_AwsnejN}S5B@@qEz%UN>}o~-}1dG-7F^m{Q@ z{W<yf2NMVLJn+skP+K2z4-M!ZAr<WR2&uyF5mKYh<uVK#NxD)7bV--GGCTe&WDX!= z<EGO@SC`3-OzOW+d)3F7a&fh>a9757LGBX*#R4-l4jLIix3a1;6hKz=fQw&HqhC^g zgQ_v;7Pt-aMvNOYz{f`L^1R$E#>>Z{y-`5?<pu%$jbh?2H_Lzpl*C_d1RdAGCm<-a zQCJdm{1E7(Ar>}E%Z*B)Qvx~U!DZG)+|h^Bj6=RP2Q51HVP2ENYL6bXETX#R=DONe zR@zV+6vr_P49vgSx*0ebcp3B{bI+hvN}E_fT~TJx{5hXKWJ?4)Xs(>maw7|9sVp04 zcakZiB4`V;q9~)eF?$Tt;lH)a5r3_jPXE2V<-qea7O(!4-`ggFibVz{273kuW<%C( zsP=Ha+{6N!KV=3j^d!a}VPj@{Cf<L#Oe_9=W|I9UyJN%iC}xJvsJ{%IkgNo*Lm_^e z$iT@U%3y=VPvGsmpdGVf;PflN3tp(guo0gRk>UZ_r{_T1OF<asUHC>*xSxAb-GSt1 z3f+Mm62`FeYhb~_Di1q=hKT_Z9-ufD#1Y3r`WuBAweg1lbWjr6_d3v_Nx0`hhmM2R zlOe}9lATC?2klHE(oSY&B%l7BRSh|v9qv)sLUASrf&b50_*geF$T8@ERs(_VFxVsx zs(eA~!?hsiJ;-4>??D%Ie->z8kUZ?X2U&SguU-~3b}cKgQAXnBCK>Q?r84ZC+MvA& z>Y&>eMPF_Nb<^ZQ*Sbi7x@jAE!T0oOflkF10-cJ@E4Ts6F%Y2DS)jg+nz}N(vY@aW zqcQj%MKxt5cIcT9EH3jy5~iepFA{T`>d4O5zQU=&$Tq`AyRx@(BJ7ZeE!F{UwOjJ4 z54O5FSSPVe{NrP(Z=BE_IcHx7Bo4~|KWDkk8o?mLpbA=h2|6!gqZ0GWO?;rd&CdLC zi!8GQAFuXC@bU#U{SB(uKxdu^i@w~XD$J$5nL(9-QybJ%W!T6J@)BtI;RbfWja=N| zHnEABxuP0)j8h#v@`+eT&SWmf3>x(-XJTUB#&v#Q%1Y}XkL#U{7bgaUOut-Pe|n<d zIyURn)_^5fMVMxBN%6m96!5Yxaf?XU^q*nTqJRIkB`0tD=aav#(*D<N21W+e|CY>~ zSR)wJL1)(UgB&l$`ErA*{zhibmm3+mUT$F5-ym<ik&FE$cnn5Ee*^cmjWR+nH_32= zqESYUQ+pG)42a3i!KuAb6H-^%n|}QcZX>bl@oiu`z`9Xh_9x#4g#!#5*%b8j7&o)A z%PW8y44@V!!$vVK$Y?h|XpGIkP~05c;TBdlH8(Z~d0z~&x`~g8pHWd%k(rNKSxHS* zUf(<+M9^?kuQ8AKyv4fVGOFSx>iSOF(rkQ;O#eQZaq0S%hw1yRs25o{kMUpyXVKZK zV*HI<!n$4w#*K~tq~d1f*$G18GXMW`mN#tr3<?Y;puN>Hpk%EEyPv~=>m_*b7km{Q z!?lfyqM#*QpnFC(@EUCt7kjxu&<NBB<l=j|flD8JeGh2e$7Xg`84=KOHgS;W_$(PV z8mI{hZ4?I`=*cR$kzE85&)|Im;?RjF&^$OBJLv9hT$={+LuOvCpIjamAiz^0B3+P> zR2VYra&7(PnIRi2GbcwyP0Fye%$O7vH96A~x}exmz}`w+L)2Q<Q9UA4Eb8C$U5ozx z0i^*(mPMe%;y3YheeKC^AD`}%;PO2Vl+Rh7gTo@9VG|@QK>Lb8b%_C}E-?jn2NA)r zQC#%p262H6f}n{vXebEsf$zlI2nvZ!>@uvNvzfRAH}Z;DT5b>*+JG}SK#NaNLjx2h zpbV{tv4J8Ew7noL+QVOfzgk4P$j2uJB!G3l0c2^ZHjjg)xV8u=C}I-CT`qKku1LkQ zvJ|}6aMS<itPyMx3>pj((Ec%KJOFfR$Ob-R#to3gjnFXw(D;kI5O`x1=*${PzL(&; z8bCua8&oVe3dsu!Z4kBGASt*(40Kl~=tLno&<q<&=N~Bz@G-Fqia<P#==i&YB?<CX zic6^42I+b=Zb(bp+~|eg=jX8UfX214m#HGxUsLEL2dKaQ|2a!8%O3`1(D()@Rv|}w zvVpc&gEmltn!zgIn1y-@)VqhCXCuQ0KFdcMa-fhX-%HSR&PLEU%?3rwjeMXoTF`QX zC@A+bfVbjql9C0DsiBUHqj^vn)L&FqQiG1yXnUl9(zJ}Cv5RsyA7-zf!^%}$8=Q>w z-Ha8v{>01y_3B}F5JKh(B|-Z_!Mm^EcMw9>{<4A6Eo5~c^nN-P&}5r9WOkT^T~KH% z6C($&fFNkDa3dpVC8j8-5yoiD2);NBT0JvkyMQnOT2EJEyLYa;`{|!rEceZU&QDfn z&<EY6Dgx?>NP>zSc}^VH4?=b+K(CeqEv;k*o#_O<^8|YRAZSrP^7VsTIrt?tz?&B~ z!0sR1plivnkr^}|BMLs7g4=QfKWIHB=wM-to55hw0~rJcT>}PN9DsQpST{fV^<S{9 zXN0efs|2qGVEX@+fq_XGJm<^JpvAC>0~9Kp;Ij;Pz^8VBHlBj=88`TxE;e>%P*fQh z!q<ul8VhnmV}fZFcnv7%AcJ2A85o%Ue_>z%pX0&KfMhl!gEr#^EM_yau`?l?&8*BU zXe`JBZ5i>cfUMg5odrIwgqZ=dj|{TU1nCZVSnZ(<TD=L0KN0M^Og8hgYUqM2Bz@lz z^v0l&8JFupRRE}NsJ}cTWFxo=n3!p4nK=<$CBRm#K&u2$OJD)cT7WqNG6fFbU$hOp zzX-{1u-X8;g$(L9QN#`!(U%)Ri4nGi42$1Dr97;mhFPw|(iymX2NmZyi*<2mq(F*y ze4B#`z^M$>Cqs;_D>7J<JhHw?R0_1G0?*_bBu)^;_7YfGeF~O3agC?5GC=|!Hb(~9 zpH0nsqoI3B;rB*Mf$Aax_eR6w0$NC~fR)VMu#m?XRA=Ra1~mf<WFCXv2|UlG$zTfF zp#~aIM_EgttiQq7c#A9xgEkB3?C1?@`dieYQ#_E9Iib}NXf{?s9K8M)v}M3R{3Yn# zL{Nz!09y(yB`CB}P2JLRgO=b%Q4UMX4F*CRH8mjTYN1rMu*wzrOe1qsMNxL7jwqHG zylkqeX>6>iX)3_@XBCJB@zJYb#KM9;O=A-cO*6Bv@$qM%Oa>On95q`4c+N|O!GK{t zj@c5>ZQ6RqTO=R>qhYi`QGbgPG++#2^)zH6bR*i;+S;I5(2c6%;AXrw%GKINjM^JP zJG(atDT3xdH>e6iuh-Vlv$Wi(4H|_|1|<tZ>kN<r3be2WIpENfN-HRoK%phT_-h4- z2JunH>p@jHONyqMnWnm_DWiBo!UrfDo`z<@(@-{Mp51_!hQQ0k5wl}hQjUfZw#2hR z4U}{?i*l&rUyFj|dC<lmaU?#zRI_Z`uBV2u03e)fPCR)sAC_$3>1G-{-Ap7h-N5cl zVdi;Bc52xuq-bfmK~-=Qn-XZ+Y6GXxCS_290i_f|1qf2$pa&Mtl(KNeqRU>ekiwHx zZe6~-8J1E&=huSEc6Lx&0o}A{3A)7?qrB19-(YUMMHP~*4B_|oLQ5G?<4QyP<pvD_ z@bH6)_{$9@h>1PW;&LU>2%VJW1`WXt(v}<agtm&x$SNpufL8UI2!dw!ctO)!1S<&S z9D_Xeh$R8RDvmv%i~|Z4#v~94;^9n1Y=S*K@Z_TjPey3z2y_GbTs-N>2wwg`Z$gJ; zD(vY<A6)7n?nFmgbzz29>SzjXVN+HC-=YOdOR73XpjFTMpwdT;#54t|pxBj>Ga=4& z#Z%kJ(OA1{!W>xm;YnMJYg<|nsS8$@fzp;L1E?+|s~p;(X0#E1C8nhSS`7y&fi@U` zZt}&Ql#sHPu(3Ew5MW70@Y;)Q*S79*SP0-uK`gN9i*XG+A%XH3c+CdekS>SN0}E$* zF<i8wJPsC8c+(0ZrGVO)Sv0#VMhmpf0&+WsHfTbY!gKne{o1Tp!gs~MTCb2Rd+}X{ z0cyp<&gLJa_r%!PA?}H>1+53C*F7<i;)+?Biuc4oTjHDX9KcV~IpA#IF@L<b#DLTI zKR=e|tPu=q3|64|OC`_%h7Q-uO`t;-Hi6D{-Dt)I8a3J|3R*H_4Q{cji@gM00V59@ z;Foy0K}Z1HQ3Rc)VgnMA7Zlo{WVyjma4Rdnq>K(|BO}8`QPAj;q~!)B!A%0-{p=gf zbOePqaxox{pMuX>;bVd=ok3nbqQ`_WZU{e<!8~V9N{Ejw=q7XUwPpqGW{nr8_+fOP zk-N>EH&@i^sur8->+|t}Z-sZM&}B;B#>g-aV=$G8A?{xk^AG60{|e|Rq8@0F2Q;|B z3K~!a?f93`-zW-NW@8HuBTZ58R)3^00<Gc$oxuUx?++eIRI%J(3<)DW3-G`JER0m( zVPv6)6h?^dHf9LfF`4TzqaRHJ?|JKom3z5)TdGQekDt}_%Mw#o7miv`>4tHl3!)32 zF~1^0QLz|)Ds7m$i?uEvi%;|3a<m=%;PK|Le{RryZO*WLZ5xsIzJfMgK{mB*u+oR_ zcmr?05(4k22JMFhZEr)`eg)bZ3)+4K+7=1geuccf4Z8bkleioYXh<4kbDNckpwI?8 zOUm|2q7HPDvc2ds(&lYawix|$!`QVB%A=P5+@O2f92q(xd)iR;)oyTvZD`wIp%2~d z#<;-=eQTSI#LEpfh^=kTjM^KqZf$b}O?PM^wzOFo2?}knvD_$&y#JPzowu-kY>+ts zcH(y>%|HrA;&&$fOU4LA&>kf>=pH3;hC;|5CGdhk*ybd0*yf}SeEQJMOW?!)2yIgm z0?n2{w<!rpKo*`rw<$4f<O59+2!W;uV7pdO(-dU$N*IzaVH;R}zQE!K!+&njJxQ7j zo00Y;fr_9FIQOz_(1h(n+Mu8h-MR!`ABWiA!b#kYBoztpk}KHm7RZhy&|P;MAUl#& z1UCxvfU02y&?)~amPGG#K}#T5_q;eFg%YlvFTXJkMg`3QfzE$s3}SxFz|WwIcKWjb z{Pbr*(9}MG1D}JC4thpC;2AXk$jo5Nz`)YVYR@3fpu(UFx-nA>RGUh$zl0ofqs#ts zi#U@QGq3grMPt~RvdTtVR24vC8&yG-hn_z4>`Murmm3vSjf^%)fKR`aQ0CO$BnFNq zG0=>=guq773Qhsxmm4%eDUeg><wnqYRZR)dA@tx#U;<rNARuFDxlvUCbTbF9rR4@) z!3~_?<Y+DkI{`%$k}H)J1;t^<pooI@(ZM*j^BDWnR#!R~l}}#c)xN9nU(l*I>kjPO z@P^U+-^r6}W-gp}o-r$ugSkY-uR1JgmOO{};=Z)0sfLVMFFPl+R-aE~Tu@q=p9Ct$ z68=ADJ_$YpQ5lp6QEyh~0v*HwO354LK`Uw?b6AMG)xpPK!*|wf;4%i!U4h2HHVT2x z%i#sxy9mAN12*clL0)hJgXIP;A(SI=jLnU4Uanm^J1nHxg@v!HhmXyAR>YnM>n1e2 zRoU5>*;;4%=|V3~w@&yYTWT4~$p2@{NoO}E4od@zlx~p!eEvUYp2hr!L54w@A(mki zcrAef=gUoepe6!42VyM&D5fDEl;wZ9NfvzMv8*tsHrP+H-~(Vl3kX2dJV=WQHgH*P z-~-*=2Ab$GGgpM12m@JIzyvw#0W=B^o^<zNVPTrbF{|CD+S<l#RYu%`QWuxf`O$IH zb1kR#l$G}KGai@K6P~q0Up-IX&aM4Gb@kzP52xBqG0Wz!m<#et+CMjD&{-*p3<jX_ z7ewsnFoRA<*$7%)AgjMo6%<#HaZDwimm8EI7Xxx?7#YDLj7tzapAH(aRDz$vAt|_- zUyK#BmjMzx3>#%Zmt_iDZq(ry6xzrDS{TBGdXf<++C)IduB)4aR)d(?GlI5C!96Sp z3JpG{G>`ImAz_X7EPQ>>uEy;0v-6tj-r2^&WH~J&Zbp{XnhDKr6;4hicA)5FVkq6y z>|t#c^ZU)N^X8`IhT6TAd(8dZ8h4eiIO6Qa_}tRKEUA@&ks*sok!d39Lk3}nKnBp_ zHFoZon*`WFYb69gd6C;_6T1M2$Ii&9%?LVC8+3G)#7of0=E4G?6O}h|OS}Z1uMOV% z2Rfjg9W*z|0?LYl#)7C9pRfyN)w5|9I~B*)>-+j7GAS}2`1h|}+i614zc|Kzzo>+N znhZ?;Pc!^tWMjPyUW4byumN<OJ>q5v&{>X>`WuBolU6d2B2MDvW_fl2KJATSJdo3c zK}X$#*V`e^xtGL#&OP$*x~UY8q^Q1PeRzhlcBP@Jsv!t7awW5{J6JPa|7)0E!^YCA ztgEZ6tg8zudqH8x_>Sc$g8+jm!v-GxjclNeWrE-)vVg?PEld*NW1vCP?E*}KLg2Gm zK!^HnVq)Zgt*jR}HZwPZEFEEE7tBiMWAn>3l$GRB71WMWVp3$9T-wUWU%<lV;QKEQ zY^NfVBJ)v}EexWJW(*rZ7i5bV8*gD`VPI#`-o(bvV`K!o$zvm<1b96$52H5dR`fC! zZO}Ct;3eX>KI{N3d;u>GXF9;Lk%9du>ju#SyX>4kf);~wffp6C9M~u%_mg#l$bnsl zBHvvCY1qK8$G1W7z(!8_pR60$5A3qz_+STK_RAu$nU#f2SbNtY&G$`U5q5#i9PFIJ z+8YD~HVX*y3v2JP6aJ6`mJ$)zEG!}<ti6eqg$=PTc$2V*kf4y|CJuH^BtZc|enBBi z1_v(C<R}NHfS`~tXh{wPGdl1wv9PkSb8zy5Bt%3Z!Y~rFZf7G8Bly@(hK-D%%{0uQ zL}@H6ZVXx(4knqEnbnoqnUxirqtrQc6N=OHIJ6@wH_wdFX3>tA!LsGwq`i9?^C0Bk zT*iQ1yZ&te$AbVPA5$&M76u6hC58?B`Wr<+<(?#XJs~JVNP((c&}m&81R-|9SEMt8 zvbH*S`H(%MKx3nTf&d4ftYB8{7uB*%eN}03DN`>YewHo&mg&YB8^-A~M*a23XyZ-e z^0L-sU}RXvT*+9?+RDJfAj`0UK_3+L94y+58(6`~jtO*C2Kd$_Y0wVaW%|n$-Iyzx zc+UPi$iT=@%ACts&pMGokih`#W=_x=NFk8ME$ra5x``cBTr;rqaB4%==5g{13T<Ej z`M?C+V-+<sHWCvB7geQs*@k|8Y`mJzw)(a%EUML8Z2gUkBbdyLO|3ymm4T6=k-3<$ z8+>l70mBAXeaQK&LfFq|h1iGZlvR`iRnZSn1+`Ha8EjdC7!_HsGVn4uK*9z*7qx*M z*8ByZ0M2p^dS}ok7VzpY=>0d)HLjrK!VU7TsS)U0CuLJJkaul8Y-~L8OG{b8yzEVl z9lTgFBBL@Oc51Q&G4jCd<ksK91+kMwe+x611-6sn8cF~=uycd105F2s$pTt@1r1|y zQ6)Ce73ZRCYMP~a9@aMQ`6a9(5t%Gr_9mwGUMwI>85xyXrZF3{Zew6)&<6PvbcZS< z3j;qW8E}AOlbM%+gGC#3!vN&+h7F*V;f&DL(u~T`1<{Zdv%7YI(le5ox(uKYgBZAh z#Rz=w5W}@CtjK19I#3Kupy3Th@c10FGNUqdkO#8%0AwbEE{hAp9@bq9%nS+)8<_RC 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff new file mode 100755 index 0000000000000000000000000000000000000000..630754abf3909b4726d19fb2209b744b7847da62 GIT binary patch literal 114324 zcmXT-cXMN4WME)m+&6_mgn@y9C6xorXTStbj=`=B42*ji7#Qpr7#IS&iYM2*xrO*L zFfjgMU|^5|;e6J1d3P6AHwFeK2?hp+1q=)fcii>81>FPugBci@b}%rAPiA0<xDw63 zJ;FUW)QN#X%7=l0e>Vez?38c+`)B$G>l-mJXmKzwFhnpgFeGHLF1VbWn^?fWpq0SD zz~aupz-Cs{JT)e{tVDr<L2m^E149r9^Y7xDnO2aV%fO)bhk=1{BLf3dYVa2Q<>`sV z1q=)Z8yFZEKxTrlKzdGP8UusD4hF{PuMEuD5;^*@?HQ?wDGZD~Aay1T3=C!*Q_n8S z$Vg3OVC;Fqz`&r$z`&rwpTHTDky}#1z}U;dz`*vBfkAK`r&V%iPJVJC1LNc`3=G`$ z3=D!>*k|mD$W5#$U|^hI!oa|w0K%-@Os;u}xv30{^QSN{aLX_-XomXUn4MXWUtGe# zxM~9fgRlexgT@~__Pq=RMX3c0jC)ToFfbfsU|@_ncl+SH^3<d>2F86o3=9lxAk6hD zWKG4b<b;%jga-^sVr+J7%g#)>@@LVXJ2q@;;^y-O*!ImiGRcNbl+BDyAR#4zY1Na& zgg@I`7?*Ib)?nDMn~Mt^zo3|BxG=|C5X3t>y<sVczHo7OM#U}FbH03xfdVWKR%Mmt zC1l4mF?-xO)U$sFqxyy?8fM4t_ZUCmIVM%DwdAt?eebwZdjW^Tdk@Mv2_HFHTgqvE z=j|y~n-5#!^&a-}d&DbF(zQ-Z+HSdBJVtTHHL;L&GMD_=f3KJvyJCa))NhgV)_cuc z?_P4?#W4oK%q3-FGi`e&+V*wYu06YF%d`8hu9v=#`WIw7zc&5<%Kz1MjE5Li*Hzql z8^c==5<1Q9`@QRmEov<i2L&eBGct2&{I6H!6fjh3KH<W)_;5gnhMRjy$&^BglnY1e zQ@b~5q-eIKN}Nv8Nzv4rn(7`|-qtA<c{D7!=f)!G+?ye0N!=56-?x3g_uX{A@?Fv) z8?x@LExvd5ukH6c#plo0dU^;1ik)4$+~b_i?9C0E@_!$_yZti5rU1XF&(RZ9T=#lR z)tP15P<3|3euj#Je^xgn--^)Ai>kE#y7Jf2Q=%pdvRtonNmX9g{eIsid8aGe2K`&p zitXz3RlmP<vMgbIwtt4(Wf!foDBo@OV>iwH9{g?h?Skij6;cxv5A7FH7C!mL|D3%4 zp(?k%jC<Pue96vQXt0&jJEc?RqW2fk<|9XwmPlx;bteU?J?r?Hv~WkDj_CHT_^#?B z`A3=`%|9aiX#P>PjiGM@^gHe*&A*}lFZfUF9?g4#@*Vw0|92!W3Y{}S#dt~lvs2tp zT0bdS#`H~l{4^v|EB*A&qQ)2%@zbfF%ytI-i~1M#FV0SB{v_$AX*+%2P1*fKE>icu z(tq!LYX776Y1>bkf8u=VW*a?!t(8Wh+fD`7USTi|iCv@@E*v^>*2+^?Z9*4nT@~6I zb9ddlu<xtyuWY}P{7Ulcnp=yut$u#BJ8S(aMMdt~&;!L1`N=i<k8k#zmfU}|V)DU5 z=YKZ$$Um4QbFTha1^45*J*#bgdL5fA!JoFLv2feLEDsa?H-*a#<<g!maQVe_qTjf3 zi^<Qrn17q}TWb1FUiJ*;`(tsc)A0KuVYbz-%X(uDRJ5qucOGB4%{|%Xh&jvC=|%rI zwkPWF8RaF`+(^h?JJa=Dl9hYKi#;Y@I}bb0j(R4&weWsW+*hl-%?C5{8RZ}CN%z@# zaq|6#GrM;znezGU9R2O#&#PyC<SW-JR4$&n@opU7!Nh{k#f$C;_g<5Fw)x=HYibW> z&Ut^nLg8_>q`q0i56k$Y6?)U36xS&~etOO#dxlxFxS?L^oRe?gN@`ogAO9(JPCo6A z&GZS&Q|r&~>9%<s?y{l9Pr~bR;jYs!o?mH~bCmL)J@Hr|@1=?=)=Z|qy?jpjH4eNN zBy~N4UurMOR0^Nt?wYh^M^BgQM2$s3bAC&jIEQq+e!&%}srAxp&i|t!dSM-+C0ipj z!!E__jDNR${)3i(t<O$I{gjGr4*sPVt8G8cF-l?og!lkfzlVoQ=2rRHx|grY3iZ{# zs#x0bE+~HW`j>g7UUL`4M~X)}zmQvVP(7^kt4r3ZS-!ScLbEu(hI(HOl3JY?c6#F^ z&WQW%4gL)CnP)K`XH-9XjLC@cW`m7``~ijo0S8nYPBRKKx;D&gC^}%{z`8(a1Iq@P z0_z8P2mUtPXOv^IVXI*Kpp(FzVEv%-KzGC52B`zu4f`4IG3?>3kpCd~AlQN90uu-G ztpyE=9Y)*}m>YU0)G{_J^y}Qc&;Km=$K1sCGoJh13oeolWw_6K``Xk`1#)Lz?r70# ze<Oa;hvRfzviMVtW6l!dQaXG_>mE*Wos*whGvjSe_>H@rCY@=Qoqo;yrJ8eEDtYZu z;a6VU*4zkAlG<UKyfs3OeV^=<I}OD@xcnYSe=*zZFMn~l$ghnzVh_vz75lKZ=ezN~ z$sdK9UFDwh8{IpiT6Zqp;NGbUxyJ&Jb$iN-PS>1UpJdbZQQ(-g#B+%?ZUy%qef!3- z^rBGYu^Y<@EFagLKXD~2qh#aB%bv%+Z{;<<*7RAu;!o<GBBA8ndv>lBd3u_6TQz6g z+#6?epB4Y(c-~);WxiGN_UEuETD#Zt7~B(-y&pOE?BtpAN@K5?vHn!OSTtKYYi|1_ zH@)YgCtZ7%8_T`9$z5G8=KkGj&jD3$$=kVRRbE=QGPBQGTsID9eIEb3hWB~D(Y=>9 zpPusY_Ova$cg*ph`T@148+=ctbDOliJsYvj@bQgfJ?XoRX0AP9;&CTC<VaY`E}lbO zBAZ1u8$~M{ysl>5nDjHpa^3c}18E^r{E;?Va>D)H%a2@sW9vL$=!+&VQw)zprk~P# z7bP2UE5{2=b1v|l`j)}HFz#D#!*!!$+ZkSG1vyTcvfAK-&{eiQ$7dai`yFxP66+R^ zzizf2^II!g&eydaT*iOym)?VZ!#X+M_WO2nVcSKlQr5k6?aq|ka@Fg{gZ)eIAI`FO zl}_Bss<ZT>9P1iSsR;SEDSH}EKR0}Ld{-vZbo-O4p%;acOB*7OYhEkVnjD??wI}lA z4y9G^9Ucb+SWXHLb$iM;HNJCxa(moiyEP%-XG~4v?|D`oG*$glO~lK92R|dWFY<Y| z=Hj`pJ@b1KROJM+k2L?^@bCYIfA^<;{a$;f@O{OPDb|_xriXWlb*pYzz`yZo&a|7G z*2`$ApDNlJpx1cR_}aT-mnqF58+Qp_d}OxO{cr5v)wkB{yOxr@aO<U8S)tMSQST$< zBj-mczTUBZeg3BWzWjapJKxLQ54#_CfA*8<$G<xM+{$-y1K(-kU9R)4ly35s4~wi? z|7w}^6#1Vy4t;U!i%OZdT=ljP{qLUaGLi3;o(bFX@}7%Azw~A`2^;%fzxdV4!Td$k zi*~1|rOjJrw=D>_tmXU>KTGNQgPODj$Bpu8nWNS$$;`O9=33H{cPnmo8TKuF#*wuu z;IfPUBb9f@cGh%GOP=#oB7NVErsKPq_p&8Dle21x>wO{Wv|i@Rt=3zDX+B%~&VLr! z+nD)V#`xETeUiqk0a9+iy|(BwgxVTB7rD!H>WoIQp;tpTi`VyHz1RiOEBo`N#y6%P zFIBF%&T`N6Wd0YS59>YaR`WNuGgf-Zv&uWKTD^{4pMQniE<T$-t6!~bevsU;YeD*q zo%fa<eo(?OXC3=;=Zw(vTdp;=MXga|&^2~lf877Pvs2Xz(*;$wQ)gUltQITU`fb<7 zV^gc-e?5D-ctNeii*Jkb`D2gjRv%h^dV2ifxK_sd4abBl>bbf6g0|VX&Rk&16Xm>0 zx;MD))$(1z3r`)}&3>vnNbYiO;#I{9_n2-;_il0Mm1W<*DP!ikvK>L)zud008=TfF zP;H6yxt+Df)FJl5rlXQar|uTWYHkyr(m1OjSlG$exOg+K^|NoqPfcHZS)CnzyWy5X zR&+r3)W&IMAC^gHZExCTwZ)=KjByJ`!>*SZq1><d7NjbFd&3a?!uhp9)HTD>Z#<=Y zJ~^c1Z7!1EQF`U(ZiR1pJ$qNHwq6pOGGji|hker@ekpO4R%U%?SKhuR{qfwz^S3T# zT-%g!@r9&rhMRM4@se%ll+~BLXS{N)ICpV+$@YBHtmY{XUp`;UY3!fn7%3aYa$%96 zu9V}=sx7My&y)7#afq`|=DJ&WC_}X9$(Fw3A1(hn&zr@(;dXXm){>~@v)5=V_A~tu zc&sKdIq7cJ)P-ACo67D?x|=lh#e~qV?>x0PW-XNtxSbNaus?G1!s1;ET$!^Duc*B` zt5a_Cg-t%@i;f0v3aIYMPG=10itOTzJ>V;0-XoWHH!$ejowX7>r*1N+pWyAqu(Uz4 zO8u6+Q?+rGa#X8hF>`;|`+&+rJt<il&6=CN?^^a1^e(;j%6ZQ(p?T{WrBZB;mnuIH z^=aIvz3_EmTK=NhFU6u<voodtHrk1Q?a19X>G;#@MmqZ^sz2HOX^D;M?U3-POLuAR zf3<E?DF4*ORjXo3r&l?w4Sl`lW!T2hq^VKHYi3^4S$$^Lp;@_#+q5OKbWXik(|P{V z`3$i?$F6^^`K$F|ZHJn9(pT1!b2e4~Bj@f7JZ#Ster_XsN$zFE*tOB;RcD=(^r{P3 z_kvwwy?;P-`<CDAi&ECzYi-GBc-I}go6U~lrEHaaQTzEv@9tEdJ8^QS^U2NWsn-N- zzVt2K9dnX(&l>HEYU2M+eRn>nS8<gk|HzYvwlCFp?y%Rnkm}c+7Lcj2wVvx$n62#I zS0zjD-8gxm)#I<hx{v?4OV{38asBpYl_g8gEj#e6yYjX03BH!)Z_del%d%Sbia{a4 z`OtBGE;c9Sr<K3hPrhHL;cCY^b5}u0Pm6!h?c8G?i87Zr-CGm2{ezUV?9cXCj+f!e zn^G!{tUh$^%i=>KFJH(<CYlxGKHvT1EpNS{Yb^hJJ;iv%c-?dSJ2lTrcbwkKH2eL> zpR4|#S}#++ws3x8!@Y>V8_KG0tPhrF__Hll@F#;!U9tPj?yo<TjsA#je<CV%&*<yz zA1$hNznotce@SnXzwukl*yxvNQXlih;u$TzGk@)vEIqkPMrB3j#_!YbUktlBw`VG= z{kOusQ&Lw)y}#Oh^AYRU%Q3lmWe3^seLw%^?v;hxnlGptPgGM`TC&nE<M)zXG5Xi4 z52|1CfBkBTf8o-5i?3T&*X|O!-7wd*Dm`}hqef4aZC6(>Uhw+Qi$I36Df4eTu;0yJ ze=`5G*1|bYoHn;AY~@`y?aAz<{uY;W*Jj#1+cq=kD(}gqXW}-lUZ2x>REG6|*Sy-Y znAOcSd)*JWT3Ju@S^h9;0@nqjQ^FBSdvCv)Wt?r$nO{HUxv%Tyt;-^(-`qK8%YDNS zXZRy^H-tZ0dh4w8y%*2Uxg9k=Iq^qR*{s}%sNK&`<a^EAyFa-9c}a?T$B7#+CQDs2 z`1;Fs$=xc6KNG|Y|GoaQR%7@2wY|E}%+%F1mKg0hE!?xi&pu}nQ;+b4_m-)qRi?*Q zUy1JRbNg%b-9$}7`F`d8RnOI84{mEQ-I^9E>-Bxvfyo^DhE8&q45r<!I?n#!bK12_ z3!k6n{C@U)-NZ(w{<-;{X_}MfEO$7waz)br3lVK+Gfz2s|1o_0GPhulz^xP+okY{q z>pf)@Ux&Wkbtc)e(sZIM>l4dgwF|-z9TdMV)^63m=j&m;+^TdgLB~hJH)bvSSGf0J z=^IV9hckN)M*X?a=3XM1C4EzQr}$R=1;@6mFS9V8oOk5+J(kCEE-bfSy%IXUopaHa zsQc-U*yo%Q{}Q%WR%HLY3EP6o<-aakVzcty5wYVFZNks1KQefc#NF`KeB1ZT0A_w} z6UqE{2HCS0*gg5MVS{o1Ez8_*a;ff%rsQ0U()^|F#=miUsma!Doqn@FN+zi`C$BuG zyna{7yNNROdcDz_x9@wuyL~&bcX6-KyoukwtKT?#C}fQXyY|$}l`&`Mobjn#nwhm( z#9g*ccI~xiY$bE*xPJ<|t$ux0_Pt-pX6e^kWP2~l=uUXeY_YI<qSM8#3-@^C7uC&M zBtGN!N|hp^rgH|$DS=^Y))m$6>Nqc*@{+$m=fZ?db8cAKbr=6*sk_|EWA2udFf)CQ z@7q6l<y+kw!WO3p=k{f<-xK##_FV60i&^~>xfgvGx;N)<^p$gw#;L_Z_xTEXB)+^d zelykf@uVp!3Hdg!r6ni27b%@pdlR7H75V1Xk2hC##~Hj2SX;Y)!XlHpXCJxCb`;Oh zFwNa*Cv;Nwap3Bp&uW(}A8+&Xejj(|>a~-VLKD}DTw5pKTh&<8A0mDJ+3|IE>=tWA z^=;T|{mpi!xsuPL&C8eF=lW^0<X=iq{%^bE+FK{?`Oc<jzV3hY!#ggM?sbY@U9zWI z`qr$+Kf71nJN{|=_QbbI8{B8^es*WiIo)|Z_beSZg_XZsSW<E7%?@rey$5F`x|BCw z{N1qZ{iSy<D%Y&D;?mVMUp+l`eVR;t+nyq}Tc;=8opUteMutj=e7;zFF#DxjCwE=G zETL)NZ24%H4&!upi!c0r5na8RJ#)KnWCSj%U6?9onb{?7c;Gi*^_E(TqW6jOdv><1 z-(~soY=ObX>$3l^De<ZPzIFfBu_KqK=0rCyuMfXhH(fSbrtFEqL|wZl6K_m7Jl*hR zU19m3zbw;S*S`yx!h8O-i@5r^C%5g6>%F@^V^7Gt6_1Zibbo1G@hEEQo+V)izbRRM zx|FO`m^Jktv;D;*amUQLw#oX+g;r~HE>_O<JUrvsH=7AQ<u8i*%(x7me=>gL>0MLl zo!uk6vQE~^%<I$b9V*)^p3OeB<jTHNDm84MEWYJFUQs+@Qsc@<-@5|#O^N(g4_-`c zGrqCDZHs?AqhB=R&t%=Xb%wg<(hS16Z=Ljv5)%Ge`zGJm{>tT_ci-HsRS+z_uzA8v z6Pv?F7RzRrf4({C%<GN&{Vi1^-`tnBj$UBC@YtPQ?@V-WpZj4R;A65l-rPLZCVf(c z=Wp5mqV;lR%kFf@%g+xMns8~K`%AyO@o(R}Q<=B^ex%9)>++tbuM1r&D%DP1Ui~BO zhpp_R{H^X^*5*v)Te4#6qa%~w9Nv4pnDtBggc;wh_HK=PyH4{NclNG%L9=WMx9)g6 z(d5w_(NDZn{(jYMHmzl@f0=K1|Jp~tx6#w~|Mgw=*)~<-{$h6J&s&!)DE*tRF<G}z z^PKm}&)=R{y|1?QUvK>U-S4_*&#R~1y0U2gw`=l2A1cxX554>srgm&^c)n*IqvFKd z`_=o*kKCGdL?+Gq!CuMEwe|wNZ!UK~R*urDn04`Q<R9D9ek)FSpIKd!eBp|})1K%p z+r++qPb)P|S@*2O)H};Oc<z1C54mm@2V)OPx~CYHv+fD{&S!Nl|61$a-8+pxzDh1} zjcu0|nv!^y<zMEKoBl7={nkx*#<=UK?3<*2(IKC85_VshTNR)`%j@zAb<tqXvkl?% z+hYv9)-%L7)UMEv^$5Snuxl3EMc0XuXN;$~6^EG2al4@Ems6tY?zuQ1`QM=up5CQ} z74h!EnTkpqPtN;i#8><IWKH<{9~S#(yIi+=uh&<)<#NcHq*ar>=3ME%{y^>X_Z{L^ znF6t%*BicNNcDyClm~s;cs)V=(bXH7LZ2oZyuQHk#i3sR%c6-k&qI2|xor<>>WdiP zcWX@QYW#SEw|IHEX3)Ik{Pe^W^Zcq^23((e`x<6GXZmoj)$RtX{+FZkBz6cCA8BU1 zvDPtS@y+)q1trdAzw(_PSU>B)YrVvMeSOw#k+WA8KUY3+tK!+B?>pycookYM`)<wA zyUOMAJWr~2$ew<h)PDYB#p_R3KAdAc?0k4<Va>I+Wvm}lj&rY@Q}Nwa>`dIzrrq{w z{K*IJeb!K^duDm^uH$<<u`0jMTi2x5ojK3(JU8V?%}Fia3CHFK8l6Ak_wvOorM)xl zlj8gr=KRy=b#eV;-*V>qm(MS1&P~0T<6yUFRb7Z*u>kwor3Xz|YJ>cr{a!fppl_<5 z*VCEz^i->P?wUP)ULEu%c$&)5?78nfSq)F#d9iz?O=ed8@yz814Kq6?pE~h3mUI5{ z=|A(i#WasgOFq2#_VG;iXaD1$G`zR`6K`N;XME$3;LZ4s>Z&BK-?fgrBaHjkF8n#a zWP0K?!v#-l;x_&^uY10^)M%ynZ|<KTggR1Ja-^F1w6D`^NITaO_KvGI@BP$Dy-w%* zA=6Iw?Julf_*t*;-t?w#8C~L%+<K*xPim|Gl)1HcWx2{uYhR!Jv(H%FwS9kT*FyEG zofF!l^k-Z<RC(NK-p|#w{4VqVNN60&+wrI8zewc*W!{UoV%{`~t9(1sa473hW9!{d ziM?t2yOkfDa?Q`XJh|N7{!_8ejn}VbXRhyVSH76e<o)Gl<*oOgkCv~HRe7}bbnszo zaUOo&=f6HgTHEU`VEH86`iJBH<wlq4yaV?>Ym}s!$NbHEzo1;c*k<`om9_U>Jl{%w zX!h!qJ}V)4(mgM#>B{e(pgonoTigq4_Vk^fQ1(&nAoD*%yPqHGy&q1#d2eo|aMG)w z^XJ*z4u;F~zTa-G)R1$eZt^9MXNHS+oRpg>R5jzC$)?z%YPG6eM<p94^~{X=^i5uL z@(JOE{eIe|<w0dWuO6y&t-1D3$z;ZRg&2RgL%}B#qEp|QpZU*ly7}Mh{>igABlmFZ zI_R?Q?v2GVZ1yj*zL;)2<8eg0+wr@vhieJ@rIKC3D`$i$PQ8$|Bq+*z_JgfC%j_?I z{gNNj8)o{&>~Gh-g=$qz`xXe~E>8Biy;AaJ{LlT-?-qnv`PDBmsP#U7S#wG3lGX+G z+^QmP#q0uI^k@Fx;vV01^HEinsCmaxrQka{)42EFP}|m>vypk_@*A3E-7y>4SI)oD zU9#|o`aSW#N7*k4Ej4mZ>ku^x?i1dAQgV||&ZNyxrzUmp@j53M{nYf6)JEU16RnT< zi{{@^FFPUi^Zld#PxeoqKl1<N{d1{>j{m92k7TDVE^=|WyY8LH`&GNI+<nAcx_*~` z&5F9k^Mu{6>|bH;xissFwo&xnrS~R2UtJ#Bd?tMUs`V-LrKeu$xkuWr=}y^bdT5rC z_L|IVCY75*b3{)+4VxLNmT&m~w9~y`|GB1S{9&lL^)|A+B=qR7zo%MS7#NvaR9Y@n z^Y8uM&~h)jL10x23#Y0Ahtg3l5B5wZr6wgMrC%@RUZ~c0%D80haWa4Y&gmU`joT|; zZ@>2Yaq9Xvmg(>26z{V%{(Sb{cOl`4=105rJ$o<g@;#}pwaDM(szP&>mye3Qh>ug3 z6u*~S+!UF&!2w=gu69#qT?&Z$w6tW(Jfj6`<uk8dGu<5Y_EqofrrBnE%=-`4&e1md z_m=DY^_a<qN=mEvYo#QGq&<a|l#{G4e>rht-rfwq<u7K;+p@&_eTPSs+||9=ENgqa zI(rtKy;xiQZJDg0Mn=5Pd%ue%OQsjsXkFXs@09cXg<gsAw)7PJUGmb=TO@3m+cz+Z zr{@=N`Z4RBtlL;?eXJ-T=YHJAIkgGT?-|BOOziHxr#W}V+{X+Xj&s)*z6xp-{aaY| zcn<sS-){=MPOtku?N|}phJ_BNTpXv|ytZV!f5AOZ%{i<=oCRuJjO>Ad1!-D5=Vn~F zrn1*~`LX+=O3f1IQ;zOmm?QCb*Oe)^g4DZ~Sx9-wUy7LJv^kSeccJK(X=N7}tsFT^ zroOu*Y&K`o<zj*7Pnu$yv<rCGz228A^@Vro@$Ku1-wUssS2_Qnw8I@ury!GZ`LAAv zC(l{<ZM+b=>`box!;s9F>%VMDrtVvMCw0o|GaGKis_pRF?@&GW7whlP&(bf}&3>u3 ze%I;U>x`1?$|DcPek+^KednoWdF9F2du3Dq-M#bFqWoo_uEGt`Y6s`?mwDm>?n<08 z$yzh@X8C!)X#X{_Zq57`%dOnfUrpZ?ApUaut{YRX-~ZAScg4FZvi^Ft+TN21e|q+7 zW@$;t-xgY1(w%oTch}#kYn{Is%dRyp;WH5b!8L>Z4EsLDeeBa1>>2hm-DlJ;ox1Lt z=`O|_JV##h-DQ7s_3r`32NUEj9<B=Uf0g+_r+{q-lMVAarte?(IX>@Ym?5Di`G8Y} zeNTglLzaTF00Rrt%mxJo^#BeHww4)}93mI=XfEFD<666b-$!q<_wiSHdzW4JNmGzG z!IZ+fX=cu@u=%foAM-9T%`BZZ?J`$Xpmt{J+C`yTXN6stiVAk#I_=uE?OXb$UEE|P z{X;5(;SYDja_L6j1C9@7$Xyq%;<8{@VR+u?;%mZXQ7`AfrJ(wNdkHfa18d_Uhr$Ii z4;IgVZ6Ui}xMY#vrIS{!%U_xNbz1&9=z)8J<OksmGCw3E82>Q6xn^4>yMyr#OCIC) zM(YEy4-`Le{9vx&vAL+OW<7!V1n(2ZPfR}>{x}FOU<nY?NcDPI)l*RP^_s}6px~AL z%dVNs3akCUaoxIW*V}GI%+4y#UAcDa+HIHlZUyds>9^*s)d^=!gU6d0e0DN8vUR$N zN%$oj=&D^Xc{2Z{iMV8@qOQ~GqhGW?o%OoaVY5|I!#BFoNW?#Vh0a`7DW&r&0m{1= zOqO|<w9dL<x`6fWg6J!g-ZA99u(NgASH)AZV7UW}DwC{ay~xR~GuJw8Z_Kt*4i8-< z7t@-3!Dro3-%LI8=Vo7++lwv!o+*@Z*ZvVJ=eqwxhMe>4N}K-WYi(w#UpAX}m|Jt+ z{-;Z~%%A?z$m-bXN=w=2qBT?eJ`~zHp8p}@P{WpB$IYS6a7vuv@N@?Lf3hCO!WsSd z@l|~ERj|Czw&&+MjpYLTA0PNU(p0td2s`D)H~H$OS+7soetlFWwJcF);nyv4<yY8l zH7IYLX!gkOmdosd^xS1<cXV&NAa*A-I#c`IvfM4a<<|>%pKsr~ciVG0sfB_vOJlcc ze-CL`Jn>hy!tML+U+$fF-gx4<>V(s?i`3s8K3vIk-g&-xk<I&u&NWQ7yIW4Y|0FE< zQAplXzj0D%k+&n~M57?jEDzaCjk8PFmQ2~cbo!Ucjz&IqQ#KlTrk%2h)bLJa{k0|V zQEI=;B;leky_2Oowd*x9jm}udf4!b?cID5lE2bUtTGtjDEpNQuG%ZHF_tHJ7<?mk> zq+Hq<5qNpxOECp&J!iA%?l(`LtW%EI&UvEOeB$(Z3d)s|@+l`BQo8R%%vC(0JN3ka zcQ;josvfSG@oa+MC%(R}Y`wD!Bt6eWFVjBfEZ|=CRoOo{vUv6WEfe*M{DlhRTt8<p z@J?G-BtLuZ@|CM9O(*>FG_PFH^Eqplzj0vwOFjP3f;ic~oRbRnOm<&ov3?<|$>uGS z<z8$*Sm~>~;^3vYMNc+XJ+KMk&J=s8VEeSw$$UmsRK#Yl7MIh(UyoGg>MpwZp)dK# z%&LhQTUK)S8Gb#m*QfS_^)kjC+cP=(OnVR1`Xm>`Uv3HcJ#*P6vGl*b#szaS`Q#F! z8rWw|dr<DH{XyZfl+BGTjQi7XHMP$u_z-ZJ@6WzWez`QO273d+2M?DiSG07p^qb5* zu-GTvMt9cn(|qc7^Bx>IzIo1%ibcZm{zZ=--^{q$u7285-Kp<Dr2kv>bHcwj7oWG7 z*R+dKMm>CvMCB^s#U*7)Pcr>_{<I1&o>r2S^8BZBWrMJ?e|gdqNxvSO%bgSF?r{6y zpzc=o&Y){QOa8>t2WvOU?eR5h*nV2=Lwl3Va`}^bAC7O5{?qw}v0khCVDb}&iiOjd z^e<g{a6U!8V#^!$^Ak2dm^z6ePWAc0)lZo!dSh6QpLYAeca!Iy_U(h#soXy%#IVXw zlzwoyh_@zWU9<lw*$)wx9QRbC4`x3VdY0w-viEUmkz|ceUQ_>R-4C2QdH==mH6A~i z_@Tm*X`X`nLE)zo6_aGx{lzj&<|?Tl41Ow7F>4N6y<+--%TLWe<lSVur~I)ZN%k_Y zOxmu+X?y?lt&vaPy3;#3DwJ=k<b)-W&6?&<7w(zT|0$SJ%cFI|_il%kV$Er~d|#u4 zthSkas*luif4Y(>bct8UOsAD%F-M|r#2;GV^E$9LtD$zG;J0SA3oFmAuq<nycBLyS zSv|x1;g!By&Kv9e9%tB`UA#WSu9o-hFWy@3`xn)2Io*C?Zsq>`rIN^-(p_&?M5N?p zB&58UC3EWR4qN?4@;}x8&Gi42`LFl<$I5*trvK!Me=J?o{odh$igVv;&D9s4r@VSo z-m^nuW7Wdzj#Fg!>h#D>U95G3_4DV10?yN=I_6vF%x}LjOYz%f#cg#Q?;g1>UbsWt zIahws;TxNSc1|(5x9YLrja_WV`hM*Zop;VT{?fCbvUALubEF%^IgV6@-F|ichNShq z`D<g!KW)$5bjz&#&U_=@E$fzw+}p+O6~BdR*_>NbTiUfgvF=}fLg7!N(((_xZ?V{L zOsq)$eth>uj@yg&<_hLTZ}}PB?Y2#<vfDk&_PH@Hvvs~(r2+rbM2lOk+jbh3pE|hy zio1%eX4kKSYkQgx&EQ}DNjs$Va{U_q+xpDsAK6Ws>c_I}-M7zHdGks_OkQ^7db<Cf z8}a6%XSDhUNln9F=V~{!Rc`tF#_y8ti^}S}i6PUqSFVc)QaQiA^w%VL?L(&NPH%J8 zch{L7;yHfC%`W7-#?M`Iml~@%UeId(;CAn^Vukkm&j$Y(s=so`om?#QmuYSQ|E~pt zC62}~8pAFyKD_Z?*&xVg_x%iAzU6`@liUsp*SW}FR{x?|+ZJh|mbuq=L8nQlT5_CU z>#f;-#u;j7o67%8dX`{gmTdCqp?vv8xm)bwl^uN-40}#%zSz6@LZ$eE4|UsDe_9qh z{rgKrle@uQEwh3&)csd1neygv<_&SFqy2vu1~*yE*j!ZhV(Oha(?1_>6??WwhUsfi zmv?cb-ubBuzOQmT-BOgh?r`Z&JM$;U0?f|tRNdb8X*P4N@qF<QP8qw8?rE9s^irpN z)$gg{pR(dkzg}2v_BkwLzU&_EU+MDl4Qy7AH0)OFHNN1)8Bjib!K-yn!gpJ`cAx(K zQ}O>n{~t3C{JEL)Q1#v<Aur9|A5OYIJMBe+C$Ko1rcR#|;8&??e<e6klZ!R<(76kh zTcQ`6x>dil4zS*M%l&tj{agOK#t!VSc3XL{Coh*?<ovZ(cA2~bckhLXR<Bb3eY#)R z=ee(NU1`tfwc#;Iv5&g>KJK)>v)X#CdCf)1d0XdQ_}Kh?t#Ha~#>vs&r{DUu&*Alt zqNw%aNwsm3#~<33mtVVSx$c~m)$y|jPoLc;clPOdv%L?_oQw3ImT`AR``5&M*BV8) z+<Sd>-)r~RJEldi|9U6=?gqZs+rEbJuU%c0^EZU=^^#9f{Gms7saq`nzjo38f1xdN zZyXP4>RX?)YR0N%vsUJ1&6uTj<%-ePh4CBKE9CF4S-t-5N23IN;q?6D=hSTGf7^3X z>d2no{9zBd@8AEk`}GI==+-jcq^Wz8c#~T9J(T+MKc>--?a++3mCC&q-}PTz_~~{i zu%r8B^@?`+49&kDr(dW?`Pn-s{$;Y=I4SI6R+MvgrtI3~ym`7i=awmPziD-{@MwRj zA=~a`F?Wf9{$<f!Y5Q02aOQt;k=x5yvSz>e@<&(ZOuJmjcJ2h@oKE9nv2({PEySNc ztchvhE)>)|c66u8^oK<;joL+_>-eTdb>Dwvu<khT4ngzAq}+pRckq_Hj``QM|5^Tm z`2COH|773Z^|$r^(bW~a>mT#(>D>Oo?A|%+O7r(m|JF?4|9o-!%b0z~`F{x7KU+RW zLq|*Qk>*L&)+Lj!ObWZ?$#znMagwKzx7bNFOO@$QCe{QwaCr)9svTXrWX+_jw=Qqx zd$_gxV08Nd=jV<7=h*dQ80xkQ*yIZC=97KzP{5yAIE^o0w^Z-%S8rx9@3UF{E4zU$ zOO5x^8L2gqCacq`pI+^AI-e|>Q?+^#)Bk0QShU3ACP);D7QTMAVE>lF+ORuW>B?)D zi1HmfU2)}?cF5dm*FQa}xvhKc;f{UT|9?-d=qtOXx9ym`p!N4vPBSZQ{2xTxOjQ4v zGw+PxrD@imMEV}Dyfkz9NAajh%9RZM&n0apTYq$TcP2hdQ}=C!t&O3`=NWJI@E&=w zeS4w0@y@x+6(*hfrdd%gq&e55dD(O`6A7)I`&+!NGxcRvoUHaeJNtWrVXUwCWnR7W z7kBKNax~5TdTsSd>sf(+mvom*&ASwPZ<?Hts;z2NQe5%<LsR13ovf`?;D0*tk7EDR zPMfLe|G(^2j_TgqrxLjLfly4iy4IV9u2oWBFQmL$8Ml7tuX#3`!ym`rzoudRP4daS z-OF}=t60dEy!d6@XWmcV`}w!--}|I0xm0h);(JA|>rV0RRJ;DPZ`$P9Mc#Ab74}TL z`tOWV;X2Vi?Nb2_Z!QRJ3NAaDcT>6gX~Ubze~ZHSvLr24+MjmFOieC|@jKyZsk;0r z&!0V?cZX=W{#O;gwWm$S_+M%yqyOjSPm276p6rR4&|Tzt`c&%c|C5z}?<$txbSWk7 zNrlRu-%~b)T{~HIQ(<<>;+$!3H@R**W!AZUe~GAHkX@epxrOKQ-p8$u%iF${Emb>` zk#F;A%QJ5S_pX^7_4ZpxpSRE}ht@e)+wOdRCHSX3Ch4<}U&^fT-aN(G#_#r|wft8+ ze^W-HN$1C<i~sFapFEn+09s3!_V0v6W8>7u)~hp~>M%1O*5No?GEK4fB)>=TW+UUx z2F8XPH4F?kFh7-)TyWsx(UVgTHa330UvJh{?_l@aW?3y4PtRn>qBH%GZyTpDF|#vF z>*Bp$aqH=o-@&4(66_z||JHGoJf@rfpt80+kzcKCL0hG_aDc-_WsNw4gWR5;8C@Mo zEt99sVshe|b*u1GkYb^<zJgNf;gICu$6uT$AHQW=eaLY6%jL^7v$u<$v-lZY@9_T2 zyWe)3jo)wnJhO5ig9?w0^1(OeOvi4CzFyDF<di7?R_Vn*aUM5T@06Eo8bUXCg`Lg1 z>3Qvt%^S1b-hn2alQI=`7l&SPdV9q&wq)wM%eqEO7&IfeCMqq_&~%g1J?h;V)USMV z;=2<iJ7gmJmiEOQH*CLMIFtROfL+h&n5Ts`TK>;(*6`jxQ2se9?)dAUod4P-RNA^c z4z?=IQF8PV2tHCWQR&l>)k(8&Xs<eA{b-4W>bb7sMZR;y=N7ft_=s&%vVK}oIdM<W zx?m5^5T_{xsU1Qq3sn6)gFj7edJ(uPIyYQ@RrnSED{)`Fzv`#Y`26%n$Bi{NZhw4b zYovSn6F0|>n=WSkqQ6-0teIJR^w*8^CVvzg&31WAUpc$#rS&CMkH&2dJ9GtfE#*1R zY-AO?!DPwL!c=J>e~PvLVe$_byYBRlPxo|$f6|J(t^YtwU}4e@3C$K=1HT^e$$y!o zT{|m$Wj=7v5$s)bRqREDheGtZso8&+61N@bU}wr+?0$<W_Z90_@3$LS_ibQx`pZ=N z@s#ZsZjWp4ulZj~zqUNA|7vdR##w9CPUl{Yj9#0x`oyfvm0?RvZ*ZCDZoZmhIQvX- z+TzMvHd)tZKYdoV`HYUK`Ha?QR>fOq{{PN9|Mc{ir#~$HeW_;UzLfb-nlGly7)$j; zCC}e@{6^{<1Fzns#TQPP$GFWhyzODOO#1R3&wDQUP33dU?@2%J{iYSyZhp$zW&iT~ zSKq&=-L>%lg8LWtU)+Cf{p<O!_x>`i-5a;!`RmGGT(ukLtvH@ppY?m|-dlcagH~TS zwbf{?M{(xltxM#!^ACPr{apOK?D^dOhZk*i=RKZxW%lv>XSMZzZ{J$r9d!Lb$)EM% z3cS1aZ*1K2<9m|Af6WK>?<4|hSQ^Wg*>oK@;OJMrF>kfHKvO`AqKsgLkh6ivVFMXu zfldwUPMHT1spseMuwLwF<Wf&El=4sHd1N5wuPpa?LW4`saTcE=#vX@MY`Ra*Xj(a= z?PUd@v4QaUWU)yTn?lYUlUbrDD><XP^2CuEod$01iLE(0hmxKoa865-oTe<U{edY= ziT`Ir>(z+l|NrIQ9KCJP;B3KV?)O;a+ymx0N82-8gwH)pHd!pHo8fGI?y-{I10k!6 zjd?K#L%&?8nexDO&Ecw|MC*IU)%G}92ev6$HPu?UwQp?gyR^H4^Y)4^z98P!ORGc{ zAA0v!aMuSmt_>6UHcDP`xO$`EdZyyFB=LKP1jWuNX|x7q>YZI|;&nVV>xk*Jl;=T` zPcH~r&$P~DJf+!eq$!=hh--IX?_Z0Ks4ENEzGiILEpv=>Py6E^y=&8#-Z*2n@$4EF z>l<O)T1EddFZ|GcfPsO5`7x_KLqEe!hEj%VhI)o(hE9fQ40#Nz7+x`SGfZKa$uN&$ z5yLWuRSfGGHZg2tXlKY_Si?}v(8{oYA%Y=^p^>4I!Ixn+Ljl7QhF*qRhI9soid(UP zyZxda1@7|lGdCW&p<sDSWb@1k$Ep{yavr(bo0MYR`jjKnyl7%~A)~xQqYLk?^^yw~ zF7cSnrYP=F<7B5OWSrfx$i&)ubMd*E#@?qUt}1_-eLncP%7jCA+0L5%_4C-enc@4A z*ROkfwluRx<)nQ%Rr>oMH{0xsQ>?QXp4#SX@=N+!H%4t){_o-+uD0KQ<Ud<WY%#g~ z<%$*OOGTDvvkSeO-%Fm|b(;TI)76Jb1_n!JEPJG9zbxqAc9Z8>r#Eb!cyUj&vEa{> zCJw>bxh%8(T~WOHxlqJ=!s%rj&1THl^iM_jVC%_}(BQ3Se%v}3yJ_=_gl4U?jqEoL zhgI^(@$svPT-vU3N{3hQThi(y9D<W&xGbOEIr(pi!%q*PV|zTktRJ^+Wji+U`hf*z z{+s{X%=XRAmp$|&Qs!X!eo1euA1B&wNeCucCuuftx;VLo{%n&vzgLItNzm`}4pSPQ ze(bNG%dzF%4Hui~TTA&2!#JwyZr}NIx@&jX&U4*P<@u|!R$S6N`#bL3zT?dE<hTzz zCLf%A{`Wtx#$Pr%>r68ESe&cOtNt(A`l@5~9&x)(>X-L#i~=oAXJlaf|DS=s;?|wL z+%>_^=PFdmRYgxLQ8~RS=kzw69-Wrj2`vInKN=0)3T2Of+_f$_<haEViO&Tbr7>QT z*S%w%I2Bt|d_BA}+Y)!^Ot*9o(>T3E(!*<a=B$$?Mb7W;_$<48HpOV(vbkH%-u3NR z`{w`uxr^K5XQ<7+`Fl6#v_6&S=fD5G|L(52vRh=SM7W#gw4lJMQ$CTJS_dq5a_Qz4 zZpxcJOLr-Asfl;7_|5Cf^e%Nh2@y}ONeVDFsVZ2VcKYCBlf^yvc6{;v<@;-`|G!SN zJ^!qv|9&_%m4A8t)Gr$fyB6xz{F3{-#>nkyfXr7{t#wN^@|!{f)LN&Do!R3MD;~OY z@(<(0fIzABCuXX%_KEX8JIT4Y@p6UmGNx5A4@G@y4tcC|;eIRHt9DK&>t?}>sE6EZ zV?;kZkNzC8?$gp~4YNu&iZ5b}H+jYFqJ2&?Cw}8s_eIjz+ZF|;UY)v9dQDf;e~DKn zyW4jzl36}w!=@~+fDcV(6BdX}VSBgq)8(dl;#01>y4h<Qs2Q^7t-R>pwR4Mjp2poJ zO*ZrVR?PY9x2xYq^Z0!Kd5f**tM?c5Yq)Maugx4H80wY3=uzv2?>kKI%W<%<bj?4p zSyV)KBdbf4rRBkbqkXDo_BzQ;rc<Xpy6sgFz4YqSL$?c;Iz6AeB7D`>dpp$J-+w>+ z>r}<U4^@Za9A+jSEStPy*<McGO40D_58JPDtqs30<4Dbq16s8SXOHu*5&Ln#%WUd} z$^0(rZ$-mI<JMXK2-Hpe`bzJ*?Fak$hq)JCFgYl)O7|Y;G@Df)1mBr0+?xGB>AuOr z)8{un*zWrz>gxw?wNED|9=EAEa)0B*`;Ggx6zW;;M^5=Q@6na-79Yyhyn^;ecD>*H zRjticV1`9Y=*GoMwp3lKcdAuXQjyrO<AM4CtB2|dr4!}F1vZ=(DvFwOvEpd!^Ph8V zazDNO@>g;n$D1#z_2LpyKTB^#O#Gw!_l?0>dxw4%{)gw8PtNC8uYQsKk^SECjI0lr zgUUiIT|)!gS5~Md1b$$1X-zYV^ZXFBlZPSdi24~Wul|(Sv)pa3lR8s_Gz>dWGi;d? z|3$=yOKkrG#SS5Doyki4=T+Ix>0C%mlvIDx!rC7hBGP)eX_oM*!%nS{TSOTeyIr}? z{gH8%&S4ex&PhCYrZXnaV$Y#)_vsfH|F3#*D$BLt>8b#O1l@(Xud;51uG{o%sz!t2 zm9X#)v*dDeEpBdpzOV1%ad+!|{~zqz=e+RUhjV@NVxRODAOHUK@Ac-x54Zg`-~K)$ z`<2}7q8IEx*Y8{Oy62Acs=N2@-r2ly<M$I6KFUAa`z`oxtVn_Pm&@Nn-k#EXASHca z>ujz7|A3ENEuM}JU!M6Ki)35(mhs{&<Czzvv~R?$U(tFxNPefz*_lgPr?$NR${@7Y z(}Y<jq+q2{=h1>l&goOtHcIK8=2knZU^DycoJyzDO50nGzVfO_)L*O7B0gos*F&ox zeL9u(=R_2jen^!utA2yVrXx-o`tu#KG!GneV&C$GX};@u8M~5iZx$X-cl&)S>i4gx z+rRFm+`DTW>+(P89DB~6soU>WJ-xd9|HJg<`~JWA?l;%w=gG&X?wa>qdY-nISE(WE z#~0h9p$(Cuq6_mDyRF>8{_rVR2jkl%0q^>sGo3intJUCR+~{L^;y~8q6^(n>oBDBO z`z9&J%;K5cbW%m^V5*_HW*wvbRffMBhn<wCpZLmhC~OJ;<j4q7v928zjxR46TsnV@ z;ZpyxEhaJQ%*&>6hF*58P;xLZ$WoXSWhG*8A*-|H4%>o7S!z?lnf7nea=EwR$<y0e zk(_?K_imf9+th^q{_FdjpWV8=P3qBJ)7jpBRp0Jh{Gz^k^<w|++xHm=RVTSW@wdHr z@2YS8rfu)pFJ`>=oW6L~;&n=wZd~#`E>(WFwte;El;X#K=k9x~%)8sHJcKVM_w|p9 zAAY=N`^k3MxpI5^Y^$*EvR$o7yiXrGJYQ{n==aRrg%fXG+I4K&Dv#@W54<NlED@jh z&~M6vO+S{ghI*AvmM@)l!EUbZa!39PS8hI;?6dNduGaKT0b3FjK7>oFxi0<^u2y_v zS<;%ywAodf#ou1M*f#Ou!-=_z-Deu)E?B?!+3sm;>i_>u`P*N!{*t}g{p+)8CheQ{ zxAskG;PjvSLZ3bGIwpI{yjaccuGOch>w9>5>^_~y`1CaU%hdS2{_#7XRqO6F`+57x z`$-SyPkb+(n0!WmYT+q{Ic;8^;tpR|9?O;bcv_gtvt@RJjEK$zXTAk<u1@CO5r0CA z>xPrrR^PW_yPcJn)+gUgs@(hJ`1kFy*4O@t9^E<b!0r5>Rkzl!5pCHTe&X+}73Mcu zlK4NATeC)a1vEDW`Ez;I&sh|BBhV_q$)t6<$?C5{t}A!z8Po-G&sqK9_*SbwKHa;# zmLK(&UHWyIN&1D8jirgDMSANx|DCe1onvEjE=O{yyyrdhS$BNpm!6QSn!Nm_`U=kt z5*1qOSmFeWMJ6AKVMvhTayTaOpj$I+vFbGj)n^)s``K>jPbd_aX*DCMpfvxvt=3}w zTQV6Ll_~#uzh|%uM+&c!?&*!^o>X0WAzV`bGDA#M-|wSmAMx{kQ3+b0cr(U}`$6ck zYx!>(f}g*-A@T36#SOFS#JQF`&gq;^TQ+s^`E5lh4k@>F9&2W+rY@gQ`czflu<$8s z#Pzo#dTjffSvfYVO=Jr(R*;@L>Ds!7^?RkJZgpC)igj7k0w1N-e<aR|Mg251cD%@= zz1mA^y94_Rn`2w^f4zO8diDR0i1uv(-<QANxcq?M$%Qf@&0B;oax6M|u6vD`L!i>h zY~zX7D>c@iot&g;^ZaFS+KdeILrc4yj<Wa&e^74ReM+(@_H@Ifrf{}pzu(S}ss8;o z+rIMmmx;CyBa&TRlXYbFRoAi>_v9_xJt=*%_{0CfU($YUd!j%2a_QssvbMjjC!3lk zuNRtO!+q#W!zPY5S8lJgXkEP|ajKQcY?st?OBOuLRGcm@@xbD5O3ZPASC^R;jat+s z6<jJ<c6*o{cvQ+G(95QKf?>i^?G7P<jL(s`e$RgQF*JG0LxbO!_%3rjSN|^CR&9QG zuRl|d%#|vwyhGK}H#`>_Fe~0JW%0hV>`?SgiyfYtla?{+UX?Lk@zp7>Dd?umB%XCk zgExt<Yfx;`ytpbaZ@)>|$LG23algC@{2T6>Pqp}W-hcc1-&Mbz6OW#IC%ZnrBlh3P z+0~-6lB4_nKbu;dySx9G6h}@|!{Ou&`xvhJAFYg;&vb41^P@2j;<WX}vQ>|+-lwO> zytr(pXTh}C=MLNbnBqJA8m8au)HY|{6Yx4{k=z@;gkPx(Tv}rMVuBdYhZXNR@Q&xa ziM>SlgatEn?)O@2Cw6=dJoJb!a59UvvU<DwzQ=E^zfNsbjuowDzs2urwlzlPT}_HY zO@hIuuVwFlJxt#feVonO@9nCWlD9?g-Pw||X3;|H3)WX;Bzumnvii2Qx90d_!!_@2 zT)k1bqdYZpf#asfu?^E#I|y58^>=x0=}z(%6)4`K(a*xxafs{M-%`i-;-)eM6YSS1 zHhC^)x^zJ(IkMYGOMY#Q?t;@t6kVH-JM|d13Hx+xQjmRcU>(cF(1%YBJSb}1Rbu$( zv#{`e?{AmYL%4cvUo2p6yK!u#xg3kG!3TxETOTZT+&A0(4-136{~@dCLAzI0REpJc zG1yn`IkB-p-h5qfNyDX8Q*=Mc-;40(DO`6;Va7U*qc-o7n-lgrb*g2Tn%Xi>+h}_9 z&LZaPdD|Y`5-dOP)2;KCN=Rxz3S(1paK$76kqrL%cZ6?Vi~9N`BRPM`?b9-zt787# zo!Ix-`Rm!=er4PGcuVHoV3ptUF3aYJ?D<Ou#(y%3_V2y1{ppbh59Z(9zU@l5{=>!m z-zvpkY~b0mYHi3KiSk`8#+o|MkJ^~t+#pnbN_gTSMyok>jmDjF4SRXl%o6?Z=3&Ce zs?<2cS;l65SF#GcPfu5{yv1Oe7&xDO#l<#ORd${pvEG><Ca3)MvQaG*-<Y(?{QmX2 zibeS!Tvi+}j?aC3{T-jN>GIp>_6Av3>{$E#%e`fnm$`rceJeXgIevBJl+M`2pY^tE zb=~%H_2K(}Zl_1>imO}t{K&dn*Cy|eD*bwVo_<cW`L~GKOV;mdWb<dv<Gs>m!rEn$ zciBT=)keQ%9({8?i_~U5VUc|^!L2Fz@T6IRFD15ShbjucN}Ju@U%Jb*e&NS**;k=5 zRVB9zH}L;c{rOm2@1pign^~3~3wv)e7T7Zvlm{zDxay0RD?V8rGWk%|hh-PH<tQnv zH}U0)dh+M0jNz8oiL7D<M&S>tRTZwAACmsM+VV4h2;0)Tp`tnpZQp)rnJ8_YHYvgP zSO?FtH6ERPn<V4RWCN`PZf|UHyy_Eh;bHEZM~j`afAMWAmAfNT!1~I2Px-ao+2yvE zg{>>&4^O_QpVRxsQfOa#j`QmSRq@Bqc^p2*UUtmw#kE~?V|!U=9azk)`+HYS<BbUK z1<Us;#%HhJo&0*&vy1aWS6A_WY1t*M?Y8||sd<~s!FI{~C5sQ{cgu8q>%Gsv<tCp& zm6G#px0V3Af<#VzJ;qxxY+F`(US1}gIeEtIrrY|jQf`$58TB`|+9sX}pC<6)N%JS+ zGl>gZgmn@NC4*M=X(=ULn#3m1?DjQiyHB6uC$AzqC!w3$uIE@^x>cQ)pZweT<G#kp ztKYFn<^GB~FSX#}w_^SIH3{)|7xOMV{_V5u)~9bS&J%VvU3<Uw|C6mxev99Vy3Y6M z;fEj6>e0L7|Gm8NaofDr_Mf)!2-T^Was4)aw4OCBLQ_Fh*zKm9<^kQs4J^X029wn< z+8qyi_-u1jTC{#n;<28_-@?&+@6I<q+hd%3cH#b<srh`TF4x3f_;HkJM`fd@fr6$` zbh~?Ye}vQ;$rLBPbX}zn`#Sd?Pg`5q_IA04Zpkvi6+bp#DLVLV>DPqcW<d-p6TV%G z`Lw?C?$jLbe{E)$nKnOl-1Yim@ZVW$?^la_zvd#JCj5r`KyB74gH&6gWENfzUj3}g zVamMrAAE!RH|>6Lc=6(rq>_+Hvc~TsT_4-;P}jZi>`DHl+z+>Zx$oZ|db$49#V0q} zKh9h0aG2|<!N<MqD(9^OwH|I}=n)jLnyT_|LiU_F8b%`02m0AIJe%dRI%mhi6{aH0 z481F^3$NL?U<!-aDNfF4OQmkE3)7c{>~u9gE82Q?>y|LZ*AsL2cW-@ozTI!{gYIo> z*I$siKK=T(+y~pgn7(`3ZnlOe=Z*x2iDq2pyS)XA3d8R|`}eRn_x_EW!n>`n{F}P# zg8F{{gYy@%P10XkH6?CByzG_x0f(&OdKyC0pSW%>3M!c0a(jZor-!?G#l0V#bU$Mk z^+PG~MyP|~Y9EhnNy0H^Gmkt?*#COTg2d%Z{IlbK|K$&uFV!M8`N1xwuqQP-Iy;&4 z)$;NSBli?m==?6bxjj~kIh`+<^ZKN&X}3KWbe`L#cB-sWxWi+y(f%XiE2G^zE=e%X zxYl-b+ii=_uCl2c_2X0Bb~FVPczI=Aoz!zG_Eni6r^4=s+Z;3wtTI}*iD|Ci$=}-; zYo_a@YN-S!PE0v^V0*nQ`+57%7hC5|W0$*o!EjA5%f6j;4<25)mVEbMS^J@~_~^5h z@%gj!A1mj}*iG@-x5vEfmpuQMId=m}AD&g8Jb%xY*@auKSL~PRvB<J9-P^18>&ogc zvil`pci*r0^gz3PR#dcd?s56N|MvUto?M^fpZ8Z`&*vx8YS-5<|GY1Ja=!Y!88%l1 zKjcWh*y$7fs5U+-*xmf&yS9I|Li<;1cwJn$hPm&-3Vn~TT?g16nJ|~Ex)e~NC$O;0 zNc4ATv^win&k%+7+iIQ};S1SLC1><bW0-o3!(FdIpP{b1yL6M-^4+uCZmbOb;=k^K z{Z5NnXXLH@?Ze_Xo?EFI8@_PO?!u{d6W^rAtbg~f{o%v-JM4EVIj>z|&)yVpG=$Zw z?veGAO!bqSj&QwAITYwK?U}=|Sg&c**r#ngtp8-@5vCN03Rj-At*JpJi<M3|?~ZGq z=2<8=(XFXjxYRPS=MHC9jNx-1=|d)tRjnc!pDrD|a#Z!##DB%r*YDdG{rQs1Z@1ri z=AY}_;q&_czxLO&Dg5*#`_wMgwZC_7vx#1{ajw;!?-BFgKe(~*@8QMD-+8}!ZA$)d z`MXH&DZNvjlkPfhnVDy_?uhNn(hU=fPM$b5UnKU(g7eSMaPltQDt=0<X4%y#%glxT zfY#yOuYPU+ez(X=-oDarcE%yXH~)p?-(SqTH&?&Eci+#uyJrNSzvQ#1-1~4}LGtOt z|8xJp&~}fGHs?FC?Vjv%Q6XK0JNyiH8YNd;HM(+8tKWEs6L*lKTx232gZc3mMWMjV zxh{^bozrB5ZYd?`EVf{oAN@&7Fe|sDBQM9^^yiaS;rIVv{f(a+aINwEkMQNo^p5ad zb~R~eGdsY1XMU~hyZOxbW|x%fYCo3gdEXMG<et>;<+m$LztzB_!g+S{yG7Hko_ff0 zvvm3+@k{4b!%S;u`Kd{!ZQt}RW7F@5O%G<&+!ueaFKSiXuJ?bwUpZTR{><H?w7b1` zx))9oxu;oE^2?`<?N=k4){5UNcNClPs&sYD_1Y0HID1*P0=vnMK%Z$d)E<8m+OvKy z$GeV{T=v`6>%tdxvp0F0?d@(TXqmJj;7q4X#gC?YJZ{-P)KrdG9$f4<@#6IJe?C2U zxWDHM+rF#!>#O`@Q@+oXy=dtFN%mLJ;jhh)|9{x)YoyA1<sFAx@RTQO7gYE8?7wtF zHBh*5Wzv)foBXC}WqGdRIOWiERdB_oT_$Q1mq^$LO=VNre@K7T<(IP=+7>)G&e}iy zoZ;^C^XJ>GS~I(DD(9UYr{2u9(>N&l&VBKjgvQ-Q7C!Dt4{m>OpZV{Y_w#^H9`(`e zR#Gg2sf+e(n!1u<PR5D*#Yb4LAG|+n;u+HiD>_Byz704$U640$`}!>ZlIIU9^RFMS z4c0H&mMdd_@ZZZ2@8`kQQYjS-H-oFPT6y?=rQ}q&ngpepSa`}j&apCR$V{6ieL!PJ zcUt0It+b<4Q+obA-|xlum;1oOyl1~XvtDTxTmE$1WX#L`jp>fJr|$Hh9aDdH9Enn` zI1=e}aE*|L=Um1uq7HW!t@*v=Z^W<NQ_6nmS*J0d+_m-7uB#i~Iep44GuZo9Es*`o z3f5*;<$Gl@b@N0!{Ezz@EKmyAoOO25L5XR$>Vb(9%-y4z#H2oU`&o7GE@@<VrnlEe z`_~p*lh2<vv-PIA8|}2TG+hx|xZ%0z$@t4+&+-}mzc2Z3fA^&Mvg?NRuGJ5VZcSXY zH*t~ut*55XPh?+X3o<&BG*3h)=#1TQpOhIH2SXn+vGS@LRaKm84ApubYfus7F=^#e zt}piTmsjwd=TZnTk!s$Q_iE>pl>hhnjl}a~Qlnq)`FDN0zqx>9_n-fAANI4pIp{X? z)*DUE2bVmbDXcP1sJ@V@D)Hmg^qvDkA&G9A<fhB&m4=A<Prs0MGnG+p+Mb<068Re* zpS<qw9$&v|@ng-Jx=qeJ{5H4l*5*W8?0Fke{(UiX;<GcGO+??n?5+2jTV-Zh`f*;h z-leW|_jt=|x2oPuz4%vOJ}=YqPm!0q2~!U5gZU;Y-rmv~Ph*rHzK)p^cf?h(>c$Ik z9<?NGh2X`rm2O>NJRP=+EkL-;YH`|p$z3L5y>dG&zU<!K`oHL({=Kkkp>;p4otw{p zSwE+4zNKm1mm7I4sX+l+4AWAtc&+N5<gmlZ{n3K77^i?Dp3j}hFQzK)<eInFZ^Eoo zNy#%Vq~FQeI{8eu<N~cH?X99QPVSN2)6-VRGR04-@_c<~>AS2lN00UQ^>dz|=MOa% zv-bY2Jl(#NNA=jOJg#ra@<+;N@7_OUwdD24$NZ9Iw%>mrKNe?w?^e~Hts5ghyl49% zy^<;Gvd=3qZU$C1VaG<s@A>M#&6&7->JDnOHVLw}N^l+fk-yH*EB;mDXEkQdY!22t zI@uf&m!|g4y8O3(WBuWm&LzjEKKU&F@B8HXx^KJx$3|{1xqPv4^7-A%^o<t2oIZ2< zF}@ytuTP7GQ(pgPkYP2r_1ybpn6%z@7xh+)v)2vhby^&Xd0n)6ifhTNr3Le5Rr@7w zm>Tjcph?HPyVbR0m5}DiEIpm5d7?(jAGznPOA8LGvf6uU%B7VF$1k1x_rja`asSS1 z_jW$wx_|xE>f3)qa^A1L7;#p({C!<Prt|9OtskzX<^Me~Ki~e-Zf<4WjeBbwGY%xb zKEb{HeO{jB1?e8s_gyA=-9M$6^MZHpU6)*5eEVVJ*4roR4mZdPZ(M#opfGfnwT2k; z%oizKt6nb>I<kHe%e<))2|=14gIXDv^{{tYPB-|SR`k2FwcyJO^<1vTntGWh$2le* zSJcXLt;i~wlq1fQ*~s%qR+xY1jMgcvMS9O>t&y<ZzTnWLm1awKubTP8GXD5HwlnYM z=E({F`mKI!mZbh{^RN2V{@*M2)-M0Pi8c7W{qJuJw`TM2?S0+wUu5ZqzL-}$qUT+; zuCQ;YW0|3&F5r>+EaUbP2k%*m$Gs+HsW1!uE8YI&>Pw%dS6xC^_AS_7v~$`2>;KvE zpL1wkZi!mDxkBCKNnm$>VTJnRSDaE8)Dp9tmWF1ll>0Be>OFnZ?&XU+<()c1*5ynu zV)W+B<-T%Bk-I`o{Qeq_om)i{ug?~rG}oSS>Z7~AH&2`xzW>x7#~!9xk2JkntIm7= zR<-us;Q71zvSlUXorNiDFNbY%PSIUGQ{vr@!>dF0|Cj7!4puu@d6Z$lqQ?4|eN~T{ zC;bfM+LqNEP~vK`N&fJ&hs}rhSD!eSDZC@dYt4Oyey*B5HDB}Xf9yZG+;SObZJ*%1 z^Q!%9H6mR;!mO@l6`AV&tv@8%^-nU1NsEa*wD^;Gt$Jr-LF1zj=06q*+_3Yx`dV`7 zy@-G#T1C9y4!zmLyX)Qwjp8qE(T)>~-!0di@%*Ao&7>!}Y}alEq^E{YDE)Zoa9V$4 zc68$IKW9>RuXo5^ccS`7NztdP;b)er^`1QX_lKy1*U=0AO-;T$<9oLDW!J&|lh--S zuZoh-Z><l`SDNQ_@Y+nJKN~`(wH;$9jA)RXC_CYY=0wN8Yt>RE65LbQdd}XuBIsAb zryu<KVjoqbjvH0mOstt=_v5g<XzLs)_YDtJpD7h<R8D)}<+7_{S9Vp#uDNnwa#ydt z`OM$W@#1{7L|J?FBFPs=8*2KGD7{D!RMXtY+%(<U&18Y*LMKHx$&_0un-{XwoR8V_ zV2$qeU1n3}^{bc9Vb6aVebzlXs?Y3l{OqdAU&?OEC$CA|`ONk)dR3~mKX2K*rinau zB@rFrN~@Nh>6nrqrpVK@MYuV}FT1BQv&#Oqscd50%WxC<yPr<F-h8)vR?W<ZQ=dEZ zT@84mEnLEv8kn%cW}!;B%Z$M5!mna<7CRmejWn29b@W&8A|4+vaq$gtOUr9NIDSgK zs$XsY&sD!>zj9^gPM1$h|7%Xw_r1V+h55tw1AaPheGQ(3YGwa=l)Zo5{Hdl(yFIQ= z(VeB9&2{A2jnh-!hsGV4qIv7b$>}dYr`Y?7tgQ6ZSn_wpPnM}S`+r&K*e;x8wy>#M zgrU0mjM-ANWqz)lxe5OouRmGy`)vM;xhEgzubQ)0e!AC&+s92dE<PpEDVQXo!v6p5 zVrTyg3m@OVwdkf5-~8wPf3<BLW*^9?pY*5Kc4o@`-z6Lm5*Hgx@OtX=i2r1^cU(7b zNz>fFuQly&*qO+N+8pFK)&1f3)E~b&KkVx1nzDa#!il7l@?9oLbD7pK-`)LUMM0)d zrQy&14DX(XJi7ya6K_1J)0)>FlI?D!#k%~y$KpK3?xxb4y)V{0U6Ok_>GYC-9HG;O zTq$3FyLQjJajBARlB9F+R*9dw?7lCG^wt?Js#JX<_)uX}*`kgE$Bs#9Etc%zH`z2T zM1b4N&*NFN<#d^X$<FWQG|Dd2eqm*NKkD|^AGf~x{?C1X^m2P|*Ngc_-OkUsc}eE4 zTgm^QjasuTYY!eRH?NeoIUFjx|HtW<la(jx+m-G4yzMJ*$-I@Tw()+i6)RccD7pNT zW7-|%+Z$xw?H0J<-upZ5kkT#BCjM{PlmBe0S-?8Gvt|3&ut}eUb6;dWZ*2|o3z@8v zqNuueBTKKAV=mi4ZOgD%Z~oj3+U`BqulV7%tLf*pr1oFG`1{7R18o!2t!B%`FE_K0 z-uH05WX4Ca>-m|ts(mE=-+8*+TJ(7O_nv(<7E$sqtF6zpZ?h50w!g9am1F0-Du(%o z8~oKjt#Lj#?a0&}ihIq3<2Rl9xU`0Sji}51dELQLO-f56&z(<=^xw?v>*N2rk$Z0~ zKfBecD&^klTR&HAvwgkzaHwu?`mW#S-uGXUe^dW4A$ZFDhu_w|v%hrn=Y?qjM~p=> zv!v=fpNJ>)>NCIjtRcQNc9YDbw3sZ%td&a{s$~z<aYn8c{jxgL>vhJTBhJ^F6Pc$> zJKZhX(5R#xFzb>}(Y+=?<%c^p_18^d-ZX!&y7{hLp-e-~OOv+Ul$NdBwYhkUWAQu1 zX04({uYcC>`Ea6f+4`&3Yy+A*!+tgI)tAdz$2)Jad;S)__Wd5x%Z2pU=O;Zl9iDIL zQ)Auo-|~>Z_X<a?yu-OOw|v@m%4BlqqZnzo@~(+fwN891nmF~3#JlnZ^+|I?rXSj@ zEdEz`vhO$lFVk!u&7YAYRQNRMmY2r4iiVX_rrw(QbY6(DqB`3@ULXI{|AOb*_TQHd z@%{cvt<P=$E~`r)_O6ZA>oJ|5wkG-T!Lw@_e>K<Y%k`MOv9_03Rq?Gd|EHdRZpoil z{r)zubEVa`gfdIpEUIbU6m)mfk_(IH1twNZP>TxRlBLedmvg5k?u4?an}#^gza6Ul zXQR2<r{&FK)&G3q($<Lr>dKa~T6||Lw^Ta^rJY#T)@q%hSsVZP!NlV~`NCZ_YJTMZ z|E6=>c9nId(*}uSZ^HfMW?3CBn_QEnBbj2)aHD<2?G?LM%n$nL*7DCNVjk<l|EgD0 zY~=Odyz*2$&@K2h<xr*jV%7~0U2;l<W$)(96S-5@sPr@J@sbNUhi(~7_*rqavFNOc zr2e}Dwj$yQPuA~neth(keW7s8jhqS2W=ZX{jQ=YfpY;9<o6_rx`I^sItQ9sGGF7aN z^Hq$SURW5mQE>g7gjqWt{^Zk}w>Y}#{f)E2ZI7PuJ-T^gLzsy0_SHr|Z`WL4)wA^A zJ#>U2{HLImc57dYZ_talSv7f{yI0QO?AmG;#$vXkHh1FM_9z=^*^=+8_3ZAL-wV3< zN-OHpo%*MT;!R|C*vM2D9lv#ao|S}b-uhd&%I|HwC;5eS?nJTm+f^Ukxqfx)`_^5y zdybVIzqM<gQt$H%%f2xi&R0x7V;XVY?Ap`qGjbI9<2P5=U%p-)wtLpEUAL-Y7N(U4 z2P`cv-?Z&Qtf^nR@AX#;*T0*Zay`=Fk*SinS<0R$rEcF%I@^{V{=>uh`Srz>42!u= zJ9soUN=33fea|zqdsWM1p@cg(H?Mke`L>^&_3c{!*UY*aLGih7_Limo61ZHQ^8c;w z<vk+o_AK1D7Td6-HBOB3KKj+;?M{y;QE@37H=Q+EED-0<^{{tSZTgjTue+O#^Inw6 zW_|f7^>O)^HJ2WCyVTU=zEw~AHdmAV-uKJgC*6wTl|3eCh+co7>v%?U$t6ARdpj*e z`{rl_&E`>fkjU#&#Bj7z%-W07Rqx{W6$zPJbe(4!s7AV9n{_KTEk1Db`#1ZJ|9mDc zU0ai^{65>~ThFSJzlN^I)t}FwW3V!A+I7vxFJuo~?2%C8GH;T%Y|A`(#9->@V+M@8 z=^<Zko<3=@_kGZ(x2I422w`39|8Ab0|NlqtCz*e+o4?Qf@NI_nAW!EGt(j~-FEjMi zQ+F4J|7<kfA~Vsl`dZ>O3ErQ}w8Ha$pYA&8Uoy|==nA*p>aNLJq8IzEQ>$lgW@jpt zDs%AgJ;B?dTClvP-YeW{quN!6Bw-1Yjjufy2zxKEw7s}!(PTvyccyt7C(p<fT6;fG z{jgn6Ctt3&`pIock(GY-^KElNOl_|2O<%L*Ys#A=kJEQom&se*zPtOk!0&SxGu}`0 zoqIbd<kuAwef!jpyl*u7vrc!hEiG#~Gx?}xivH#Zb^luo5saB^OiJ^2zR3}5n(DTH z_A|vz`)10hygb;S;A@;TNAv5uOKC}SuKDy_uKFyIzAQ^Mc<rRlU0=8K%<DXQu4mhl zdHNMm+pb^D&HuP$p6co)FCTRO{=V0wZ`%nw6CbB&xmRy&F721%5ls?TOXgx;V=aHJ zR)4A?r||=q-4h-Kzdp}iwBaXbz-Qw!#XRMBwya}%Pd2@EvSLm0<~kyI`a;_B&AQH0 zr4;Y|_`B}j@n0&pKU`pQeLR1O?%`b<pQZRze)v~lJ)`aLVtY%OwY+g2TxTMVS><FY zl*$@@OLbD$%aWdIxU*!(_APg(THk(migovDjok8=To+7~%fj<+y}OhcD1IY0ZKaFj zrd=h*Yu7n&JpR3qb?rLlUaof!EPbE2Jl_)*o|1dMcW=pjiCx9huDZUMUn%<SXrOfP z#TO>qib^LJ>c+h&dC6m@UdYJlUMw_CV}a43waaGS(Q@Zkoy9Nnx@S$nEnC&n`+OVT zt5mhEIc_@Z-^G`PJwF-u-cIDT%PL+qEm(QBG@nkur_W5~u{z9;7x{D*>M?gKGMrD1 zQ9Cws^81KGi`Q;AqjQUUVww!sxj73m))h$Zo7=B;q{m@-^*)Q`y0XuB%1vZmz1w{} z`2IUizOpq@7fo+n`+V0lw{c;qZF%UGdk=Zvy@}bYRJJ1f!>f0{n|Nnm+j&?*?78&r z*Gjje_VE5$aQphsW1<mJr=EtIelxwAv%lDNwMuc#{C&sg1l(Eh=1TaA9j%k@a7PNV zTu2wusE=9cdE8u*%h<nlPrwAv`C>~}pX2se8q0X2rAcg0CG$$<Llab^87?Glu)4$~ zuD0l6&!njt6F;pHQayPsZ^CEW$=?mu`q%B)w|T{}cVBXz-7Yf`TfEof_N2+}%kKB& z8oqSnHLHJqeU_y8o5w5<bkFT$wz)X-ZRd)VY3c{1v&$SpyLIdivpRCFN?n>|bdzym z=q6^R_9)dX|7uxp|2eN;Wy{{I__o3E?w2bERwjS(d)D|e*!|n~QbT<|%XyjmpG$SJ zC-f?<(G~wZGbJ}9%ad(hiF%6DY~$vfZ`|i^|ETF*d+OVtnNL<`zp=i&-bB9Nt>4_( zF)5wlpN3Z@%f8#5_TEQN7o0XrS7`9e3rzj;`{Z1;j99;WLeXmHR-Qj%xwB->XV<6f zzak6$o}GGn%XfcmOjq%$RlH6cJv%2(F?xDj!sLRc{k}hsZq+N-W;d;kI<eAi{;h~V z8yP3>cReZ}zwYPX{eROA8hm&vKK;+_@_!o=UObJu%D(!<{3$clWKxgb*zP9h{jqT0 zjv^VmgW`P~0*bT?gOwLw6&DemzRFZWs&vX3uD(lOfA)B-p8RO}(WR;9SnJ+zJ{DB_ zT;AA{M{4rrPgh>1pV9M6E}9|tH||sYo~kP`S&iF2%l#4*ICxd##eQdBpSdNa2B)t0 zT1rHJxvi_~zUcCM<yeN&4Tl}Xjgwb?Ih(xFEYr92$d1X`wLM#!?@g%r%l>$qsH;QA z&+67EuS*{D_ldH0Z*|pv!!F7D_geHkKK?(|+L@lO?ybJ{<ZId5ivA-9tvK$A2gfhv zP@Gi5v~7mif`<<dyc3<YQFo$7!Q1Nh<ta~vmV_`(>YHMEAuV}&*Xk`*E**b-np%?@ z*UZxN3yC_s`R2(3%eo!HuU`DdZNHT@M=E-$X`NN&ij3Ir^Tfh;EI6~}%$=Q^kFW*& z+ufEdE!Dq1`Of@3mu#fCUzOYsdh({%^mHj3L%jSOUF|sTqTt5aDzTi~1=g=kE}9&A z=H|=$#(jCytghJhp5t2SJ>~IMyDSMEy`KD6OMj%X&e!mF&2zPK4|1P+opo)zj%mWj z6#-d7s~t9mCyLhX*}}E7@TJg%V>{~>E%92-aG&+a)&-{?ZrUL<#qR9H?JUYatb{H+ znaA`YSb57-jm3XTbf<RxSRS^shOabS_{aP?sVVt7R|GGukGw8$?XYXk`wp+QkM2lI z9Q~H`e%7PL=VkNv?BD+R-n`Gu(c2<Tp1rMQe*XU6rJL3NPhQw-Yuk7!V5-XbdHz8q z4y}O<?pD*zOtNzNsd<%;CFsY`i7HDM+Ibyqku*P`)9|lBG;x}~qt=8jPHw$8o$1jE zqSslQ<JTA^9BA8OJMGuwF0YnpN)58R>LzVl6LR9}L%l<4p(-p|S7$~#>WV0@$q6zt zeS2wn_Zg2vq6w*+PbHdb8pds3rM!gO)Z~Ek@m0R2ceA_Cp8ebC*6+DANOb+%bvM7H zJ)bu3fANC+-I2-n%HALNIZrqKmF}vWWyjwg+2*0Y`EH=77VnoYccinVSLhz8H8*Ap zOE^5G_fv4hx|I{7q#{f`Z+lBt^$MQ;epaGMDAM56V=bQN%d))FSy(*9eO@Fu`{ui^ z-oEPU)#mH7t@Dm&r>$9Uyd&@Gty1Y<`*vi-8eD29`_}rz@mJ)A=}+W}#UvCK&fR`| zj`BLwz@0X;@`T;|)_+vv3F_aOnAX2Dk@2`R>vG-8$$h%dxXS7^q<CEyUGz7LNevC2 z@g;f1-}!du?N;*ytA?;{ZFg!uDkg9`(r5m0?$d&oTgwh?nRq-dz@&J}za7VBWchlE z=1e`5<-N2?H+ARz`5F_X{#{uRxiO_%=rp%#WAc*&Q@17TaaS(?KT+v#Nc@J`t5x%K zUvi}#%-UASR#kuZ!sNNlciDfG`Rm*;c#+v>bInYmx+wk0n-?G6F`wCYaP#k|FZJJd zB{^UH)}?i{WUo@lM%x{Ze}75unpXR~T&`-}gq;CX9Hee=zG<>eIlYp9$*Po17oYA4 zkPwi3sv;3zXJ01ubOCecqK8&*!nQ<Ru<l#EW@XFQmgB1~c}&ezm8;pjMBs6fs)oIn z&!Zycmnti#t!?d$ub=*+c3YI9#(IsTOqY*yDgHn8RDAxA(n%Q^OEaAorUd7{U{yHq z&`|ln;}43b3V$rEkq%rdoYQz{+O=8No;om{D-sEPD$4L=X=0+Kdc~ndGab3y7W-_H zXP)U1b*kjpj9HU8w6{(*sYv|YT>X4u*B;denI(L-TVKhQ-)~#^Fv$4slp5!SQQ@br z`0q8_5WPBSQS+>}zpt(2UvZbMy?y3-Uw;0Ntiyl%0$!e5TzV_{@5AYBvWo1N!Y5SC z-MdVJty|CIu79F*bF}NKMPF~c-^k_K6OlJd<dmo8mJCzhF2y&ik3Ca}T3b4aizCk| zT}SJ%_v*?+DS8v6R^L^<k>=|u|HI-(sj*oTN7d&RxAZ4VyrxYMaVu%hQ8^~HY30(t zx2`N{ys>uMnNO>m*<-x#K4sq}|4O>M=R>=B?dhi<ckJ8x(!gHG^1|;6cID37&tJd# zpv=7FXU$#Syjk+k-4|V4|B3&YTxMaojZpQ3`@0RT4)q`J+i`cT`-|&Y?{dp_&)$CJ z+MVjzw`*_jEt)sC)-{r4((k&J^BgyPY_go7G2zMjllmebn-nK#OpAN{_l9m;SOKSg z#Cq;B`%Vt2zaMR!CRe5{+VLn%sCe70Ek|lq_x4}&xwo~#?(oe_)&I$J6DRyR&%NAB z*{@eSsOnWs(1O^L7I$a$%=cA$A@-wCt9#P@{2Bu(+b#3<RsY&|@8iBFpG%VOSF9It zKJ!AwwBnA+_7idJ=h-jMdYY2fS~K<3<fi6?<$?CSJr~56&k~h=^K&KN%iT%y-=+I& zeGgLnP`Kao=<12lccm_I%xM0XI_1RNtH(}qUd@^^-NE8e*2>To68CiU*R`A1$|!Cv zGPsxT{3vMQ>DRoAetaynH+a5d_4R8ec@w0#AC)Dq3=s@HJ5zsE&(qU;OrI>4>DyA+ zP{DilsX}I(qneJa*LiD>rN25o$^+M|-@4__-Lm@Z`zKG#-M8@AxoLeD-QBIt?!VLc zT>7?`&-coAcDGx%lV#)UbLx*Lzm2coq8D_3-}{KzC5@E}f6tD4K6iD~-m~}A>e|(B z2=SO+zgF`0{mb7`Q(yNboV}Ko|N7Sq{X24;+poD<eb3K+6SaNYp^Llrt=w%G^DsyK z!;;)Cmgwbo{Ht;*ye=@QvKnmQPEk2pzVw#q)LtLU0|_&4PJ6Zfq?~KO#8ThePNDY- zZbXYNs{SY#ule>zU-?<7^?!J-Y<POv^J(A(Lka2I4!s^1H@3tsdRMw<hg!N&5AQ~< zc`-A6tY5NvKk>Zm{K-e<y9AT4ip!$(8zzlfY|#h3oNhc%2;a3T?21<{pZ4{FXH{$U z)-NeyeY$$3@Al@qIt$Wf>&k4t@^{+X&ilRn^#z3mA0Dwke!Sm1=l-3)S5_ZBY;S$> zZtbJ=!-v<~UH$ucS7ZMDYdf!Rzj#^jPHjd_xO04H?homW*P8z(KI=@k6RWCfk@lZI zrz`)S%zUfL5AXN?UaDXFeJ%U(`&GLZKYqFW*zUe>>$ARWt=yx&uj)g}fx9oWd2*|r z9yN;{JMu+yU1NQaUu`p!qoNgqPijrm)C0>O9gQ)$7Q<58$}rzaQ|EY;!}lWA2#>i2 z-VQAHBAMnV><hc{%43_sx>Kr>=Ehm+UL`jSmYh2%ohorjD0I!0BQv^X%{ApB43cHJ zq+U!Dzn{=_@xi-OqK)mhzumo_f1&Ev>m=vj*-g2z>if^_+4tEl`>^=l*16{{D6>y; z))ig7{X1*zTk$h%Pkg@OI4$Y8hUir8YaKEEQ!hM!q`~O;T>a?xDxqyb&s$Vyt9#sz z=#HxEy14Cj-S6ACS1nQhbxR{Qc=Db}e;!KhGOL|APyWCjXU&zOEBjVldBV^dwn{u~ zg5S3tO{&}Urmhn|_L4zwUFY4>2{(<b{#wsr`%wAov#7{<nMCGOEDw7XLY@DLYwZ)t zJsiri_v6&n1&rF-j>~@kNoZZVV_BQOj(6ni%)XU#PaAeF_>wg>o@3S#gFS(&djn0I zyI(PEdZ>`@C-HV&gV54AQT25nk{kC%eqc;o6U8adWFM&g;jon7ie0RIO!u9$DmF9D zj5v5r-ON7Tx?soJw<osEnw9H*>lPpXm2IDMcT2r0+y1%cckNf+-M4<E&&zx9aYt2^ zSsBZ2tsff>-K?#tR@wBoqWpVubM|#UyK8s%Y@htx`n#F?elD*a+4-N$zpUK4J@m@! z^Rl+TJ}<kZ+8{hDe9y66Q+peP`BkSYYpGur|Gbz@`a#CLe;yxieK7bG$8LS3MB_VS zp4UpTFH%BgoX`4r&YVs=xW|AwMEz5g+BW}+?1eY#()M|`t4ndSBnA4v+PQ!8#*M=D zBGp+{v$eElRb?y9mY%MY`6gES?aR(>U+(z+`s48Skq^%_qa>HGSvC$<e_Q4-nEh`2 z%)LxSF}?ZPY}0j~de@lV>O5=OapA|~off+m*-gKybp0sr&L5{5HhQ(jpL1kgQg-mn z0-hXcAKudvvZ-xuFF!unck#*NFJ%w<%gW|huBw`+#iDVn_`+B71|H@>w^!L+2Bm$E zOCM<^9avFhnCYkG`Z-~#MPa*8F;CEvyKT%|pSaTbHD(yjT`<@F%D(Rrp||_0cGdn` zdqdfF-?!dIzv-uLemTm#_~BdYZ)<Mfy=1sAyErtvd@=t|^Hc8<`VRb>miV@Y@7ED4 z&hu0EtT>^#c^_B7(zr<-C5#h1elK5~Ae0;Cb;UE7BSypHV3Y<o_Xn%<uO{fcpW?aU zim1;+i)tpvTV)+(p<k|>evy%o+p&M`!c}*#iv5|~=dkAF<*3^h0avXA-c<)J%;dRh zo}bZGb|+FgkE_zmWzo^qx0x>9OS-%_cj3CKbn(va3+W>M8`y%>L)$)OJhakOsPt}F zdOk+zUa*bh^u*RFCi%<e*EZI&>$Fy<AL-Z{Y51sVjh13h+9ZRGs@6U|=N9x%;+nrj zhEr^|=Z1)>+Iu~V&ABCa=ia%w`EKpn!x!!Ca{^rC-u2vxUFZEx`+NG)-rGq}SO3fY z<a=oK{9`w|ms~&6BD3B{l)ZRmmF*S9tetid?{X$e7&;Z7Xg0aCdvT@B#=W}>U$i=} zJ#+N)n}>VT*;Xx+<9uUdz18vOIo?a@hUaFy+?ykJBXDYl>&e<v=CVtYX0BJAX*uoP z%ccCP(KEyyUl%T5PB{4TmQCi2o_!9d?!0gmpFB^^W%iSmtxQHgSG;t78-4Biw)ZhF zyMNs(U*kFN(nq=e>m^z3D;Ms|iVdCEbtQ1~<1f~$E>CIe@+eV!DNz~37g!tR^yoxS z)}h9%klKh-Yl6Hhl|vFzxH`ML&C9CU_%)VWeSLRnWxSE{k+_wN)lY41Xloe1_FQt5 zP3Fmj-3h0c$YdN`qN8QF`<vv`l-~WH_x;*+cdlLh^LJJi-}-aky?OKU<(oTa__p=m zJ^H!4ckA~0W}EvvKhJ(_-Nq+#;45!qZ{p0{WCq^TX>P}kEfCE*d5k0ShCuGpr^^@K z|5v7*>%Y%j*FJvf^~+yPPfmB6tiSGL%%q^gR|l5A*PMJxuVK4f#YxAx%OCwLGM~uz zGFZ^#iC9MI&bY>AZO<nWe?BrP6>$47R7Rz1?VhCAF{yGx^Rp_ux2)?0++R#IZ27lF zv+85bBjsn$y$;85$hooxOq_7uw*BMJrlcgpWKK!5j-WX!v?eLB8O_=_XS0)>PEslB z-Nu9yOYIyA;`M#yb~|mCm6xo1F#n(D;+v}~j9mHV-)TI2tnTuO6_YA$^Y>i*d_w<R zgA3D)6`xXP>{uxrw7q^$$C9*SwaW#Dx{f<Kmd!bN(_lpm1Dl7dSjBZGw<8f;iLd>F zDxV(N=Xkznt@X)k#lDyBbTld5s4{%Ea(?jhs1U#HOJX;DTfbC1z*I<L4GWLY%|BJ? zW-c?HKfCVCWwiYq<AzAL(BQ;XeZM3{<8^&Mb&D&+Ok;Q9OK6b_xfZ}#*K5xHLS4Y) zgV0}=zaLF)@~V5|U;AokeM}BX+7e*zUd^dDd54sT`Xm1ql}jIgKVEqC$MuB@2l7if z^us?h>@SU2*sip|N@rbJqwbD9r?xMf){xK3pTC|%Sa$}4uE(9V=NGbX{e1EEqf-;_ zDF{AJjy!T=PMlAopZpx}C6{_;JP|mVf7+PGOYoWKC7$Mx)l)+R5>5P*<_j*{VXCGR zIO({ghv`ALm1<32q&cOEol>`*p3Jl1SHF;UK^n`_ZO=}Z=5OUHSGd36#5cS25dE(| z7v=JLoA|$&W18z*bAN9y|A+4;bMBVDT5sp0Iqli8*zaGy@w?wXR`%^kRrA~Gtgv#| z-+CHVPao*dT;!!`71FM0`eBNx>2j^hjO)*r9C&{II%EE1>j(3bGkX2zYkxiP*u-3K zH@jUz^YY4H54Oj9%2*n27mq9bad+k4m1RF9v!6VRUi^$dV)3;(+au=hV>NmCXYa3d zN2Y#%_T{y)`2E`QV^X~j=AVyTthxEvp`X_xrffYXBdosmqD#)=HKuJ$FKkynZ%uu_ z_44(7wI0PQ%Jgierr)dm{^6m{gk{&OS*}HMnO#!ed_8(v)cSxk-IiW5Y*vY<G_N&C zE_d1AAT}*E-<f%y-^wT7r%Y^-lF)3rJpU>8QnRkyj-^tQt_$njVVUfFdjjhx0|m}# zy=H%{P21<3+{R*bQ!LMpVauysvu$}7E;t;x^ySH2^VsE_-v2Y|Hx_vzSz0w`byIM4 z(1gGf1(M7=A{@M{3w}NIIq_tvBJ;B))(&llEuJ^FXKe6Iy00EquG@H8)i^QX!h+a^ zrzT5Z-}uNiBB{@KMw6>Ug5z>qX@Q%Pb9vUL?VZiqRUNc($8Dq8^~SPOy$feH?}^)- zc1k^e{@O|RJr6qi3eI!3m=iPMb%9A=aF9iwUE<Wx&pZVUjdL|7dMrHBQmAgJsUmWQ zrAu<_CNE*WZf`G##tUtCl#G<OGzibwu)v_(E7#)io<+AiXGRuR#F?du&zNatpUuu@ zeXIOU#(RmLR@-+4H{NodPb@LJcJKQ2dlzrt7L3?yb>Og5fcXp!ucMRqscT<VzIuu) zB;nWtwu5i{C48zbO<Q$zBG<1k9;_3>f4#QIHxCtCGT$=Pan>t`tfPhfGd=k}9KQ4* zcl8yuXIi&y{wDugo5Fh8YOPn<|0!k{_s*KT`;xHSi{_Ji6FTSDzSg~Dd}q?UgBzn? zP4cKvxovOS!gzWAQzNPHwDSoEc5Tn9Jdw+Kd}jTE@MqSiv~3xW1e&VreHNO%S4Ly^ zrD$Ka`IQb!GBtAl>7M&A<MC-7qbtpJ#)q%&eA&~#@^bNC1-Dr{8H=Q|=iU~dy(@87 z>q_Ye=C!Wj;qvoLYn$0#&NXdJuF}rfZ!*c@dEn;jm;bm&oqtoxP_g;i#50OnzH#iY zx@NxKpu;zPPjp0kY2uC(S-R3@hLN++MqE$KF`oGB@qt^%JpLVWeY^ALs|`(OB?Wpd z4xgUC>Rn96$|~Jw{bv-`ZM`HjSLjUR56-8v3u6{ul$y8s537;V&D%Sx=RNU|`mAaB z#@92x#hxvGAJd29e`e0^(!O9EG>KD8N@(ISyRx3mD+(3ZbyNRZZrQwpfxYDDeCDQI z7w69Ucral3!-Ws{|JZG5`S9D1x$%u{yM#xr^5>WTx%u^O=Eb-jHT_W=^{KWh?!tsd zHI;pn79V_~yZDfUQR~$oLhB6AOjdquQRC;d?$6UV%jFN2PZ#`?q<$cFB_E5?fu`e; zcW12L^uyD<VV=nk{}nw|4l=2SKc)D@_|7;X{nKovt%LunU5=F#E|v!^X3$9st9JU9 z?aP%Me(q(EhIjI-HpcK-b)6q_S!y*W>=bal@q3E)`6W|#1s0mIB%cUvC=ZkHFqpJS zXM))T@2J+EB~z^ORNn0ql)V-c6fv<|Zf)Q^xkT033tiZ>ZLf$~PM<%|{K*rYm7UHW zvwH8J?~(PIXRFRDx9IQ5{b_xrnKN$(Gk45LzHA<3+%akE>|kTDwu5F{0^(jBn8T?g z!Re~J;fj4=&T1Bg-49&la?&clB}}vl_!Q@Pvf5KfD^Trr`^<&Pp);m!o1hfF@d|hK zrkzW2Cf9wOsQg*FZ8Q7C8{!){pUVdr-PUu7bbdCKVQ#YDv2N3ApM7*9?d~6$q_uNa z{h<|WV%*;Rv@giutn%&V*OO#U+rRXo>YD?*|5tx+&PxCI_kyTGPF|+-8OAFio4+5? z->_Wt^V^ftx2nHSKQvM2oY?*A%$qjse!5mLb^5K_f}6Hmy?Xumjc>&1?zn`54fRQ_ z<+>k|IpRWoc}`H@oO<T}RZp3S^h3Lj9r1d3^%ReV!3N<K%-v@*$}6WXJkK(r@@7%t zhn&cUz<k~q_q5Mzo!V|oG)6Nhm|Ms{so4`CEU<ThuhZuP-fOl^EanY6^i*m`jInT# z_UefRZ}gs~H(h3OJN#(EE$i!3c9<&Mospf^aN+%O$!|Lr36|)lUc98Jn|t|EmhN5u z>uT|LT&`c3`0j~!iEsHQDVwhse82qCSJ%Jn8}IkepwiOKeR4)u;NSWCmi!3VIbUnZ zv;gfDu|X-(YmU4VZYh!cG`~MW()9tq*vt-{gNF5WISFcP?7Q}d-YK^HS(eM$*?Dkw z74t6PsXr|W&-jTPF5c1@Y!P;1^OmBbrG_aHoz4pLR=t>{etng0rP(YKhUiPmQ}6!m zH_36hv9Iur{db#~?HeB-dHtKcena7!YUayUAAG)l%zb#ck$El0^P=Vd^mo_)mS}u) zW9Eyc>%R93-!L<qlYDPy*$huU#(?GVoa<aAzRx`-r))Hv?a2gLn`b9#E@yf@o9!2@ z<-fc$n!Ed{S6ij}l?8S)(!I_~uV4_H6|y+x-rw?g@l#(buerW=b=-I1kVs#-YQ6eq zv*&-Zwdd#Ot~+x}#=Lc=&iv<*_x*#Jex`Z5D4sc$Ez@io7GO8$u}SsRh{D6{F6<ma z{qsd;q)+Raxz<QJv-Z%nZ%+$$+H4loF^G?16Un=JCr6swqq}n3*H<==5)aDSnMJD@ zT#^w#&@QNwUhqw2`kpT;;;U^=raCQrq~pS%XK{wrr|#>TM!mF0h3Dj69hz5T{+4;N zWVTwv5AjWDYgBt=KECR)n0i>RH{gs*h~ebZ1$FjvR?c&L|1P<*q0v~$v)Xo<Ak*jG zXzTC0EgxU2d-<}mCga1Cu=r1*zgqL<tj$!uKGmw4YQNCwid|)Bh0C-TS0+rWV%1AE zjr8*H_qyycr(ZeHVb0ODTLrckb>49jIp&z77%@v(M`B0Iq9vQ8m^BxbvG#4zDVb!U zaPIxFc#eX?wOd`@op<J%P^Ks<drr@M$}Ap(8>vsv{rlr}`=4LFg;ZZj{_DPw(szHI zo;#PmZoaKFH$LjN?FLPuES~ZbzS_{hs;{>DYSVpRpL^H0V7;P1j@+)zi7(EHuKqD` z)zj~5y6*_`nH(`Q`<nYI^7^i)yO%GUpnu|z$Wzxz;vbWid=XPyp|ii0Q!8|{+6omD zH|vd-_WyZAy$?LvHPuop@8P8zi#CUdRB!Z3GLzZ&^*vkra{)fNd?|sZR^e&2dIcgE z8>6MPjq5xs@&gMtluz6=aps2y`GRuVd5m)Vem>Zk^OL8d!d~A-XN7(qtJ;}v{=GZ+ zMNa4*dip6<%USz3gPGl`Hm{V!Y8K394@GiV<{eKy(X#Ykr|MFh8{bbCZD4iR`zZW( z+R4r&`=uY%Y9=|pSMR)IksbSLy26YCZ}}94PSv`7NuHb5Jkw*6@Sd*2z34;XX+bN) z9$Wn>rt*t-NWGk+cJPEQ+sQ3I=WqOX^^Go%fz`Uq{6h1Vnr|C^=IvR-|Fi4RvuUo! zq%`kr{Oh;9SlULfl+WkwiFrjWb`31A|9;w;UwWnZ=7n$P8qDUmm9c*0^h*E1GL_@8 z7Z2~W+n0{-O%+_Rfo<~(?c60LlCiBkD=r3Wum^NUaO<vl;=<eaY^7QELaBx~vqX0M zJkR#-4MUjJnVXC!TOI%ToC>&*y5P=CBT2D_@18sRs#ocB@A_{SdS@={=lRPM|6SjH z;O_$&6{nX`Ve98qtvEl8W2&*twVa;@fw`LOkK&bUceMG3oL^S<Xiey(npqpzrg*Nr z=$?{cdWy&B>$C+2whC|^k-BgxsWkP+w5ey9RxXd8sHNL1E8F}-n7i60@lRyTzCAa0 zmS(3vKj4tQVVRo5inSA;_IzS{d2;=7vqf_b?yET{?4a44{zFk}!yEbAJIsCvzm~C4 zN{;1wkg7X>+Nq0EIviIDEj$@x%^qR$`cKng6|;nm(*j>D|FHaNQOoQL5|vZbnhwjD z>&N$Mo@3L?)BXM+bfINjjN;rc&ktxNuS(ikZ~E_(m7m5G1^;vNXR%+~7Sh^rEAmiU z@4~s2CY{z93EFdv4#bw6*z)Mxt#6MRKFIU(%IbFhsjPo<B5i(FmAr7q{ZRS6^`*Xt zFGqi$&-;D<HSZ4>zAW!m(>5+jYe>KK^8e4Pw#@!#Tn@b3x9=|RZ#|wi?I`!%wR^H} z1n=H$S!S;Eq%ZCJxdMhjqtZuTEH&TVo18N-eG=;i<5IVMzH&Zh{`<~a<?qv-I5o#x z<MY?kOJ-bs(-J-BlGvoov^%;!#<M3EM(6CAS?qS~t=i>t%k~z3&Rt`o+;fA?dxcll z@uc8GHrzg((Q5vj-WtB!xO6W4N<PEs{P=@dTI<h?W_wQVF_@-)bo2lF_q3zxwr{xZ ze&NIJlW~%Zb3UiOFSR_@khkypD%NjNy6?YQZVK<;a+C8$j;i9<^Bbd+uHQY>R~(#n zchPRPZa>BM)%G{Pb7kp%eLMTT4FBy|VFB%fdm=cWxt`TAP&i(Fu<pY$MI*sWmK&<i zy6w8|w9Rv)Sp9ORRTsV#3adrW6lpwjv`CTL^6P`Jm$i)>4y`?NdbV`h4$T8{bMJDt zZ4%63s_MD2Ed8m<OV^@F4IXDaZ#8o6KKDrFyg%Dg#v~q7ru*N!?LYi(Fe=(`r<#Rh z@7pyYKj-~&J5yZ8!O!*MoMfe6Rill%^YYJg#5x}s%v(HNQ%k4*@6*#Sr8ms~$6d3( z^UI^NCrU5<pSbf}Q^~r|YtsDQ&oh~?`&a1U9^s6C(@&Xeif@&A{A#Jkd%0;6`@MM8 z?qn+Za8z@;znV8;CHL9MkEC>37kRwp%h({V@l`5#-r6e-K5-dh7e6gJGS#I~G%H|c z<Wz+(MPEL6NBUO(Gz<9XRnE#;aYHNTRL$o*^A<17^St>sX8Z4z@2<Hw_5F^Ty#K?+ zu7kDP&E<0!#O{0I{(Ig!>AEuS=PPTs*REfco4sV^{*`kQrS@OFVsYcmvU;O}y!X3G zeHYv3)GkWivp4a=W!b7dk01Pda+Cl2-!B)pwf+6L@Y>(leJ8#h-!1!a(L1U5?{P-< z-Df`Bc7MvaR3<7xN;1u#yU63)l|YA0%Rd}?rOvB5Q!!Qen$4FN)0Uoo{w1M$>aU5n zp4e!;oN(-B>LR8GYI>U|ZT`VxYras=V5h*6)U<<|SGCR<AM2TWJaD$@tutop{ms%J z%zSh+M_p&_cRQweGp8ocF=WjBStEQw?4+UIr9`(a-;<gzToZb__k@ATw|!gue)r#R zUount_HoWdGsJJQUsf~!bmk8C{sVDgXSPpwEn3q3&h^^v?zhLMh3($HMg79wm9}q{ zt5+?Qo0IPE)N<VU9;^K`H{}DltBaQ0$;kZ{rd_<JQ>yc7md}hSUMx$(85x}WSlD=G zUP%aCrmpkDQqy@C*G-)Sv9N!QEmr*Rb@>$1;>u!VVm3y;(Y&oA-*|53Wa+bQclPWI ze4Vs2@b#jd7hMxJFYw$XQB(A6vxgY-x!1*Kg%+$<dnGkHpl9O0lS->*9pW?Fnq*X( zkaSHa=xFJ|C*q|$Eks+cJUg*mU9W&6Rd{#yulG_F`}WOyE**6K%(ROapJdnM>b_sS zGVyFp?pdxK6Dqzvf8)+&d~$Wz;_n_h-rK|Gy$WA8mG6IxYe3z`6HY;^SBRYvn`7-$ z#5eQJtD<+7dv&MAn$A8NQzSI;_Oz4h;+FKLwJu&1<+uJ7@60c&mQ+0bqLrj)y>phl z5=Y5*9@cA0RZ;!x-{wzSKmYFbrL&joZ@Uw}ee>3==-cad&CQLQU$^JsA%R6|0zax! z_9*V-zF7R;?pW=MyknR4Rh^#r<ZrIYf|vHPw|w5X7%k^Z36~3PxIA5aMo9YppG$T* zRR+c0$=TX^c)QJ7zOAR;be1x`nqV3HdWzM`^rB}~`~Os4w@%#lY;vI5&N&%dTJsZ6 z-Z*ZVeqtWu*Q0YxH~-ht?091;p4@+$DZA`W%~=hm8zr;T56#KnJlT1o=Vo=k2;Cj6 zPnVY*d!sAkm)XHu*2q{EcJFxI4R^^O3-3oIsL%KqCnmt%uyXp3;CmW5*@sRgP1$~8 z+TMel+vB+NtseTS^UF-$`#7tT#d_NoE6bcLhI5gd-h^G)GGWE+z3(qpvfP#t&?q}M zF{Q`Eo39{>XTyy0S#ykSeb@b|KW<`KFzLo@|0$~(SH)JWn)B#n$ox$<yQj^`eBh>^ z^{$Xj#9vKgx%&04p0n@g+iu?`((U_fc7*o)l!TeplMddg+?qbKZTaor^IoVw&RWcV z-FWlytE;RhSD#~z4r0!}&T{^&WQ6yZ2`&5oHthGxQuS+|(d#&8$5Z}}REJ}y|32BH zf4uZ!s`A+ytCc5;n$BNj{8;tCmtX&rSrNkxdFHE&j<=q3H$3!;-{}`qN`0}@kDD=S z5i|6rxE4P@=TU2WwrGCz@uu3mClV=7pJ$gVFXnpwGT@fCzpC@+Ey{ZhZEUX2y82%2 zX@Jzznoq);jWy(SR;>#8w^8`byf-$h?wo%3%O`W?8Xt~^M`4@f*nTZOdReCbkxJjp zzYS%lT1_V!7e>xFwsh+B<qpTbF8Lg}{$SRt5^;yH&$Ggeer%NtN!IXNeXvet%RG?; zSwpYMQ+Xtq=RD@veMwTcFQ`Sg;Yi%sGu5x&@2iUq4!+zrr*7)zv|!#p#Z}K=*M8Z$ z_2-_qrg`PQzt#0qqrP1#DV%h{b;hm&?U`E@^!3iq?9u0c^lkd%7ZP&Y_NSF)omI}g zZ`_^qW7F%Hq@!<YqFCx$zdyLS=Ub5SNvZV_ChcXXpGq1ZsL)=rSn`62`{M1H>>^7| z_ww@YH9dFqwV9c_+4ps8e|-|K_{SZ8%y_}%wOx--Sv6#{&O50zS0ao1gy?%W0ghEC zT^5!+Dq3h(YqU1zOvmL9p{$oQPd`&);C8;<EqlU8>*RxrQk*3LR!K?TOAJ51o6^}n zCzf&D0^QnOWf}XD7cbse!214~w|V8Q?-r|?T;EmpO)TrV_OYh$OxV4<Pcvh;pR)NJ zk=fI)w)-ac8<8LX1>ZbheW;f0LyLgQVv(;Lse3Yxn<T8z(ha^g>F+v*s>np8t>qOW z0xSG%yeED2IHGjzK(}b-!bgwPdS+<_T}X*!b=W9A{p7+4S|8XR|2&%F<kcXob=Zj` zBW<R7ciOY1Vv<3tH#wGar>m46QxYxPe)Dz5&S-YonjKT3|C~{|evjk4^cUG}o7VaH zpWb!#*}}+n4bSH@wl(q;F`YeAKdbcDkEG03Pvt9SnXa4`zvSoJ{Ede`rRnCs*;#&n z>Um`eHfw?FR{u|Wcwbgm-f4gQq{oX2ooRM&ypFGZ<}0<yFX>Y1;p>|jYNjuJ`1)_o zhpAfM#Tz$jhpO$8n8Tlb&S6r*+en6Mr!Q^zR>v2yTshmk{kydBp)7MoOHF^T!+#~# z?C1LZ@7aOa51*1)-RxIwwssE84teI+Wn(wJ`Eu9Xg)O)L2W&~Xen`J*R`$xvDS2Je zt?lbqKCIokHAJkgZ^GZB&kmk{^EXobM*KeKuH4$Nu#<hcx`&K*zgp@M`1kCDioW%$ zCzt({KVZ#hbHV9t)RgiGh5KsXemVQG_=`bi?O*;UvfPpOucLa(Clr3$`{RP|fprnz z|9lSO)wrf3&oJY)hVc!-mFHr)<@nnI^e=faI_FH7>{D2xIwi<`en|6_X5q7ssy25% z`P!{hWLc_k_x|xy3F*PHb<>S_>k1{WgfBI-PmNu**S}QaK=tFhA?@-Tm8%==^j3U2 z5veg%!hHWp&60UX{T3e9e)A$;i&tiP7O&@7r)L>fe|`Iw375=yv5x2dCBf1XhqJrH zESLAK{i79pr|$FRS2yO@y3RWN<^TG9zDKfsB$sy`%&u{H6*NKX%4vp~dGkt~pHFys z=+~E$MCSQLlCllS?J4&%i~i2sd1&30n1?&M&pau9n&IhnDa(bu`^O|b_9UslD%$E3 z3eSXnVg8i+d5YrBlLZeOOcO%&%LEcXDc!Ak_v54cmsKAo-`&iAtTOw@r^aQoLZ9>9 z`+SHy)^a}2TfY0A#`5#(>uQDnc7N!ay7zHNn0>AB$@TeBOM+w0ckeu9zu|2BmFMT) za<H#A-~GFK#=KKsHtuhX%UKn-EN~s~t+}D5n?%CH7XGnub@E=iYi7&6Nzd2)S#wlz zLua%G%f{yCb(;_MYZTtv{G8Kb#X{E)3D1SqPUf256#SvK_nLQ>f|r<k&y_>-PfR@$ z@bb<>c4ON!IVQblKAzva%s8d;Y2?;eb<Tfb3(ZR}uadXduR6f{{YT-+d0aR6j=gp& zUR@v1vuOKXlVFCBR#u13r<Z=8uB^<^zE;sKdTD`K;m;rk8!@Jz_S&1$ot}z)$ea1P z?EV^+bJN}yroVV7G4r87bV(C)U%toLnR_&U88$hyg*{)!7N&2qN>Tdr$tkKc9V=XK zW%)e()e-a9bXP{J__XqgeaClhjoo>3YwVK$fyWj;@SR@NX~kZ~aFVrd{`xhq#SALd zlH=~R^w0OXJ>8^K^X92K4y(;P{y~#h$E5k~(R^~$=IR+q#dA7O6sHNW#T-nTQ>-9o z+2r2$V50NSC_lf7L!J|U@~wQW+3YsGajv9Er0A(b%T8UDD7h9^ad*$+<CpiP7pGln zJ0zR=afy@4+{dCpwRz^2o3Hu17BD4#<vG)4V$mwIaTdpuFy$uZnFSn4W)243wYA@v zicB7PNp6<liS+W@Xxeh3b6LzC7p;=kscC}A@|!C3ratPtdi2BUZ$UcUVm>k}3sgM# z@9?~QbEo3OqUZO_%Gf?1%KIJEEy90t{fDUTnzEU4Ztl-)xu)l5uPR>lSn=I5srjzU z&&=ujEpM&uwyiP!OxMKR`#PDudPn#B`>wiDr+RgX-tQRGm6`fa#Ik}e&pUB;RiA3O z%eVi(80AGDJnjo9e4g`PKQQFYky!DKoBvkKx!j#T^M<#8e%YL9oqGCZ0d~v7t)_d$ zR;b3rtp4bc$0f%Q=d?uFec@95-lefO+K(Jo-Eq@!hW`AYPY)ihmwd@vvwHvkFY|Vt zcxP<AD0$u!>n}^&Ub7$n|FC-Yi*GX%XEffDJ(zK7>X)z!w(iT~GvCY->{=*tY37NB z{{o@zcRh2L)%hKbPMgzJ^L<V5#Ose&o`}!#oZofF{a5Vm&3>-y*cWfNt<^G$IU2NF z>G-APO77jspH`muexUs=n@rI9!+IQs%buP2YV|VViD~xrdPgg%$Sv*yQ*>W{EO_$k z%)=AqDe`@Pmd<Qf-hSNf^TQJ>PYC{Yw^pf);WK*sBUyIZnklbS^7m9s4xYUErHxDN z_h%)2wqlni{Q0qoAt~!-kb&5$KP&rUXZ~}Xw0zgoJD-b~&EDR+tHJ%{r=QThX*(AF z>Oa71oVy`9p=)k2&o$SZ&V?myinAY0oc!d@2j44YRh**l=NweNo%Zp>+Y`#OtyAR$ z%|1Me+K_WS&p}{qEU&{_<^}H*dW26W%}Gm`6EUkWNlme5=hCY}YZ%#c6a=Tm9mxN> ze8wvK*DF5O`KC2-&R?M(F8ua~*~6`KKbRXbTh{pSte^Hsvoxl*ulVGqhSbAv<M(8L zHaik#D<Kk>aP(2#B>}h2x!aX*o2K7*w=QSfZJWt&lm5=1`8F+`<A27T@`^syb^nq- zE_{_T?dHFa)!fF(UE=){IXT(IAG*rzQ9PQG<>%D)^~lqmDHexpYTAp1E}Wiu;koul z8I6rB*<4#^oj+fClkxe{$ajY$4WG|0h$_2dc{JUfWBy&&yWPwCOwT>otbg{=W{yuc zWqUR4cDIY~?=g6-KIiJ3qmio{H_y5}hc)~z!|J$(l=Yr(JPd=}#gt1=$ZQt1%P~9Q zKBfEag4vHOz0H)?{@4F@kJWC~>s{h@>E~vC|GiYw*6mV;$)q+%ncg<Xo)$R{#nYRV zgkx8o*t9Ca$Kcqp83Kz0oI<AxI2kA&DN71&x42^O{<P@joQo2>kN6f8-Mwc1)wlNV z&6Trfua9>YS`>HxitptbvuSO+uiyJU$MW+ew;Oqve`iO%HguY``Fd3K+pX8)UjM(J zR)1~3)~$=>zug&bD{j0xQRlWun|#R4kMmx>Zm`{Kw>dp8@ZHSYo4=oVaBcQI<6Q52 zq0~j2n|ME;5W4-id`U`%>+h5`FU|#2PAUCaV!uDww(Xlo&(E|*+esaqE7^i(Hrvc! zP^F!`we%D(^ItFBxEj^ygu@JlQ5<P(e|cBW{%DZaZQIGG%i%0i&Hhb<p=|$lTbFbW z)idXwZl7qeX|b`)9n+NzZ*}%f7Mo|#;=Iu9@P^z4`*&{N*>wKR^6nD*yQg1;@0kBi zFvz-d#dgk>{g+;zzPmJc-R_B3-p8dC-<`gFr;G9})y~~-PyX5$y1{arRn-|k5stDc zclW(imcP60vz!p`y(etK+YdIH{d3GUnG#*~A-_>}kAL-AU87CA?`}(VcQ@YD@;!6^ z#{UiKz7yS~oE1|Hn}z0`F*)m>zf_c4_wBm?_ux5=4ksm^yt(4B!l!44Ime8=Eh3-X z(p$RLPYtUHOyUX`eX+R3_{*KjtNXac#r#=Qeq1^_J@n#h{S|zAa+3voLe1A5oHOCs zdr943*0~u5!P5%dJlWgC=k`}Imfw06C%*bZvqaQFZ}yJm3r{me<*YujW@c2g^|k{x zYb^eJdG&_nwNvM&m1kxDYA!#2&1|*g59i8T?t2>)Eh<Zm_WpmmZw;sXoZxRpJ-eLm z_Nu&S^efq+<27Tkr=M#|=k_@pb+qnI>d30i&OVh|ykbI1EL+f?;s@Ho2@9Ubu3hWd zF8i&QInQf?^=1cYUK6>QzFv<M8|?L#_kKOV>$Q%LDdH95ZuZKB_trOGkgt>I{A=?o z>!Zl`YbzegU;MvK_lCo}JJI%kH4j>Ce)v;ohkRwjK@(xlYLh^<jx@f6a~F-4Xv>vm zHz`}KIMN@(*uTcPKPIp<GN5tW-c3yV*0d~Nui)!Ywo1;ORjx4k$R;nDzEk~u|MdN( z8F#<k7`ebJNGo}oy=~f`Z`<G3P03JNnPvU6`ml3%@}Eqb$rYlt9hrVgz7MRm_1`fu zyE1gHt+GqZnR~fV?@7m+tObjfi}!2tbI!A6xw-99%kJqt8jlSpb{So<-ebW3;L(Ka zm0P;`cqd3$8l<rH2#6i|#w`6=)bagntNGk3D{HxrRfOLCVZEiT=&Rzfvr~-ct8^54 z@|&bv8;Xi-s@lS~yzheZK`Db1!WU*8kh(MDxr>hZ!$q?h*B<n^#$fR)&q;o+#^!E6 zK5Ngw<l~~|f$0ael}eX785eAjsz2yC`|jqOlk?vDU6S+@O?H&$ndN9x9<~0!wWG|+ z1q-K`)@hyXSWv!c1NY1B=MTMJRLwZSD*fvAjMYBeI#2er)V6A#=Hl7R^hW=0_M6); zkLY}ux>tJQ^YDYuLam<s)+lCrb9;&Kyt6t>DkcehPV2m(w=j2U?|RK?9J5rHy)~P7 zFMK=m%=VefC-1n)$y>z~9p_Z_uIAd+lh*!TKMrz#DA0J{@?2{2yzZmtSw&P;?L;J+ z#4_XEx6J?D5%W*^Q{~M|KO?sqo!wd2#nqpB?9$;k+$WyzY+TKwEh4!*(s@>MC)YEc zD7m)6y%km*5<L$jx3I1FIb-gU27dFOW;@tLC5?C+{GKsf+qbF9)=Z3Z?)!J|S7qnr ztenZw`)2>a9@#9mLf3bbfBl+pqV4kIH*0=b1RuNN_*GViY1>{&VaF~}n}zi{p9(nF z=B^8Ry;;F?rs2z3=WY5wo_Nq0Jm+Sp<Ee{j;(3|J`g6K3&v5#9qV<MH+wnsSZ=P$c zSiJmTZ};i%$A2q1#m^UbSzY}kK%(W=p76ZYm+y$be9^(7qW4ehOylF-3fh}BrQgo{ zF!9zVkBw`+f^xJs`RwT4I;(3#{Nm;RR!!OR^Ze=WR@Z%n%*?opcfS#Pr**5ijx(1p z-y}|o`{4hTFH3{2*jdlM8GqM&UEzQETk&Scx|0Hp+>bAw5!b$P!)e3weT;w2)OIw9 zobJp&DjCQ=Ig-aaZ4F1sY?dGDuEKZQXMN{?bF)^_=G)P?+}vMo{QLG|T6EvMhyOAX zGroNMyZ6=m2Me4^A1CeNKff~i;>rtsNnDxQFHc_dp1)|0-O)LB8#B`+Cbqv;XG>1q zXi;>+rpwK+$5^PqMT=c|bGw`<+u<#Drq7#mO`^>2L-hT<A8yR?z3hGaM8KZbPjifC z)UV|V&@b4tbn;`}5~-6c;ZCPqo%4+%Q<NH~pH#cmV0g}(FGTv%TjM<k-;_MeRO+`~ z=<5HjMcutopRKD+W44AmmxwRpH0G9!)UZ!?DtlKw^{Q(6`?LH~b^S+HSEi<>E&Z$Z zO-vJu3yAgGKUL1xe%kc>12vxZ<)TOVEVB>&UVotJ!y3-m$;D5zgT!Mdo0a=+_Rqd? z^YlxV>K8k|^y_n<GF26C(h9D+|A_V5`+FYo`WsY|zTXK=`L4Fib)l+Qc4zA~xkzP! zxrVMPYh8ak9=5Bs{HycZ^NYm!!f^5XK{r1{@Bes=cf#GuFLvUF-}cOlbU$Yjc=~Mc zpUUPZ>n25=ab9_K@r3gcEM52B+s)rql>2K>mPga#`tm0xdyYGsuUjc`cK?F!1x(N7 z=lwTau)|OH!Gd{mGu|oHi&<_hn`X7O{etwH*<US7!n|j$wcL>FlI;Bc%kn>ecDDuS z+ONI*KE0#2SbSpd>WeQo_`Z@{ULI#qzF=X^-AS1q%&I3Qt60{&KDzSaO}FJ|a=tt` zz+5ji`KE7`y6KN63s$zxK5LqB^}?g|o8CyAREocRqwHq(iL$jmyv62k3oj|$yy8(S z_Tr|BRq%%BGiTVF*Opx1pEW~E!&1KIyXt8hhko9I>NK9a3k)0FwKqS^+cV80y3eI} zt(o_ZF4jFuCKT?{u9q!1UlI8Cy2mp%PVtawmfUlFS)Z;}{K#mse4-|QhJeGdGl9>N zBlld0VRQ2R&t`REgUQu;U#X)Z4Sze6^28@C?3N5TA@JmBn4jw+Up|@BAIkhbl?kl8 z_24c~TBV+V-uKU}t@4WAHfyBkxoS#$P2E}EdxAOV!nvGt6Wvd(YF}fPx-?}<-=j-{ zzG-K)PM(+)u+6i<p-x4xD{<ipx#=&oR>ssd=B}RfGU&w87!ONMS1FGbTJBCsGiR3A zr9BC9km@>qLhRIpFE(BWSL}Lv+-V>0((*gS9%g9=tPDKOFUf2Z;ZD07_;k~|1tG?n zmmXUxhV|c+mz>CaiT{|+);F$i9k)xxyM~{OOR%5&Z_cZ0uFBP)xNnEl@BDFdztzXT zUv6Z6^ZoPhP;d4dn@Qd5i}EBk2>8DEYx*EYajT1aQRFq{gh_5Y{`gIM=&q5R`A9p< zXTsanl3Yzq^B0|6dsZm)jNX|!_NAwuUx>(+J3i~cld!ATf|XYt?zW$0VY=~0uGYf6 zZ~ABQ>_5yo=k$L+x&6&o(w#eHR5rC0-CFJ?Wl{Rga_Y&@wwr%tl=@FvO;65YxHVIz zu5JHOhXbrTB{cYX4~8gizEUoBFl1udO3ezcquvKE*oca#vUYrDkZwH}BrUtc_hK8r z$vnG4J1;JW!Y2zBoq5oCC5A_&(_s1$JNAOPDhFiFK0n8Cg3+mU!m1_e&U=II74U>C z4%lm@{3~JF3)^o~PK5??O6V_IH>*cX@@)wFfw{9*^i4l7Z(`|`Co7(ATob%>LRHr> z5B(x;kMOT&-isdIzjC_8p$79cU0w<^R@<)#xT2tWB_-tMgutZ{&C|@6Z{4Z=(Xx|$ zL-wQ7tBk+PoVu2?Jn3Skl-`beXY5w#?C4*`^;S8)u{LDiqFR-$2cBr?>TEwK5+w1m zGw|JVtq0oLo95RX{T95n$Lh(k+Pj*$k(H^UcY{P#b2R(P_CDc=ceRfB#Ik;$%k8KO zo6j5c{8Idy{9;RXLf!mp3bjkV&CqF2Uw@cUKH$^FPB#S~zsL`QbDk6!PHg_@&#ftE zvf$_en`CB2y^jm?8Lus2WV>+cL6H3Qhp!jRV0hePAawf1<HCz8j=im#QE0R5;-h!Q zr*h7VMZG`sVZt$qdp9&ozSvjD|DO9Mv{>K8zHWI}taxYXUDG;^n>!1P^8ZTmO>pdT zHi_vtxyVz%`4xX(m)f&({qsJBU9lRyol2e6O{#z9+3i}V%OxUJdE_TEYtJFsbEhAk zVp(vo(o$yT;|$lEHYSBHiq2gR_VHM&7P`Gjc_-JVX=gmvEpeN%do5pLm00Nl)w1F_ zPB(4UPQUt6QrGR7nd02~Yw7*4`AauhMsO5ntc-lh^J#*U0n@KOKlSY?IZkr^Y=0Ks zI2CxL$ZFyA&HV9=ZZDobIC^Z#-3v8*>XRADL$p&3s@Tj9yfQUEnYg5P+L5y*A8*|J zT>tau`dE#bhdDl5ez3I2a=PZHFIf9VC@y}p!z_K_>@dESVx`lVR-64=>K=T){^!Fh zpQ8Vnna%ho_{aUZnxxxi*`u`vf4>?Ynyn~hd7$->XM02+Pt4s}m!x#&NQT=#`LMu; z@ArdSftP2QR3$J=TrHTNbLDZrTJ4M;0mp@5DJM84_Hu5NbP9;rcJ|`ITg;`a?!J-D znIj$fr}$g_ve%)9x#R6VUo(F%aR2AmZ*TY4xqmgeeY&ot?37<jOoh>0zxc<_FXIg_ z*<F3(WEdm7x$))^n}aH^A5K}@*_C}EY0ugv4^n%&UVm+1n)|Bcnsd36dWrY9hhJMR zC^^kY^eVaaTzKx<4ORzqwnjcbdiH=p>$hbQ>($a%t>deGSESN=PwLX|IVB-U+awEp zZ4;B+|F01G7q~o`PgkP+&f4?yG_;zy)@r73W-;;DT2{PR`SEXf(#Lf989y$4Tai|{ zUu#!s{PzPP(c$kWTl2?c+J89rW2ZB-xKp$BZmah@O+|Knop<hBHJkIQ_p4{T{JUFD z`I%wuivt&BG+rpP-_uLbNo#0UGj4i3Bl_rU;o8R5im#tFxgU0JOGz@2Fxb5HkcQ+P zhU}#RXS&YWY+fkyDBek<Pf7pMAGVa8QI`z-Z(g~{Abn!O+>*^2yvg%#{Zwx^w=bP@ zw@UTzpY`=c-)3))|9x_Lf!?)(=PP5==kx2t1#Q*cx8&EoGZPo@zW+;d?s=Dui(jQ~ z>3?|cS(xk6IV^o?%tuv?B~pHfSa&LHEWKTL;|0TAsRbQJK5nZBo8b}Vqu^FDX^VDM z)t1Fa<K<Sp`{%Sp=6USOlY8H_m+qQ-x!btt+|h?~vSo@tR871)@5FR%uKu8>Dlb<E z25nuk(M|JpK;N3x2`kQazrV*Ud2;<Cop+kWmA<-XLOY|xS@*4AJk{y2Cq(thv-s98 zh52DZVGjE5|15FvGn(-(d~eUU^;17O^QAG%-i)l;sr73@U%`@?#w5Yj6OuXtOq{&D zjW=2;CRWFOS$x$hpybVVRh|oMhZQ3Wp44$aW42uJCG+v3`;F1}B?AvnICh##`cA=) ztc^*<VlU5J{=6Wm^|0lybKW~{oQ`~zzUkZK_LZ#bXD|I8b;JK&Pv757eS0_cIj%Oi zott_>Hg>9Qs@aXZGbY7&o4j5swN`gY;O-=~=|!BWt2ec&rTPocefC07J+<2|Ann^f zt@OP3wEEDLxB5H2g*iTZ>fr8tD9_#U)2H1&6FW6k|F_KP(mdjO*+A5|>)faN3Nzhj zntezRe7Wy5v(kDq0WKBxZ3-#21(w?D%7iy5=jiJESe;(ky?mGECNbuWb!8o*Qy++~ zsuVeHux9b1B2&Fm&+ADiO1a-i=`EY{@|uHu6mRs|i__E^PD|Xi{IECHU7j=NN5N^) z#NP!=s_#D*W{;Pf@#4=Z_wTj)7M5FldHch*`Qf~k`S;2{h0jR)^ytckBM0AJY|J>Z z`KqY=O>>Kql<1tK4~>2Ms@0WhFS_0KsQiAdwmI7G&8>p@RoW}vk6!$BdSaiFPtVTw z4O$(0`nJvbS+d0Q{J&ihuMbR#-|#O~<8^!4o~Yeh{>j<q>wLb-y*BX9%<ZQp>a36O z))1^%;F9oGwBo{|Gkum1M4K{nRM`7<*f>faMOXLt=kK?^Vl344_TH{_sX0}rpIpDS z-Q|1UoIT1nN~<llrI*y6KJsznUHuyFpI2)6k5#?Db3=mv_glV&`FnOhzPGSo{f6C! zMz`cT%&y#sJzIPGxAptq1*Z+_r?-gC*x1N-qm(r#!C6uI#S$}xO&MzySeXr*Z|wRi zdqiN8=+xYg-?O+by?yC*#xd!6%u3e>b$YG7M;6L2Z}8nBzNwQhOIYc))=B1Q*OIrp zcI1d{{C-mBgKpl-WgF++`?&6k&4<75Gpag%_g3-TJf8NfFiCzT-=wczYLjm0EV*_` zd3k)M&W6CM3z?TEZ=4-1vTrf(x4xry1R`(W+c@*f=jAq6m+{V35jf<*B-t+%*=>_h zoz9<E_0}Ph<*@SPr2Iq6iXx4|l491U8K$i{a^%wCpCVET`5yb8&bXZ_{8?k;_K-Oz z!i{zwQB%C?_4M{~6T1gOFP%QUJ$2(@T5EonqPC0M3FZ4+?DlcC+<Gc-+nOO!CMx2z zw!<1HZK2n{`t$@=>+@Mp-5$QdJbhN>B;C7i@~0<dznnH}pT7U9_xt^$@6Y>~`SJU^ z%Na8^D$RFu?w=|#N6qg*#J&3Y+wy9UE#JCV-p*HQeoUkP;zr+>(-zH}n67nk-s4=2 z;|ymG`Wt)lzOmH4S-ixSf9dfU?U?FUFSa=g&U#iFm^;gVmFa{Ft1W9SRt6rPE|rlT zd|ODbV{LDo!&8CSIH6;b4=>&Cs$QQX(GjxPdH30*@`*F7*k0B#eE40wjraTEFSX*^ zQgb=&3SV8>9sT2ob-rkUa)$53FB4wz)XT2bIAf!KHz>$v#}s?#peYHQ{vyqn>gVne z5oNiZs2J*aeRq^cg>m!VxSw{HyWbn{<&ix1TxWu(2lE5oxS+#N_sn3mTew|aJL}_; zPJV??LcHHBm#@@oI30D4OQrpm1M@OVuE`a#><5f~1YPl5)*^a0GdskvdR}>_&BI?x z*<SyvE@z~s@3b$OzTxS=eXF83EjiZfFCF1u_3y_ce)X~&JeS4%U%yz+9@_i<+jDQh zo2;iCb0oSiahac;<+ESSjN{JkZBry4JTo=D^mER^jEzE{1R_tCTo=Au*Z(fvbM>44 zC3~fI7W$UDJ$9;E)Arfn+T%;Rk^}YDT!=6<4c+iCMD$&{M@Cez-K9$bvoFq!Sg6jx zYR5Ar`sslHd$sgTu0yi?tWyttb9(M<n7YD4yyb{|jnG<KCeiOUY4=Q<UId?4Z(3Vi zy3drMrF-8>jRP08H>$f8C0b1J*?W-V(&XFAxdUxQ)n4n~P>XF?^?hg3oae4TtE7u7 z&#B(YJ7oFkYEs5^@8UiIMU}9F4$H2@>w4T#=9=?f>IZvEtxIDAZ^P#qwM%#s=01~& z<Gs0VO{L_I*GzY>@4Rq*zRsD-3H%KIX3I=sKB>oM_`EcqarX*=BVIcUs`IDZ$yh8F z@Fuiu;SRp`2cNtzMa#d--k~3!pZdVz&a0`7N1fBfcCNm1o3ZcC8;>a4dljAmPcme8 zZn8hSFP0(A#=)Rs>YlraY1NEB&A3)(6*YyJHzluJ=g@cbzSiBxnr3mT8&{m_`SH-j zAbio<WyRM`^>$v}q@T^T;!*m~@8L&xUfTSAjf(7CSF5Z9Ke5}<r4o9kk#X(r@9$(x zJ#hBcj9!iTTBq;&7TYmQWk1igKAiK)W~~yg>lZ^)9U>O2)b{PZdFe!O#y{84eRcIy zdoMfhJinFasonn+$9KhE88ZYfXk{2ocphiWCu+%avinNf?r@t2udlIk6sg>K*tu2o zQ_<(n=iL`_#FQ5Ezqw~s^#8B&jIhmya``;E2fP05o%r^)`?kE>+e~-W)rL4sI{$%d zk5eV9oaQ<039Hl(MW`;>6C!ceD{;rgPk&Q>YV>EExyA5PT6%-~pDFPRF3!7BvAR>! z<6LM=X#c)dCDV@>Ef5J>SGs4~dFxsEvb&2q-7H(>KN!|6)4y+5;AwgPDBFteTDF}x zUP(#3WP33C)}!jVORrC9-LiU;o?7>-EAD#AopSmY>o#dUTQ}7(He}ng39%0Q^G-dS zmZA4%(N?86siUm>`p<+Os-K)E|Ji@X{FB#vbte1pe-73V&up8lta9?UZtJ`antxwZ zTt4wauSC+|<wMt-ZRU&F9Lhgl6OK~eENgiu%RY1Er^%HMCfIgf+FtR{cZDuP+}^fe z4G#%hiyf&d%|}CSYFL!T+T5AHetGi!SvRAu@37ZeXx#eyQIqr4>OZ_MmfB2~dtP@Y z)-~?O_Y<`$VN*S|`Va5Z7I$ecjC)v~xHsV8_C;T#Qh9}zbJ;GRRpp`lC8GAJY0AaE zBB5hfZch#~m-)lV`(>(X#O{dK=Y!Ma<i1*Q_We5Z^P=p6Yn>PS94b2;{O|8yeBEtj z#HJ~$XLL&5t%|5%c_}sDR^#EdDZ)JAWwJ9x{VNuEei7c1u~=KG*DGVinrb<<MKKlM zIGGnS?LEwW_Wz%7hxZc_ayb8sa{m(N{5titeoTF~?VeSB71tt!riQy{fA6zObg^IY zqty6Uqu^ib89JqH&n^B;Z10~Q|3g0iFYmvV7tPX*qAtEp`*V>=e&XX<pTnvyY=8PA znYG4ek^Q8H{S0YVcJo~Juc|mJ;~(+J^NaNdUsst0m#TfVww`>o_DRL&rF)WkAJymd zhb}dn72pv3^8EjmE}jpQ7FzDrlbF6jDOHGzRo1m(@rhS44qBqzo%&Wze0!H4E&kbg z`l;ahdx9mkA6I_)bNYVyl^Z478vdT&|Nrh8m;8eF|2LPv=YJpmH^XqpZ{AN=zl!g; z@L}=c7yrfUG|vBA^m$U?e3goAZ!Y_664SZ<xZjPD!~04^bhP2Z<1*O>yI$E!*3L5e zwdM4$KkI(!2KU*8hU=Bz{psH?RGT%yZgtL!&Aw|w_cIG0X8USAegE!<^1DCeS6)-; z$xirkIqGX4E8A@C)%SMZ`FZ~T5AQW$y}5qeYvhZq{s<a3#Qe+qYhPEI>b3vQ(#mYv ze^aAw&so2XYj0ey{j~$fmxOt0GM!let3v26%f63CCvMg}Xtzdd@5$)M(8X69Ie)Aw z?rC_d8JzirElEApbn8E*|L^wR=n3)ekEuBFZ1anpy62DmZ69*nC^eh^_H?}e|7TBw z`=r#XZhpN`UpqtW;?C9G`aCkP-`n3?|4J=hRyv?m|3}EYMtvUMxiS$o!AfkZa~5Zo z1nhNsZ+hE9pYz_29|@n5dYFu5pBY6b^mr)u7aNLkNuSY_m(Sw7awT-S-ml%SzBHaS z6`%C-xBec5*`>dVo0qq>`SEU=A6Jq2F?VX8wRZBX^oo{O+@CpEQ{@)6)ho*>u9>t{ zGi6=MmW?X&1)fb@WHsYpF>mjg=9^IsB{~wUVir?^ll>GIP1<R+nRV%Pv-35F)EE?B z$B5P~Jm>tPRmaThL>F`Q#On*zzhY1g2ycFy&-qm}@$AXK=i5JL7JV{3z5Ap8t=osc z7{91sTKnB<lcjBP+O-RjLNhKNvN$1gXMQw`k<dcb$5)m3*KU&95!JV`&ZqKmn?$bD z*S$v%-?@?0{_1zPy;tncZIk6~wm!b=y}ZzQf7eU5_ri|brhK()*v{j2^rd%=yohz_ z>N79XuD*F>zq%&#esO2^W0~Tbnu(U{UK~}=w(7li`fQHI1~r>=rzfY0rtCK}&I^hB zHFxR+<F2Xy$}^9IMCGwLghYKl`Q~}RnxD3I?Lk6;ocrB`+IP7zEeL#dBhKYGA0t1L z?$2{uG*-s^&5D{eMZDhWSjqVpx8q#ytL|494_H(3k!S6*)7*PiuD{CFP-oQJkTqrH zTm_3yEWZSQ9S#@V)BcL7g8%G+`K->Crb73c*RyS^k{5BU)tL9?ocd~mm`qWJv)68L zJnx?E;BqZQ(BPNb?u=tLwW}FKZwET=VB<dEkYaI!=~lyC&5a!k-}rbND*o8FKL75w z6MQ}@*Z#k7Tl@4z&inVtdK;V7`R7e@PzsWb{>8ss&f?3Vi~r{Jz5VmDb>R+yyJe61 z)c5_ZT-2<o(l5XA_=Nv_PVbja?^4PP6lC`JX|evO&-zlS3E9=M2L5y2{Y<&g8P;9r zEw6S&VNU-x`9ra*4{G>s{w;0fquUi194ei8Vs_BV9o}v7HPy%E%X@hKeE4xjd-?X9 zzpqxeFHHQhXxZar_w6=cXL*+%3rPH{nl1h2hs%G7l4<j-r~5glXI5prKiYivy5f7z zdmW2qYIuGoKd5SL*LR++uF)XdxrWjC%M};b<}$hK2@|5t_UVOLPPo()k$Lr3!KH}S z+1jNUu8KurrN{q0{eRqWl2~iNEbXj~$J(8i+|uq@vC?(<r8#cV!Mok;rk~<jax1r0 zD%$(V<+fmkbcJhTxu==DHYx4?TKr=H*ENpZ+uLp_pPU>x`S}}p)A}V^FCuSid}-4* z6$_hMmpyl3Wkptq#Jss>wU2dvA6ouJzW(P{qt`tLZ`$n8wKAT(ZidZghv{=)6zN}j zI$Nr7W$Lv<GDV^<HaWf$&U1{nD9E&LbN1XX9Utbzk(noI+aP_F%W=U$rU(CK>|@tE z_-xB7E%7azD|sq*GzvybO_*oP<CZVJRnJv>qx;1xOD|5-y%@en{8xwkJgK`$#<izH ze?Hju_V>1Vj$ZX&Kd$Zkv6ugGThg6`KOgoM-U`@r@!H)!zW03hj~&}sefrqt>w4mE z^``w$s^G5YJ)N{(g?r`l9jrCp>m*$Ge_cxUzVYx;uh+r6nbTD#UI|<Im__Tzo2JOs zsz(^ZC*Qm@fnnOG+kS<QKc2H@&)Xi!zf;TJ&cq~e3-in^)7pG(3;l1fE}C)U*~{Or zg<Wq=__!wV(=pSpGtzo8nN)gz?fK=cvHf4r;{(m125iB3in+Z3U7lBtySnoxzSr5l z*ky)bq^utE6Se<0duxMQ)h7S=-kY~Qny+fl!E+PSR(edH{rUAR_7&?EHyiFxG<5Se zo$y|H@4JWMGZ?OzJFI5W(p_yAJU@E=!V0rcv7V>Fo(!#b#JrvyOFX4}G03$+_s)iD z&$()ymzpc`iso-V&@ku5<0{{Z1oj&xQ|)hwPv8s_joiDgcC&iVbhR(;f7@C)S3F4h zcr9{f(G2dh&(?1C+*2A<9?$nPVQEv%g`CZkqs64JO`p`!XQm>SwBWYe`IpVD70)kB z+*`1N;r<;}8Ak2{OLytqpL6Btev`imD(!V2Bp1jZIm~VJKVgxiZlAXLu@#$><t&eT zRXp)H5Wv+q$E0eTP3|4XOU#vz<0pLPOt6)j8OpL>d*$)TN7Z_6u{IZNINu|&+<WoU z6S8f0w7YoDY6L!>qt2rHSV-^O`itxbKA!k>J7?nlvzc48p5A}<;l9~L*2pwZpD*w7 zc)};y&R_DNLBIAC%ds`H^7Gzx7_sSECo7e%onn#Z^7zd6&inf+pI&wnYWu$F&$q}F zCvRSMTaDuzXWrU1|7ApBs_n~lD<VIAn)GUkgX7=*o?aSt;c8#yY7F*VELj%vtaqKp z%U|6ul={u1Ce<(=%gfw0W%>7*y+7t@A32iXwDy2+xRR9b&kD6O%w;BAQ-gcIbfw3h ztDPS4`e1Ef!M1G`1|G|o$lu|LX}osnLdQi}*X?|@d4(Mdmo440bkA|e$cbSeYZ-a> zNpZI>x)`95mMnhmaQcsZKfaz2cfPpQcVX%4e@_?7|JDAbI*Iez+BE5XpP8O@uh&1g zY_Hm^PeKPxwyOPcTGhv;w#j5`nM80lyRAhJe|li{_8_j6OAhmYpWnH_W&PbPYI5R- zdE|CzEIjYP$u?DaM@+Egtckb2MtWwkzB^c^@UulK+3?!t+}qJ#vTwGXJ7HFG|C8C4 zJx>)1#SG@TFwZzQC;Ix168)}CJ_p>k&J$Yu?4|egdNIwrIsZN_xBt5<#cb2v8rN;J zFRR`<`#Vv0(c%7F)s-s`bF8d#H@dJzZC{Ynx0poHtyA*P%&RWlz!LoPc6j{U$vUkk zH;E=F^)PoA&Rg5k>Jn`ts`9Aw#O4iG!VJ_EB|3Pg%U@fhe?5(dRm$+SMbN~IP3l^Y zJ5Br2?}YA)+Rtb6I?DRayO|HGvTrgwMKAfb<H*5}dsO7ges2m}veEv_gd97?n>|Hu zI3zCY-_|0#^;DV5%nQ>uDKp*<Y!i-6bbnp6$M3|vODwMpyTxt<6_jd!k>}#M*QC8! z({rBc&8aUx^yEGJ@KoP6uuJ-v{`|i=$9COQx1W-c5&KLaI<)(?=>~SMEew<MJ?l6+ z6$4huUy9jRlC-MC{z%-9{b%`~a;;vm*X7(<Ki_F7+Ftfw9E*;wiPGJi+;X44jAxeP zlmnuZeXVziNV2(X-2c?ZP<oe<jp5w?vuq55Z2sDPII=3VXM<p+Mgoup&PQeHn} z|1!B`sTpNE_OD^SyUxulZ)!u;(NeY*Qk{7jGhZHXyVudP=VF_+qwKw(Er;8LT|L^& z4|oTtt?pJ=`j&p>+NV`lUl%-jvF^|urB18rOKs0@9xYwXz3k-7Ym%woPe_Hv)oDII zo%`K>WAf_&b%U9Y!)CGPN1A^=rF^*Z<z}N?yMM>tJbd=x-wcHaogFKey$?RSs#<U3 znVWl(v>rNE&p!9JzAH@d`U_Rb#<z!$*q`9w**Cf8*Y1xi_B*)+&I&2_G+M>ZXRNc> z^!4VH5dG5`e`htl+_p{N{%@&u38|t+d5I-i8~$&r*dTNGd|O-jbXKXkkNxG|=m#aX ziqu@cZg2YR`}^}H4@|z5nneFts9bM0H9oy{=e9bl>)SkMWuKlU*tAgF=t`TCsny4} z<Lfsazb*1O+`wte&Jz{VbN6{wt@8a?(fDxNx2-SAcRhNayG~>Gg`J01npIX*yBg>I z{TZ;NV&Ag)=eFdg^oh?f_sW^Vc1!3rtJT|MYE{MVx6Kr8=AGzK&ebxzwM}rHwTN== z>*$O2w*=11dF`5Mxo!5$q{&ZrG)ZpT&3)#dvg9R6Repn0&(1AUvAI+bbV%vKL)AO} zo9@h*<ZQUC#mvg?=gS#F%26ddtWE1pG_wsdLpFL<>bw+Zy(ZxK{qoEu0><H=bhx`7 zzmy4D6t-Zo_m25lM}<AV#@#8JYCBQnl#j~Q+pfzwb=cA$e*HK}J+_Ev$%8Ye-Bej( zHySQk$Mn0M^-p?P%kEPVfily3|K&`+IR9-y>u#P0n}uFjN<Wx+CDJ-Dp;qMP40hKm zXAjJXY|A{nl_fej=i0gDHmi)z$@u+PEVL|VfvM=4*6T+WOmvyZ^7~Tvyp?7*Zq53V z^u;@$;e!6gS*IM#<1QV{EM64MrW4@*JJdPOq2jn#0Ap<9TCTZD2cu3Mos+Rm{fp3H zv(~JF%Ld2uzk68l7Vzdz-}lny^t@X?=kw?N`f=s3Kd;>GJ^Hpq|IT)Y@0(jOIoEst zmrJe3_ZNO+fAh||<c|8QcK+Tx`{2c&|6CL=xBIn`V|VqxAJhBfejSW`GnxI{+q-_2 zJ9bVtU`t~7mSDDdSL0N^%TgT6Ul;GVTHJA!H?XGMbrYv)p0dM6lcm2-EDSPF`FwBj zfwdYtza6xfxm&fQe|ybBg<30BzxOw`JvhDCxBV;c!mo23U$1t0{X6!ScR=^I<*Z># zuclUU_IzThz4mhnfAhItb2K~~On(}fu$l-Q**u$zA@eZPo!l)O8xlfIv~H_j^U#)h zRCzV>?#yK8b}O?l^Y5GfeA2jYA9MWv;!mrqANAXPImxWP_D%ecYZm8i)J^OZO1{eP zE_!j{dmrx?IX^#}zh7^zKNwZE$e4XY&>s!+KRk;soXg_75Li&&=r7Pb=ghO{c99VG zAo<$h?A1#Qnq}{+IKK;5UtBQd_VYEVS@LdcnBE#JTF>*HuVeMv4G*|#&d*tHwuk%a zHM3jp6PF&E%N(4(z3*Jf=V|)?{%q|$eK@wc|6b9b;yqgbrfxiWyli{C!>d0b`R~<t zIn331cHpx+o7FA#d$pfG@!v`cp7`Np^ZD((-_OU)oAr17>|ZytKTa#X-EX9`Ir?e% z+_3+)k6k1MOx9=ie)gO#wmJWBoXIw|t!6#v&b~S<<lA?-d*a!-B663!KWyFT%wkZy zmbbZdl8*W8A1>MVZP#+XeSi1=?#qYT+ujBJ+^PNY%f^ED)9vQXOY!IJ&-ZSZxZ3;P z_<CgTuh2Wq=4YN5I5SL3-l<^4%i_r$GpD?6om=+i1uWNG3d|T^$$h__dMB<jar^Q! zJCjA16>Wbo|KEvq4nGo9Bzg|iuX&gkcl+|fUk{T~-lv=Vndnel%<#AU{r!n=Zp44m zH!@Q@#-QHF#&-Hmgp1kx8ZXy0wTHXzx_$8GT#+Ai^wpBt>Ha0L(QLC)zuStP{V=a% z{T-1l?Z;nF$da=wn6lOGM0S<klzB(qzjQaMp6G9wS0>xcxheKyM%PnG-G0CPwJW!V zDxDRG)PJY$ro|NY#b0O^&mE<I+w*PRXPFcl8|oX~D!;<{ed_7hz5lQDSSKx5Ib*+) z)vAlH*J)4RUwvHvKYQKXuDI>-f?rKvl<NNazH9rgg4_D}vx7fNy^!Vm`&j-#_?B&! zbHm=Vw9U7ieV5Dj(7EmJj@uXAd^Sg~T{zb=Zt_bu-$mCS2>;SO+WjJYVeppY4AU1| z*&69A-}L%=Q{2^z(kksg2cGI(c$%G*na<69*hJ=~y6bP>UmcfX7P#>K=<hLqHEa9Z z`#asl<*Y5f|A?5u-*0<t`K9=Oo9&b3739UgZ-~~5_fzLsE|484>sIx_sFddi&-950 z1fA{Ih(G2xmRPHuc>ZPL(}ZmEN8c9aT{AOIUcL3Dj@|EfhxhZ<eTq|zc)7BJ*J{m+ zx%2bp^|-0Amemv{Tz`JXnzvb2@ykB{V)mQPuNL#1|1pC_x#3l*z~>bk&xJZnZ4}(A zop|V5=EKZ-`|^O)D$Bo2zwR>Mkt>U;owZSUKl}ML&!1~LRCsxR2-^B!ouux8a}V#? z>=k`4_h?EZhtB3`KAVF0l!}OCzT8(LR=<BdSQzsB?Zv;zt4c3M99MaGea6FYo7D~S zw5#kn=U)w!m_K#TeIbq2kqxVMGOT*?*XpO>we@wqhQ_uoW-2@v)6zcc9^i1WY@W0y z(9zVn+CS3Twk0VgL2Db|y*<SVhua$Wvh#gd+<bRq#(9PPulqj6KCyLvVe5OTTB>zQ z;~sVWB|FYkKjYZpp3Ndq_G{iAMdjpv=}+C8RzzPGu=;So;dop0w>qb{QoE<izloE6 z?e?Dg{YkbT>k9(!XbZHJGPP?NF>Cu<G+mfom}bD`Bis_$T9|F<y?g0RhTM)Yllj{J z(~Oygl<NgpFI>7GqWxd(N4OiSoln-q6y_}_l)oo$@-e=D+-Cj0o<+x_*jjICrfhMW z_hGeyaKOWdMPBQftT+CglIc}z`Iq(4^B?jnP8rGvb(|DX^o&1nUqJH7%?n;%XWBE( z<oInCp!jgVVQ1Kn=NY~~{z^KE2|X+KTzRI)^IzzUGqY;+3VX{0H*4Jb%e9;Pf1YsN zw?+HAIaxRSd*iXM^Lg5p=_l?QMg4zt`^;zaZ%K8Mzy7(|9oA2tdHnxL{s%c`zB9${ zr!Bv9{Nwx0ivM`7_w1ZxX5{)~qKxGq53V4Ug!}{Fa@u~?@SQf0J~f-`Y?AY#_y29? z2h0tepVIT-F^4+;!>5Ltm6Z?j816X~PTF+d`|XLDW+`q*-#v5>{roEY!u`(%&L6}x zjkuDZ$EfMLavPm=-uU8+Pv(gxg<nM{O6(U&FVf^)CoejiBlY_eU-MP5J2&^}{0^y# znVM$O!+fnXNrCxCk$UD)r+s%=qs(q>P>EK0wY6ejyd}eNJ5$NIulAbC<?xyPR+DZo z-@o^(M{-JhyF!RVDd*`+hvq+KGk7oAwYjTs?$oCRb2T~6*>E)(H_J-)HC^b@H3&K% z#dYpNdhtxfxjE1Mi#2neM}4?-V)lm{vm*+sw`}=on#N)9!Is0}U#Hfg&8&Za7@R+m zx171>&r2RFtt0McW_?NC+&@G_<X2AoyUOr+QxxmPB~#xpt0YNxMD&(;2U&ESGg4vS zz5K7#=7WhJ!+G)oY>&5!?UR41Zu+Zm&vB_xvryHpg9&Ov0iG3-$#F>%QOsKxg_!a+ zGQ`Sfx%kFS3JN=YA?N&uwD8neiACSk+BrUdK4IMM`6eQBe)8LUYPXiR-ITbs>9zA~ zt|{#WHurDVgh%gLZ6ouU)olIx-%sW>-d*@EVg7|{&v+M3&&%YOxoKVzvb8#Ufu`7} zD^sUS>i&Cn?!$$BY4<%+ORv0Nsarln$MoU6XB+>%_PEp7bm*<dyA8p)l8ZG(`~C@8 z-ISH+-1ecf>muV-iI9Dho-Q)Y*&@BuD%~N0IqcfE|8@V5T$78vePQGDx{9P6hwYi# zT^Yx3{@571yKm`#letz~^Y3f6?S1%o{~?*9W<l{+#I^n?7<C@F+M}G3FXOboUi5!m zXrMjM-kcMY`m|~ae&v3d$~WJ$*L!X;>$x3YZi9%>e=@HRSATFe-^w1o>Hnp0@0;~+ zc<23R+}v<}=YvnrWjHwJ7IM!t)|>n6{06NWw~~8DBm=+Hcr2f8FP}H(nedso8oLnv zLc0Ub+J8RZV{&I+?6v>o@`&lb4D6&2eYh_4PUFwUmaS9&_&WJ5`grE>3gstr`Oepz z+qgI<$YXzGg32nHxJE{eUy^Gd8tiYk>_4Z%T^X)fH+ix9o26&gckd~mCn(8$Hpg=1 zoa-D{_bT@#_p|JFpEY-4+}C?=|6F_cOm3mmcg54Ij_FpcTR&Ysb)WC~y^T}nSGS(G zS$AUQ_qRfQHeY;lPlU=ZudDxBR2Tp9v*oML@mdc)ZT^;%vC?8w0?*7kYxA~{rOSU@ zKI8qx@_N&E&x|L}pLE-&ACo?KL#?9q%az0N_sTz9)PL)o=XvaXTE5L0e}l=d<QK}= zF<1tA<tOY}z(48OY@5%EIE|w-PCoLKS~Asje|m+^4Z+~-9#ccb4c+tQXK?0z;pJF$ zY(hgei}}1K$7jaAl7I9|Cxw;m*LTlSvH!IR>?xs3_N6~i)w*ArJB#6Ly~5v{+rrlx zUOl4JI9Fck@%#?oMdcZJc9sUcMTeyKyI3Yp*x$9W-uT77AGSNLC*E;1DOh6GeA0jF z(~RRUR@^PQ5PEaZ(|vjGQk~QL)!%geHe<W(cI%JSp5vDvpSdT!arT|ZFQ+fbwAgd} zvUSAu-e>$J{mbK<!kwheT3)1YX`5JLU;OA;q{@7QV2Qsoytuwuw3?ioe8ttZcb~vo zxw`p^&se&Y-zIo}>yaxsr9CU)Od=BpQ$}4thSM>P-7{F-r`2s@sF1FHtZ?c0YKyS7 zdIGDp9);xA&8f=SX&`!T@)wKMy9|HMJ1_io)AN%%`*Lqv%~Ee;Nz7<E;Xl>xxXv97 z_v*b;WmYl`pA=6lG!OJ_Um*6hGV@ziRB<j>(xMZ+*){6rqLEkUK8a(JShZH@`*bd? z-Ex2ToUmSK(I&aWWqYw*<g;n(W$vVCxh2o?&yxAU)iXU~hfUQk<+&Tp_FF5&zJKtD z<=LXXIZu}Dm*S8(^(OVuvAxMJh5d_@joXB~-Ia2s>W&?)dpLPjE%)X-5<B0^IDLFo zCbE9o;+V(ZCC?n~(u{fO*w7<n5o<V8J1DcYTrOhS!)0@w{q=9{z0kyLQ>;+k-muVC zOX5_<^c5S`O%0kQ{4F@_w)4O9oa4|G!+o7~QQKj~Z8kGF?y~1xoY=K(Myu?vciF3M zION0!dw=PU=Cj>#c@h8HH}h^(?=aq$`sPh~$ohAc7w-PHe%KXQe|vi0lJ9)1*Y9t) z6_ecgLZa;-_m*p?HU72Rt*I_J%6Z|$D$j|L(Q`Gmg*)=h^|Y7A6un>#S7xx~lkLwF zXFR-eOLvs^KF)(jOWb9OzeyP6l>42Hl-o3=sZ_(^{k&@&^4;fU#J9ca;Vy44S+?rJ zwF3|ObQdcxULs|Cb;rAz$KCt?trOtOt+ENIeRAPl^WqHM+6-O($6J5Qe9O}zr@Z>% z61S`q?W_}yyB)N6Q(iK``K{=*=50X^yRHOUpUBaOSzN{FawTb!e#w=a;#R#IGw#jc zz7{cmLuz>Rn{yM&s+PM7?=r4?a#4A)@WO-3F1$V17<=c+g>*Y56Si-EPdlC0ZM?Bv zPsZw!Oj0}3)yq%L$*z4Wu*q=-_uk2l)=pa%Z;en9QBSE(3FUQK^y}-C#*lTZcqPtt z_qBAjWtC*jjLoaby192r`~9T$i?#7}(d}-p)!#M5b#ME5Qp4Y7Q)&G53+vu_&GXN{ z^k%+*8?)d;;o92yGO^VivRhfLXR&WD-o21@MQu&_k>JQ}#qm?qy?uB5Joi%g-`R}^ z_^Ql*N?+B9@}KfDwQc7087?j!TPH3p;Y<>~7QAZy9s`vnGEcPG4?bKneQM65vK<2c zGophX7j5)i+qpn@qu4)A=Qu~lhf$wGFR0z?k_lqfOFX+Z{7#op$JG--+ZiGhc&4vR zus<fe{nq@_s}@cZxA|q*c!UW2+PTi`i+-4K!=Jeso76+^xcykg=33_XW#|2QCNB#4 zR~<J@Uw5NK`{DoS+1F1z?bN$?d}=3W;rD6BR&oeh+ef|3|HhiMu(2~D=Eun`t2b@T zXF8e?H(PyE;jagEi8WQH7asqXBQJgb_Vt~|)hc%VJuI6Wy=_Y=&u0JrW2M_ldwb{l z#XhZYzkP#kfAQ|s`U28-1J)Wx{&{M;)p_xuYv&&PSeJ2og21ZKg=>DC-FJI?&a2&T z!>ZC3&2s&H;>Z+3qw8zJpUqO0w&)59F*}fXclYwIYhFG%A93~M`#0@xcUH`i_4%(= z+acO_*65Nf&wIyR>yy73TsYsU#PuXrXxX)ttzn1e3rk8@)IAD%{baV}j*HF5ei!Md zP2L`C7gn&cbV~lZIg0--`K>V9a#bLH)2F+<vOQ<h{!Q9{qqg5sd{_15LdP4IcbDHT zd98a;G11CMV8>cky)w1ddCn6L>en^J)R?+oR(xrEZ}HrW{y2x%MMkCpk#74gCm-29 zsUrQ_q)s*cc^Rt~<OyX&HL?e6NwTth^Sis(ShHtg>6e4^-qkLic;dyrye~UTpRK!i z@#M*i7kBTtt884(aY)u!S$TiIeSO9G^!|JMzn>7i6Mg(u$n=Y!8}sL%`S^B{bNln+ z?OvD4Qmsp-yKql>d+FeDZ$4SsUy+NZ#qK(u8@}sHzaoD{KKsX)XXUwHru3hCwS(Ka zvFy=#=f;=UZ!CFo@nr0*-rC5$(+iE~H&pnVEE09F6J%9Xk4W9lxsH2BocPzcOCgUY z&Gw4fvGR!PEUzG$qrZg<4)zs4OcQc5x%F``n@RkPjs4*d8y3y(-L+UCIAz0@H~;2- zySwsAU%-M(*W<UR_sHK{_Ve2IvSsJ}qt$q?&8)r=nDpIxV(pwK!6)pFeb}6RVdAQd zk1x2g_FvM9y_Uqq@8!&~*2c{8q{xS@Yx|TJZ&b71r+%5CWAnu|IYD9HG~Uk<YuoPQ z^L|5yGyk`D_m5fLD1KRcIC=6Le(~=<E!F!~uCGYDu=%Cp^NZYHs*Dz99$j+2K+@@w zsj}Yu<Yl3H>vqg~%(U(0O1aqYS02XOomzgWfA0^a-PwiwdmlT#mUAo%KY2v5>z}K4 zx6sB(SFQamCaXl~Pqsbz;^Bf*wlPba<}SLuq4@0$^(wZqD<xNt%y$3&R<`@=@1(}q z!^fYWNXuAvC+el`uJrF49d3rjKaq^7|FZdh@c!OCH(8j?9(8nSDPK6LayrCfPsz)T zD@;E$$UT`~z|QlACp-I6t8&0}=9v?vqo+vsh3nhw@pQH6Z!6<Ea;regWB$$KO*dKI z^a|g8|5{i}_u!{z&xF;N{nVX2>*Cz`-+i)5W}ErEi>Pr`Z8&qtL;h@p{Es*uYY)Em zZwmxs;x9d3Ba`}XMq~7OkMN&6Z^-yb&Q?Ctw=_PneuCZkyx^baoA=+S^xl;vK67QY zUTxp~zMTQ9Kd2nC>-zuj(&bZO0sZO*Qdd4}#*5CY`<D4!RYqqz=g*yCojg~V{!YHY zx}<axo38zt94TI235Ad~MH73UDsK?!T%g>()-{Wf%d0)n=h-7i&m+ZerkBlA|7*X! z?%&VamtX8-_I#@OB>(TxqwsU{{x-51@syVT{qS(3?DMRWdFuW-^(oa)Zk+jen0?uD zxjVbx{)!D=VxA?oR=mLd)C{gP(arOXb|h$h%9_%UAU0hsPi{lHZI+X)uRw)1=gF#> z;{6+(Ych(?C#S@|nCZXEMl@k7<L^1w-sv8Hy;kjmN0P8JN5a-JnXhh3SA=)!K62!q za?!OQu&B(8Kk^83w@E<B#8vZT|FZk9p8WFf%069Ycm4PC>s}sl@IU@7J9t&!jtko! zPwbqSeEVAMyaN5+&+ZfYcz?7=Es-));$7`<*zc0l<A+ZVb9tQWVY#>FP|s#5ZH0v0 zA9o(@@Ke@(sC4zJQAOPn!&|R5+z#;w_KM3Y<Gy|DTd$4f{~Je*^Z%_k|9^ev<|4<9 z*0!_%otw-puI{&Cs?MhBYejeGuCy;Wv+aw;ccDwdUotq)l;lmHc4fiT46!3_a#qz# zE+*bu#X9kz)|WS{jSTCqS!kDZg&VOl)ub#;;w{ND4C_&yDEsJk_tzZF>w9w(Uh%uT zFRw0r&b=-FZ@wqTmVWKBd2{#K&AEPZtHI(a>~DfS+vPfMYDc$g*q5$+dWz@j!X*|v zCTv#P+c|+vXR*_sn?<4Ns@6L3x$?7>ep#u%UR}spYr4oL!uQM7DVL+BuU{f?_RzB{ zeZSnA?sc~J$|h}4{3rLdRcvR^Jhg<Qr(e97s(GmJ=-ySfhb1JnFY%=wIQEt2jbmk= z-O_7`*H=FKz?s2jI#D_PRZXf&Rq>aJmoGQ4%Kv)spzylNv%2r6bDDHMy>)!>`k6_$ z|HhYFytd{S%I}_FSN!tR`73v)*aZB&)yQ1`|MGkzqvMY&&xT*9j5%*&xccDl#1pF0 zn-;OXd97-8J?d`Fs#9+o7cSDWsN}F(Cn=yDC7gDtHG6}QkE*=TKh>>gg>yJsIlm^K zdQ$Q*)5gu@HiwA+R9pQ$XZ?+(RgQ&6Tzhiip}M=e{ND(l%{$H-lxIB%er;W~zwUfr zw{f%o$~(sFN#(rmr*Ce*96#6gyVmb(3*XC0zpyPyERX(h=kvo|>`t-F?(si98$Ul3 z&9{P$Pv*zh)$6sMtzi3T`MuiveBi>GsGN|~&tpCot}>8a?sd>2RC(sIS(jhWa$;HZ z)wVa7aq;_4i$lI|<UZ{eSeP&1Q;^xWsy{Q?Y6idI{?mVSC(BHDw&IaO``0Y1fYS7H z4x#2eA%B-MRxZdA;t%1~W?N+z@m%=uCkN4ASw2!Lq$abk`nBrV3x})j7x~+D8zv+k z*rWVt#<h19(|AHk?>ik^IqB(v>}D3r3%tys(nido+cnu&{R{r)aP`BDv-}~B2fpm% z4W8@9mQ}N#ZRHhvi-HHgK0Zng(W*J;zu1^5>zn+t6Q)t8O4s#0;&Z99J1V(B`w>s1 zd+RDuKkk_0=8p{(r?fB}nlY^*!bm0WW3#=h{ARzOpI6n2>*>t<Rrf3>z9v$1@4u#3 z4;~pFUCLB&zQ0)ik@2EwJCzT!Xk0$GxaZ30$umytw@=rSiEC0`WAgZd_ae*nlf6o! zqUTJSm3}-ta?7VK_IY!!^88tN=6$VGU5<#?-aFIJYOLQObaK*q{^XozC&W`N%wC+( zJubUbZHl)=^yVe8bM<p~KFMenV^}%w)hQwSkSTN1Y$i=z%;sPAFz(WkUw?ilw0ad~ z|Mc2xVo)F8px^r7^TugXqEWMocZ(?elC=6|Isak^gNr@$-1S=pU;J4ry5ekH);2!g zpWNrd)Bf#JTxQk$B{M0f;bGVHwWnWPcH_^g+UxPCzWvJb_7E>i>4hxI(wTMA+co~} z{45oEdg>RJ-=E(v`TlRwTo>PN`OsSBvpRbg?3z=jZCjP=HR-qIJFQ99d;T9g^ZT)( z)Td_=r@s81d+GP&Xg}j^Riy{j9UnRQ8~xtWHh1qFzfJA)y#N2$ByaCoq`1Op>37|@ zg#Yh)zm)z_xUp_$w+G*ge#2Oks)re0Cf%*(dVI~3@3_{SsQ#ToCLbK0Ro*%1wAPsW zr;y~+0INwKdEfWVIhUiIQ~l=qM4kopHO!q-iEpI0_XfuYsQT}{{a}iw@#JG4jrce! z&zvh_T6fV+OQA?T=v&`+`1ZY&&0lo%KYo5M<+SzB7Qg-Wd&BR&lzGflxxk|FaK?h| z#-4Fb4_iDMl^UIj&aL89(D-kab7jf2<JVQHc2plet0CmGB7@m0!%uYjjOH6QhC2hE zn9bJJ64@2Y|D2=e;EwGcY5Om}y7<}AZhNQV%hipOFIn74@R`3ZtjfwMrS+0!P_;|? z+c`(yeGJUd`sH(!WrY)a<fa7zru_?+_lQnYxtn}t+ZUhob-6Dy<@YUY$bI;T?V0z* z7mqhRE?)gnESOh!p0YK!CwrvfnPc;UdljvjW}0ZIIIUBg=u&XN*M)I8=dWgq=jS57 zsQkI=_|z-V?(T{Rxx4zWingd7$Xg)V(lYNCukHb}4!e0VCl`cHy<K=zYVoldA9++H z*v@z!yvif8w$N+ZiVcS~qIFM|zTuk}v?AMZS|6);%*OK%bxW2ze-`0xXW+_XlChBQ z$a)hg{a$t2{dMzGLiOiveo^v$`Q`GZ;$^Q*%eKW825evQ-~4sRUsEf|b$$QeR{Yv} zw0G6}4T)c#F4A8u&+u)fTl4dRSu>SG`oDe3FmbM%ZQ#DJWs*j=Zwss8iPI4*bxsZ3 zi?=pJ242^i#(ZkO<Z0GFk_Jzl+UL&?`7}|(CD-)M_Jn;&F;XVZwygzEr8ey>I&EVa ztbHkcsZN9a_U|7*{x!aOI9>gmjg__C&i6mw{Mc4|{HFc1mV>djrW<mP&t3f8EB)Bx zZl=FWzJwo0uW=}rdcWuH&75N=*ot0h_^~%$IejItAoIH8w*`|YK06$<pgJ(z@s*3) z?h~uISIM|;Ecg_hn$DWY`R)1gQmNBBS-gIgSe-sCbZz6V>W4GG{5ki3XLRYyU)*;L zUf=rps<wNt<dfu6nLX$JPqxszy)t65Pxc(nb0QNZuVsF`aK?3gYQaQR;YFP?^VjZ6 za+JDs<G}SN!v9uBW(CQ;K6TARYO(BruV?OO{rzLGnVtKkdj9)D{YRBY???TuS+=6? zQ__p#5PP{arFi?BraG(SJvE<3dR@HvJVb4}bj;F=fwSBSYNjpjWGw0vxzuFjr~K)= zQMvf!{oxE|2A!-viuIl^L_=P9-sA0wFX&u+v_I~drt1%jMW@Af3Cr2~KlpIP=HSFD z^A1LIC%Q5CytGmAd@zT5<#gsLHOE%vMYT?}59ibL%(gu3>?OCnb@e0#)lkosD_pap z^0W6TtuJ<I)RJr}HCyT3HeF}erBnvBr(IWz7$!6BOxVhEV96_sl~EIK{k6EIAC^-6 z_0rp(Ey)cx88>a#nsP0g!(?r%atwdLPBy_}ZG+bbj;%CIc1ZkCD!^oV!23xG>vy+V zMGx-X32U!@B@|bE?kx|O5!2H(HOiAipVwzSpD%Oo&y~Wm*HgcI-v969&HQt9Z`C(T z@?Xccy=lF*Xldi)mxZEdemKR|$~${BpV_dpK$c7A+Sy4#vTw7FtlaXl^dkFp|7|<H z<{uLhlQix-X_^+}xGlotQO-oEqQ>8s+OCE3mCp#1ZgoB1U~$rx=~Bb<!c0cfjO(uc z{bgHzoOZr?H@@SPT<_hZvA(|VO6}KNemf^_&cg4R9`PFG8y-n-RdaZ9_EN-Dx$9!t zj>&qS$rIk*OjK@5Il6PhBZc#v3s_lCuu5z2HSAmSK)azbjORxO*WPbS4tL&;SRoZF zw&>U@r>rfHEB3R5W?k53qO;cDBUr3%=HlSK7a@1sOJA`s@mq6Ms^?Hs*%PBzYqeeX zGOoI3X&WBPe4OEGf#jLDQH+HNk+RJ)U9Wz6XKWV>G|hdv{JYVme`}b+UhVlCsoL@M z)tkRBPv4w>X&Fm9OY@52H0MgzL~r%#O{=!pcIxMGy*XM`bWHSCd--JJcgISn*dLU8 z5^&7g#VGEL*<`m1y>}f#)S`HTyi`^9<$bv$#qC*qm%)N5_)FP~xmRB~Fh)&Eeaazs z|9adR!5>>S%Z#esJ?GqCK2zf|uj%g^oB4i@In0w^20Hy%<H~=zPiLtu^TW-7j1M<o z(~DwgTXgqhPv`o)jtVZL%lpMI$fbVTD0D>bnl|e@?Sroa_s<ed7L5Ba*@q?dPH<~M zl@*I2o6+kar_T&VhpJRIf0fLb_m0Pe-|c?ou@k>vwQiD$nfKjGXq`al%Lz8?J$7#^ zv61^HZ}hqMj7HZ=PQNScDdBP{;eYb`V=YxG*K)9DY298o;S9&W%fIu(Q@=L7-+pl2 zy@;K$OXUNP7<ssf+~?f2_tVF@Z%Ve@+sd<KGTYp0DOs!UI%!Nd8UH+9bW!fSl6<(H zV6sK!lH=1E=B%5Zo+U0=q9%N2nZoC%mkMW#d|fkX;jCv`U*crfRXjABe#AMhyJ@}U z<jd|amV39Q2I*{8P`fOD;%2&`!?L}nYOMOs<t$QGzH;|-Ns5Te+*v(mbv(KA&-rX> zHoBm`sAc)Xg2|!<??n!tv0CnxaP#*J=cT9bsdtD@VcMN?bFv_der~!>=!p+MSX;ZL z?Yp?XS(~_@D@bJPE=n{Ld2}e}55L}-Uz2tkES~4UX){AV-g9ouJm%oyN9mD&rXQU2 zLtmQfW4zfv_Ww`!v;BX{_2!7AM&s{KJC76_pZ*-@B_a8L<MIEY-z+{DPup<(X6;Jt z>t4#cQfK_X@%(@JyW#_1G!o};PCc)>ZmL(o>4K8^=LN1Yn@!q%nRmlw&X0^SpEV=+ zUu-*{X6sQAZTPWqrRWZRmFX8YF7dYbvAXc2>IcsEqTLy5Yuo*2O#8^mIXU-S&Y?0! zdG2@RUy6SmYZ6&;Tw1zpom1uu*VV`8e^m<emF@PHK5#jJ+lF@$W1hzKq-)wf9Y;HO zK5Ps>=3R8bb=eZ{8$a~L7WKz|Tl4+t#gj_5!t)Dey!v@Gb+1$6+}T_&Vv=@Eka0g= zZ_&qpt#HlJ$Hr%>H|`aZIk~aswzgv33Fl8IKBUh-R%`EEdFJee-_6qX8tKJLS)JW3 zos(C%GVihJj?e6`n05t4&MclWBim^DlgdA*?Ogr*cWm{4RP|5!=bc+y=Jl`szVG_d zs=bYIQR}MeZ)_`E8vkT<!R_B(728Em$Iq(XZCKnI-BT0&_WZ8w`5yhn*8}DLu0L@1 z&#o^8LbV$=sV|ncb#K}IEC0~lIhA~Uh4*$Wvszr)Vrb;}B>I1g=QV>Td<vP%{~GGq z%9U?@%xJV*RP}?{9UB!DmZo)rPIX&DJ+3_7W#zMM=j)GaW(xnkTxHW3mVc@Jxyie# z*oYLHCtgRI)iu_LF&t@KFV&M+xHVl)`S10|*{QWM{>vjDJ<579gEgQ&#f{-#eCzuE zTE+QZUYbWORPzI3SL74~eiE1^w(Grk{qh1{$FIBINJKpQ)SF!s#cQ*2zjONLoF4&` z&a9d@dHu;*K0kIeR+lcG9n%wP(wM%%(y)Hg#lGi{UfCX)mtC@}V54bP{Aq`y6V946 zZr41uUPn{qmj32*uf^|Wc>jOXem`^f^D8&5e73!9ZC8AI-pT_%X8KFq{B+=AtiSE) z-hW+NV=bosJN+TvZqw5recvwr+q?JU%(;hNB;5JSaQoi=zt!t?_OLu(qh@<9|L9jW z>&MC8Qi{9Ov{)~mJ-^&!7thv=t&^fetd{IKvAn`qXYq`)j9g2l7A*aID^MfF@bIL{ z_7&HTs|H1Eo>Uz2Oe%C$z(MOO#lz-NQ+K{nKC*Zf!&8~s@4QcaE{WVKci+K!##Sn| zPxP^zuM3Oene^ZZ>q3JjIB9>7+H%O$^`=L%$X3hDP1BBhI`g^2Fp5`o7EWh$Wu4b+ zI?cy!m4K5b%aZxi(zi`ZR*0?fxVhT%XUh8IyVs58pM5%c>Qp|Bicpa^4jz`8=NjWP zITn;k*z25@VCq=Sc1+D=&AB%PLT<;5?s(3~=32Cv>o^CiuM)S?>J5P}L=HsmOgnh? znL?)Lo-OMWZbz{1D~ODXa%fucM$p$u%SH9VG7}Ml=Bpk|tGlI6RedSq(fty+dflF7 znj)F4)~!}n4Uu=U8no_+h|g|FOe#HTHbr%7(3%$!Zf&QHZ*F^bVv72<C8mLSN%Eg3 zs@~{a&An0hdO%syl&2f47N3m^>|A)>(%OoR>!ZkaSKEdQ(;sTKJ!&~*^Ue1EiO<Hy zyJr6DnYm&1{y!g5PdZ%j-~aL0mn~-^&KzAI*DA;PU{|=}W%W5n1D`FN6w!Ts+JPt; z?ITe>9_wQGHm*_S+jI0}fr^*I+x&UEXLzyQs`Co0x%$R=^Y7&)!8uQ~m(Pn2`+7(A z|DW^yc2zZX|F%0l4=9O?dS3ti!}Rysi;DKW(wb?_T>rtg^_+iAg4KSPl6#Amtg4d_ z<$Dy-d8)qj)5dD=D;B>$R_bUk`kc4wv)h9s+KWE(bZ0Me@(2x@e{;!}W(8?BhtLE2 z9<FY-N)j=MkY-tIu<FVctv{t+n?AMNw_EP4sll=FoMYZrZH6~(A2#SeRXm`X)#0BL zaV)$=mYx6o{;QWIZik#n-eY{~zLkMZf|S9PAI_y$`r@vB3ATQf7I$jv;<5<>59PEf zPHo{>$uTwf{HJTC*I%x2Hi~|&D*m^$U`xR7t^*ezEpqo(H`-WXZMJdIac`w}GqSnX zi#aTNTUO|6yiCMz9oO2WbG@`TIGMeElNm9Qf7M2rIUkSzdNsHA(6J!h;v{W*3xO{4 zX|LIM9P3vECN6iMFgMJY*N6M_*%<5GDQ~xUc}RB7wTgb8b4)8XLTTQ`lOcUq5=xIG z$g(h6RBQPaWnBmk=zTP6$+BgJeRHe&9aB?mxBhcD{3>nJ=gF^jsU3QHqr?Ae%W=JH zSJEQax3KQ^V`Mx1bmo>r9q+I9-Vw?XpS9OC@$QN*rR#Go?r&3VzP87rX#e_i;+*-F z3$z~0_V`~rtv0>pvEbRfl*<<)H_rSSywvyjrkdoKZOM)vR|PoDww$|qox@|%>J#5X zJr@0qShV)s&z-BnBu;k=2yUA+X^!yCGUguU!q<y0hA2y(*v<M^;gZ*nQwP=rtG!+| zFK$BWV%v>^Ck^ASYzVhJvhH1K&W%Whis`2}zkbyAXG&hmf{nf$)z!L-XX<Z1^(@!R zX5tL1Mb<$#7G2#qF;=wk)W(UiQyaTBmaB`h?fbg*y4`onr1KM&XZi)~mu``pzQ(85 z#3@B~C$HD(&@(?g+HPr_jmj(ulRmNO+P^hjrZ04#8JT<Dcy`5Ya_q~h={DWm&+~4_ z)x2_5xbh}Ssl9pj0%7%()2CC4Y)(GDGJS>r+k|~lCX>6llT6en-(FC%NH=5W>j^B^ zL~YkvH!c@5ny4l;U0GXuIpZwZ`B(c~e%Pj#F`Vmf-FAq_-!*W>&Pm3$@A#U+Yi+gC zYbN=>aWxC+n`rRv<kwEoP5wH<L1{&PGYz*-lVoGhU2FM#dy1!`)N#en7Z*R?wXg98 z&zU7xG;)qzoMEbQT5Iy2H8=itq#ZIbu&C&+bP|3c_4<Xx>q{wXmOtLu{@>|a!sCZG zJ{0KK+>zud)2moA`RC>O&*qZ%x3b>$lc`+qy)>oDP;u+5H8rI?Vf%J*u8qk!+M67i z+8EODV{Jg6EoZ}*>rQpkHtJ?*3p*7!O}`$I{8n~ufz$ScA3eO@^Uf@l+jrCW#5|$q z`nxj{Qz|Ns7^wNHFZZ*V5@pA@XZ7!7>ne@5?cbi;r_YG_{YiAw`d8nN?psyhZn|lG zmddgNLf?)miidt!ab~;z;lurJE4CfrT)9QR?C$+Nzn9NEY<Pd4-hb)a;VU>fm)On| zcyr{GmD!1~w&<<*)1|Yu4R4>=zVU{$`n$N9y?^hXPyKD>{Wp9{<*pt7i?}s~CvM^l zU*_xZJvG<YgnOl_iqJ~&AV;a}^`W<7SUmS}K354iFjYrDXeWoCS48i*C+k+M<TqP? zP=$ZX0@LN&ZfQ-;^IsF+>@Re5;!NFrNve8JA68mi_hVkzGtue|d;R*dx6c+>?^x$= zc4M(*wQSvYRn5z?(yod{$<fI(#niPKQ*+8YZ@pi8=Jor7byIt`HXqgfIgO`2m(#6Q z`j`6lmWI=}qSmdB?7j1B*}h9UQ910-o~-lzID5<6yt1Q~KKo{#e~^+^d_k@!CuZi( z|Cht+9$X8kcHa3;%-LDjFSDp<me?}cbDML1_n-K-Kgxr(V;a+HNAE@{Tb9SCpIFIi zpDi^@DVoc1w)Bg|^~{L9>wLXRrJ_Ao2|NCZ-0stroZ6i`>8bJDdrQr{C(c>E{6g8u z^VNCjak{GSclvsK6<YcI9$V1+w@yL#@9gri+v0kvU4ivg(!--6=3-l?NR{eOl&Y2Z zyI`SoR))s+^^vMa%<j8=Qrfu2eqTu1mpG$EIjVPSl2T?E@bL2UOR8O%H}lQgxo^I# zH*tM*-My_{dEvuz$BvzQxW;Cs%;L{;PoA92p%%~S-fGgn@&<3!BHmiDrukb$69R(Q zH&?IcQh6Erwd}aD*0tE+>_aQ3*uJmPcp9TICs6iQ=8O05@8{fE`LX=o&CY-K<>QpL zUz*dAb5n@3zoEhH-ru-?sWYb}&t3ZbK-#m`MV8mprl@?hJl?qDmc@MO(_h5x8E;LT zQ#Ij5m6sLcgFP=Y+dp0}dh)+iKE-15rEK$9xee!=RhOs#iRI#(Q+`b3uS`SvXRV_r zXK6HCQ&&t)b@;uc@r&xkUk5TY8>aEhT-xwD*e^0o;rAs`$>c>dYP&is`)0bFuadjJ z@!I0gFIF&Z^k;hIy+-henw|7|{YlN&*=zPCrU*RbDUqLYp((BDgw(e4H*L0NUD$Jw zeft_e@y3)-6WoM1%O?M@^g8w-c+FN8nf=9*4rd-Y)N${<X~ER6bH&cSk_g7n(cVgW zO7DZ+`j{q95!%>!>XJy5-^62$Pj|`qub*)@HKl4P4}aK`3`^}ZAx_5omhQ1%I_sLv zwDSBeL#dB@Gi|%}$!jmjZ(TI;RWMUzWPpchO6x7jr`wb4-c=UxO!}mFCC~L#eOT_t zD{Ru&9?UA?IF`PdSAl(BAP?7z-vOR#6I45ddLEqa+I?~92bubb-nUe4G8II#CalZ! zj9%dy9c?@R!<KV9*KFOjA!21)pG+rPwPmpf%Yo)o3+}9JsEMka!2E4e2BX<*b%x+) zQ-3a)%lgRBSFGjvg2WnwE4Rfy|D07ixof@ggn6C0?b*)%w!L_=#r{dWxN<GqkvzV{ z-I?h^r*E9Ca@wk}<(#ScTKAxiMfpud1ztYsdKqn}3U~7axc8>7JNm$RJ@=DRk+O-* ztjAZro$+Z8V<gvx_VX)q=V?TQb=wLuw!KX%3vIG3WNlh1w8krZ!p&Sy=GAACYLhwk zY0F=k)u6;NS3=o4I>OVPHBo(ed(JxclQFv5Z<F}<CMWFv$htd)=f}P`96Q6=rFZnb zk9a-v>WeKmc5e}VA}@SuGh;&Re8!0D%bxM9dOb_*&9A&)F#&7VvOG0SyE{vNsqyNP zM7@{Y)nDVI;|ug-JmT{ooc^d&y3u<5sT->Ie|=w|A90)OOY8bQ(?iAYlnKZF4Z7W1 z`ZRst#-8uzOgwkCOqo5eymaZ@C#FZ7nfnVB7N2$L{X6OAtCF3C??sfuHWeI;&h=w* z(6(xrz?phOZ1eO-eNR{0{XVz*!7^U0yj`1f6NA6;Zch=vf4uxog1GdIbkVYlY_1)p zD$})|+<f{-diD#Q9Nh~IGL1ajWskDFZIW=j=qqlzK+bmK0@Ed%F7&-U`ar;Uozukw zR;H6eH)yu3&%gC1sX}y8=w{`cHv~G@pV(KFw>kWg)F!>n)3@(r`hH{5ev77^lfw<` z_vElB20D2;vgGbLQ0P)onLNk%<->%v+9K8r^BeB9WWQUqoUdrpsb2}oat+^a3G-fY zIO<S4Pgk#W`dX8d{kpZSb31*xV`H=nkCb1ISUi2_rkpJkvy_A;G4+K^aa-$=H2YJr zsOF1|c(WHTf>R7nL|H%LJa{qL;iS)Gt6d8>@1E`^AIrMNylYMPn;QYM7K&+I4R|;$ zVePLb)me-$k5zGQe(H2;k<YL9FJn#Jiz3c)zA?|9!Q8qjqN#Lx>6NR~o@r?+$hjT7 zoIXo^?tw1T^lcVzSWLG(FpRJ`8#`w~_?7I>mtu<y|N1Eu%l8(?)yVVy%eOu9<!9u3 zE61FZC#xP?PP@`0XWzByUdFQ}EvGz;H%(unx<jgKW#I44CnBVz!dDuW?d9JjT~c;# z;pWXRZDr?PGX268oM^na_1m;bLaW#86u+SL%;NBd=>c&$i85!}ImDtaxorsJ{_xbQ zwdHH+#l%_jjjh*c@IT;e-IcK|XqFRee_ol}@tcdkJ)Sw`?S-FrV!q8~UtrZ%{I&VT z%z4N5?CnZVvY(M|wW4C#&6u|Puj8Mt)BEwkxYpM8oZK-}1?@9E0%r`nJi8TF<anLC zVmX;@XO2V8p)1K@GoPCCC!G3M>RJ5sx#)|)5HShy?z`*l`m+5iKAr4d-Jrl5R60q1 z0hhrBAs=nFl<N=ti{siki^7CwHm~}^^keGPvlHLW_^M**Um7D-dg(;J`RZ@3R#r+* z;n%J0gBHXj{wz52?u$jeuWei5*F_E2=Jm^Y-1@b&irJMv<jW^-ho*p>2<B$VYo8i^ zr6sUTUAp<{LYA9ZnVqVQocn&4gzdNcF>m|M);p!ek^%?sl<wwUcYE)fUDFvw&wP?T z&B(20{4Pl{<zTDw%u3ZB!Oogi;qNc%_iX6v{`MreRlDkwYU^XQ8gY|{t4}j;;f&u{ zkvhAU^VIoUk5pIOpYV}ERg$4xp`UHewcvYhcG~V{H_HNI%-%I^DqQbjc3Q&2uQAtB zxY8*yKKhu)j(~e_7!L}YCRRH9FH^L+C=<Tm&VPpWl_yu_aV=ia*c83}9?QHHi|RJ) zQI!b}^YLO9vsDTY&X{vLJD^T)?ayyaVG|y+O{tD=65-wM;oZ090(;6-?`gpWD!ZdL z$sBqy?M#p3y1e|@op~p%qVu^_!U9t?Vpj%)MK=0*o^(CdefGtd!{)0mb6i|`L#p@w zoG{P8r6Fr4&GPc}QcY&r6u0|jl=VY1#ruc1bFTb)q+8SK@ougcRe5U{N-a&0U6Q|? z`SWWhL)Kl3tYUUFvcyPD^11y>X8AR?R;HC-Yik!?`+n)H%I+JRnDi%T9$a%I@6##c zO}t-&ca|B)2i%xY^vA(Y^HUn%Cf)3H!YbPQk|C2HGpb1DpP!f#qj|E)nPsVDeB9Bc zDeou67HFPT_`FJQQm))Vqc=&vX08|Abe7ji%O}V9meqBkdkts$i(JjOZt9FKdUP&C zd?jDW&4f>pi|XTM7ltukkYN2=eRskS$HT!2Yw}*-+_6%A$<AvNU!2_>wQ=|I6z14f zOq=)2_0x}?uBki4a(l|zXSrwdbn<5y{)k%GvCMf|x%P?O&gxU8HtzXd{OE3o`oseD zeMvs9C(AGP9Bw(*bWY7Ca6-n^CwtfJUS4i|!ur*LU{=XWXUo8O$`QwUrms1!lYaVK z>M6t1uI{_JuccH>G6r=vE-+5M_tVTb>c!H1m05ec_EnyYC|qn~;9}01(Y=1NefJXa zsH=P2dM%&HBvq9Dv7NJ3`_u|M&unvT?=>OrTvto)g~gwm-hYX$_{n2E4f*fBC(|=$ zYsGAgJU7i|OG0pT5!<p`lg!N;KK1TBA-}IPXZf_q(`(Y@5+;Qz%w#)R6m>z|VVS1r z&OdoQ?$T+8Ig3}nV5~Y6=5Wj~q9Iy%`c8%&UnJM=Iwjg1weN-D11(MEZ6*p6D<piT zX=cT8UH<rB^MZ+T8&bX1QUl+{ZJ6G^+->^}pZP_hb~|!^?^~N5XUo$zrQ`l@12dT% z5B~eo>3>&hUte)CXG`h!>RESW_x1KBf1lR7e0^-(rKSwMW6=}t3fz1%IYl|rx4X_R zUS|<|?aPg-Zwf9uE=}5g=JX`b%+*&S3<M6(oG2nRPxT1%w8^@%oOX*A$QItnE4yb| zu={M)iO`=P7cT5v#8&cb=MmE+<HTV9JHlm+DQep)fBpM)WD?t#_vg|S?!`8qmDxAR zYG={phh=|#&fWhndy|L3Y~6u0GnIL>BWIp1;7<~8Kbf{Jd1p@2KX1d?j*<?mX3P9F zY-D51S>&&|Ax>rL4spvjkJPqG{+%4BvLk)<6<*zqrLlJtLK1x}np?KCRCeBteX#xE zJJU4(S-Ky8`0mn7ow8e~ed$SUrL{*mK5KbRvfVdHyS&wQUBr{4XSQy*@_2@t-9yI0 zNosR!R;uq>ac1{hh8VHpj%h!9Zxq!ft}<DDZgs%aoI49^Duu1>JD=JfIU~CDb2Mwh z9^Wrp&Xum)FRGeY`(m~PSDF2iDb}a{1Uswjk=@j3`(k(Rlij^XbL%B`WwlSRUYnH> zxxQ^;*AcffKZM(UFLAo`e(|OETaus5n`(WdX>Y3bhF`g^QRnj>J+X^i;?DcF(K$lB z`Aj+2+eXGEe2;4uNnbH+xU%u2$Cbk9X;wWCuP6i_Sit*=f2G`~SpJ~)jW6~|I7vx< zdCbU}^3X+pwu8Ry3HjU}{mtfPCvOR!oi_W1DC_U*UiYL|Db?m^cS);lvbudi&hh7| z*;0(J7q?sPITER`u6;sH^0|2e)&U;(0&BP%b~EMAzp|^L=V>jUqiEtUFPmytKcUS` ztIx%VKCD){cPM`Grr$Y<_50S`=$fhJu}(Ry{EVXVQBGfp-F*FvcQmfMp-_Bz&Ltkh z=gU@x+&&#+ZK$QznPTqx(>OnQQr?6)=Nv2@b$7DNa`<y9mG}DWh3d0~GOmRwSneo& zq9u01=B3s{?@a|u7pk0h-}dhP+uuJjo~%4L^T@fm#m3EVj;A(r6t8QIm#N9Bw%GG` zW%Hc!hi8lJ?e--e{wS~iE#=+y^9y9mPR1UMsoBjLuX|6$A*x&QA;STq+1>qm4hIh} zXFnGstY&1SymU6J&9aAWKfC@PzIXe8d1>s=Md|Yw=bzl95<P8ytIlaBj=~KsIxQdB zk4ZeX=z3fgbG=X|na4uFNyaJ0Nisg(etM7-$At;{UYh#TjcnRpo#6AmtRg%s&1&Y9 z+t*Jv|EVgze9z=;%AJ#Em&ljbaT-2ayY>4-oqA@^JnQ}6Z{3)tyYc+J?6rICzQtw# z)lJm&<+i`PvCCC8`R+;YWLMF~l$oxtPR+Brd`<Rce0A0Sz}W98?>n7SVkZUO{=vR} zp2ddcD|`QctT?#w8SnaI+-lc^ndjbF?-bM2+7V~Mtnb#n+;qmrCF{6%25|U!K4eMW zAUa<<?DLvqvt~cnS(ZLy=g|$T4t-b?GwX@znIp^3iA>Ki^V7V%{QgtM^XvBNA35;- z)RQ?K$4#Zr3w=#KS=8tfwqsAglR!T+SKYbi9DIK19a3Gbb4@48X6~WmCNujdUG+=c zlm7U*ij>de6`DuwXB`VZs(tzMqsHy0%sTkRi@G<STUx=D?|EhVE}N8jcbyy`ZFri% zw?gsFli6(DU82={RvgeRyC$R2ZW^?B?$c$PO<WldMyW~21o&^*x^3(2oI9zf%R)_l zPm;OUx|}6AVs&Joe)e+*=L-vWOHHv{t8rj6<EiMQW*wh5Tt8H{tTl7@tB`wYTKAr| zDt-RMQ=<G#dZQ`tKBGr$CYy{ZboFiq#x!}GC9UTww#YI)d@Uu~Xj=4vT?$K$3QsMX ztaFxw!$^7WSKEwvpJW@O(kCsqar>`%=E|Cg<j<F$c9k-==j~yx)c(`Q_UBH#jKATM z`LmZ#H|W~$H%;s3_esA^PhMuXcc0g15u=)SXXXt(ohX?;sk2kIPMe*id+bf|hHsKR z7oR^~6J$PfeR#uq#W(HdQ`ZOXpK)U5myV)D?M^*^RY%EX+ZwArojvi*VBUhDsWERN zpB(3Y$?|-%&2**(i&VY+B)l7wuIb!oQGIszwz2km$?~5vRW)HJXRNv=Z1jnHf}nlc zn{yh<#^p*JON4l}y~NWl+ifcD5@4#I8uazugxx|Ol~Hb{k<JW~pC>bkd`;YZ_l3}| z&0S{=H>W-<&F-1mbD(FJv*Bjj8G#p;&2C?EMwVgb>Sumu6pBR`ZIL+iF!kTWOGiZo zdJ-4(@OFhS4Z2{g`G?7>m+fZ$LCL2AwzpHSZV>Ml&z^Q(qgB*XQ^!>Kr`YCoORq2O zPwQ!TKJEDPH14YP*9CSiZ`s9p^A7JO$!B#&vvb;9PWFn{{F`|6oq)h~{{15AyI&bU zayuN67k1_ar;<$C`k*g&h5j_m5w%_XVA|t}g1h4M1l&J&9A0}!rFTWfM6T&=>4I_l zBaNaYljhzm+Iy>@?ME5k!@EYsHrDG^|9n4rG}2@mgXFQgi>C#otJ(Hy>biy7Sh%LC z3dR%`x(Vt|zRlrzbk>KGpL_gzEs`%7F1DLv`frBsBeg?<V*MK1G>>J<{`>HzN`U*5 z@YQcdf<dodKM$#0q10_?QrNP%`%K_fpIPtS_AYwac)CYwUD7g%G`E8t%fGyyzLE7? zFweaQDLIT>dyYG>W;m!hbIvf%=rOYHV6d<XKEQk~c*5Gu9gNPK_zxQ}pDX?;pk7yM zmB!G^TRL6S$>HMjW`Tm{9Sjflp6O-(VB*|9i<j$x<(HU-YXbcLn;zZ&_p?C8NIi>d z*{9?`heBl7JMIb|e|RNjo{KlriD@c*%*ni;7_{q_Hkm~EJ@ol4^HHW`L890cl@BsW zGg<wv?B!l@_OZ?+qk1{MNw3|?6n6bwDEr8h<K~fnJDF^BUH1Iew2?iVsyEeB#`Lt_ zRNIpenoN{$Y&w&(KxNt#L$+X@WKCmVHuh<eIx~w_?l^bgm8aeXk+k1IuU{<B-S3{> z_5WtvAJz|dPup55*BxImd+kaG8Qm$@w?y>l?b5N_^m1h^)0xBHD|18jq<8es4$&$I zzH0S7ZLZ6Noik(Y9Oqk><=^Kine?-c;m5mYa<dM7Pr7mX!M~?J-8UHvR3BO=<Nall zaqP6;Ph9Sv$!btY_~|S6qv_`wA8y`tf?`^!BJCTev9&01|K@f7tYgT#DDceA&*@)Y zE$cWcy?NSM|EYoxzkJ!<+0yfdP4Z*1|HDk9O(9dn8rq+I>)#=!)B3gg;dCbZUNtVg z{$G>dhNgN-My|M?xyN%?$BlP9oEzU1Uy}RBl-0C2Pa*Xm)0)^xVy`mt+eB{8ie8ph zaO2suHQvU*ayE0%d^FSZoYcdp6Rh`6UoT)fu9%U<T{$^MLdNCS`S16#4`uFSy0^KI zqrz!Q@(<TVT!BGqh7r*$KkhK|pO`PdtM7cb@ci(|XaDznS~~le&H23o&wu2J-fLL7 zGpWzT^hH}Qm(Ikn1#f%ZuIkJTJN?gcN5GH&;=k&DB+R*7Ab(lkt9$MtGouAIM`rF^ z8e<YWWlP2eoe~FA(Ty{tPXDsl>iGI-Thg2*zU(_6NF3k}TN$Z-=GeLF?bF<pR+*fC z#kFx!*uz`4QH9Y7?$YsM9Mj4-J?G`JK2i5n_)Vpk<Q|E6>M?Sro1SyJ=_resbUuGM z^~*H&dF-dWmg;G7s_{&%GPtzjQgwJ}$J5g9xuSY3@AfyVr!GBs>g(Ix$)cY=KiaSI zd*_d{Hs{U0f3CB9T4-}=QvLi(mrma8yV7ID<Z&UxZ;|4Ol3AxZbQW8_>6PK$H!*m{ z(p-CqjjDaDzL!tDoz>2`q+G9Vi~mEu{yh)>dsIGt^3Em8buFWcM5xbE<I6f(OUwlq zbKj7@#wrr0G5xIkpV|*DI#+}fTc-AGN&Z$6w(FUi8Rz+<uTF%V`+TDOU;mW%@n52H z=I83}pOdbsaQOE6QVzz{p3BYq9d$iJWG8eOh=u-Iyr4uNJgVIC)NjYA4Fcw!%4<cK znohquRgjjWesq`n*CV3!-v3wlReawt@5=G{m*ub3SFL|!VE$4vY>#8`i4Q?p2B)m- z4^J^;F<|L=^>@L-MQPvul-R$J<7!UbtMf5yfBdF~<;#4V#m%hR1<ois&z$3NDyQV* ze>=nFN6yT%N>PbEaqY{IKbIc&AMKaofBESA#Hty|#)ThQn^+fZP~EZHZ7P@F>JO*v zGgR2DeWttpKT)S(z4PVDS!W+y=-4+cYx?S4N7c>3cmCKD;9go-Sn94(a$IY9aj5lK z{feKrerFk*yJc(7^$^!(I~3-wV4$U8A<Q#>-t+I5_n)fwxbtDfh9gEd_iASudfu#9 z&H8R%_r+APGkdOF*T2s0_4>6p^VdH+pR9hb9+#`NK7O}RNWA>4Pr}dEK6|x(@A|dj z+fJG;j3|#_-CRGld#6TSgsXzX-QKJJW;EQ3@N?Mo>bTq1mwJl4I&6EkOn-Fx#jb{w z_VcX?$4xG!N^W{7Dk_(=V$(~m&+6x_KPoNYh!eXQY`xNI_P6fUhxP0fM7Aqw@<haI zr6l{?hMk;|Tpk#|Z=KY(U{{XvY1g`Ey18;s*NG17t^D$(FWV(`LxD)X_Sac6x3+R8 zHEz*rX4#T5?faC?fA;>n@~?Ke|NGnZSqpY+Ub-ur`KqqDKL7aDm`~qc=D)LN&Hs1y z0o#wqZMT)Af5d*+x&Np1k3R}Ed5774>=D@g<8*x7o*&<Ci~HAn->vQ^XZ`J^VCwy; z%}>s}&foj>*U|0uUpEWixBWR+_;~;P8K10g=Pz%GP1#;FBe;N7W^Gtlfz%XvRaKMz z)I%XbpFA9N=Lq>*zG{ix^DyZT(+jg7+y7L5xu11$)xo+DwkM2>v=XNE&75WOr+Eqc zA!UQPN3>rqHIp@%Fj1n^CN;y%?xEF=y-!#ZCj=MrebBp7Vv;JA?(qIlf2^pgsyp|x zmD3c>6rJxn=De=^|GV_bRmPw|!FtPokGQUA8k{??-p?H6C6|>X)AYE-s6}Aoq__M3 z|Bad?T>qab(sz~iqxC#T>d*Xnd134KR-dPS>o~ssGt=89@jZs~Zn1!_R}<TsT^er2 z`rg+{u6Qd~&h%40!kNjDYMzz2Zer`An+s25ok=!fzmv>(Q|OIq_tSSemTV%9)trB( zUS1+@*qPj?`+~3a>}l?I4pu8gW-$1kddqip--f-F@#zKvnbD6g&IqeA{@SngW6!4r zo8QlCTlk<LR$)U~u0p`_ioF|ybKb7cu6glp-MZY>75~o6y#H%fl-0ED?^kO6|I&Z5 z*XL3Cy1nN=Z|G;$^FFrjaPSF{?E#)lA2g@j+#@r^c0uso0{(ipuS|D;UzHK7U;a9i z+38k{eRW%|Pqkp=B+(ZR4mll~%Xh@TKNgtgJGp3H_EXuG@O_TikN%eEHRUZ5x@XW9 z-|6+^%}?!z(cZD^g8rP63E;D=wNtO@jepP|bGPlhP}|QHuO$7B&)gBWOFg8~<#tS~ ze2)69BEFs)AOG7SFIaU0F6p>!oxYgu{|dLVd4COi#qM8Q@nCWkZ*IoHM&^bsmsH-} z|LT*q@<VfUZfVq9$8rUUqE*qJmnZ)F$6o(Cx;Jg}qP^3?j~ZL+$G)oha(#KhdFA}R zLo(evep}|qEWeQ4<hN-0g4VK0%7M!zLgS}>YEU?;vtzZ@kB<sRSNp~%^+?5sd5IlY zKbCRq^qiD44F-8fX5^jpP}=@Xv1k6to}Me30X?2ka>9>UbQDEn%G(aV3Q$*-F64fF z`_A3cujM6X9oe#1^*-hNv5a=~4J@eLn|@NaJUqv8)rBi<t9C1&ox84PBG0>uqZ1y+ zY~Hvksd(>l-i_9YxyK#eUAWiqeztPZ<%eE#UN-bAX$CSW?$h7p!(U?1c3#J+EO}e+ zlTC}4ch4+LGY+uK+TgNvMvur<mEeh+a<aIVuShF$OrN`JRo{bH=GU)o%{|x@<^Q{3 z-P-)?3zqN8KH7M>y5ugesqaL$_|21E|GxKaf%b0Y%@00IKHGms{@#TLJ56r<PjIiT z-7Q_Yh4TqVWy+Hp9kIin%NNh^ka`^9WaUtyBK+$)i>o8YW{$HOE9Oph$`IbaWnr@G zx>vKcj(2V23SF>%;o~<u<-dIM`v3f+*sE}bwR}u#Wfq(cE8s7x@Hvtvym8_@#`!0t zo*NdQy0ymX$p?iR2i-?sdG=`~os55(QTx%y(0caQGO?>AUKbbq+;cGMLDZYmOVTf% zj!iqgd5)Fs?dSdymjVhnIgL(Tx~!0$RTe(2C-G%iYD(Hh6$6#R<EIjOtG~)N=DO$T z<)_`vy%%j39+I2);Z5G!^*c9b9JM-M_Ip{?e03o%GYu)}_r+OrbVHL;Dj(KL&v_U$ zJ@E0J9ox1nz4UTT4j+5;>_h8<!uRcLtI)o7W6t)9rm0s~n9oZ2wLoWU!3^HXoSUXh z_E}NrdqOB;S&bK;mY>MBZcck!S(A$<EX5XC+g%(F?mja~ZE1;mwoyWQhSTZR6*EjL zujO#a+Q`0<$yo7PgG+SHGN;n}>kh_lH|;pPXx;9Ot0F7)_9V`Ie#yIb`Fq{srwt*p zm8+f}@SCvo(!YOvQ<f+Gi!BP-+vUx?eyU6F8e78xt=KXjU6ZEMTW(xY{Zrt6d+x+r zw@%E>l|6N4v&+Wg+h5-@{}%hW?DsbT(VnX;$)!vCRAZ)<2q#aCY&u<0-l1l>YPQnq zaQ9tNR=1*AFXtV4d)xa&cy0Bg$LZ&fu7A_GaoY#Je-j>sO01m8+^e(lYqH^Fsn**q zftt^!|IO4?uFjd_zwL)>f7tx9@2rd}Ua`3F@`#7#I;l6G2sf+nI8yavR$#%EXS&k7 zQu*;``>ffIL@T|1_|o0#=qva4{pFLICw^PEgFQEVPnW$jU!C2y(`9$Joi@Acs2rnn z&+VS--#KmC&((IFJi=ir=hAr0*;~}~43p!YhwHOUL@MHz2dVE_9I#<h3zI{0MDFhN z(-+Q1^XC2jVO?YYnQ`{x+&_*H`Fht6Fj}kHuDPbR-mKrs*kVUl)9+Q64k)BvdY&Tn z(DLV(6^A@@gRZ2>Jq($-vn0M<;%=dRa~Ho_?9{Zv_|NN{_bsbl<@x#Qb}PBJI=OMu z8KwVLzFXhMb}0J&&5f(pZ%qAh@9RE~>RioRS`Usg&bY0#uCuv!+J?|gu1B4H<}95) z=>VsV;iYWe2Pcx|NX(M!2zkldGEeEw<KC974Y4nLU%YwH;^=i_QKwAs29I^Vp{8@4 zt*hVXuli_eJ-ey?uF#7WpIx-Ft7|9TEBG$_ar*%^(={ts=kMHW6eIp=jpq9E@%Kbl zygy~0o5Qs=)cV#6d8U#+CjHd=4(@+bD^(LdmR>Qxu=1k$g~0m_(`%V|zw+J)l&V-~ zXj;l~#p}nCws)eve&2Yn%xcMBFxmfjj_36Qf?i*FAGv>9SYA-DDxcwt9ar(6{+H4L zc4yv6AGp=msAE{`w>aRY?t-tgIMW~gie)+3U_M#+UE|x&Mf^3zRqR*n86utRYV-av z2Ks*IZ-`qV{%_5{#<$$x`S0!2{Lb)~d8S?bjCz4zcm6aVw7kpwg@4^Vb@!iVBL6Vo z&iUtf&IF`HVzqXu&fnBqZ+*V;r<_0F`?p2ym2^qtbccKXzgX>V1~W*pR|xMH{?i;Y z!Rf-x$VDM5mj4Z6bxYo=Avy8bmdIBbaYo4}91ZSGI`bjoP1mgUr&3LR{cQ&l`&RZw z@|c<Omm5vnzv66QtVNa&!=|aNGCBOaC#U5&-Em@UZQ8RU;(p+*CqhSaSM&Ypy|HJl z)~3?XxOnI2<mp~3wm(fPeW$U-RJ>xo?bR>W-~OBW_Ip*-yZ7%BzdBW~yV+_!<#7z> zo4W!(_wSq`yVbw0AuK%N@5R(bAyQl{Dr?1@g7@B^@6k~bef)!#(6z}Kn<8CaA4^=g znDq_6SN)cTD)+^iZ<6$MUOzu9FYo+!O^4NVm#N;1{3eHleDMs)oFw8p-zNU+hvTzX zeA9~&@{Mkie9!tJO^T-_U+%{a{(Dyr@0S#u)5Wu1NX~kZR#2M4j?*3cE=+h>yYJP+ ze)&c6S_Zum+?R~@D9`*6Ynilk|C7h%f40o6wK7!Ud9r}{;Ekge-%cp~y4!vK<6YGs z>xBM44f-=(dFc<?`y3CY4S$#mi+5dgeYnD$M@yA0`O$mtLmPeG{F6HNXinDT1p!i* zdS<e=_9>-*RC+&Y<$vW5f>ZC!$UM8<`a|uF`e1vfv*C`4+Lk6WRNop+S(NI1c3Plu z`pI*NVP{fSDlwMMw142PvDJyG`j~D5Gn=)>TnlH_ysgHISyE3<TlmQMfwk~f+x)!~ zgil_4`ogAfPV{H*Xc_6d_u8|nj=r1q{@z^KlYG;kyUP6ieU6p+cJ=o8ydnHExXvuI zQQkj4;)Luz^Z4hc`+v;MUAuhqm47ein|uv@t84qJ{)hY2x3x(f6CUjTeSeL(AM4}r zb#5_It}C4mem>Ke!`x`Ikf-4Ej^r4hBgHq59+LRRsm1AG<9oMz)s4S`f0Dj0?%l$n z^IoSwvj3sjtPjo`TNzC(xV;ag$3JKn_ug{gYb#^#^lxifuFjZmDCT{7c}1>FocYg8 zyC?>4j*wjjwqFljW4qWYb~3Id#5JTTLaOzJ!)8$~g-x7)1?Qxst#xoO5P4x<a(m5{ zyDFk7w;MyHCck@g-KgZ{>FRIW^XfO{H1DoH`)#h3?aMy<=_^(5{a7C!`swOp`}c2^ z-*0*S_GxSRi#xCHtmQ9fza6$#T)TbyuIszZ!dlIxw#lx!BzH@sE_Hd|<0%571&3~* zvbpfP?A*~x%ZVC0BlO-SW;28Y>m1%@A;8h|>C9FGaosP!KQ^gM+qZz_|GK35>&rwR z-FIxv{L;wan{;}w&PT2N^TU#LJ{&J9o)ELsL$6i-wDE?2F6xKa1$G{s@bdd{pYDtm zQyQnc)%j!|KKt)+{GaopCD!_JLRWPT>gAf5RwPSJP6@AH)G}W=s+V`$#JeUz8S!%- zitboZ%UKz=c<aISo{rOtHn3>Q*F1fp^m%jSxukH;ZG646bSC9<8fox<j;TrXT-!AN zXOE}jg9(-s9M@MKeA%MEIk-XJxQzeAhDhdj2?zWh?6y)?xG}Hh)5*=x-P`&P{69CZ zws42~^4I%x{_QBA@4Pwo;+54WmE`ZNs$UU!eD(Ueruen|TaOx_WdCv0Ud-NU+fnVB z?R8V%pNSX#v;0TorKVk`!u$S8RV1^%voI(Yx|nex|7_4D0l)d&T~ovRJa5$~>|>UR zQQa&z^UE`>!$xYU2dy`r;gNcz@YXnEV%U}g`jR@yfotv4PArYEuhM<H!<T=4;>8C` zZzb$?JJ@|v)@+M#pF)J7{z;o(g}*nlOO-G)?`mW3-@0|4&Caa%hRJ^fi}t@<xp#HT zwK&_%GE?5NHyQGIpO5i6y>8!K_U^`2=iH-pyXK|M%2zKsU$l|w&f)~-WVbgbrbNdi z_<Z)-xoTtJ(&_s`RymmTEMwL04h(K+D-x^s$zSlXMf5S}G@X|o%Q+n)o-8?7ZFJ;} zXM5`Imz#72B6no&dEOT4X6(B-Oss~1)iD23BOlK*SEaBiM&>@<ycepq-DaLxR9Y*u z<LETc<!SE}1XLs#R(hOV&ssm_MCQ~Ta~<dFzJC*c^@iw$Bl?2x4+^Wx`2_zgTW9;J zR{H<z)#_Edn_hb}pH0k9zH#vTmN&8T8eiu|ZZ5pPuk7!Shh`f;E&sS}o?PAK1C0l` zf*uy{4%^z;C%k^Iehr6}UPs4c?}>GCvt&h|G8tWpoYHW&#X?)*Y0{p@$3I+ex!IE{ zusF7l?e8U~4SQAp-C$A`N^Ruc&82^WT}$)j(=|d*U0zRjirBe)NrBUxkfxp6x;IXo zI+^LOXh6C7bfqn~b%NZMt-0YfjWv9dK+YU5Mb!!h-DOO{E&*$OUmbZZR{rtNI>pn| z+0TC|nZxm|!hHR$YOVI`F@HOrpY;BCY|mrn-tVmD*XF%_ZSgO_o2_!WZ+2m%4`1=_ zyzAca@s|T{i>|5Fy_T$FkiJV-`rO}?*xKsf$8IfrUVbsozVmPJ3Co>F=ghZ0q{4Sa z%C}dmr8i{CmE52-!>c(#v&>gsSJ}(|?-~2rHtFtVf`&_{<x6(o?0)E5zoy|<BU9u? z!x`!)bL6^bia(NmrlV^nyZm}N_vgkASML{vYnE)^$XvNBy~#uOMxg-j6JgUl+etU7 zc6^TL%PZoRv;FmP<M%!7Y?brmEnfVbp8r^{X0=+~q&w%i_b|-fc(?MwyU?aZj@wrU zetutjSXa%x&G7t%P4yCGOCH_WDCRuxVo*xfO6}!ko4IRt6hAmzx#O_RvJJOIzQk$8 zPvQFD6eSa?xx-|SNA!_je<d>Z%lAy1T2~dY@Y`bHwyX2YgyYhW7rhO+-5hX{D@uJD z_maa+s@3awqEZjri|$;pvFBFcf+ap{rued-l6bKEl#-@tXR)h7zi2G~wv`8pmq(wG zESb^kl3U6)og;SY_qi`_-u;!a!F|u}b*UT9mcOg`dF;=Bud37h+uyviDy%o%|Np`J zb9u&p|CIVxm!_}SR`@@A_wmR3KZ#DV=8LJ_yvVWq<D$gNH~DYwmH3?bU-rqdqq$Sp zF4R>J<(%Osep+`?_G!lw6T??L0S*RB?U#A_#}uioN_rbMYjfZ8%u`DH?JwHL&E*q% za?Ha__R)tx+w>DBru6p*Pk&`*Y~HPF!1Ayw^62}Ow|<^kwsvj%wA_-dt*6a@>^i;w z>dvjtXU<)HPF6zd9)I_r2XDeIXRlvzYxQog)uHqEEnBUh-(MoB_iu6D<D2$2f8+k# zjcGkED4+cAlHd*b;|cX53Ezy*dR<Qlb4p{d`MNP<TK$xQpHcybUA*_oDX+PoG3kuN zB9Wk2rl><~a)Hb2(-!YKlE$<s;;-S-Uad(c3HI%`kM@OLS>ToQ>`hHuV~1jmUZ~`m zZ7nNO*jLsqnAX0cbFz$O&66IxxKA9B*}wIx`MGcXxcyY{@!|Uy=E|ux>mTp`&{g|) z_wCZT6Wh&iy<hphQY&r$FUIu=*~07hYTK}9YajY|z~tt=HO!8pFDv_<?;T4!JY$LB z0kyIjg@^bKnQgqOlA4$@+poW6iH`9%OT$NduBO>MI(c?_zG341RTpDs#fB{v-FN0o z$_3d&65Sei(moy)kGJv8>-PQ;`ujs4TU_yliu0{MrmCNOvF%-c?u}c{^E&nm>~*&i zx@#n)|Daa4dX~>Urf}bc4^JDXa@A>0cGrLLXTm4Z4YRs;<f-)swHb&NC$lrGoi$gI zD}miO<5x%XRbGjnFAoBWI5@8_zaeuu?Mc#&j13o@4)NUS6;b&Z**qb1!-0uA=J3uG zzG$_6n^Cu$X<4VVWb;8iIiHBVNwbe%-?BIBd2;@q4PU3NTE8QV{rfile;(7t&!|s} zt<Gj%n6~L;+|GvbZ}ayZ|9>V}{E_;;;Q9^rPxeITOgk6prIT_!Z;{oGm#6R7@O&*j zzt!-mV`{{^=g~*srtUrNRxBhNzC_>$*Fk|#S{(w_p^Kg{dX{!AK6T|<uO`FX6+Ndn z8Qy35Jt=Wv?+o8;FNG^IS2zCc_$zbzbWpWJcxyuZD<f`8!=3uiUwOHm;rkh@zj4;h zn=__=$&vkg_`?VH=i75E|6ly@LEdfqy8QZ2kIv1tuU@tH@5=da?^J#~S+=R`Noa1q z*wJTiL*3b}%<|qyJm{DEt#a$8<lawTK7PFM>+8mkkE{Rx-oF3O)BOEkdmnC}mzP=j zYwha7e}9__+*5PUXC2=^>9%yVbk>bnyL!)$+cwFURIrx!9nJ}3T^#kzg{wk!S;O)< z+AAVI#2#sS@46;BLGZQMj-FC(9~1u2=QDNBYkhf^V=b2M)_rE9&ub<f-?b4em$ojF zNy(a7nNs-jlYy$jiG8UlfeDeU%tu#TD?XB;8>KW&H$Jehp6OFsmH6~u%jZn#Vqspi z$@Alcxhm(^O-=i<T~Utpumn?hOu?-)3!}ol9eAp0W0R8W!z(ryFHN2stn;<f>h$Y3 zPtP{qn!D%g$=yz~F3jzJ?{it^oy8(wai?Ct_1B+nOz+(G?AJ26`HMA=Z{2d?-L{TO z->>UJ9jg_l*T2|1S^fU*U!{}&rq!@pen|Th-*8OppYwu3{pD=+H52Z&b2HkknX+ZU z#blX<*B>tUui7igZ}sWuidUPKoRRC+d@0);#31kOD!P>GE~~2Z<ul19=aVhF)7*-0 zS;+;OY~Fa{T$0?yrRg^%o-XlO{l?P5K*?~j<O-&RKaSpga%M`a_PRUO@2}c_Wcx8| zpUs7txdH;aro_f*nyV~sea5!p)A?`Bu9GhrTs+XP{$tX0E3wa)nyd3Q<?d9ke0kWl z@@3)Flt%stnIGZadNl_U7ydHk&k%N)`h=BH;L?vAX=f%^ew%ttoh?Uf7HzcH6QaZP zAYNavNweCYuf6rizRid1wnX0UIC*>9vD=@X%s%Y=|LsY!_p{bFJQq2yw}1CV>3zRX z?%pMLU+R<Dw`uRMSCq?G?Ed*e{(MQvoS&DIXaD<lfNy=;f4=zt6EEgk$KAMnVZ-;M zzqj|wz5M=m!S9uyZ~fNl-6U7CZhmz`q`Tx9jkKk5^G(@p(|V#Mc)qN-JYl`h=Tm+= zVh&l&n&);oQ|4dBE>A5*llF5*iq0&ZRI;JNOFPOXC#-GGGnM6vGdW{CyO`@-6*U$5 zl(t$LpH@3uvP$IKqDQJnrb-t4XnvNO_bgeubL-~!>Mp;31TL!l`p^IUHG#dWp6-44 zw?5<UF3o@cUFLVx|CwyJ=rY&gwlml6^YHAyz3S3uf0;d>{%p%VA8(m)?Z|g2qmtO$ z-|p=F9sQww#X*O%rzzX=?_FECS<;|PnyE@+O75IC;{wHZCgR+SYBHE#@Es|c@o5=H z&#g_(ySA`Q`m|!TK>g&H4UQdr%{v0~7O7R;(v?r!r`U2N=)(ERif#KeW{0{wJ{#|| z&{SdOr!!Zh=GvXj(JuPg6jGKGF@17cOxOFg*@`XwVo`2awcIZ%-E=uUy;V}hA?A9u zr<qH>n5hY8$NAackNJFbdBpeW@@<3E7dQ5ZXE0r7`tpU*w)o)bn0C<>*_kOq6XrPh z&vKd}KOyJW#=!H7wlZCq@^ziO>8p?CHfnObx=Zz)U-X%tsomVUMfYG|azs_%mRQa$ zt^tLiYTAJx7-K(kzwtZ2Dd1|9S9rhhi>&wn;brb>7grhVm5}xP&Kh>A!uIr`NxCiX z0v=5>NuCycNm{A)^qKHgg{QcSGV9{@SX_SkdinQw`S>Xz=Xy8I(SLYq=hi#iF*$;h zOC`M&G~Zcfi!E$;?j!!;S0sy#?#l+3@JFn{YP-WuiMWSv3RlWjn9e_+Q)zL`ffc0@ z>lP<**el7s_0~4N>FVA4ligC`<-ZSHwyC$I_TT)(TpE?O&wJ~lEViHfSH4!?CdqXp z?Zn=RF;g{fKdQfT=k64t;`~sh4=I8LOFDN?-aY&Ggl<zM|2>Tt#g0wRd2%voS>G3d zqbC-aF79gWt$Hw#$;{_x+OJJA=4Ym5PJbhDu*>1)?T1g_F3V8gw7kb~sgKOtl=XS$ zp0+m@NZEZ({ZpRZXd7*K;OOuDs);K%^YnZE*^pj!#$F>n_V$e;_xAoxX^Gqx0Z9p8 zZ}ojO5-5vIP3PZtr{|YlR9@f8xh%F?RkwS$|9&RD|L*mBCexpv=T`9B#{T~;n@dA| z+CJU#()Z~Cy&^X?9(nDkdbfVZ*NVE>?oAJQddyCVKax<7oRYjT$>ch>$kw9@Y}^h? zOyw7+Ggi!8dU*QDWlncHmoR)e{UM=Hc27)t*S19wI*ErixX9$DuD>>O37_SK9lS>u zaUDrI?5iTYMekr&nahjU2LBZT_HEks(OXwf%Z_`4_rlxJaaTWyM%GN5vbF5N>D?=S zusGCw;`pkfv&Q&g%}e(At|8C-Vs>OY&a}MwaI;6pq}5D60~%`-)?GEq6D`;NE@W-q zyNo?0fVJ(|vBXVcr`rEcTdF3&WxcBN1dk_2#rFw~9EK|v`(Biq(h;M^zVlHAZ?&k& zMZa$|d;<D}9<p}s;QhS&!gBMdjPoHbMe8P>pYi&v{f6D*da-e#zJ<4!L{Dp0YfspF zV)e>nes7G`Y&p!&9$Mx3QfT?iyzh5A^8Qz5wH;l4bAF<*uwKPm*`uDVvo9yz+ZW}M zVB@pnxJfmKs^P)54I+mXHVO))EaLl=lwGsfz+_*$&D~SQQuppj%GX%f-S9k~y|*l| zFh+3E<BMl%w;VlYIBQ$~J(aU74s&q5Sbi)x?9!>*rhAfWYYOUXCS3oxZ*~5bNy(3^ zTNYOEKVvxXXP*BV{?EZd&)u8Fmv)^!?`ZJwp6{%dgBAYLeV5((CQg@AW1bs+|6)w- z^2t1BOzh<jxm4D9$+cb1xcSFP;P%YKv**HowEsSN;MeN?*Cu?tR?%-@Vdv1dHSRBK zZ|JP`d-eCQ7tUr@+J5%a+OBAaIf0&>7iR}fSra9;E3vM7=CsKVHgD2RHj&YOlo7mp z#XXx<Cehqtft+6wH4T<0p5^{}GjUeHgp5t5h5SrHsk02+#WvsJ4zg2DjFffTw=?Ou z@m^i^)0IUzE1oqj-F~fR`|IWZt6nc&U%NH&{j)CN2uqWidx7N%rOEfL#9zL)++2Nj zZK>J=?(cCcO1#hB`jP!H{M@nowR`g`&o4YH`uh5gd;4zeTDB!sea+sc$0E%F%QX*v zjZ#t8Ns8v3m-bcKC2EK2$_bt>jNK2;2I}(aHGU79?(9FuiS_61@RO$>SN{nAcY8uw z#pFlk^TqP4j^r!*A2r{&`N-$%C0)g*Y&w23$Aqx{x!yS6cX91hr*p5bY)}zCEOAXv zt6^DFsgIt>)|s*jNqnCxA3iP)-~BH(_1}~GQ+BWCIlRM8VtRYw<qhAoe5aHgFqVjO z_{g+u>E$*1O{DnULZ4}Hy0dyuIc}q*Ypb<2i_`6h-KV;ml?FAYPDvj(9O$k7{?Y&Q z@olo#Vr+}P2KL5uhaLaUvG~t!;jbHB8UC3S#2>AG=k#|To;x9PSrnUV^!5jzVE5BG z;uE~HPCN2gs)y_A$=t7kPIsS3*rfLQWalOAHBa}3ExfVV%A>mVLJ<3#KL@&`3+}CR z`D=3Kgy$9ABVQJtTXS&*Pgc?ScNK5z`{Hem?EiIjwYKbPnGf@|UOz5Av`wlfb9Sfy z&xwcJR__c;6lc99wk5<|%rsDY-ND7KCs)gLSNUEP_@^n}?~wJv>Is+bnSYxO#e^L` zKb2c^Pw~3qlSaE*y*9q-x*T2F%6dA?&&spqC70&58*h*7dY|IO$NOSx#{Q2zg5}}G z3v$bAkKSFon%iXEw0HYLdz)obQ|C7KI_sBae7?3NckQZI*_yJivh(gruem9mdGk<y zcI_tZ4@(37Ip4lL@7er}fBxlDcCF4YoVx95<*8k5O1bRjZEfYZq*v`}+%}hYt@XD1 zx3+D~e%iO*N_$q#-sW15&$=JQf6QH_cJ65GF>A#&Y>UJ@KPVse*S83nZupT=zlQ6t z^3JlU$FyI5{KkGmctVlyjdliG^^&Hzdp|!`P20FQx~bCAYVwrle^`o(ublIrSHJVO zu<F?b7iYSeSe3SwyL8___*v@YdF_^X?hn;Gam$|^7imfUpjoq&v)DeMx$@j;eGQ*w z`+G7J=EY9Rd8#0?IX1=kc*i}x-&f9<y!x?HQ(~u4^tOoHr0C3f%I2$o-7~8;IGa_H zw)My7H#;Mze&2TWNWA=on)fd94?Fub%1Y+n4PGC}qapIVFTelz<NtE<?_W3CZ~Xk5 zO-N)>m(Pt#rKC-kj;Gv==2W_^-xAULJ$n*cT?$k0!}jPYVk<JG752<&o9VnlJow?% zh=?c#Ez4<pJ&s(jeEH>tU8L94qLp2@B4&JC&%1E1sc5XO;ClT>Z;o7l9i8X9Z{EZA zPfE(O3qo(63eDd2e^pNChCOXHHc$C|wig^ewBnKIjk&5{LQHHMR;kW<#-1y9m0e}2 zR4}i>PuoCisge|n2igiOYxo#LW;{5vLiwkCSM?9p<7M*I%KvW5Pc&cu@7K$_$4~5I z6p~Un^<z2n$Lnm59=kApS<`&hdew?n**V7|Q|J1Z&Rk>i^5(*+ES;vk|Jb8)|7<A8 z-(&fY@ubRgHntzK{gXx8<+HDEvoHI>cI@-T|4%-iu$(0MU*Vq49cu%JL!S~p?yr}5 zQOGz$Ppkca+RrD&AxBwCR&{0ZS81J5^=tj85_jxX=`8&T)%HPrrLmQ>FKy%6H`ljk z>4A+qJd-u`yqS8I3KZzDPM6{K;0asal_MQswR_#0K&!&I>wSmze7X_AG%us5=vc#y z8RC7a7b-bVJ&7=z#aR4sz5T64GW$M-iO;^ib+N(vJ)Nef!VLoF^}1%vO6k$a$g4jU zF~jfiieCi^buP<GVsHAsUgD{|{((KiFMZD|xvvi7ZII6>%Fu2z@#{a<^3P+2j=}2N zCzF><oYPT$@_Sv3%f+=Tnkx$xvmU$NTlUacnd_ndV>Z^?{lfDvo{*c%_5S--r7)=_ z7Tgip2kx*Oa+9<_Dc|uwKyLMX`6F@sbD}r;Ui6!v-gbV{+%K`)l?uKxzrA|@;&a~` zx5K&*GA1(XcpNRt$SidB($$n!T{4yZ)=B%4udh2V-c$IR;+r&AbVD11-SlO1EnNTf zxG8FhJa*f4tmtR$F1M*CcEzh)^SCWm-1KJaA^Yo}avFYkFX>ye^sq$B!PV726u;Ss zuUXizc5>JY%h*HnMY#4koldW-5}arLabH{2)-@BDjZ+I7uXIiqKk;wpv>7is!hQef zRf^c@|C6a_m^bxs@8?`6i6@DS;-YG=DrPEtSi=@RjX`(5vzS2jA6dJ8kz@73_3Y=v zc20JRuuyt@_}c|J8OtgzwpXDAX#$s~NFPo$z9Zq+a767L$MVNVs=ObX?@`{fPW#Z6 zQ!}T1>aCWR{{C&s^zRSO_ddP7=k+@-mR(YN?zOFRc(AVYo^$D<9c61Zu6?Xr`+Ilu z!FPYx&Nw0drf$d9wBWs`L-(&-wyb>Z>8;=1g)Y2xD_}()@6^q**X;xro#K1oXjQ=3 zy?w5e9Oo0kFGb}Oo~e5l|G6_+pN~I_y{(;nOY<M&KgHp%*I)a5{^<SgdKVv+{*=i* zKmNPaB_FzG%@ky;@jm}SlT_2wDc3clgU@bTW_5B#(2ZFZ2X@STyHkB#?Sefk-n8t@ zyvTMbFk%w#DV6oo-cur0OQ?r@sR|035fS0?`BR0>j}EPk3u2F+T2f)WR&wi1XTHt1 zo*G!s`!VZL`)#}0kd41CiyKefb<e*vK0BD_<oWQgE3F(JiYD!4somFTyFZ|A-(0)< z2j=A`v~RT%em!Yw+t&al|NN{Brx3+^mtPdH30-V^YMF3|jb(;~u&DkD?~JE2bOX{j zA09b#aNmb*)6}f?{(W!e;@rROZN{Hj?$O1S?|&4{$^AR;!!nQK%YPa?zq<a&^ke_S zpA}9r6?xfzoc+FH{rBKq{HNFdjrp<k6GOzUuO{K{D;;Vjg2jTP7ae^fY#w*9_ts6T zl7BOf&D%3~^X5K(pIa+eJimExxxv!(#}@;a&3v|3v-_;hbzi@m>|f(GZg917y11KX zFN_G%tNVGd%71O)<YPJdrPphh>Rg^3ntzG+JzqKRwXJXNDb-bOy}cs%&ZNxkyNkWw zzj_sWvBcqwb}nb>{KEeKv8NMOe-G2jzJ4#HX2l)W-&2i^o1T7h@Q|JF=k-H&?Qa*~ z7e`jVe{*Z!>-qm5e(B0M8fYgV*;D`F?B^8eOtpLe&endse{Au`hySx|onubCetSps zU&n)mo5U81J*`sF{adA?J7vn2xACg!)sNUca{shyKlwVZqPCtnGi_6y;y<bX!A~VS z#J_&{GefR_S!+Yi)<P?(Z(c8_H!JB(J+?9<WA^bt)z?!OEphkr+A8*Xi4d>Hif(}o zyBu2M9)#}y>APq5V	cUd>(SUw8NF(xMB`!w-Ibtu{}8!?%Ra7KYMCvy@gPo>%XD zew<_PCDk7;2j|b=Ri6B(#^C;pvZn{0hyQ(MKI5cU)~(z3Lo9dMZQT64dH%ungXb-n zzp&q3c)-|n=Ouqfp}13X>H^#@@jp836o384{)PJwwjaDd;rNrFV^h}O6}|QPTf5Y* zWBgocbJQ<*J~?cV*5Jjdec0oNeM-_a<0@B4&h;AqW)<B3;lAlV;}-RF;bbl0C4Gfo zZq0xE)NuV_>#AUbUi(wWju`iuPg(CAQrpnI^CG(r*O5;jE?inA+byMFaI{WYt0MRF z@rs^A-`2*4Edtf5V##Vv?mfFQy$U)T(~j-(&al$SY7vTR7Bv06REgQ_Q>Uoq$GwYK z4b*)umMOKhdU+Qwx$E<E<(Wxl(dWMVq+};dh;oq8+%G0D%fOf4UTfdSCmS#6P2ap| z-@~#`Z{6jDqvxFaw23)?PodSmhg&Y#Es(Y{o0Tbd;`LpFf<G%W+6oPxANpAPczH|N zpQKVX2j+*)3mT^uH?05IGl!eE#6Ur|;H_4$343zM?j)VG!_3__f80(^e8*Cxu=b2j z$<)t_6A!x8>onh+kv8Mwv67%gCP|z-HYlbAinV0@%;Y(vr0uNM@#K(}mG$1O<_S}l zonFMDwMr(+-F&JIXVnBvSqZIug$yqra<zW{f7yQSv(;JN-q{~d`*9l2lzB4s(x*>B z8#jFl?*8zug7MwguI%^PK2!Ac&OCBnb!3jjfhXL_p0@(D5+aUe7$g}xY^h_Oav*1i z%;70t53j1!64<<Mis{T)$0v6-YHIV&*V~YBsW(z>{^r${zoORXh4<91`m7Vcld;8m zMx3k7E#Fnl8!mCZt1b$Q4`bpyzCc>~?CEli%LkTmCSMd?^dzw9^mF;hN0AE|+5I{# z&vRZ$F+TKQLrV{5L&%xSIwrkGi?|BkT2^lOCKJ3x<ox%@_YSi-L!%P6*<_yxva*@c zAn^5ZrP7;TowAAZ@~54V@!hbveTV0nIcqwfgo;g_Eo)Le_0Y2klC#zGc7DEMUH$$4 ziapvNzWUCdcQY{bUiqteza0Jl#D0>g;5oei*E!iGRonL6Q1=t6+p>E5r+EprkCp## zNPqCPS#W)KiQJA~Rk^og7nHSJeEC;YG{)UVqh`sSv#mR#ckWiuGA`O!w&bJIgatfz z+;4{@Z`7%o$ShdvFeNX%uh+_KTROv8*$46Wl^#9K+H%Z3D7KFK!XCc5NIsMO{oCZ; zI+@If{`*g(eYeRZJF&M+r?ZbN@u@J~HRofZ<v*p|gVqHJuK&bRT<gp>Bz4zZ-88E% zZ;5F=w@o5v&rSCEZ;dWZvS?W_IcwT%-K%V^cFLz8@?N?7Z))%D3I40kUc9wo%Kp}* z>Vlx(Z$I!)bFr9qPe53t{8E-x_mZ;1=X;;chzswjKe@3-;`8opKI`uJ>@D1AnQ>`b zO<#LzYvj|EMJMvy1Y&HSE>^FObNcV=W)!jD>AZ<i;R(IFx2&xBywC0YEv8F#7d6{< zw@b$grpFZ?UN-%F?f$$MKj+H&-`V_WpX6@aY4$s}*QIaHFaCbB>1tm>=7qp}FTR>h zvo71d^=;kCto9Wf?{3?)%Gm$$&2sn80q!dU?O)spx@vOc*?EJTPI4O;<@?{gZZ+Nd z^{%Pv!Lyy?Ebm`=$z!_Xb(7ZI-Ju&=_XRyH2-%{0|KHWvgvCl9%Zj2Zrk_5<cX-Rr z$YmN!AIi?^l}a_$2$~zkX!Cf}af2tv)VOaP@LubDZK>grC0l&jo-8!+p5yt>LV&6M zxDTiG#5SqS&sBcmSK9Ax6I#7}!C~2*&mTX#8+WC1-`l5)GEBDI5ZhvSo73vC$P0J< zMVk6vW%tfq^}E;?RK>RK1JmTp(%%QWF7=q*TjN_Y)7A84Vph>a_WRK-yDmDHdR%!j zJ%=r7PSWCOSJPU*=cu)G9@<nVuU1_-DQmKO&1R-sj~Um#Jag>O#Kz^0e8s0$P5<C{ zbC%jyjh)AL&6jvwA8~nB_{_H-N;-XShlwBQ_cfC}A|`*k{Oj31xygA4GCps&yK-Q6 z>R~U7oS+*k*D#r<=01Ajy`a@GWTh61&%5PuO7)SKq>d#;&HMKLpqG^Bgw9<nY_#hp z#2#^&@T=pB?^~PdY0uBiv0So2-sZ<k>vo6s?GHYO{64s7dGYqm!n&TC4-yr5dTSqM z+S^o}TEFORS8}FFvzl(Kce7+@)Teu{kC(sgH85pUJ9|!y$!z(APk*LOcjw=8_Su44 z|L;xx_QWNkPrhb1`?E#q#WPF4E_)qid(O3cdwJ%|61|lr4hga|#Xc@~i?6dc<bS&I z`;)jQuOCF)pK;|46gaY6YEE~UL$<8<;%B|v*p~3RluS1)v`t%9D|%*4jNY=vl5ebd zSDPISQ%buLp==Yl>cbAE^SdS2lxS66JGtPZ_01~<X1~8L59(x(KJfAPfoDnE_vIIE z%#q}_diCKrSH-im1Wna>aoQ7$m8BGgtNjn^$82(5-utpldbMETfhV$C-kf>Z@>1+q z@=lXr6Y;Axc4y<;9entXWX?VjBfV@d*Oq&cK@Z>VlzXGC{P|3U(8|?3XOmQ&Kdo9k zIrrhzWu0HS7o4^D$9Q$Yo%IDB-I5cSGMU88kDu{ioZJwuRPo>`hes3Bd)pVg4nB!Y zTpD(Z>vC4}*2X%6sE_8#+nNo3x`%|lIdb;q3a5~p$J{o(l;_IbvV396kz_~4*t1UB zdrlSm<UgFc>CBa9uX`2eo6CIr<s`Q4n8dzg`&V+kI4`QbPC|IK&p*wb>Q<q=CH^&) z*K8g2!=|3xm(10C-+op4^CGR}PhUI2`fE>A1oZCd`0c)L<LoWQ57Lv;HBM9%CCA*_ zX`E`;uJPCWoSpn?jiuTV&a;1R&zfT1`{W~=a;}Q!UAtZRm)BnYo~y+$-{v$kC%>(y zL%7%fU-}vH+*+pk?;khlGTcg;G%LD&_K(@??Sy?-?D`u#CAO(AyrFMr%>S4YpDpf& z9g8zR31;5=Dp0E8ewumn##!RK8J{V*ZhRnls6}ViT8mI+Kc@v#Gp!9SO4xedRbTdy ztMu6I)Y)IBD+%|j&ibyNCR?woDV&h}SkNlo+Fap2`%7kHUy0WjLk%9X8v9qM%ngz# zcK+=8#!=|>a@F*on-~x6seY4dleFQ<jhB*JRohd=3)4<|E#wNi{&3Et;Dzzp>(#^J z!XKV0j6Txj=YRR{+oheMowYAwB&~B?-{$H%%S~CmF8e+Add|lp+t=%hZr7K7<S%Ox z_9p0VpC#{_{?%8z{wjZzDKfH=kCR?}?X+`jdf+9wFNV5Vl`Zie2R^&L-69okzEjFv zz)R_is@}z?TzA&}iuK>VjpwRX&;6PkE41oYy>0zp`0nDuUF}+{<<@BIw|=B7|Mu6% zdu^vat^3$C_u+n}myZ{(U%T#c;+v<o5$n!eTW;fj{rNGk2Fvgr1@}a&o{08EOgXA5 zF{4JV+hxY)pJG+kN0sN-ZalPCWPRPID)~Qmu32-vF5P*v$vxqqYKTLA)zOG1`}<w{ z`*+k9ubI&waAM!d>~BT8pGSUvRC)c4cck%a;|VE7VfS|0KR#r9p?7xv$L{(+ANtFi zLubrqIB##S_<Xk}@1Z;8&z2mt*%4us*>$je^1%&<gj>8=56^Pha#A7UeAJYidAsLx zb=vYu&zIEvx$MijImzB<1S-zE8{gJpI9D97q1NcyRHtQ+<-FV{YCo5oKYNm$p%kCO zhhP(iFVU8*b(fT+kJe4<G!IHU!JMVPHE>0@(QT29s}H=I=^C;%<+f%)dn8xD(V}9J zIZNBW)r7=M_+aZ9e(3d_$u0X2_&5K4IkkS%=Qy|HQIY(-eoGf|pH18N$yh7l`jx$! zQ+MRgi%ST9zW8j>r;l^C+~AJOPkMX&<*nvB<<F-r2nvi^A>Xa5v(z@bYa`2f|7u&G zd!2gQp2i3t+9J`KdFAxKccSj%=Qn6>WN*3dY8tt1?-%1Y#~NaGANzFYneycQ;g<vA z_xs&my&=5h>XnjEi)UM6);@i`JM7oHJ+318JByR}|0(Tc_dmCtU3kOXhb$*9d|7L; zYs$oQP1cVxu}A8nO}ZyM4AY6u+O|My^Y1&x!hT%r2RL-J`0jrw^Le}1QeId7&ZSG6 zSod2UlJl3?|7^;E`CIeu-MMw^_HC&(D>&G+w0G#=u+xh%IcryCH(R?UpX>83=kALZ z@BV!}T)f*wf6svp@r`UBzb%=sos|0Pj?mPur_)!RzkDoh>dc^>TW2rX;`6aqSHz~3 zYr+vlm#vr5x7}$Go8Pat-uJ<=^L|r49!yCwR+P?J|MO!{>AbmS($`k|ED>3AU9!`~ zFwU{0Zo!s@-pPS+mp>(>tFADuoh_=*n5DbNF3Y#e>-pm8Q<&aaO_$iYoUt-ccBw`{ z<`Y}hq!f$i>!PgQuhW`Zes%Me*D*E^vx3)4=gjv1ljGP{)9`|e_1V`Yul($5s@(T4 zn?FU)_Q#<+dN1Vv|G1I-``9s|s^8)N6*HTjpS$io*<PmN(Yv3XPVeNsPjr4*xXN#t zr{(ugA+x3=>bV5y`OMvNTdaHWzL{$x<<wGtFBjyl>(o2CdZ)pg{Tn)3Z(Qk9{Cm#$ z*UuMuhrdmZDleFJSM12+RY~8SbRP9jo4M3gt}94dyHJ<6J-=hc<o*t?b<xk>9E)x4 zOUNy3i;gLkZF!dwXmX|c&^sC5z2}~O*s)XPZhUa=#K#LmBUo+9U8Xds`>?ncZ8YfZ z&a!ik*<vLqzV^V56;a2T7Jr&Lb@c>ErD^X%&Ya-b@AvLZ;pT^v6h0@~9n!yIa(%b+ zBJ<tHZdiTXWLKqg%YKREtYG7BX5XJ#eZDoT`tzKfxgX2*Vt@U*KJi;d_T+zV9o1QR zx7b}hU9xxEOg(ku=P~|k*X+B~4xD4^{<vi2jqaOY9F7StP2HAIyNi);R=!EXenICs z9QV4{9am6a^h3Lm^YEMr_th-hIEw47<3$X2O?Wv$v++pRdG!ez)0sQvFE}jH5lQ=) zS@QF_NZ^fihc$lQE;&2VWAi#)$<Us6^%W)WPAtkw_TMTKx#IuN`TvbxzH)jS&{oSO zS?XLQJnww-x`nR|axTA=s;T(j_Ilat_5UlK;?AEgiEaKd&)hLw=PLh6v-NppT<g;q zqArS>yS>@^;pSC^BUh~yHm53f6o!7)Sr~iMDP&*h!`TZfMRzLhHlO>a`3l3j!kMv4 zSFfARyFWkh%KFc1G)`Vzb9Jf?gR#X`wtI(S=gd~mK6=sX*yK}NPfR`~dSG(szsj8C zWUbj@0)HN7SgO_?@|qUkKGj8Ii|W$@Qo5V_7lvj}ezx&hv5m8jx_Q|o!_B!lFD{t6 zDfRB+ONdPO^?h#hTzc}Fl*&w%pjVwCJMM~3T(Z_@j_BG)^XAWX4_zb@cBU*N#Q1mL z!GFiJ56)S)XQQn1YNgXpiYHuZeRHOMmFeEhrzOg2rN1U#O1_>Pqdr%+_R_Q?_m`FY zpWIM;zWGj|UYO74Ck9W2I_(`l2PO8zy?%LID7~oY@#h*zH-)<{{mv=>UD91zx>n4c zyXR@LxM}J~C7X)LC3ZSI<qN`-`Xbj@UiquX7Io}WCb#BF6ZV%o8>VXbEPc*XUi&$A zdg+$7SW9l>h^o-<t19)*2Yp%>75%N__Okm+Ki*kZF}FZ4<Jp60Me&b=R&1HEO>*j{ zEg}c+wr-5o)DAPhkW^YFyZgfYp2(6kmB~-0XJ1$KW?S}Zru(JMQ&?X_ypZUqWQ?;( zZ&`X&<b!E>+Npq-o=SS^UDty%H?7?Fzry=<!qh`QPT0r4s;~>X`QgT`+W7Df4;Sao z_0Nec6w~;0b=E9)t%*uD+dsE1{Pjsxc7EN5Kj)nf{tJ5F7^~l+RN8$0`}}_=Us-*s ztH_M}ZlG=u)zII)CE^_KdFS2_r2)xDMY86&XH8*i@@z^tbaT`BejU!^-`q|-o-TX) zwX$%$b)o&y7o~G9t#12$an6^nu&y8hYuB(#eiN52xM#pyTB;@J?YP%hp=tS~5|x}2 zj7O)Pard3Ekkjk>q2<$mD{A?j*9zDr7OvD<eCFbt4I*iCMJAc_?K*QYhNnK0{pIY1 zpG2mXD<6ro^L-jCf3x+N=ku4Gx8xUWi9cDJoOf%zz|vHS-cX-~+eDZ?3(g9y(l$(Q zaZ7wDwypi_%IY7*3MpM1cL-|jn`a<=U30Ve(N$Vm%0ea9?k~f7%U2bjev`rax$8i@ z*5uk7p~0OR)oV8kY;;q5wAtfGz|pT00=YsDST8kqJm)p<;ED@ZzDX~9aetaweq>_S zE6wjatE|^gUZq~Mx~6iK*xc)HKfX{}#@6@y{tD;jg`QSh-h95iu=948^reNL&K@nz zdp57rn#XN@l-K&y8}|45x35?_IWI6>A?AY>N4QyQ!TF#=KZ9SYv1%MR@qGKjX1>?G z7uHUyshN9dTl+IPwHI4wUs~Pw`{AA6+r_@jtJ8^kC(o(B`f9~eEgcKC)tk#!U0s>{ zY)KxM?nYmcGR8SMSsOY-Vl@NK^y@yVbKpI<>1gPcM-dkut@-mu_Z*LVqq)=bCdthj z>n4Bko%~soqg-mAsb=y4-raMo+s|@|tkF4d;I@BC(f5{ypI<Ul-*~aqo^^j9z5ZAH zhxb?Jc)y#oKqPaqTv%_z*4{}`6DL{AajjsLcs%jq^!xV<qf)Eh@AbD!TKurWfZuM# zsg{o>ce<v`%n&y2<l6F)f10<L<C|4!H&5?M>DDlPo7O+sWlqNPmzQtvJN4ZBF>}aF zeg!4t>SOO;L|t}#bi?@4kwDYtlw-?hF0=8yv{ZF+R^by7>GEG+R=QZr)|_zhmYvsq z<n@WT3O_5?RXsB^%(tY3uHc$C!$D<9<*H?;w>an=7P<QHYXgItN5WU>8S}JeXfz3A z&pxo~U_@`hqc3vZca+ZBipE{|w)E`xH5nGN^-j;fR@_-|{PpV^(|s|lm2qk&=Vd## zPhM+ae#SoT=%%%rCpI!UpHewz_*&6ql3!upN;RRSC5QhM9A_6gX7j$p$a(UYP3_z= z?C1YQtX=x$`~$6&Q%gD()FO^M-d0PzR6I#dxl*llqG4lGxl&a6tXXz9dtybG+03o6 znW!<VJnHM(xz_f4e)CxBb>-|m?UorWc-ED&lQpaO)W(;Oxcd+Kt+p`nUw0%l-EaSW ze=A|5Zd)Y_Be%>*_Fde}!J-QfUu@!&U7LB4>7&TM8Pn7hvjx`&x?fHzb$LCtI{oF7 zd%Q+wJ(evK)YA&Dzf_-Zb9TE-&xhu4{Zjci`&K>l-?X>MlX?B+Sx4r$_$HZX8^oI? zz3UBAes(sZS7PhT=d1S3i7UKm>AdjikCiQQFL!_2_hFk6gV03wLU$ki@Ar-`nD_1F zspU+WO`5ZBoDpc2-d&!)(BOq;Q<mQ`mS5XXI_+L^GFItE{+7n5`!|kuCqK3J%ez%l z<o<J}^6oO(gZlpjRw~PWocvMTFV437`P}D^?)UB&-|r=&GW|*H&ZZlk99iqmFs~JP zl9Y8#o~?RPbC=Jel~T_ff_=?8?q2!$^}&No*C%q9gN{%AE+QzgTkuDP$hEiwYtyP5 zogAJVI<=LD=@46U^syu}s~x-+tseYyQkHlh*J+Dk3EV2`lgrPuUagcPFQ>Nd{Lk)* z%=+J1%UMob`zSB}^Xz3`ejXEhp`e`CZ)zXM9RF-zTRh#Vc*XM*?d#`fzOud%sQjI` zCf<VOGq-}7(9z$AT(We01A=Ro)XaHi<kjrT=Ch~6DxfiPLx}g1RE?tUqULF3KNuvF zBvyAHGGTVsDho7O5K-3Gd@uIV$u)QUFG~7|y;)k8v^8lq%dtBN**`zd{o7x?+u!Cw z^@6ioS8uP3|0&!1ynLJ8Eor%1LHmA&y?-_L_$}q;=qSHC(HAW%@+)d%KQ36k%=W_8 zy$fr+YuneSmIwcTEZ19Dd3x{GwZC^yyUA>tQ=hnh(S4@#r7>#P4<6mp^Exop;ZpYT z3_a@)_p}ag@Rs_Zl6ExV{3OF0sVwf2t+KmiX9R7y;b;@XXFTnZWaq9v@puWzpMEvM zm0n9PJYnJXcwe@#?9V0hNB$G;<xgmDYHv=mUL~i;@TZdLS!C19hpw7`PNw}`cV<W9 zoh?Vx7~jllEjoTheEpgwvcYG)djc<?_R_rkr_(U2cIITCus3f~jnbpkKfK<u>HNtG z^FtF$)N*@5g>??Gt#Ha>zM@*Qz_O->y-LTQ=Stbs?bSb-3#SI}S-t1!iEppk?jDa; zZr-cwf0sMo<=xu5zjrKGIrH8|=Kkc#@wYx-nWp>y>AtDoF1=!jJM;UHwn97i4%Hj= zg4IX8k4o)nm~M2Hr&%;yYtyA<V=@24uZC$#x6UMA3i|QVF+s4|$XMRidUhmRdTdP3 zqYUH6ALXXa@OR3e9}~W2UeDVZyMEZ7{q4SMyN&3pFL%Nte_x1A-1lhaGUN5(c{lH0 z`FdvEu5_RF?^DdeEq=?dvN%(|$IIxvsp-`Fx_bQo<^Pwg+4y$rb?f=Nwi^}wi9fCP zXYccAyTf_wR(IZ<RyN__-UHFf+toB1*BCD2xs&DlcIGUtBDKgT4&nX>i$Y&kY!$Aq z-@?65mOVOVR<YE^(u%!F_aE-=KT<FMfBKL6`@hIUx*2iqpZ@E4t<l}PF&t?Zk8V6v zK0ixmSJafA2+xD>8U(KScU#x*oS7yTx_GUheDY1c)@g=S8-sgg!$aLt`!0*0S;l^K zb#2GJRcAGL!j>HPtfEyfJb^`6Ixer$bNAX!i|(cDziOACJ3C^3t?T!D%dYKx&3w+G zbm8}JS>;dn9=EdYyC43!<@>a=Pp$b{%z4&zep#oNdowI<^S6V!vVT>Awys@k7A<UX z=k|`>YfUZ~-jH~av+m@jXCZgDRfZmRNRN!X9+19b?={m6J6G*B3lXSk`95v?l^?lJ zoxk2a{Jl9Rk5#I+-pTB8=Gi?C2iJEwnu#~&WKG)i(jZvD)JLH3w;{{IO)ou;l~#V~ z*g7FdU3;!6udYe5%pMNa(Bn^+E~!vxtYDK;?oRIbH|^4s3n%i|?)dGn<n@(xx1O~p z-`#us^gAZWwbd(%Sx;nqo_W2`e#h=t1-&n$tB*`OrSvf2dGKv*rThOL{8;^w|D367 zSf1eFhY!7vE5BX;_wj>?%g%Aze>BNk_<N)5wHhbErC%LQeXN$2=sMe8_ggS8S}owb zZt=o-r_FA&_&hTXGSa_&e{aFVx#fB>72jt*yt})tz5K1*Gigsv&LjHA>iPcvm+Z)T zY5jQqzh|-rS4z$|RIBi4&U?UfCth{cv@IeFeH{;$CVSoDb6I(C(PNV+<|W1oJD9#6 zKj3z>B6d*{=RWNOeMv)>2bp?IuY=OdjH=&ln5S}&|91Onw$8%+0ljX2FWbLsw=_8* z)2Dr|?xWe>g+F&5yg1+dU3H!HtuMQeyYv73_VU@k_9!_%?)RlRe}CSbwtRkPuG{Q= zua~FGt-il)zir~>*)7fotZ!}i7MUy-`&s_fqU>$qcXpOnSNxUwK4G_*&M&^Si_zar zzSiGfYq&1sZS>t=9_1J0B3eJa+H*}ihGFLg$14{P`x-rcu;=nILn)S^<+2%Hn7Z7b zl}47o?zuL1>(<#h*F&?Ot8A8wsC#Ia__?Aa|4;Q3?dp@|P5kWUxd~=_Ju8@=MIFk0 zzR2~_*T^s2;n)5jjVQT#?St&SWpA^;**^WY<^en3@$x4k)AFpgmEQhdHs$o67mR-k zpXpzp_q|5(n@q|F$p@<^u6|}0AAE1a=YZAGpKE*f=f+QWD*f?p@kjp0?~mxmRLonW zQ0cOH`dr^_3}^lSwr_Z<TW=N}$5{Pd^FnXgx#PJ@VtLmx+18gdg;b?@?`xTq$rzB% zc(_WJ(VMTtF{hi=)0@xB=B}5%_so^f-f<4PmaKIbA5Q$%GtDMj%sDQw_WZ+Vy6L}H zOSjcm#D8DB`r5ZY%YU_7g{@fiZ~e8;>*u|YUsJv3+J_?r3)bE`+Fw5RPT<wDSMmM( z1pZ(D{8sd|{2QLPJAb$=`TDl|x4%j0-jB=HXI5{z-!Jg@(c2%>q_;jcdDgaf(Lv)y zQ)XDZt!Pu*B7U>?_`O4~ulRiDTAzGA`-TYn0l(W9{Vu2Qy)mAkzrLnX;%s9tXPH&| zyJK^BB<?hRJC}0Mc!f{bYRf~J8Hxp)JP-A>?OJMSb)hc7c|qL=8`G;3KYF*<l`dKM ze&Mu(qKB&A-gc7yw*6enn*aMVS2HhAumAXb+ttSZ_ruh4zA`URp7;Os)~ozAf!nIy zizltFwdUJ;X~S;WL+_TXt$RB4`AM%yleb)bAwTy&f8y%ue>vNJh25x5|L2tZb!~jZ z+IM@u6+ewW<(Mb?J@wu6m@}>Je^eVM@?2+H9R6!kk<Ko+DOz8@Tq+U#Gp$vrKzmPw zn{&KS?&992Lp-+b>$)>e$aR|qgy`iQ?%6OSKGAE{r+@eBou*FVo^mC3!4j`7N6(${ zefQF&GIyPw`mp!lcg_tAde8Q)<qTwWi&cFyb<O@GY!mjDq+V-Eoobq`QF~dtao_4g zm!{{LMxSf$J1=}#EQFi;OrZMhpQ%SDH%dn&uj`Z!bDTQ$(vO)c(*I8C?uj|k5x|!0 z^8Uc=B@d45i=Usd`qr-PdY9G)cQAk5w~Q-&!Rv?DE-j03J=gb)DSz+o(yjSd4|G?5 z>zRB1TG0>n+ONM4Cq1!#dw73$u3G&HZnN(?`W#goWTo%_k@*;V>t@xPwR?BRORdSx z)c8MX^}6cRC)UkplNMOkrF`GJ^lrQL_WANrxBtf2)Fu6Yec045efjyjU*_7+$;y1C zZn-EsHC_IyVeTQnq`;P-jW*K^b^22^BjmOj{!;zE%y;LzEbc0s#)jj<B6>fY9Os)$ zv>0apJl-jN%;famz^_(%((IcRsy?om_;rEkhIk?M20_;;ss=4yv-D0SbcX7bPqcN5 zjgC9M`pdb38?q4_U;6!vjSjYa|Fw#__qCPWvAXZMAFGmfF8h5ZyJNmz<l(EjM|hL# z46}Ds)qRqxIAZ?zJjcS5b{ppXJn)NC-lF;t`?-0S+2<|o+VKzLv=+7Yxcb*?uj}vo zyL$fIAMZ}SpJP!s=jJ?#n(FWk&F`b<eyJ5+TajK+zj^)fzrBGij{EEx#XHVtvMntV zxHh-@FH7%^tiAJ;CR_-8ezv!~^X66=)-^rL7JJT@U%aU@?S|*S8$KD6EbO10W}I<f zX^&&P$9uCcGd3Eo^1n0J`({<!8C%v20q@Bcp2urq)qm}(GCulyv&zSRljgmvsi^<F z_#5xp?#h$JYaL!|d<Z!{Qy{+Pk)7s7i4VEKvQeAgTu8c|(V{o+>hi5BHGN-Z+C;53 ze!<7$>{qItX?5xT{|EW?t1ss43pu^|(agEi^-Ar2y$&{-+kfaz*M{%snnbKl=dMzi z;&I%%GM#Ayzwq^Zi3)xHxg~o_&rI|^?OmAiyy4<(exCe{uo&w!bL)iK;|_hF4$S@~ zB!2p!=&i)obu2mNrHNnHY<0buswo`SaV}fUOg?Sis?&Xz84{mnp4E8Yc5+{q){fp? zIxkmDTf)Rr#`0b&BK-P09<eJ`x7bT^Yj?BRevQ@Un{#jR>%0}2T_(R~oqV_NeJ=m5 zP1Z)-eD*j0ocQ~Ymv^3b^I!h5E7!O0o?K}7bn3*<%kOZ$RG)L%)1vCd#3JKIw{mB- z_#L0`-8#$pzi?*Tu7iwr|GCZ>I2<wFInQQS%oLs<CyJ((PwlM?4-}ld`pTJ|0o@Uf zpA?vF`A=p3;4UmqW6l*k?-_F0(zW^7XSVFd?2Y=9f3cm8eKCF2<;}G`+igmMFI3B# zH*ETTdA8$~$2-+#+Gzx@T_fjm>PqstLo4PAo-|bqeo*?<SVc%=b&cLmL8HqOCvy5E ztvB5g%++{h<SnJQbcN<aHp57+m1@<qR;itz#k;V1dGlOm-cniDg-usOcD%c7y5sdW zwvCZjO3lMeKhOKnRyxmH|Lfd++s{m8zEt{T<uqn%$7No>e_PLp;f;T-;@&F0!=&qf zYDz%%fz>59Q=%i3RvlfY_psgi*1Mi7*WBLayjEa8FLYGy{<`e@H_Cf&zrF1oB652D z<Py-i7Ry%p<mg1tRNc|D$gDwpZC=-!IN6t3FEjG*?wnol`<u|G(EIa#{J2^CQM-CY zf5}_rq=yFk-BLd3?G{_PKE2G?$#|!vFQ-29@pXIC6!Ro*_f*Py$-F;i!+YCi-m#M> z``E6!e%;e%zc|PHhZNIW1OB4Lq8Fe3V5;R+G~2xXp!JE}r?RHqZn9undBffOU4qX8 z!Nv6lt$#F&)b9?ATj}e+Q0VJ_>%ZMIFRofy&$!3J!LUEtf-BEP^rpl&y;+B5e=%4m z9avGvpIp}yKV@y$f^w0HPCGY!_lJ_pe@X~HPoIDB_<=v7$zK0X^~_`Y|9)}|@62cJ ziG5eDdo-}Qi+4<p?bAPVeTMj^a=Z9sK7rV0*$000HTs;~$Cf?Y|Lvia>5tF9%jP)# z?7OMMyb0lMSN3u;+&}*;!{^u*S9|6ctyW4e(=YHGds=04+;iLdpO60b^yuF?|KR^q zwU65mUZ0Su@>?ooSxlABwYhJK{<!{->T3I0%WLG&r*(f{V7zn3xhL5NB4Sr2`+hPt zO8aPf;^xb9Y(J#-%#8S9ZudEo?f&$lX^u?bf-GG!CE-=1n{NK2evP=NMv3mZ4-HD1 z1uV0s*IrZ#tDR$e@oc-5)Z)xFYE7ad*6Fzd-QVNbk~g*XUlO|f;>+gJIhvljl>t|$ znSE_*Dz7kUdlxtN*yVjmFE%c`#^-<7>3r_GUvY`<PqO0$ZQre0efyeKv%S^s>I07z zd(RzW)cU{G#rgV_gEv3gaU80XzRI8D%l%@OL%-6dIgCB7eex5t7gt?gF-@1dM*Gd} zZgZYVLf@Q1vX|ZbVrHyrEca#8)fHQJO}V<^C`&M3dGPg3Pt77uHQd^&Xz|5jjY^Sr z^oeQD8m*5!3w^A+|L-dAKM##-n|qhcT<iSc(4M*X*UCKpWGVjq;kyS1ZaVifFDcv7 zAepgz&obAfEgv@Zbc<^*k@RfM=-4}>JA}i|Eo#}+O-JVNdT(f3>{e_dES5B}<j#}g ztf{vSe%n-ICRKF7IastTm}~mBFQI1N!k%i1e7w3!RyJw%=8&2N+rAyVmb%+>^~un8 zzw2*TOMh6lPCNF8%*z-5k5AHx+?0BAT56=&A&%%1ZW|9K$Q&<};V+Ht_m*|iSjcC; zuw};-qn_i=lCy+9xjSiia-Iy(`<gOCIa1)&N#BLJ%iiW%@BH~mMR)T0$tQg^A6L&_ z=4-r{^I&`a`n}&RttR!QOkP$yFMporffMys*=zTHi^^WV_uB5N>$AVV-4(ny`|FQc z%eMLFXBJhRHqTqHC%qysBgVLH{{Lgs4y4~SKll8z*(df7W~~*<v2Wz(?z}c5&+g3K zUDfx6kIr0eS3mE@ga19hSIw@BFO~Qha#knh->ieiXHM?pn&EL(X~Q*-cm6g%{vC0C z=l^Njb)}C+NBOR1%l)1*HD=idwoBU|ZJIPw*-j$o9J|Z~yR8dOteadOpqm{1`Q|&e zZSM99P48F!xw!3Pg~={Os~YL+JC?ELA1laLv0-@g{>|@h`~G$BX2{O75aHtaT~mJV zRjhE=vc8-<qJ0}4I$X_r({Hx&&zYWQzBb#VUsXHVvHZ(gVwp1gSZLkXpQ~@E*Dtww z_fYk$$!9d?oqpIpbGGNS*%Nv1m=p>)uKXzQ^r)}St@($lpI>I*%C5KYd93v!%agM{ zzMnSv_lZ6CWA7|+%d($kS3lEdPeQBY7wf#9$?@&^7q1$A%C0J0v}B%evl*|=q@+Mj z<B}BCnW2t9{;q6GKV0E<)N9!T6)yjCDqJ@^IE8zr2TU#$I<<L5%Y3mJiW9AEm|pB$ zc4^Nkj$3gm{aS5iyc3TpZeif*W>1ys2nf*7+7Nzn1M@ej<ug;(Db2ibaV5XhehVwp z^GfG79lq=#Geb~pGT-}&cNOYN7jN9X`?uR=x3%>*)2A)8uY23L?CR>-O3V!sMh!2m z7g(O|c{r0RlqYvx(|$|gTMzf93LcqZ@y)^PT|*$}{!4R`=a$&HvE1t|pQtIJdiIH} zZBhzTv)I`QItAyS@YGFT%+0<3R6GAPwGfvho}zEI+Ri$BX300MuKyo{k2-JEact;g z60=F`_cU^wBgCLP#rgG{vk%Ol`ARzMiG6)VCNb`U;f(Eaf2Ih15}9tH9T2km%!L5= zw4_BvVJ@)>+Mf<BJJ_fj&1T@2&Cwe0uw`3*!rxzw2TNbGC3{al#;`)*;uH7Z&+PVG zFF7&&;JJq%&K*3ga`M^5NtSC;Rv5Hzl`50>>8(iqzwxAe&C}QC54}5ixBV-R)uspA zA1&E_spGf6xivjnj%N1r>=n;kSSVa^i{)DD+!Jkk95b_-w3)UV-prrj9=$EJF;?%* zpI_l+wskrG^HO3Bdatv!*ga!tu50IXXmOPm&78yaPA4<$_Q?aL52kLDKb9fnTwaxM zc-2$p=;<b39eyt?xFf;auDtDWbk1Duf^f@w!n<4Qp7DO+5r5NpDdQ4PDo<)eIqw3e zXF*m+oOrKtY?QH?`d4(K*!g$oW-ndI$vl7mF_&NAx}_$)p31@s=Y;M(y|gBDH{W;j zs?M;FPYpXBD|<A0&3;;JuJtsU{gwGCg?;Q7XX<vcyfo0>D71O1smQVSmricKvODQR ze)9S`P4y3pdv)(z65>1hcun=)UH30s=UFKDHgom5&;6ds*@9B*{klxD?moORiOuD9 z{hhks{V%;e+uAj2wLiVkb`s6^`(S1*ck#${$A-Di;q20vcZ$BO`gO&4{g-E)@8jbt zQ@tF^+%<DgKl7B%&poG_f3Ib(jdkrxP5&hOA4m1)38@}SImzRvWuCaJMkw}O+Q&6c zFN+?n^xib}$=tFz$C?hTY?8ZOe5Fr{EmiAmwb~cq>Sgj(M)Cju{W~2$jXSV6=aS{M z-jo%Gx2$Wj<=--EQ^wW()3!7{FxnFJRpn>9#?r?{0!vkdb)<A-71t|EZGP@rb@Qvz z!d;8M-`78Bv_|K0e=Pq)jwL!LmZkf>jajX5q<>j^z_c08^L)M2XM9Zk_FB=$y7t?F zb2hdq^QXRE_-a<O^_hL^u0Fnbq)zJRQeK&4wMZVdOooccu*Js{w@0;E{>ipnW>6k+ zh&PNgd;)*9bNamJ)tfeb7g=ZX|HWrv596DC?tH%4esOy&?Dl<MyIo_he~{JVN7b*E zerJhKQ`vW>V|mHLH!J4Z9G~H8?eXTi(VKWDtApQFx4d7prGCrv4V#{O{E4yoaw6>z z-|mmPf$z>|?Y>xi$EV5DlEHLFoWbkGna*mn3KRQJsmPXbL_RQCv3+^S8q4nGG8y;c zwH@CF*?oRc%6WcyiEM|Mcro*pV@q=@rzl*H?s~i`s>41<mFvic$Riz_Pa1nmmAtvN z`Egpg#=b7Eq^knu#s2mEJC8@a<-h)D^X3n7-wmvG=QvIIF(dKAACpawdkY#guDV|e zlZrHZ{7qwvoSx8|g_pMovR11Jz1b;Ylyx%0e(|<lwxT~;G7lYgOKs<3Es1@&chQHP zQgMt*;urtwO<EYbU3~6`RSkK|UA9+z5KInTFxzLFzH-U*)VZ~%8uAoGFUCI7{2nHl zkW<2;S0Hgp;NQBs2g@GtUUc&>b+K33_ioGA;Gfy?GB+Nr{%YzPc0X3~LoY}EA*qC! z+;;-Qmd5rzvJ@}&o;cZW=9?vlH&^&r&kgB|b22&>_=>6M>xAZmVRrn&VFDtK@utU% z8e%u*URw0|x~Rx^hFI@sOT7F23oG>1Wc`Gyo-tJ(D+zZyW4m{+d8FHx#;1pKa}S?p zR_~MfwXZCG&whKkm+@jedat+teUpCXxT^TH0|!4?{hqS)%1b5X$2V$x!dZ7RWMof^ zx%cC#yrbHO4>dEV$Xjhv^j7=-&)8Eg{o>}oXO1<UcRSutqPbOStL3DXZ1bPZWSl#l zbETB#c}c#^{_T@`Jefsi80lNy6=_ZioiIx#+tj<NvSQUDo&LnSUEH4^_b$^u`bf<( z{b~hwa`lT9N3OX!KHl`=toWC_-|P0Ti7ZOKAe!^?l+cg$?GtA5ZEZVMa>I(PBiF_& zH@V~H!4HiYyP7UUH>Mv6pQ2b*d$#z-nKq61Z&FpR!TO87mZV4eFTVZGWA)ml`xwk- zm+f2CaP!R3c-;is&x~Q4-)4w)XgR-msj_uB?*-jJao=jr_4lkETz!3Pve)wsn;-tX zanoee=FrkBXTrpdHdpqDZP+%q(tA#FdH4x2$+^YxPp%oC-s0DmEM{oae(sV?GRxmf z9oFmzx<j7Gn<~bho@6uGPd0=3j8a$lk+|Cjd5tE|x~y@iCn49&o54wH)z)oi7^AY6 zJ+CP>E4t%oDJAng&+gppSF^gRX9!M^do`ozhPmEHPfg=_%d*-MXBq@=X7XbVdUl=d zdrqeG!-Yp0M0}2Jw8|24RiC!Gp5;~P`#rw<SFO&T`p@j#b-O7U(mCrN$+4Y39hVcc zZH-|`@ap^bZz&(mkGjj!mpbji562~IO}e)kMaCJgWc$5h`$XjsIn@aP6Bf-dEUfL_ zUH0ydEA!0ji%(B?XaBH9<Id}Kofm&@*?w}@lRqA<oJCV^=(|7DpY?V}9eY}Scx2iS zt*BGU>c;7-ZBA^I@`}mIk=$GNW#+Xv2`5~)>}mA-7gZ(~@%i)n{Xag>-~Z$9eEZ6b zoZ}0ft&j1^zUVw&Rh9Hn?&{$jeQTXLLgyC!@84X$!JK<~3x9<2>%_e}#l3=ccPo>> zpE{S<U_SBVQ>Sa2+@E;2zc;;N^)jxxDA+Nwp}L35c*BCSDS|n9GdfnLdfh#xvt`Ss zux(RVi#vn&7X7kzXLf48I3qz{qIaS6dykU5poE9M55F@XUiI;Zh4k#X9sjTD^8fq1 zudmMS&~kx|%}yK4gsK7zX021pR(`}W@nEVM`!PYLf(KFDZavzIb9)OC<GR=Uo3e7t zoHf3s0ur02rmpQ}+AyJ}bdy8dJUbh^e>WaiALEyQ*?Y9=;d-W97kHu+ZKIFvVs)$t z-)1LyPiw-xuL1XBtS(q@vU9neV|FG`bVK4|tu$t{D{}g2hu<H19UQmv2;1Aa30v3Z zc*}_CN~^u>EV%#T)4cQSto1*OzV&`euHI!o|NNn5{rB%>WP<*l-R8ZydYkRJUlHr( z2O54?WZvdnEN>^jU3kvMDXmiv94nf5?2JTaj-5dA_s+^suY#rGgQKH`Z>^TMN-(kA zcm0ym!@UPsC+^+gZBg_}V$)1dTaL4iTzqGY_w+IBS$R6`!9ClPFF%;%?`^!XUP3yV zIcxu}EAmlC4&9yYclzDF1OHsB_HIc1>saPGdHu=d-%Ue{4)VvRD<4|@=E=l|Cm)(F zZ%cf8ZXtiZl9boS-WReW-AuQhYAyDh&vwQ5B$MgaC%>cuoA2zIe1k_jDDcjSmCm<y zSw1Kfl;#>8+PUSDW?Yo|!@ddphj^tOF8^H0<{PwKNGbC@hqQS7oMiVl`I}elj5hr} zEt`D&`oAa9zxVySaWG%jen)Z59~JR0y1PFw`)B*K>bv;%wfmOaTiDrHeR}?#hnMHe z1Z$%u-TFnRFL17F4GXZoGV_{!O@{Zh9cdgBT5mF%hO>!Bus=PdTA5ZpG3)ZH_4_vD zJ~sYX+FO3N;?2)5*Tdg;-Mv>^b^BWJ@82QYI;YF+d@8KFxOZc>_`cuzxgUFL|L$e4 zZ@Mmda>ivP$;AN@E0l^Cd}UCc9wND<mF<h^lNCB1JyO?sG&gLJelb^ED4I8UyWzh8 zHxI`xl7CM;<ETC!U-9nE_TxJjeArjO`uFeKee$*Sztoqsv0f_|vAuny<l<ISh57~V zpDr-!Ni68=D7RJmBdvT+(oOy<8yBnlYYztBBmV#A1>0&y+?;$!N;D~N|A)t%4{y}H zoay{xCY$H#uRBiqR?Q21SUFRDX3@M7zfvEA&C6R7^(q`Z-ik&YE&XR1m2O|mzw+m? z*KhjNY;T<@y54n~_rj|SA<>DmJ$GsyQG9d5`9P`9sWpv39{Zefew6%pQ}D*O>VesY zmV*wjckDPD7~!5UV^i#v$?f~LC%>tv$xV5E;N<(c-dk(0{r4_g^fvnYyNZYZ>Zazt z_vXKAbi+idFTUpEq5UCB%3Itsy2=~3CEP5m+7qX}@=b{$!~YQJ^q{PmmIY~n5{%|H zDOY_A0{6}|zd5N&tiO)U!J(Ul`Q>)!i`qhuRH{Xftx{HvJp1W{z#h$z%UhGKFMhuA z;=kkPwRu)l<_YO={F>XBJv~%^;eAcVc|BhqD{Ob|Y7Sdb$|m$WGk&sf<@<z>PsOT) zbIw|qee2`pwU>_CoBrafI(zv#>EOR5*RF3)e;eePZmC{XZyc=p%AaTPgNFX&Z<ucI zF6D}}XO>PV?Xc1P{q}il@|%U557qw{dlY<rpMK69*<j24%5$cD*~GqgJzJHKL}#Ac z6s>L_{nXe$tBx`JWc8e(r*bU5=-}$b?5<YFFZ@pYBjdANQSFw5{HId8nsuI1IXCX8 z)C#<uy3^3^!xXRZS1PUSN&jSQ7hI9e)@}XTv_Yb^k+D=GU}@RS^R>U9M)Pd{_vE&_ zrQd49o<A>y?WGJ?@I-Byu{nS5r>;}qAHLQqF36~`_;KzHyVhOng9}Za58nK)GOxb> z?QgEkdlq@l?k3Z2F`g9u!uHrY@rIY%oVsP()kD)3T%GvDM5%F&^|p@IR2~KQ<~Q5_ z-r4*nd|%3iTm8OV*5!-q1zp+iNBun{@LO+D=JDv}^mdlT9rq7>UHq3T@{eDa?Nhbb z4Hc^|y;@-uBg-l{NARY@indh@(}NZrEI7D9x;Q&~leWBJoAdj7&)?mvDvQs5zi)H& z_PKX&&$g+3alw90-IoiQQ>z~x=f6{Qn%REdjEbKN|NU!^o44b`F==tVJ>P=ewp`A- zkgeS{|F-Ixt0|pg(qd-J#)+nf=bGIyZ?L{L_0g$vwU>Gu)2%I6YaN=lS+aX?<=c(t z*GCkdpPa2f$8yK}ee4x_FW%qYo0gHJppz3k)82enX~&oIT=q|{DMns3;GU_-cD~18 zf|K~xkQa~i4}XYJ)Y8<*;atdIyL9D|V&9&bI|Uv+_|E!m%f!OaYo4`Ng8pw=W46+6 zi-+#?rz<p0f75MucVd6fv90pYKGTnr#gmoY&9-WDl)bslem$anSMRUF)nAXal%749 z-@o_Awb}Rgf4G$`DH(rg+hJX$c*Wk9S#r_yW_UArZkEh37c*x4qS5+iJ?l}4J?GBN z7Hl?K&GK!gY@)(u0f$HHGgU9$H~VwrTI%n2Y1-$w-tV8`bnf$N;SAPQ)%y*$yw2Eq z;iMmz^Qs3wd*>hdoyPHVx@`vUtQogmZ9JLXyo#A?&j#N6DD@!hfYghG8R|x*h8ztt zPwsi9+aHd+8~Qcy#$#@olU({buA=RJ^LSo=&{O!pbmC}=W2DPX*H;zm@>ixE{r2tG zLep6F>wS6O-K?8_N4<a1sS~@u{;R}&GnxDM?TfDGGXEBSUG21Xesx94qoti2Q}<@) zac#X4e*5vcX`$J9FYXk1Ke?t_?k@b-ytL%^<98X?Ppmp8J3qpvrNTEs$Ed@3x{;>t z+aJwJGR&HX9GAs3`z&JnZj-^_?XddbT!8>S_YLU}=iTh*33s}y{bBN}#q4}BcURbP z)k=Hxy<hxYkG)1j{6t`X&N?~yYhS~joQx=nIPW0o%+PYqZimg;MaQO=ZrQ{+pJCc+ z74uCVQ)ls%^={dAZ=2SaGoN<%_pPz~^;7iCmaNZj7EZit{`;@_d%3{exwSd@uihQ) ze(xuEpQ(MLbB7%FXZa=4UFOG++=>%>t2ymP&XZ8ZR0h_+_XX=rJGp=9c3aG|%y-@N zqv7$*&zIk>|F=r0{_u_yr?Sr%drp4H%$sj#|99^8`mgI>NUMEG)9|@I#ckP@AIj|V z%cr~Ei)-1xdaLitEpA^*ZU1F7^lN_kJTt9SgX6i-g)2(GXUSRivTQzdW`kDmwFHxu zmUHVSzOgTB72KD&Ev26M7cWD%MOakpnjb}CmQrRDta#I#Uu8UfviZ<O@rfVnYM&h8 z__dhHUH=hV_JQ<YHxK)q;{Q~1{K$bW)8xv7b60oI+3px8{;O`gME6nsQ`#O+w(j}7 zo%^A5SjoJHz0W6KoyY&fOJ(h`@^`KJ*%juKl8^pO@%+oKaFjcD|L-C}&3(Vl#Xoxg zDkr!~cA9+6oP7l!&CfqxKRY*AteErHE>XKrqT4k6TcvBG_~e&Q&;R}Q_K)MMa)bB1 z^7`^s>&FU>x-Z{0t(O$i{KEZVmDWTj{|U9HXL&3vZx5H-;-D9y(0noG(aJS#OE*NE z)~*Tdp7Jj_e8-9YT^G;)dj2Evj>V&tje+gGiqRL&Xp2}~*u20>z;^51XWKJnx#zm` z*}mf0{nc!K?(dED|CbAIE82W8D$n|#?UoPrva@8I>O&r$(SCA}-KuQs_S%)n(~kIS zB!u`s*!yP5wB0Ifv&FY*9bsoPd!{B*@?e3F(!yDLBY&K<w|l`;`Ssm|$NRQ?5Z?Cv zr~2Jq(W>$ze|Kmt2#V$W;<~uDQG4_L`FoFK9d7pZZBBg1bvRD=f-(EX{VP;As`2Tq zU9YP9<xlR$ORpW~OrN4@zR7LXm%4mytKY|Jepe<6wXQ$(blcn97yQw7yIpS_v-2sb zVX;kCw_C5Xq;R2MZ{b<XqKJd)la};-5mvR_;2Bk5Qh1I3#J#%f9jmgx$zI)m)^7c) z+Y9n6H#~gR&wuEq)cp6R{tti0Ocx29AiOV9{i?{*IUnwRX{l$M`=K|@`<$fxGq?X5 zb3Xrlewn@e`TVb@{;|7$Nx$4N-*vKWzuMnD8AcX!T0ijxoL@7i`ogmF@#jw4uh_?7 z8e25WYeHV?<rL;wT2nGUoyst}`Nq<ub7qKY<kXA1E?%msEW8}xr6oSo<^JW4eOYQ} z{)CFvnyLgRU0M*ZtMXLZsw<0kh}AC2KPLJ_a?{sk9=m2OS-iT?VRG4|^8tHK&*bn9 zh>BZ#_|?(rx6ZFJS#vV>@$r?0cN7k@eZ0dk(f#PBkfS;R;R{ks7b!HpPYvG~_jjp} zn9S6p$vfnZw=daf?JYIIe3Sdn0G-T73~`#_Y!i%?TCFCqtZ~+VZN$xW$NBC#k=3d{ zyhFb&VL!I=ie-=%?^|Vu<%}syP76miO;~={=#<9qRX!q5lYC$9mAtq7=&PX2+a?!Z zU0SW~5?kxO#$5DkqVC=6_0x8*SG=8gA?EluzgK5xXjhws-`J+1lQw0q)|&8$9Wys> zTrEE3dzGbdLRs3y$i~Er+%fa6Jk^=?M$R>bdD3<^+Zk~Yis$OYEUjmsj`p6=sbye) z_2!=^Ja2-N)@rU#s`NOy>}1!B_1ijRg703jQoUOf<7j@luE<bS=%VGPP?K2K9cz`E z`90qYzgQC!__btq*u#1KR_?R5R%`h#*cw(+P}b<9P<&kANJ>D2U5fiFTmHRMW%s8n zx~X=JB|KFnN$hm9>cusSQxApr2X0)k`bg8m{=?^@KE2V=T^77;^Ogzg;xl>qWhPXr zxy;_+cB=I^!^yZMXQh32P0$s*8$5N6%Z@dlBGM}S+oC+SSS)agT&*rEr)8Yoocd74 zlUI}L-1q3L)L_NW@oOwrE1&O-y*ppCQ9O0c)+D>EqBY7%4nLjl>!*8#EmtrK_5ORP zI4UfE*;1|=$xFu0Zs$9i8(#Ue%T8z3*f2A6<<c`Nw1e5_A751!oR_#~$MdWeem`f- z{<L+Km*eUmr_#=7Xk05k(m2^jbL-siV&zYA$|eXdn!Y&hW|FB*QHIsyiw|do1esoK z&)>V$rTqJ!7t=c85*LJ2yKd6%p3FNjx^UC};ujOovaSgG|2kUe?EEDr?L|7fc<*mt zn%!9z+TqIms8s2xa>wK&36B_@c`cf5A5kbs5wZLvtj%Y<=h6#rv6zU^M1M)%(3@hh ziMdanmKU#?6uRo9_K~ml&%|DK8db=gT+p>LUF`Xd9|C>HTqGC`6})$6dM0kR@D90n z<N1-4l7opGGDOQtPRw1nf~WK3kwq(X0^|<~Kbm`D-4(SLY;%%UXNx^ziQcH-t2H}# z%dD$My<hI(I`(CeQ)z4%&uPKmS~veG_;?CF73)x|J#y%lk$7#0(}d2o8z0QG3RIX- zw5CDYW9_~pZXZ5e;4_n2<JaFRaZ9uJq)oa_+<|9WN1jz~GgtSR9+?nm-<EMkn2Bfg zoE6J`aw0q;Pbs|GC=qZaIs4pAb*1eOdnOt!SQ{Ab&nBnAYS9-E)^b?PMqG8v&Q>d5 z$-LE|fu}7S%H54bt;6?g<#m_EsLVLKTEGALD*Fl7Pp!&2lr8$qG+;`2>B8bnyY<JM z-OcW-UvQ)-?&h@lv9UAi-(6VtV%M=5`{(AHoHlp6-2I~CBTvv_A<O>;o$DJNx=m7+ zFdFdsCW!k!D2)}pT6*x9>w*Wo-%_S(Ig0E(^6YGH#pKfNfQ%ak^G}%HRy@7kQD^;> zYy)MZ$!iMyh3;QZ*%}*ud*z!QU3-G|$w=>-v9s~#Z=Fc9mkfsHvI?7cbXX$UR`Fg4 zux`)I-5q!P*1YU!-W%Jl>8o5;I=H3H;9s8bv^?*mb&vD&md3m+mAG*(Nl8B;D_n!q z_V~S~eQq<48yV%f)OFpsy{LV|(N_M%(t^hcj54{NQ+z*tmXJHx^r$pEbgks<l--M# zopX1dy0+wEan!uMVRjo%GN+493g7=rtLy*X6Xv}g+c&?9;BiRejk1}##OU$dJsw*3 zc;1QZP-z!m_3K8LmrQ@=TTg$>6@3d^Ol}yI*=%gt;A8!53FC``+p7W`E`OfsVjz|E zrMHFs-O8Mv>Siuh(|sTNGPVds{c1b>S36qfCaam&v110a>gMd%Vcz$F$62kd+hC1K z+T<+53iiE4h3=J~v-j8<PdGm(R?%^l@dBoH&myTBXQrA|E#nLEM|xx}Hm<A+&F2XG zmfxbkasQmX(H8%X%+6`uR=6Wj>t@2=L(*>wMa?aCO3jVmHQ|$#;NHAteVHk8NkOR_ zgyed*pJY$U6utTGU)ljDrh@5iT!(jZT>rLe)?~TQKAY5T+?n$!VftfE38j@r{Cjko z7p3uQW;VatW-x_M@(s&li#Ltgw#I8_a=oj}o$ArwY?^dBa<R!t{q+qe^2@u!*XTWn z{j=mXXIaXRi@tA_x4*x^Ug~n_U%IEN;A*A=w__haR*%eHANMuM&s8w{@2?ZnO1I0( zC9u1-wf*Y&Z>etM{Cdfq7ct^#`&>#z7_QvCxMXsJ^G{QW3zFhK6Sp)S?@2tSc|E{D zRD^q(Lhpmd;Mu}iOig7m7E`Z;E?U3ilmnlsT#(b#<*FeMom4|AK0S^}4aq+g;gNnZ zYSn4$oAXbfUisi&+>6CuLju!!LP9!UbY0BYrN!*c8GgC@=~uIY%KZnNbtcQdJycQ| z8av@m`>o4T?K|yS-UeE>h?g#8m58?G_`aC!_#W;}H}3qqrz9GclOFayzp-g;<a8%* zgSqw}l{P)MJGMR|Qf;c#LDL&w!>1iwxJ}}1yyyJ=F%3zjBAZ^^G+`6XTr)j`r&dJj zsKh>wx#F2$;#xv@u6#JYeCo5MT^GGJ2eW28owH<W?4qyI7R!IEw2AsDaO?Y=Ee}_I zd;DixYtE-#S~ejE0{cY&?Fw~%*3`Z7MBc_5TPA$)Pye%a))f_{pRXsjYqiUmt@GOQ z+K@?RotMf<2kTAoWkELVp`8<Wwiu@{HJ!Fg-7-OW0o(SqYNy}seA<;|Xul$0TScGV z0q31hyDcn#JnYX9R9+Msp?uZ<*MfZ!s}?Ld>9}#iCa*XTO>e#~)2UaBuY{Zu-t_b9 z)M%qZ->`*G+XX#0IJ`EV5@x(p`oNY$5+cU?L>riDe6)AUY*2{OHLID($#Upv18Ypv z!Jfpg8M<pvPx3CBc69p0Dxsblh42L@*6nXyy7JIJ+pg@_r)Kh|2pKHx`|fdX?;6Py zPgaP{*bvR`6?;~b`&jChiiCBX??Q|kgO}^P@Yp3$S)kE%?dDO-gDo!%vZs5rDX{*0 zKEY%AhfkXy>(BA5ua>DXt}cx@|1Usg-d?Rc>_@ou*DU_(yx1duVc72V1+J@e<wVyy zY;61z|2$+H)1Q_#yGp;!etwyKX@%$KD@$dpcKu7RDw^NFt>?|pLu-G0n_?%wNq%OO zmXmX)VWh=#$L7@=bXHuQe)_S5>E}q3#>D@@7hTqRiTPfcb>dp5M1kqjmxi~*i~SW> zCHSnfpQhu;c2qmINmO-Wdd?n6exst~$<4nr?mQ_v!}z(tE2h)t7WV<Z6P1-#^54}C zhXv~~^!bQiORD`7;>ee%H2Im;cJ{vg#WOq7r`DghJ05rT#UUOAiPYCk{7J`|Os010 z-q(z_6i70b=Fo7wY9n?a;jwPRX3eH|E}By$&A#sRnp}Ep>g4}x_dH(X)BU8wQ_27S zfn6pcE|VR4k60bs8KDs1Ar|Bs6%qYJEV1>)8{-zWl<xsrA7*ZOXFuD|De_&}pT!q% z&i*)air>Tbn<Y&)Tf<z^Sr@Dlo3gy)qki-3kLUU`R!DALSj;hJ|0!O9&d8W0vS(u4 z3TrmKool16{(Na<ovE7F-<vgSG*&75E6-y(^Ov=9)xpbL73H6&Y+m9f?^$(G{n^i( zb5}MrUUX0KlAjRdtkL9AeL{>u`-vORa<4t6oqu%KMA$0b7yT}-A$9W2m-kPZ<_Shu zhekKQ-M@PV`;7Ke50`4co7!}9UeP!CClYc--&L9_J^nrTFu(8Er8yao<WqLYSgJ5N zurGY?`c~brw(ePHlhl-*-eqo=^(t@wzO#GLtQVXyOl(FnAFh7eJZ)0Y^6s+3)r?UG zW0DRB*iSuio>6P%<%yf3Y*gx39LW17yWr6ymQ?fln}41kC<?g0wpQlkqG^!|X@5n_ zC*P>i&C{s*-}ybnMZ{~;>RdggX=kRLy6MgB=yqYNOvA3X#;W&rC2)urR?F1biiQ{k zOjn<rw7tIQ;-Br0rq@YU7Y7P@IQzb_?cKd<X0DOt&qbc)`;M-kIe%7yjVkxcBLbyI zI6oiz!F7Df(N_ZNe@?lw&!Iq>t$%Cfx<;3Y;a*03O|CUxSHExmmHcdT&~}D2ZrQ(c zZrN;ma*O}VVZ%G`W_sRS-QaBf>_VUAme(H45|dLF96k~|b$1!#YAf#Ry8D(a4L#Ow zwn6LN^u#@D&$eX5tXQkBqqLWo|1GyyRgKi~^rfFWF04~`&=XnsRLWgsDX05+zxY#J zSMU8fs((c0`1y(de#|tuA}aD~MYMstdu&VDmAQu5HCumd65(R!`IYb}Ib-!{l?7c} zuK$hmaum(kJo!>UWX<sheQq=JJxZ@lme^{?wddOPMQ;W3#NG?8w8@&dcfmZ11sbwD zf=XB?l$h{s)|Z*OWOKuT*L5Z<pB&lh+IslbXQjJJMUUp(+^9eCs`-R9QZqj`ZR&EF z?C2+zF+<RI)4?Wnd#w|!pZ@c1eUK$1(Ptj{aMCiKnvj(#sb{-7pLnR{heag&oqoT{ zjPvf6?^`-6qtx2fR{mP1IEybhf6CtaSx=oB8FCk<x5cl}5Xn&Ia=LdX{I)<IQ*300 zzv9tGmz_R#3g&f*i!R)o)xIQyFZR>|ap7yr+0AsiS=_Hr;;C}1JR8+BvA`nb&GxS) z=4EDK1!v?>AG>1iv0LNI#v2lvg)wK2d8~Y_RL#DLU+H|d;CaVq+^pYya!n*JoY;Ji zHG)6z+T{aP4Fz_o7p}7wZuu6tovTRnX!zciy-_*EYmTzlO}xHbaDC^R+KFegxi|5@ zSaJD=%~pjQP3LTVUrdfl@yb78x|B1?OE^O4#q;8pgS&HHx~f=ZCv(2IHRafw!`7*S z&-OF@_<tfPP;b4y){1x$3qw)iIHm7At{<4bm`sZ{4j13Cxj@`PV?rleZk09Hbq|^K zhd&o?x_x-*j49hXr+Z88^Vx0T`|05wrniCRhu=s{w3`(bpmuq(vzo8!hd!OI)1QA` z+q}rb>rV3~mpv}Ad2x=5E*}3=+IH+y#-+4bC(oIPF4*Da_HoKh7WO=@$@5j8YA*Nd z-xun&FH~x2s@{%(Eh3-3J>9wK+EbN9N6!5Ttj+g7f3_`<)8FUZJ>%Th*S4DWIZVI8 z@!@)B$&>akc2zw-t<QB0@3k#T`peTGHv3dklAZlZ!v)U$T+IS2uZS!;%dER*!j0{R zSDxssJCJx>`G(^B{OykIwL!15)H>^Hi%&J({;jK4^yH}S{IwrvobLZOsq@K&e=ols z|2x;8(b>IEVVc@S?Z#khHs8!I_uq!spFPKsxAk%U|7mLkS$=$1vSsgi5v6wY;XA$B zDbEXTa+gd~D`hx-OsGWE`pOJN$$9?rJ$_m9c6~`SKc*aDsD5E~<+J~G0ln<+i<N5s zeOl*vA?uf4gZ@|f7tRgea#&Bk<#mg?kQ{oz+*9q&;zgITHa%Rt!1=1ncHg8)Ibt7s zL$5Pb829BYp8e4%dgc`NYpVrpYE$`aY?n;UJlf6UdWQXbbi%DU9lH0r`JPA3c=y!f z&=xke$VUfvwHt1jdaFfX>prGuS<h4Q(w-kKJJkN`*6)sfsX5;4D#{xdu`-`ZT2bDm zmVNB*?ciHN#*exS&og}4d(GB3^>92xMx?_1o<tws23}s@yGxfOvG?7aCR0+P5dLpx z+?fgU=bLnC7HJySJ>?3}uI(y4+hr#)QJzhfQ&4tc!5_<2P3M|r_U0azwRmwbY{}8( z>JK-3SvY&0`e%zvcRA;<>owjg)M8cLu|SANoMngT3C3rO*;0R;b>**$;qm!9IjHFS zsoyTopRZl6wbsw~Ysj81R$Ec#8J<PgwO-mEbFx~!RjJZ)##NT(j*>z9O-@bUGp%HS z>oyB7f#x~sZ0X!O8z!+W4yjJ{PEq*oy}4+$!-?9Nb6&kWc_-!7RMROsF4wQOn!d@) zIqyB=X?@3@&rko9UYuK@uBv{hFKEr=#D(+sHq3jSWMv?>r#0!IaO+H?R~7*U{9y$% zp0k+musV|Om8*I5;|f=n?)HnZjB9*9J=*;6;j#}Y?%zM%I(FgFtBD^D^ktv<@XoEG z;&R%?O+AXGDOw$z3$ly1X1ssS&BYb|P|sNL9IJDTjzr#lrUcfd4pDwT<riI=Rvu83 zX7pO`$*I4S&Xp|K@&0s&*@2P{QHPd~9vuc2iK|?NiX5f}E6K~c**rTPm^5!`n<=+$ zTeWI&pS^lX@R=E2nrWAgFG#rR#2q#<ec7tllNC=gB*-j?-F@+v<E9g7Y&HRlmrmKD zu<Im?+M5%Fk^5x|mzn&2GKJT{Si@TLX~RVh_ac9Htr&BM7uyfkiM`x@v1CFlU)|#q z?E4FU$NrOHkXgZUqVmJjxe;NW2M!+mcZp#IkIdT&zn2y^Ho?rVQ&~ja?{RF2`P0_e zV4RqKYW34~SKfOmrT;Q#=ySfS*>+-KxuWfz|A{6&fp2(EIo~zZT=0%TsAbxLElht@ zR@Szz2yA+EP+>~L@y|vKfsfRS{<AL*460oaVXwFGy5jSl1uK`F-5sK(?a<wLPwAkT z(F#K$rFY$llhW3fbc-l!-p^T@P_G%1`jSb>B%ax56Vt4>N{a&c&SpAu9*$CC$jDn9 ztZ#HcGU~$$F%OBP4+froHwC}w-+$j}`t^&+(JBMgRnfPq^0M;ZzFb(|_UQBODXDB% zciicDbMU7(n@Nh`foB2=ccyjTcNDXqa$U8uk?qZL-i)VqOIOUj!B=cN>HoAd8+`&7 zW=J*I<cMubGgEGn(t5<OBL2ME+3r1mF5i3-*gxM_<=*NLzc!}VEbBa1Pn>YBh+%00 zf8q`QwTg<ed@)jcT5ram`)7P}=ZlpU`!{KvOS-}=u{lNbV~q!MdP?X)iTy`<nt#6O zN)%bM{7l8SrILcG=cIbJFM7@zD>X;++q|l2v1&EbYqQI&SKr+pc2&<}-d%gmJ#`cA zD$HHXaV#{#h5ZTd#yPXhxyoF#?=4s!ePnM}%EP$Oo0Xy_r~NX$=E}?nSDtbGXJSIC zEDQI8#J#fu*CZW?n0ZvC`rY>vVuvhOMYm0O8t8OF>%8L$uhnP#rb`<?@+h3O$;EMw zj=_|j5s}LaLjCRH#B@JQy!<RRZ`#GMl`gaUFHPGt%|dv_E@Q3Dr-L6(J)y1dGfzVL z*`yVdyRtr=6nUNPVm05b#BIj@GYM9vE`~x*rJqBV?q+oLWc<=8?5fV~`f2%`r3I_{ zE-c=Bggc&BRo3*#6Z1vuT^GE*zv|G5u&dveSU3Dz%Q)?f#SyLt*TS`T9tceE`?<`z z{pzQt?RUAfr&NFR{lj}OlH0)A$cUpOuzio>X1{%Pc|2RXH<lk=%9FNoru530n-6i{ z+_z+3S4weD8Pln@ix+>aV(NK*Ox;pu{pn9$KV!5kGz-`6Z_Jmxp8i8+de5V+N~yhZ za-T#cul<Q!V|h?c<*TTr&(E&)>C;qCJbc;d6Wh~tOfBWN+)v3(aaYfLkZ<pQz5Ji% z%)h7N`{Yl(S2)1_ciyx5yt5blqXeI2?prqD=b~%bU6&^;l1N=tSTWOiP4AACHBJ++ z2MO=7&)L1|V&9HH#*gd$I6vxp2>xH@Wn#L7yK>%w`hb)`i68o9cC{N6e$0QxKHVes z#QZsF8o%^CKKn0xvR~lro9O9!PcO;@E!pYV`D{bavje4<eBLE+U%IOhcR+0M-vf-D z-<BJ`U3(#Lva|JmmiX=u6Q8YYJ0SGLanXg;W}6d1mfof>rd;rf@mS5v)c3{d)6GLX zyEzM#*1kvyfAo#j<l^h3h@Vmm6n>|+zGL9(di-|J#)&-csh=gL`LcMXo5Wi^)R6C2 zW!4br(>kFN`F`HR*SR~2mP+o;IXCUtp{j_Q?f%8Fn=}G;M@2|Y{Nr`)(C-4@xYX4v zl(S#Xdvkg^)5~4IZfsY((<%BSOSO8dfq36W!_2=f(LzbT)|aQxJF3F&Y~r(Szujgb z?X0M47ccg^Zr3>Y?3ctF?+;dQEq2!H=ENVllbTrF#~kcpZMC~&#%951=To<|FRr-X zp`&x=wzb%va+f>>wzcbjGMoD(_WhH;_*OjS<>B(D=_z~EqO_l73x2LtJv|}LVbM7$ z!4Dlz7Z<5DF1F&gTh-~K=l0)hk!tlim&f0({y5CNNz(V4j>ALWyK{D_pZ_41_VcID zz3m^Y_RR{9_WnL~TidH-7OR|3CPfP;xtRs^+AzzlS9IDIYP3h8@b5nTh>~K}C#ox4 z%VtDOnsq+-|JP3?VxL8p`F!MFH-G7)hrv!^8?D&gD~`-La#>x|zwnvEzG-fYUmmr5 zYNT_2(E)Y&=FbnDg4W*Z+9y`b6vKNh_()kvVc#-0(~Q-NHn813cl29Itw8H;-oB8v z^@&OQm`<)sntMDeJuB+@qyWF()f%ghZ(I{K<7vRh+47u$4s4ndUhXgX-1qHQHkZp% z6b$fQSdqc{Ydfo?$v)GA?r%J%Sm;E}%82fJ-6Qjdx01<so8DiIg_A<wMn$yv9?g#D z?h0NTw5IiG$KB~QVLdl>CZ`9RNKTCWr&@H<RAHr#)3o|Pw}60+*BQPpG+oFtWvWfP z%G33{*Ro%{3D)?z_upAF{q+jRE}9lsu?q#9ew}vp%&u(x;=^|Yf*W5i+isv~?xEoE zi;pKjOZs4BaMgOAHP&a0Euy|W+FjJ}HG9K+!`-KOLw8&{;i%SVbW)+<G{d6U-oHH2 zj~>);YfRcJIsc}0L`lVxqo!-~Zq1Zk!TZu{Zl2ib#txM&dF6X#Z^T#E9JQ_eAl3Px zwNrMn?i=go-~CIr@xHa5(=}86Rb?WNM1Jr4?CKTOzv2?=Zrg=^f7rWf>f!b0_w9am zR$Ts$$E$t`x6SNxI~OkgdijgosmuoMGL4THUNRIn>vvCN^w_d@t4~&bs~3N6@u`+T z3m>T!n@kV(vgc*AXzx{VmXcaH*^qf_!<lWH*Ys{>{$L}W!n^9frpt}>T=5D2zvnnq zg#U;v`t^JJy<dMbr%t`PSykyt)4Z#G|6OALDX(OkdV77M!M)#RYN4DZ*H?Bc?Atxj zx8!z(^_F>(Yj-?3mN&KWz-uj278bkA!bNYh%Wr$u>m6uXGAEC1-%7=dmoD*lH~CBq zi!x-5_?x_YSKgMXZ;HZmq+adW$guC<{K(tWc8Tw}Rio|fTt4;dp9CBEoOs{LI<C)q zX53tNp!BlM&b(zY%LT9Z2EMv(@3wDga8=<w<Ktg<{y1;7`~QCzwxo)H7`B-vr(=vx zoZ9)ueWT8a1-(Dh=J5nLOvqE6=f_l(^s{VdOdi7mHIdV1qM{d#zO0p=&@pfIl`Fa# zF;^~e{k#$&JnzPV-JM%RmK@oxaGEbxe{I>lNe`rDJ+p%!S$$R4SJBfuy5~lPU*a>? zQ;YI!d!ODqI_Ko{*QYXyHm0@3-?9;n-xDP7x$W^RpK1F8^`b-)mhJZVav{}Q@2u7- z9i`WKU)C;-)ws59P4tF{%Y46PFeIwoRn)N4P<UCU_0l4W=XL3+9R-t??O4;Dp8f33 z$(<{ui=K(({tP<MHSNj0CYE!l+sc&O&z+R$vPp71%GD*8?Xpo<NSn{WDI)J(lhR&2 z!Dno$M_H#Ar_J>a+Qh7L<^1=@#g(#~s^SxZOcfTgedUon9w6vDEh~^`S}J3+hmWK5 zzQ>y?KM3sP;Jt9*)6E4>cC#tnG?wb#y(m%8j(<wn1kKr|-==KkIcBXYZmQ9esU@p> zV&eCoDg2HTleS#xJh<;^>5iw*w|zM9ZQhS>Un-^_5|}cd>;Ly-5BhdoVY>45sN2<7 z?sX=5mIvPK@e&SUdFJ-##I36nAI;n4*5UCgi$~Dziq1BH6HT@DHz)n`xx%%US+s7> zyDLAWq}J>IpLEwZ$iOCc>V3~33q|Gk%7W*umv=uowq#A*#V3~}=P0e-e{WCR$H%|D zZmEQt9Ax(mUb6hP(Aw%xM)Nf-&Mw<@z(iVpZrbE+61Go&%nM8RpQSDId0u97{#4QD zw`v6M>pnlfEm2!P)j-hY*5<rVYnDXpw_5Elknug?*4`;)I~cSR3!ZYn-#UMz#M^U5 z<}3C5XT|O)Y~K{H_DGX0GtXj+dCRA&{gexsce(lfyma%&iMCla-?h$(a2dv*{2<h| z%vPmrMc1;`Cs)tent38p`oa2Z&Bt@QPP4pvcJ%a<m8*_fwnkYe>8#XNjon}2rxibY z#`{H2@0`+FcmL9w-8cV~?kQ4zpEvDGLst>UftBG?n(e#zN{x4}x&Cy6-fSlAO?rNf ztrwPy%xHVYXj6RBUO#N}hmt8j?#$fz@l3iA^P0ng_e`=2zpMBJ{9VmcelTOxtO9o4 zg>jeMGoAH<CvV;7cV<b>oK?}=_ANNIgM*bnjJ53Ul)F=II&xXgEh*i5>KBixYw_mT z)-~R5W%fAVyqHrh_Fp2rW1a2?`&ke7iRi9UYp>pUQZZ+Ds#^Pps96e$`f^KJcWkld zn7;Jr4wVhgUDnr_uOF0q`nIZad6oXX)mld3+&AZ{shzvC(jaoRYv!h~>}x4&McIs^ zR$GdxU)~xddQY{pKY5?njmtmJ-w>M6JNN$_-MsTly(9mqCy0LjvEQ-tzuBq!Nx8?8 z&xc8LvLty&2~Fa7BtM;_pfBrR(huWV%XirYc9iaxUvCpNE$zw0Ums62|62Ka0()uf z=jrWfwl76xgnqp^vomx8Gh5^m;Un2=yOzy%^><^rtSZj4M02|G`mHv~i=|Vm)%w2o zEY-WU$7CbdlMQzYkHw0b+`r(~#J4ZbY>D2j9zQ|v+tZwn#7uPv6gzCW=Z(8)yq?43 zKTj)^xYrf_yCh;ayZ-^lrnk#B#h$d$y1aSnq=e~iu8G}B@6L!8S_>6cyB%4*$u);b zRmCZe^ODo^$YO(u>i3s=?5n9(iZ-^N6tF&e$^D70qSqBKoY%P0II;FOugdw<3*7TI z=l|T6VZ>J&a{8%K%jR1_PpYS<x!h0`PTVYez;C+MJmYAK2Ch<Vjpy=v=BBQz{8#jQ zZA569tl7J)W!G{zj_SF5pXPW+>0}p&XVCW7lS40YZP?*0n{N48-aF!ryO5anL;Lvl zuDkl{bDeiBeSPrLFP+aS6UFP@dAipumHcHCetg5EyFGq~rA7WQKS(NHIDNj0zJ2E5 zr+UgBb>&VxEX$K_rubQliQa$uV7Bld^|v)T2i0ZLqr&d&srtcJvyMe_ok5bK+3{U@ zvWk;@!oH}k^PhI`n*E_E{$GE{Cn{uI|Kr|nq+{HB?$hFowPGEiQ+AkYM)plxZa3@7 zrEWEm?n|YOKW;x#68D|Ty`cZlL!+hu-3znNs+^YWNk4o2b}*Z_B&(!Qt7_W14R0qe zx#^XXF+a}k+x=~FcK0iO-dw)Od3XNZA0;(AUas4A&~&QpZuc|OYs>k4Z5CN=`}Shm zw&Ufod@}zIZ8~3HROtVw_~MCM_a2<OwjuSc&z|?$?&-%pW17+zU8<Bcf9CJH^{k<& zD05YoV71%itu0qVyOe{DPS%&4`YTpSw?jENR7!|jB|yg^ZPPSnJt>=b77MNZWnYu5 z=eY#97B*G%_Le(YU2KV&!8updhUN5Cmb2Qb6ZBM6e|WBy^IH4XuP9J&(wx^vIp0ce zve|OtV0)D6|Je@zrhj<cX04~=zx_x@s8jx=jZbFIR&DQ5ZEp|R5j0K0#=EavW5dLw zN2F%@i$v~Fdb0g_g50$LIj@<wHTb`2$d#%q-?mi0864MpRm$^~uEd|?S&DOiEzt9v zY&&tOwh_0_iLYJ9LWRmrR=>AxJlEOcCVbg3)8){`>`fUa=NImqwr1hJtS|hPzf@#C zEm7}(uX6r~aoxo@P4yRhT9^F^)AaqhcG+Ho6XuG-22VdF{rT6#T>ntXEAhqqho4_I zv$Fp$T0GrO&MHyr<CJc{noSow{ZExJHLbo>@JRZ?%#8{QU+tYRXY%Ej?Z1{em0Z)h zD0yO1y41<dr}|Hpe%Pm!v~;;0>m>dQk7EN@aemWY_&d|3T(~%1ahKxe_s+K@a^|i2 zs(Z<OQsNiS)+yK3-hA*4_!#UcbX)XdiE!oAhsCSzrCoHt<oM}pf=R6ZE?0vLKjA2~ zz2`;sR(W)pyK((_uT|h25+TR_`E}*h5VQV=H@$t&Jm>OK7kIkZ(57EgXZp#IR;gXH zvhRF4IxmXDNuhP$#V1bYo`0MdCI$I7q;r3WThJ5U_?!LH>vC@6I@R@c;a57hR-9j} zcf$0Hz_l}H5|unwq-|UtGj*Sf;kOAlgA$&yRBttSsVTVGZ1Z;|*Dy_$K0A-l)(5Xc zMcX*!%6A!5AG~xg=IGJzS~2~M6|2oc?p#T|dqkt4#OOWOvJT!U@drD8ttbtu{nM@V zOG7Erb#bQr-n!}ep*yB7+}%HI_T_WBGbGiFWQDcQeO<?}?fuCNiLO;z1yc-{Pdb%f zAoAn`ccIC%4h#Ox8)OcZI6PZmAr^dV_7VLbGw<~$6dp95Q+V)%j{R3&Q`cVIb?3t# zJlVa)VE2lRM=Ou?Uv&?;+F`e7*NWFi3s+C-U*MP{_*Hptlg!oKifhUf)y~!IoT1ut z^pag)r^8!!W23^C0bvs}95?Tfn0=Hrujb~y8@`{8n~Hioe6_HPU-s7ln@`=cC)+;Q zoK4Z*q`B+SvQHN)EM&S{4;M;TmkRxBJ<qNGr265FNo@t*ry;w+PWROKd4KwOsOD+$ z-Jplkvs4d0*wQHb_FO>Wa?QyOpdDe)H78C^U#@R@HeLn1>1&e9BvoMtIiCX|SDB0) z-OpZ&u<}T`q|(^c=##b4M`}~*CYIAF6Q!?9>l98tW8`+_v(wh+lC?|MAL~CJuh(dH z+VXo_-oJUFcZ|<>J0)E|uc>(U-0%0(U4+kdyhy$(z0b~UJ@3{9Y`2To82(AJzHeZ^ zw~?c6U)AEdcGU^b|9ow$4O?e^!fny#TfblEuo(Sx5v+9Bp_=qQb<Qk{??GE;DPHUl z>0Nu{(VC5hAOD0+n0wRx$xee!>%xvWGv9e3_U%$>W$v*=OXr0?vp1f&z@#C?a(rpI zW3^$~Y0=Ux^LJd>=oWW+*^&6tWff~Tm`j{q8=ibI>g(gJSuAtzZ#bd4p*w&5R-pwN zPublbRN7oB5r4oQ;9~1gFCnk`Rj=k#;-onHXPx}FgH!kIYAHIgFn9*%b`Rah23NM~ zZLCU&TriQZWi^MZw|n26yYtRJy>{HJEWD-c$dR1|6W6(1Ss1mc^>|I(?lZAhbdsG4 zn0N#1j%H`goWHK<!PZ00IcuKuNj34<P4KW<z<G!B@Y>4oeM*N8d1&$#-ZiROBN6rf z_R}wH(|Jw2vZozxw7Ym$qRnevM7+*|`L)gKW{Jov|C)cOR%`x*;td6Sd{Rf5x7=6} z#M-O1=W$i!NxMkxjf+c;=^YTZEPVdy>&e$ox!HqxBVIE-WIb@#J#xvLJ8ewqUXguF zJtvFh?zpDdJNa;Lwm&SMaMkR&>HRIIDtpr}WQyL1>-yK5{J8O&aQ|zO$h1km5(?*| znm((X{kG(=^RN6l>sq;XuRoxrEiJY5t6owOm#6x5hR)ajO(q4i7dxpf|CV92Xy(J@ zv%%fUZ%<h6N;(<Fd&Ey?ztg-8FB)20nJs@Pbe5&e{k=-z%8I5I*Pa?%F<<?OX^Xp* zVmY7Am3<JR+;~l=aa&TOl}*Hgw`E_p{?xo8W68&wc+UKGV1~Ws6T1!a%gprIHhZL4 zaqP8766OoFjuh@|y44u;$jGl&VWQxLKOtThjkPsH9OYvhUiTaiGYo9I_$8s|u|o9} z&!2_!tkvAabskMrZ4lD4=F|K!t?MOs?f&R9JCxk+?eBOz^YgVOYCjl{Z+^afdilRH z#hSyXUgzxjShMNYXU6!-x?k44@9%KOU;FURHEiFbnoUdoG2g4H`{i`|{l1=kc~1Q^ zf;P^&bYhBB{gVfezibM>|I_<V?A%<h^~Q_VOFwx0rL}v1rCj~poY|XZcwe}__QS;W z8+<FZ?!35M^uuCr&F%dA$Lzy$XMYL}U$j2_;Bk?vfV1J*`=l;Jz3pRJ@An}_sr6pm zH&bV&);h+xP}QIpoSX6^g*Cst`*3P<Lf8(8u%(6)XI1B&$}(MkIeN`g(S562z5Z|1 zj(OsK_eJ{O;y(ua7d5#WZMP0e-CAl=ETX+O>8?j$)YJ7>7`Iw{H)FVFQI)m(Z2n~{ zF{^%=sw<LZuXF8ge@p)V&tE;~X<GBvJ7s^W+drgixH+HCmv5o{s)A=%+t;sVgRUL@ zX41p+TmSBl^NXbgn$N72&e3M9nB{C~^!bj_FTrz{`dPhx3I5do`y=?Zd%?YJ&2h`m ztW}PmSg`H+VznI^e!gFy7*66%jGt!Gy2L)=SCh_n$E$4o2?dWCc`m5!VA&fpDR9}g z|3S;_XBs{H66CA2Gez*%^_GK+PX+Xde`KDrS^W6%V(o}Vo6C2&${jMdJec#(yYSfq zQ%23l3hxv(SkDA$A5$oEtJI#C-KD=(H%#N>g&W?kJdb$nbyl`=thn@h?^?UP`p<5k z=bk({eWSam-uB#l=lUC;Zt5N~`<8gF>Sc1Zn$bPW^Cbz+bAS7k&Uo<Q<UG#5tY2oz zy`1^<%gpo(#<EIX(+&l1^gL1dsg>v4zC)K!)-69@&!e2zuE5PA^5JQqorL$aqJ|Ca z!W=DgRvLAO%6s0rvx9Bl8C&Df&iw(e)goC|^WHQPTd+;|<S8SDg;yM|?q)qFdn~Kz zY7pPjcRo&y-Aq-}4`1c>@|t%1!N;1VLaBdw&ty+OqPd~7`<7;Z-0HJZp3@>d9IazN z1kG4~X8O&K7uqW~PH-+OWwX)izY#q1-`4D=4Q{p_*&p{dNUroz&fn-;shb+c<JdKQ zk-^sMu1mws{wlPey1DdIlz@_V$v6GPRST>;FU?%1@VqYCBzO7qe_5Uz?AB-p$g&t% z*g0iYvd(dv+t8>ZoO>y((Ldg6m!AEe=M(O0%wIHP``Nvf6Z9wf+4TP4VBDwjY%$-- zXy)dq<u*%8JDz0mZrS*tHlbQqR;m59fMl{myH52@k6n|da2{~uxapy}^y)mFwawkB z30rvr7FDdbUHU!5SvpnK#M$8FtEO8^Dvq2>{5iGh!lcS9v0y9veuaPKO23m6bj~<+ znXh(!o^Cq#Voq;T#`PtA2W3<(Jw&n=7U`Y)wNSs+M?@~L^z6RHzqa3e9$MQZAGwG3 z)ih@5b^m@WXfdBv*%$lKvQOjKSKVJSRf0;@*WTEES>{|L$I2%<|2uEbmulyGpEXYD zw|zI=r^fVCtbSL{^%FZwyQHI)6cx{J>|gMAkMP^)F;*I9Hk|k;@7K=qRPoZp-j_e- zCz^ft7O8hWvRb!O?X8tfNZi`lo-0oquei_BaJWro#i@IDcx?Ap%$qxNQfK-}X%3bZ z-Z{^EHt6j(`C9Yo&@J`%ksBY)OI8;5lmBz7_WS&2O?&p2f1kDR<G~B6WslRh=g2Dj zPJh1j^c|x-$>5VL3$BZ#<*Q_Stk*nq|AOn}uv`4%6}*encc%q0&Y0Fzcdz033M0?0 z{0t6Wo|gLsBY8XSa;(@de|>(_#?!B?RIf@~hiaA1{P^U0*!%cTovD|tw=X-Ezo+ui zPTy$%_mQTVHkO7T*Z8KI?auvEZml#w|Ly*#3+4ZRJ<>1#@_qf2`Ykg4pVd9y2B<Hx zZ+X$)_et+SX9mMbwxp9sJvPl1QT*p-^IP%Z%$Zp}FA~)nd6`qp7u5@y#aQ!wczR*x z{EQ=?b${?x-@3G6$5Gey|B_Ff)6H|Z&!zUm@3*8|{_5P!<7+vW{xEVmQgU#btfXTK z^Td<Q;k$kbY^+`4$NX30*PbhpZnw@&%&~esjo*doVZiye)Z1mI-+Ekx`|nA;*0-06 zxIXoUOmC0;8ymx2Rqs763-5M+RPM^ow^hCBc<sD@YcDQ6{VO8<&t-Gn?`3cNj=bNY zX|&PK?8fd*yWS^MAHUw__P@~JLdHL@uO8XgANl9JmHm@rapC6=hYH=_pFb3ADXa}o zzP|j!ul)UGk+mWx`TvxvPc}OEYr0fNP};1gIcawy;@FDw&m0Mzesh6}u>VU9{nmia zFXFdlHm0@5F5F%5`{>J;|G&3gR904QcNbp%t*@`H@_nrI_my{aj$h;YuN5O|-KoFt z%lZGGetrMP`L5Y)5x>T_lrIfO)(bD6G$SoY=NNao<qfSijrG;ME4*G7>|DloMMz=W zRx6uG=IdF9sucRS6c(h{JepGVI4t|b_lK`v^}dk2>(RMO;Q!SI`M%Seb3J}*YkoHk z-1leel6!`ewXPqYJ$?Ej^Y6{)Zp(<QZCt;_-|*L`tVO(%w$~R<KM`?c`fASqyWZK= zoj$N{;<DLg^P}$XNY%V;kv;dv#m0HN&Az_P43dBQKjiU)y?1N-Z7Yj-m)92j{r2+l zcinj7s$k<2ie1-M2w#+Fjb7@u(fLphdtSrA)mM~*#FH&e7PKB}-CwuG$Jb%SOlL#g z!)7W4wGo^6cICzNO<8_t{t3;?{6`d>eLAL^tqFTRN$d1t=8x{%*8G3{-~#hv<?3Hd z^QB)(_Vbs{mwJ1D`?}Pex69n8<yWR8{4YOlZhCi5-GYtkVLNYMzaskTZ-|oFt!v@e zi?5%Wc$aZ)_5ZuJ)?w}T%)734r_^(-T|cq#&=wiywaV9zO;VF>%QAmhYL+Nb9zMl< z&#~FFCs$b)S)bLkJ(hPpd!nQHgRO=K4mG#E;>~#Y)<fU-2zMjXh6K$-q2LSo?UBkE z#ospN*Z+PUZ?7hke7#s}t$EDJs`p{Gmb;6cb{wfvkBEM}?%0P-94F+{D%QA_Tx+ad zIrZdy<`s8ObTqGGY23GjzjN<A6&|a&J)ac(ByL>%dA}@fa>*^b4WHJ1_9%~ekz<p( z**f;p!RzfAeon@^ksCDIj+(nX`jv8RsmRMIQF*?vt$#g^m+h@hOD%XGD|>k3!Ub6# z8M^$u$Ev>Ho%v$d?}`7I)64Ta@5NlT6S!|7_CY^TlAmL}^`3`~w$6utyU((3zLqHS zv0VO={(+}I=5(A|c$k&f&uaEL1xMYR6My_Y%fQom(c+Cr)JZ;JEz?H{0#@~c&3OiS z)^nDh@q4qGp+-6XkjzcpBQ<G%m=i1a<o|hc;um|gTT}T~-P<-2!CU2aetmKC$S?i- zd!C*6)|Z}By`8r&_pa3Zg!<YyXW7HoW&MiTV7Tewk#pPTO}_tPe#GTHNq?*tD)aZP zjW)m5_MCNrg_Epfc4lkFF@;+q3F}$(7syEpt%~w^`{9T18h?S8n|S8Eb?n-|HY+w^ z=dP{ZrIjU%%oohR(*C=QZ)LySjSZi#ny<6@`JsCK{}k;X%X2-pJ@(k<sCH~kirK`P z5Tl+Ww;E$sx0PH{+<5IaL+Ipqrt0erang%Us{ZgkStfBg+UT%;OMd7rkL=jrLc1SZ zt_^+st$p^11K;`#wkS)znd;lwliZbFtv3CJ`((qj-61#RLszP_Z_&N7(dy1tMY~PQ zpa0nTD&vs&J71P4`|l4vTyUO!Yu~p6%P!jbGJjv=U@!1;ukyWZNuPH$?vAMabJ={` zt}hQ`n`O(tUbEk7eQCeay9>K!Td_YrZT8*V?Uy+}UtZj9t6Q@DJDQ_!JXen0IAL+2 z$-VOD0+;sldbll)_+JpKd2F|a^53FTDISki7d^M1t+UQccPbQ+&pLMDZo%m{=`a2{ zKA*gDl98|IG)|v$k7R#X?KPRm(`+Usxt{5qV(u(Qp~IqlSHcfhrXJ>ftya~xf7{;2 z(`?n-&24UNQM0&pZ`)7dvoU`z?o)o=mn+xne<$GYu~&vyqdjiVvN{%jr}|GXyY=ox z^SMpT@+#8Sto<#$+$<-5e<$z#Zueb=&2M<BJ-2dZy6HBD`kOP?N6sibv%q=AtwS>s zwB}w(F*sp&=A4hug!{GOU-xAtKPxviPC4QJti1H*{?%3o_f@~&`=#7e@Xzjdd+tyD z%k(|?5BH0hm7iAEEwwzez+;}}*$=leg7Oc|{c_@em$F~UJV^=FLkD&Di=H=S+`awG z&(;4~%laSBbd{QCdtSA4A-~C<uYab5rR(<kynOih%cd8%IZuT6O?{w$>w~*>jnBgV zO>dGpxef^V%({5fJ4a=8#k8xh);>zVQde~1rg~^fO2@3;jf`94V_)%KT(Y1m*XD@c zuUA<Q4;?5A6D@K-W$`8aX?TCE?SZUT?KjIl-gCCC<^MimMiI})f6_;)IUhS(RjN;$ z&Rh7tbJ=Ot7ZHWmrq5^b@DO=w5zxM6qh#%~=C`XH6ID~D*KRv=CQjP%kp6b%!%gX? z6DqUH?CnGa%UAQZ90{=Ni+8zUc&+gM%jn<N^Z$KIR+qoME&KVm<HxqI{rfO3;nC*g zxr<Zhyj?eOudwv5_TRtV^4{I!&c3&D)5?2S=A_hU6g4!QOH?{`M<sOf^ojyb%OWd{ zIi9a2nf)$`&iMaQtug2MrnT*DY~Nd|o0>n~?YG}keN*<~>_@-b+2wCuS+;M-%lG>_ z_zM3vp7`=HeO`XoH~rU9cHewIeDzqCr8{Y*+}ws~1{ZE88$7(ye@dmdz(`@E<cX_h z9OoJz>oi*wob&7NjW9B+Pk3|b^!oTeCzpL~=i^?#hSl)T?bYJ?{h!n$V~km|D+Fx$ zt!fkgKFF*(V?9qTPpQ}L%fiUyBZ*5?XDa$x*QQK9d^{vAu_spd!<)w+j+{Mo_3WY3 z(MO)Ybv<uvpe^xh!4x@j-j@#-Xxd#~@!`yw3q`@_n2(2qC9+#9%u(aty~Xv0^19dW zFYfx4xNB)UYl(ue-NuvRJHlcTtn|dK+_H9d)FkCK_?_{cX?nrrKzK*p@5N_0`_h*k zE-TCVe{0sn{aHJ1+TYpvz0;X}G4s>(n;u^lPJDQLn{M#_eJ|hd+px&kMj&I3UEQO~ z{F_J59@=-}(^KpHCj%^#Yz+;~4J&?VOj;bst0H}pW&54LB`Kl{&+AqnTb=F}wf{`T z#f_Zb4t8=TTAv8EIFjdj`#<MHzh5!WzQ5R+Ab(Kf(JJmQav#E#_nyDOVkmWF8v8}7 z9~a*r2r)9~by!`qZuZ<WrHfbb2p`;(w(~0cbrrW=yVYxC=f|4v@&4*_{MSL=RkzdS z^LMXazcGA@t0ic6cw5G%35Mx20zK{qPFiA^o-8c0`=MfD+uIrk0lq{&`;-6n9yq`6 zT;21?hxNg-cRTO-AJ#cm&2(9Nw&^m_ozwVJE~U1-aC)T7^ke^`bE~&6{;uslk@sxm zlG7WfeSBJRMzBZiH&c6}Q{m^VOD_*ym>sN@vQAS^>&$Hh{u4gtSrgl&H|qVqkvv&@ z%V|HEd#TU1*s6!mef89W`<dRk&u{uKaQ$2IHsJU7*1WP`zjOPyaT>Z^QJ&h6p`AL- zxJ1C<%)+%(+g>i|Wih@v)%b_<N+af8zCu6Gm4{CBZ~U86v$oIp?H%<$FZlY587wzX zKVNEBCp>#kl|$&ynCs1Voy_gx7w=v5&b3<f!=4GL8l7F$qWM8h3QxbJDD1IevEx$M zGf8#UYlaJNeR66NGF}|)HNUgr<H3as+0E3x-8DBWd+@LN_`Bf!8(+SE7rXD#z2MpA zw!1fPE`GjwcHeya`aeIum~1`0%6vng<;9=!w-j|fv{N*V)VIdydH&V8l;E)8Qfk7| z!hg}vjwwio_AzO_Ie6^Gsl(4_U3>GY_R)j$@9&ifw3vSLIRB!z?xDzUCi_dS&r~+W zzS`>HH`RyP_{4|Q7a^&$4zjJCcdBd3n_o5+bHW-<alI;GJ`uIlL{yCF^{h=(cNy;T zw6&VFq*rX&BDZIkPE4G(WWI-~c9-Cjq&GVnyFT7z|8qNkRi4gQi`~kPCqHyf|K~R8 z`Rv*II-gcvZ{4mPJ^jVb(yGsUmEYa}bGh^LbAK88@;<?*zx4VP?_A)|X4cMiowW6q z!=|taYgS4g_MN$8qDjJ<RE>-+>EZzwG(;xOec+wyoH^CYz-1|8se@W+{q?=h7tbF4 z|9ax|c@-a)UOaEh(e!=W`n`o;^lc8YRB!*l@%xo=^Xdz6oyyi_Ud3IRDc1~YRAxQ# zv0#2=H1SZ<?d+3TE|I1O1u{NN$a<7DyTh`i&3Ly~^Nzf&j6&RBBmPX4nd2TYd-<Nm z6Y*A8G{61`U%4t$=*N|7$A8cIR>sTAU-D;bed?M1b9}OY*=L8j+TFfr{DSxRDfPB% zb1N#|8m~I+ym4u5uB>^5@U?(F%Qe5f?0fKO+0}!`Lf2jutlzoObVpsv?}>RESQ)p7 zJulGNJx9>G_F|BMjt=W$(+Qm?E_`{ddF4y?iL76|E98Xh?ALYX+^hNeJxh6;x%CCR z@WkjF#~l3J@=v`sUnOvM^%Xk@>9d6&H?1zX`={^Ys%g<m6YpJnb=TK<_pa*w7BZpo ziLE#Jf18(9?3JCJADYQ>^_uhc_QTudowmg6?)vdpanaF3fBFu7e!t+#!Deq+1;e%) z)jORIYyQpU&cCmF>{Zykrlits&zQB>TiWl{`BKLFvrn+ry?bABmcxC+`SbssGrwQA z(1Y=CUwrt(_gT5YR=OevFFv|6*MzKbcCc6dJxk6@P-2T?#8kIzgIQ<9R!E;%t8H+| zym&t=d*hwghZwg1Uts;>;xzVC`*wxzDDfzc==k>jy?gzQ=@X^XCD)%iUpaBjpEr|v z6ts8!-53$Hc)n+r_pGIIhFUf;f{zZ`Chbr<@;h$t8YP$Jy56vsKR?RVJzlnpojljD zFF3e0CA>8yz3zGWr$qw3n~t>XOSZDFJ^1h5twTYv|Gw<jPhXOCAjs4q^2F->KjnYC zR=YjrCQGWK*q@78L0Wv7|JMrtFX+u(wQJd`2SpN_rYX19iR|@SxP5x<-AU16N$%Wf z1~YAgd_ATXS$2s14d}cb9Q#=RPjlo}*8m2i`J4FP?@P?y8JYd{=KdYY)7RcQHuJ7( zc3J)FY~i%&6ODKER?l<EzJH^51N+~^_>+5_{>|!K+rQAB=}of8#g&&T<fnTY`f^%^ zS9kIzTs1UbxS+Xr<xK|LlxZ8xru}|<P<C6^@^cS2=k9)QJI#8>ZLyMUS;ybgL+ZY{ zzj<<g)$KzMzpa|jS+BMw{#$wL;n;ttGxo<hp10|#ZS6n!L9*cC8^yyjAG+C`%oHy1 z+WIA7N5a*2_uu6eWZ&hEiT>yI<8I5d5BW*T-bve!)*1h9`=Ddp@is`i>V5E|oh(Od ztb})NQEnHUV`h->Ex@3+Jzq+K=l7a|_HeDc54Ud8=gba?b?T{&eEL4zcK^=&va4c6 z^G(*cv4^e|JNiCPBz0Mg)|2mE7AMk|UX|J0(jAb_J~L)*bzAv^`U4lA`pn;UI*z~F z*Z<M}SK-o+KOXb2ITzQtWt-atb&KN%W7GIEcNL08bh-Nb87~ox{1!D&XX6u<D61W( zx8Lu(|NQzYL*M6n?z_*QT=KDaznqN9`@^P>zOU5&XSXRnEdI#;p7-A@->E)Z_03@3 z={Wy;iYF&5eDi2Augu&3VxcWbJK|FBi_6)6J)?ccJ30CN-cMYW_EVpQhOM{my03rW zg!>+4)$2lbTRx;|>AgP7!u5Mq<<tecjsDAD5PQnQz`#&(D>)%0AtB+3Ww4UHqT#&z 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot new file mode 100755 index 0000000000000000000000000000000000000000..1104e074f017a8b89dfb5e1bbff3cdd0b7595887 GIT binary patch literal 89897 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%0A@C(p$W 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 Vk(>oCI+s>f$RF@Zy~yL}002q|VMhP} literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf new file mode 100755 index 0000000000000000000000000000000000000000..6d0253da9776dbc026b9e2a07f6169a97426c6c4 GIT binary patch literal 284640 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff new file mode 100755 index 0000000000000000000000000000000000000000..8888cf8d4f99491e3ff6f7cbdf2b252d888198a4 GIT binary patch literal 115648 zcmXT-cXMN4WME)mJbZvbgn@y9CHw)H&wvS>9D`jM7#R03FfiCLFfask6;G~ra|`ih zU|{^iz`!5_!uhQ23hpkhZVU`e5)2Fs3m6y}?zroF3%UpR2Qx4*?O<RKuV-M0I1%}9 z!w2`^P$vckDGLS${@n}=vQxhO@1N-(tZ&4?p!tP?fgyr{fgvHAZQ;k{+{6L~1}z^3 z1{QY)1~#*r=BY8sWhDv>40=<b>LP@<2sNb@q~|g)=)GZJVBE;Sz?2%iMSppEVsQZj zg8|4L91IK$AS{rcQ<=uVV6cLLF;R(uIW}eP>E-V-QWH}c7$=@#U|=w1U|=xgSa-HM zBO^7DfpHQG0|SF10|SE!e;=nrMs7(31LGtO1_rhV3=D$n8duuP&&f|tWMG`h!N9;> z!oVQ7g}qwFCpWR8fPryI4Fdy%0tmBqGa2P2=B6?*E}6r?z-`LFpm}(v`^uXI`Nbs+ zjO(v3FbGR9FlhX-W8ceAP?TE0z<B5l0|Ub;1_s7v`>0>p<*7+&42*|&FfcH%fiTz0 zkTn&zk`q!A5*{!liLu$SEju&i%AZAl?%1%YiJQ+CVB0t6$Rry!Q8qI+frOL<rd3Z8 z6aH*(VO+w!T7zN3ZZ0lx{DNYh;ldnmK@jik^oHdi`ohKC=@qwB&-wB(1`4n|Sd~?l zmyjLP#O!hBP|yAyjOrVnXqX+l-(&oM=a^Kr){@Km_r2pv?FAeT?>#8zBz)v(Z7HYu zowuh{Z9Z&?*L&E@?-8#!N!L0tX}jfi@fgJ&*Th2B$z1Yd|Gi>z?1~NEQ@=&dTkkb* zy?e=l7snU`GnbT!&9v>AXxrCmyY}p!Ezj=1x?cJ|>R*uU{Mz*YEB{y5F&<)6T~~4I zZ47_G6xV6>cmMiwD7FYFOBgu(Sl;l5^FIr-BBx@Ki`Yb0v5TpiM>v|a7pzlyr?jbh zMMYL@pvY30qeW}H19gs8X?8u@aa3n{OvttF!Xq7#J+nfO$8>cYc2C$BzyJO3w0)9k zM#fD|p|@k-`!4^#ukQWV>h;x=CMYa2ndNzYqK@ut!*-*0zi+-0z0$99W%9K@njVuD z$t~%6?*H1|cG<ak%r@!Y&K?k~U6WeAKE`qHwEsCzjb3f9x%ny8B<bqj{(HX3JKec9 z=wF%cZTBz6C-0TZ%o5RS`=_~GWYH?Bx|>j6cB;T`{$~5#Jf(K?7l`DzELnf#jEm9Z z$J*_aHpB(wGwyeK`GwocH}{I3&O|jMSN_7SFZ9=mDj$g`Y}OD;O=_E=`>b>Kk)(|w ze`0J@<b?e@>V?jC)eA-+E!*h*M)3Dh#=?j{k$<-T=&lH_QLq!L7xrD`I%lFvaLTST zlfqBh6)lj_azFX8Xp+vv%TIkQ-Oo+uekxQsKSr}&QGUArspU_Ki#FE;zMG(bdhaLE z%7A~K|EAYC|Ld>uuhX!fHve?mO|A1<D}zGYPKE6au{Vu~UGBD;b5+39RYj)WXG6KK zD1|NzTXFSO;8*Rh*<X9A9CHJ2U-8=-{Wf^&D*?{Rz3Z7O<Q~`dTsNF|utM!|a8J3E z&ZiwQrz@DR#~glYywI-5{;|8w)1^Jjjpfc&NI!ODTWuI4cWj2lbOX8MugCt(w6i}I z>?3LGTgh-;{<G=AJJU~RE|aU^|9<~*-=^1B|1Rr~Ib?A^c;30>*Amwa=Dm?_{>7xX zy;%O3(t)QYdgf9&x*v0$&MGc5zVDpw*iqEpZnpJ|`NVU{>YvxiKeIEFZ;KWyV4kk+ zTzu+njNI|3wez+b?MUluKUewfUCnXH_r=$RvMXYbmDO8vv>((x|J?57nbm69vRPh| z;SuMV&p-RbaI9HkeR|FQgG&9Uvn9?ypOqMM?`(zW<E1^%EsNJZF6Di9_Ahfx+>xjL zJ8I^fUM?A4=*u;Iw$l`g*I^aU;zf=KnI#(d9(<{{cz%$66<4Ls-VU2SKE?j!;S<*{ zzy4C<%`x^8A+yIOpHzNvRc<;V6dtfpLiN*150Ne>t%Ez~dj%hjDYU+;A=bfKB7E+@ zla~1DBSyPi*NA9mF0;|$zuaHo^xtK3%GR3ZyrY`6{dtq+PqNKY-ajG!Ld={)_b<GC zrTSIKb^+h2<}E>c*WOze`YQXY>DsX8S1hY8NM-OYYTv*<KSJ3|Xr*VCRcWyKYS)sj zQES95N0j!jI^ehN_&+<A8lE3A7kDyQ=a@FJE@3iaxY-cbP}gv<;WfizMq!55h9C#a z1hE9Y1jYox1xy>5Hb{NYco5zY&peND55o<n8*Dc?Z}8q=U%?{7w1=xg_Ji01*#o~D z_A}YBvM?-X%xx%>NYGg1!<@qOK>5klhJPC#r)>GO``|N~7@Ie9KY!A!&U&|a=YiD^ zZ(9YMoolv~y?!y{MV;bQr^r63{Tjy&<xW=YIJl_o<L#K>gHOwj@xDp7KK$NqL8r;w zXBYjioPQX7O)_71Ua0xT^j4pT^I5C2*jKl160Km>*eU${L+G3X+h535&Hv{$Kj=aG zqw?PUS4@v>H?(`Dc|Uc7#JN=a$8%#QAAdS0pm)yM9dke09s9jA-EO+Mq1^EbmB+a~ z>=J9#igubOcNcO#_Bpm$;<m|}q%*6z=lO2g&R-lZp2>E3**C^xkJ_`YG}~lZB`<3~ zw{7}@x}68h<O2`ynDtv{OFG|M4;G2=ZRwJ;<rbZi)1Ga+``q_8d3KL?-ucWk-MjMW z)`eA;9h!HJe0_OmbLZ>lhU*e+CVw=Qi(HdlQ|}@6$l$uon~A621<3EbqukBf^SkYv zs(9hf#?!|og|CMcS{`-oe5tw8`rK^G*z1SYQ#bjaO5`_b`+GLxo8jXd$9vNE7co~) zJb7V<`HBg9Pl()P&<{Eiw?rZ?MR)3o_(Rjrq@6EpH|4NPZtR?J^ztLgjh;5@^Pazu z{5B=Qf2I9{r~@3uLXnF$e(<@$;#geZ6s&PLS+~XN-EOwP(<S$H-n`!8bY<zgO-n9{ zX^Z~wUEQ<z+r|$|i!=6B`PeqjZ>{J$U)Oaojpy92xCi|P^=7=TckJZiwzHU}ER%HQ z&g5Kk)$7QE{>zg;+&X_Tts-|}-^Q;elD#jT`j%n;I5%d0!$*Z}zQsH0w6EvzT<tLK zNiX~>ag2G#bG`F(ye0LyZdzZkkO=8}5IZ$+r}NYBN6RN%ke+bZ>+6J@nkfl7_w84I zikQZ4Ez4sg{X1;RsX3<Ceu_N4>$v7f)J8v>kNofd^S`g(xM%<S*nQvo+<kr;$u4W~ z5S)CZCQwmMJo<>)NArqfITc3(KeTOrz`6bO-%kyHJOuM53l~(^1m%WSUs?T1f7R7f z+uWizuUUFcEPMagU0<hto%eO&*Ns=7oc`APZR)R6wcNGZHPJP@YwMSl++4+fdVQ(G zwwGd+Zsw;p?~>a0&~)lD{#AOr+?Fn$!+7F~s22CM<L>n>p?~a83AgTwD_dl<b<U?1 z+^Mg7O(MfD%l?wMyR!d)*_UOeyXJihj_=V}tk3x0`|wk%Q|(hvUVFXc``i~BC%G+3 zUmex|`I@Ni`h-5UEpuE>2W^?NtaeIwWm@vQcEj_BXQXf2G4Xj+Yv9f+ox5H#xLr*O zVNm|ID0Rk6|J(y}y12fWZTa=G_{?kP`(bMyx#x0+X}I6_2}nuPxX`;mtKnA7nMcpX z8gJd5;u`+a?A6lSPr@IBuFhjPf9t?zv!CUAIcu^f-+y8C;hg^YmuVmL7g)Uxevmlz z)iVEv^88irc5(jU4p8sONzB{+TCBi=fp0!jJM)Xuu1s4dslEjDx`^pav5oW19F2Fq zT)Uu3Ty*x`#$quq_cyl5{n{57UAV_{tJtAj>sZ-k=^g3iM~Z5nUjGoB+pxd+nDLK4 zY$9`9?-x(ui;8y0b|_s~Gu1D0l{Rmn<c~LPzurwbTM~Vvlwpf`)3>O_ss{0EAB0Qk zUYyDo-nV!!<6Fixo5W){6Q;6#S$ibz?}ST2J=@X?zv?zzt2)f-<=A~clXJn+sXK4- z{Vh1YvnuL+&uYHxwT{`gQPLN?=Dt+USlb$>cX763tZ9|W;&yr4KMU3|?CopbrS&DJ z;moQTPV!aT7o?j8r>_q<YyF-5x|#L&#^|$sZ(b?x7CZ5dL-UH+qGNxaxL?`JvV58G zFA3d(r*}lF<~5%8*?a05+m}`D{ZZ$0zNVRN*;bS-9JSiED(P6*!mlFRuT`a$9}io! zbzYFo<2|~%XC^BzSR-Zo=S5(*+|~tanD(wxEMDAM_ad7&_{F))O>vCw{;MnH<{R5R z$Xwa9KdwJm`6^p%`dyY<kpreZ(hpp^N@j<$t$mr}>$uXxJnE=b!qgXO*{kd_eGktt z`a839ao)ydudQCS$dzW~I%fBVb_rfKSma~Az}+}9Blpp@Ool5-Q<a>>Kcvst&Z>N8 zTUyY$Te&lK_FmdhXM0_Q*^43gYu=ajj`haX%vD<ro~BI|_ECLdwsp#(keemDKeO*R z8q^WL@iW`Jtv!#oe5{!+-R7~NK`q$uZsX@F^SjR9FG)rDTff-;W#@{+wa>I~YVDu4 zLH$$DAGdi^pQr48wdPWY_|$c~R`Fc*O<na)%X@85_SLGb2WKUTMjj38G`*^|by;NU zwccwb+~0RTI(V$R$7}Y6);g!l0@~MJAKk_F!|@Ko{A1^gUvBc;uzGsY*Qne_=Q>Mf zs>)v2%`kPs)u+zEhf|$Tem^Dpm*a7l#M-MT*!QV>d3`NQDHe~CT3TwTBy%Zyfo1pC z?CAkk{4r)#MLz>JeY_MQc&a;S_w}nW2MYH#d=gk$6E5=R>U@d+ho6dlb5MJFfVsE0 zN<l2eYwqN=rwx}yoj-C{p-if2PJ3i=W{2IP>o3_2ifd)OR^@WZynglVoa>aF?bi>N z@2-6<5zhF>?1)cViQbCy-y+^sc^&m?T=FC2{FSXO866WJRlQ?*#_`oQwQQ|)<@CnS zmK>HWUluOVvkYoV*;KH;+nYV0Y{K@hQ!=v@*8XZ)`CG>@y5GY{ExdGc-m|2tL#uzu z-Z~uIclKw-o~!w425(Ip=G~}{o5Aw=(Gj(;59)PKFAI~u%wDK`)NjN6kaeqzuWz$t zu#{uI$7DbE?!hh3boF`7+0P`qy=b0r(r}LY=6mxVSoWwdEvZ$TXzTJk!XwXZ*DlL7 z{_RrhE`L$n8+blFcGVT@uOc<?80MR`rZh&+nD|G1+qG@`7m2@^c*6FvSKUIpoJWCk z*DgPx_pT+^V5|PC#hkCtG3|}dPsn|_Bfj{|G^x7`mXqV8!{$ndC*R%^#<fjPH0T`9 zyxR%0@147GFHoy^mFBT6H!p}J-!zKhei`)Q>VzBV`YTgb^!j=x?aA+a!kO)OVDa~r z4?OhNi!e-QUgvu_lH=y~H5MgO>kdw9{it&OhF|T0AKeSKzP8wwZ+5YSY1&%dliR*j zR0-)Be$bh!8=duJX8DrpQ$L<txbPKyu{D14#BB~kt<^n0*;luOE==uvG&g^_waoMv zi`BB)S~HVRSHwJ560+?19KTk+W%-_X?=A0&@>rY;Cbu8$Fuc#UH&Q;m`;NqyE$a{F z{WQGKwD;zj#r4fAQuEtGcsXvhT(bD`zUyX@%`M*p5i?jSgr2B9Gq|SEUVB7So$JBp zv~NN?lYDk6Cg-dQ_xG72a_L0GKBaS&pW5ekxyr~ts$241eJy+M#b-TvI}d(V+@SXJ zL(9}P`_(@4-u&u1$7{u%UiIWT*K@YL-#JlAu1n#q!~*73=DW8Xy<Pa`bK}O`llL~q z@*2wVryp_Iki21b$c@8~KWzWHi*NqdD$7^f7q;@u_o;Cb&a|_e-)HzbaZaz9HDAFa zsT;xH&P=sv&i?7Qk@tDF@{d^2$=f8?$=nS(GjFQwk4G9+;?-vtY`Nu-uN?iOt)MzX z!)>>`Ze8u9wZ3x?I~FhQe0;m7ZD*ONwuwctoUe%;=h0|!fxzEyKhHhG-BbK|72naV zh3<Q1{P;cBT+LHu+xC3ZKHIKJuRUQrQ5UQQt0m8R&+ORKZ0K(FEj_Vz^0qY2bF;gH zqgI~H7xHb?`)T^I@^0<F+nv&!TjYB`-08jWN^8z-+j+m6-~N5}a_yhsd|Q|OnQ_Y> zz4Bz(KGC5h`{^<LHHYimzxO+Cp7r?j{fm>`)-O3@t92}L#(4wz?3*Sc6=_vgI`8;c zH1~4b|DUwYr8jwR;8U$*KTT$*o9-)E^jlA`YN5j{=_>-WAMM<j|E)&2B;DfFq)p*- zW;Xo!e&o|$N3TszWtWbeJvXo4<+l9%x!dpVHoyN}TDUfL)6y3Yk4TmG2FOfpiJQ-} zw}?U4OJ^F#?1h^5G`HtQ)l@%|EZp+=htj2R^<DYDYX$dRtz`V<bzJzkY1Lb^`~QSy z#Lq8SdRQp;p=ef<*g9RmD|1hr?*3RCER>dH#mm3fs^Y6z1mEsjm)?eUOZ|x(R$sWn z5`X&Zwr|EKf1mkqgF)R+{SDu?D<7txKWq5z;k`e`4<Ek&^vdT>h`=q&nmP9)4Fz12 z|31{8D}MaFg;aF;J!>cSe@4fwGpBujWA%BP<rMKb>4Dat)+O5CHvfAfRK_n<wXn-y z<@37VYcCai(7j!&Y~O!gxOsUS$467!xgYja?vT8Dbn|g9Z=0$h@wev|T;KV;XY013 z&*lirK9OEm_9yK^<MM@{7w^2V+Ev7BTkHN?ZFiTS{>gT6ii)c4^ZC<0%+?LdeEnfv zl(?9vMBEeA-?h~f_HUJq{Qcp3X6=QY{I##&fBX3?X@66y`Y$)xud2&u>RGt%jZaZO zWZ9>b{qt&#&xds;{9*qr?(aPlyLaE;%`Q6eCEO=vZb|RqHJv3rQQG<FoW*nUrDsOe ze`Niz#4zkkNn-v|@h^GRipgiYA1*kue`e<@!Ef0?e#iBnOz)X==g2wP{iaure3HMg z;Q;I0rL&%FZFxMU<g<}X9`nUb`kHS&(z~bpdRwaY#V+|?!@m7jKHh$_)b~P%RPpPp zr5oed3+;c};=1@O=N%TNZ@m4dGy7URm%mtB_9aWnE%tKVBc_+Pp5DmY|Cu*qj`ZYr zZ(XLaf8D_S&~3`D=IIOBR8+nTJe|1QV&zt;q@%wI-!pAp6aVbm51U0-bN)@c`DdM5 zvmImStm$2o|D5#>Z8Fn5m3ygD+V)`f&##()&5EM;%r@GelCz`1Lo;(;#aauCfbL-P zmi;Hc*Zgi1&fWJi|I0r&pBU-amB*jlf4ZXdZ=an^jrYp!_300+zdRGE(e}1Vd%VSX z-`U@O=O_RDZT`Jp{B`?%=gB{HC9X|=DsJ6oT>Ofc^Uj~|o80Qu_wOvLbGdZUdST`D zPkVai+>aC8byK~#zrXG{({<r()24s=u4BEx>)5la+vjXl{pZ<ntoz&Kci%a735k7I zD$v%6x+(j%=UA2YgJ08D<g<!5&g$6Sblpjx?P6TxjJ^ihpYb}}&wjR@ojPHG$ZC-v z#}DS&FO#=is%XM}LG@M2^-uTb&oXJR%?p3!W}6}8yX;+v%Tbf5n-XqzPpH1o+pv0t zc&u;ji?mnn+XL#QBw~&(IcU;V|36oQck%0tC7<`XYV^8v|6F~^&}7=Nho8%4IegAg zy8A#<fAIx#X#;Jq+OE%)vp?VD+|vF@<xSG0$=!4BG=G1P_St+#?VLOF^A<%rR%`Gd z)oZh|obtx@#>@)yvUwe!T-I1waNISx$8DRzvfh&Ov#V2i!6|OnGutOFn4y$lvn27J zQM>i}Dz;^bY1?z$b{Po0?&WHVe6IE3UTfThCh>J`K0IFzN?lwazvQZXwaKS_iX4k8 z{B1So|GM;b&-<ijuUD)np0RhPS-EY~y54lXs>>O_Z*O>SSz7w-(Ww(tn;Uibw=3_A zdGf(hDnE9f)V-Yv6&V)hedljISfViNUB$tx!t3uSA3UKY6!TL;(ydANv%nF*&2!#( zUC=(RIPY?e^zE7QMMdxDxVdvo(&?OdJU+lI)1|$n<eyyJJH1k^1w8-G^SHF0+upXc zgf;f$QlnXXCl=n@!94Xc&#A>TO&Zt|eICs;sAt>Hd28pHlbuU66D{M6N^Vbye|d7^ zN*%wxYu3jnSG%YD{(kmNjGTFO@Vv?FE>9f&^d5ip{Z#2T^Z$l~iA9ShF8pKv_>IZ5 z$_umOCvY)b+@C$;l-#)`hBb$rwtM~lylTVkG_z{w&-E|d60deHc*14$Km71t*;Cp# zt!Lh8e%vbK!g*v@NQag5vIlFvHZApT4SmN`op<_F^|`&7La$Tie|~lM`u(Kmmn%L6 z^p%;5#k@`n4)gnFxuv@Jd_tM3uh0J3XYHyjcN*VrdnfVK$t-GbLKXLOW1&rF<6l=R zOes=YAaJSRr=+cD)q@%-r?rt2n#5I7k{lAvFCJ*xQgdVR#PUFan7uDf*6!N;rMSu7 zy=m|Mc?Z8*RayvnJ&stc@5?pa^G%2Z+s2C5pRRm3$9mZL@Xn7l*Vg%PX|(-oQBXhe zKSg2M8QvR4{EqH*hqu1p#<I8Q%$GUOlB9|+KE3w6`l`@(v*Z#L_N6Bci_UYOx_E8t ze>sJc{+_vPRi~bnSv+8u?0%w9r++Z^K;OGF>JR;5AN{;}faAz3Wx>#LSC%=AyYIKC zZ1PmC*}ZwQt?|(wgT0j%5oPYjykZxfaVUJ|qf>pnzvIM{oeTSYw8~41++5y0OW}G~ zX7Kpmyl8j(8+(oB^!c6p-S%^T{LKyZwHGIG-Id|EoshRK)?(2fw!#a#9WiHO(^%eV zb8q~0_e5)n{U?zshMgVP6vQv<PxQ{P&2_!<N$GFny9M>jn_rZ6+*`>0GWJ)`yrudY z4%RC;E7eVv|4aXOKOK9;Y3ti|~m=5w9zc}H>lY7TI^Socu4^^5!G`(Iyp8^+#o z)P3Z)F<?nowM(mqxb+dgiHc>4<>LC?f0exVG|kc0n)the`BCk~@EQf(K&9Z6t_Zc@ zrxu0t=V+Zi5@s2DPi5Q5*-v>k#@^G)7qxy8W9k1VOl|`E5xq)}f9*f!{_+30^T*yl zL3Ns0Pa`YC_N+DvUG`zM=qtvL^P-l9b@N|2{7UfS!YZG=Dt;^LL-$Yjk_}paiYIjO zy{X}=zF+a2x!5i={^Y(_bFPN=ZP^vcoI26;jMjwWwI{EoRQ89ah@RwHeMW2Y_gVi_ z6{r8Rx3USTVyL+FHnO}V^ysg@r&?MV7@1mBS}s)c@BQA;axc0;U{wnXr>X*n(orrC z_Dm+FCM6}MUoYlfsMdGNxMb~dGJpQg=^c8F+bdpgzxMla>iRd9>F?$g@3S=ieD>aV zA>oPUN4xbsdoS$rJ*lp>$lv6uLUWaukBYsBk5iWvzn5Fw6q&cd0bX9Nc2j0u3W)l& zv}DRWqXlc_Gp}AV-5m7xRqyPk*=Bsq`w!O6(Kh<`mh1fWn8}7pN~`#5r6h%<J%yE& zldLa)IdNj%-VDFxFJ{c!vc&s+hewp$)xFs)YkRvodlsF&SX=#VnXI8kM!e5^zl$YH zrWe;}UEAsJl=J<CUWxIx^c4MF^3u^;By5@6H!zB)=NEALG3%YI+gNLTtSBJoe%!`6 zwF%Gf8OBIV?C!m%Id{g~#|#^ebJrHW3ThPnTUhmY4*TxkZwkClulqjjSP|QXg$}1& z9H-p8wq(11!97pSIjljP1!`Q3?16y=X<9tzW?Z?Zve$U|vHPM*%@XHRj_zNWBk_0F zl_|G^)Vr2hNO{R$ikRiJIg?R$q3D)rWfvH&963v-zPluBHfPf1Vu9yRnqr!?3wYPP z-j^%&g?H)k?dyu)3$L43Isc%v!yQehAd_<WuU>{H&sq3wyb!wVOs@UIkj$9tzidjT z?pt~%b;{~98*ap^?eN;~P(Ak->+jId(l6G{eyO*9*XiBsjFRihBM-)YE1S-J=c#6S z<;mE4WmEs%z4O$f{AHi6!VS@C2j}vadEx@@N}MvuS~K-#`FX!+|2460&HNY3t=!UI zP2UwD{&M@S8&j^||I!q9#k(r9{(80A-jfM`diHB(X-UZ67Ft`<op&{N*WamYoxd2% zt~D;<GZ6p5HG};O`##2f?9&+R8TK>XXVfm8y6&3kF2)-?M_%*YWq)(^?*YaK6XY%) zt_tygmH9xYfNckp4f8st?_c*hKJR6iA)zMufK!EiPlJg=mV&YX0}Ip41_cH601ged zmKm2EA{X>%F5c|pTDySXM{lzC@mG3#mtFTsQ;;~pl)}1cX3nm#`LBW>^DZ&XES)y( zGFMcfc4q3@MWI_~g<Y453U=N)?b@~NTl%J5++-#FLn?yd4|l|J=|<lJjt^$YT^Fw6 zvS3$Xc;4vZYr<twFXzCep!$G&2{RW1YvUn@!UZx97SDfeA-i6<WRc&clUA<FUzz-M zTK+odfqR1F2jLAeKO`d<|1iC|W?Ln@gYgba9^>{#>jSY56hCnMV6Nb?xu~vYJ%RZI z?-RyPOg|g`I0!Ca2@ujq^?F&=Q&9Bvn#io6;FbN$u9?gVtNp)m-MVYn+ipe7&MMAb zxpwQ?ZI}6O1@3<7x8|+Y31>}%$D0{^b}~4!b-Ia3_$3?Ys$DR7GXJHCxMZfHuG8wH zU$j4+^}5wzvsF^VH@eYC#6Nw7&RkY0rSmEQ%DWg$mU)-7&bnZ_fc5Tz=qr=nG336m zvvt~6#Z$6ixdV$TldNRD$jPoV*E(%)%(hYv4_zb|)0%z3XWdcXOg;1GW?z`wi!J`1 zDU@;7{t+wZy8lClob&8ToBri%ZDy)pHk)^tTXWw2r%SiYpZ?Lv>e%T@OWEh5HB<aP z6xunS{~_W~!<Jyj&7sb4N}S>FbO!!^vL4668U6S1RebbSu)NQ<=jS?&<pTU4ANV}d zRJHU7JLSbU`Rb-wuTR;2eN-j2EKz3R*DZ48SJ-YfC~uu;_Q>y+%j|;m++}BXbZ@&L zb|*ACQ~TYr+%3H2*9&-`Z{NCi+jBXog@Q6mW4CI54{2CD@mIFO?fdRu?wxqvc;dP0 zgwwN&)ZZOGT*-9adA@m(&HIPWHB7d<TTZ<HBrNz*NZwPwaZ+fJw<G67qae>L57|tO zvrE^OOxeD4`j^R$Mm}~^HX3=RowAA4@J?m@wI%RTYQM}R;i53TlchVg>oqcs&REBP zy`FG(<<G4vrXBKH*A^NrZ@k_#Ek?Ze(mko=?_U<AT-q2BczNPWF$HTqXS3+;H&36e zQ;yiqd7{^R;`Dh6%9WDxDJLCLy6;5HRXm|P^~8gBH&uhG9<G@2Y=Yk>zP_$(y|W7> zJ<mih(>~`c;9m7r**`e4c=i4*6ZMMxg$m<bKW8xTPFq(bKYQ--m8&XEC;aj>uUydc zIct``abW#RJ^s*wIN86PlM41sc3)+&ej%&L<}H)uUTi;D>8rcq;H9`lPc~LPunFPL z6nm*)`?S-^d`47M#AdG+m(#&tk5uOBF1q=lFZs#Ls)-p}R&w_lem$_)r}l&OGR7U- zGdcQ9dk@t5Bp1YAZVCB4bJ-@b^uNBw1#>d_<PxG9*k?_9Q0}Y!LE*BL&5bRL`_peV zwa+N{5OA6A&%R84xiqT=djr7-50@!dv~;rco6J41*eBgach>RKeCl@d9vnHodCrfD zMZ)s_MUNie%(&XFe%eyqsqa9f|6BEQ!oN2cpSPITw2M(jJ$#Nt<tpLDC1puZGW~k~ zv<fetR+5zR{HJqegRruHdD0U}zaE>*ofGHoaQon(?pF5Bpld%%{>0J;Yd6X5@ilAM zep>BAdy~v^`ICAdj&G9w)A@$6UaR_G@)L%Nh0~byFI{?YK1IG_%NzFd6E;7XI*B1p z_4&coPnjxuV_1%#cKg70ljolH?Ss~-+&?D7u*y%AesH*mw<cs=v;QgC4-u9e_f(?~ zW<M2rmgV}g_i<^FWQ|W=Q~zn*51c!B|Hbe%9zU7*p~8}Bo`U;9;inQ6lVsTa#WGCh zDybg~ekxKiYYtnzV)}v0Pt8B%-DJC`{IMcQ_A;+b+OEZEd;j#Ukx$>c(>pmTly9o! zge8&9n&wXz?wQj6DVR~qqjkdfZikg(&1t%PU!#PqwwZjYkJNI1x{@h$iC4%>r<Gzc zN1|`UA6nq^I<PjYp?0C*w`R2qE6=X5ENh;2r7J2~J;VFqmA+ff8|(ZYXV{!wygtLO zmiO&1-dgYb7u9Y#-F{(i<^KGolE|CVU2j)Jq~v8Jq`a6VbL#94Tm47!Kh^)u^#7Fk zulM}N%6%uM|Ky5)EM3$6-r<3YbKh#s)fb+pyn0jKvqNHI)xztJQ)Kt*^vF$JtaXF+ z^XG&D&eNqj=3D2?Z@)21@!Ms^ZFL;)9=R@FxI^4ISANmq8=Hf6PBFQ+>apOBU2Mnt ze(e#Rcg{Kf(zBnkbIh7^q#MOKj#P%-es%tar1ib|Yh%hkZO`3w%dGs)d?Vg1>z0b# z+r{n`zlCeroLf^{+O<Bh?q7aF;ZLK|@(;UjvDk1-tVsTTeD_6;+l%(*3g$&``5E2q zwoR<E+da$nxiK%Zb-r7r0sqrPi(9SRb{dwSI=KFdyNax4*RO+Xdzuf;;9vepJEZk; z{Tlw;`poAa*-e`2$Fl9+x6f92^GZTYUUubry8oUV@#dmuwE720O~YU3YB#i1Zu$Gh z?~?6{%Ids{A=9;2u8Rm#IlsR2*CcuEL#F9YZ*$gn*O?yTIex~?F66t$&s}qu8ml>8 z&}#nRcJHxbh4%Z;2LBkUzjDZ(TrBgKX>I`juLXi7j>az<!!9sByzyVzAjoI;{R~~c z<$@-Y+ztxYxyWBu|Dsvj7HOfDxz~3=r%9(;a-3i5t=WFY8ER*n%KuDymSAI+Z1U)# zeECJWTkPVM9eo!JdroV<*t_{crTBsmb=y~eS{6I~`%6WWyTM*9vw}3#{Z}lR^5$^n z4RNWX{eKq*H(AWsTvYaA>YX{$KOb%td$vf1>1$AzcX6cN`Kb%OuW~%yQk1*yaOqAv z^C!mw%+Bsq-QM<THgm4=eDM!X8M}|}X_@ZyQm1{@@2TORvf@s^URZ7RIV@wo>>lo4 z>GJXoY*vpn>{jeGzTm_eP(FRZt94GocU!u4pZ@++@&7^pA2Sd9xta4&_1+{QFU{T` zPP#uk?L~qousEBhPM;ItSE*`$B{)%&i#7DnxeJwBq8FRGRll?ju-<sf{dboATmHMo z4(zXXTY0c2FPC2A{IyngnY;sc?}dq0uTuYgx?kAmxvy|tY0u}i;W0_EkGlCj?zFzM z+Ip>d%|*$1TjyQ)*!+F1aLQ}O$<g1Z-}<%B;q{NAsP*DWwQ-WiAKI3eU%P3!?wpm? z@v{d{pWP;R_UU=Ey${Zui}atCad$@h*Tj9-8b!C<dwq4^YxmbXrbVy+dMEwv2ENzZ zzJ~FyU0s#)H-zu?l21|mp+|P9TP**-cG3TTp)GT791m&gTc5LP#;RqrR_0~Rn5A~* ziqY1E@f+4F<nOLoz5eb;qXd27^!(%J)NJN|+jCOt$e!Q)VGp_Q-~Y4w^#}Xt)-v9t zse6-nlUnyZl=|~OrqPe>(2Td0%Doof^<Q21>2@fvqx)s`igx)7&A%R}U#Lg<**hox zWwPBkDePialyi2b?AqnLdAd92mML++X?3#jXn(08+wNpBcZq@iWzk(}`&aL9=6`XK z+sjz8X21FJM_1-dyIjb2?gZnUPUB*+bH^+##GgN`iD}?26x2I*bf?Pnhea`s+C`!3 z_@+j6-+yGV?l|ubLG#9>+=FX(@Rq!e`Pa4oS^k3f{g2=OWZ&NPxAp(g)fK$!AM@_% z-2TDr-Z|?^^Y>5x)=c34d~y2An0?3je+b$?TRulaM@#OJ=1JAoC6lg93cKXVc2a|J zlBbck*hw`@mFZ6=)&x0lc?xQ(9bLL)&7`ZhE^p;~xV8IWbo&A4=Z*g7*!5!=>b48m z<O=TQlYQ?{z@J$-jW1xgRPXOsZ)P#?vswNtyMZlBjrY<SsWp)%tJA8VUhQ)_pDdbF zwR#cL|7D9<w8Y{jNEC_|zJ9h~|CYkqusd1l%4?U1@*O)}apjkG$lPhyKRv0rt$Xd^ zj(yqxe^0IGE4!w*?U=lv_4idyGb?TUA4J+rRR5SW?~LH3Y1W@a`W~;mG;{e!@u*44 zl??vRC2b~Ke{^_vCO%73_icr(jiJcr8E^LR9(l2Sd!f4V&biAKCY}1GSy3*eIoG6l z*>p1#39X&`TfD6^^<`C@toA)S`+I_6tgrZGUcK`dckG*TG|l~bZS_g(S%H6-beBxc zyA*qGnw*fTt!h+KT=D%wQ{vv8tgTewe>(AxV*k@lo2lvlzwA|x>fYO@61ew)P)xYG z)|-Z|RZ?Fsq`X=gw|?iZc{ZEFAIIOnreXa}^2xm2%XWXOSjd*V_+{K@-cR29`M2)h z`=lzlRBy)OdquA6PVw$kyZ*Fq+T__q-gDv=_DsC`?~GF6I?+DuQvnTcE(mQ3E<2fb zQ@Q$S!<)%}i^BM_BrR3ipLWPhO)iS@JK<@my8J26pFN*<hiJI|R~5dsr%lHAUuq<y z|L5gTiu{D0?1`DsUF3QCRO;*hla+t(Dwf}LDJAYnh031aQ#OTNJ6Uy8VRp*moM~@2 zxo$gU*13IuiKt(YU7q{7h3E3#$E}Xb+rE`8RXdWAZ}V!)Gj9X;u9+P5_FG7wx6mtx z);U+(?tFeF_@_N4>9dbt%B=9-JjL0@@Ajm%{8v1GQ%0gm=f|as|Ls+uJetn{S~r;X zFu5xsAvGb<G|lq#fddBIPR4UnJ(52$U%HcX=8Vo6A0Hhq9-cQ2m2PYr1to<=sR0QO z{(hg|`%r$u`F*V~w=*$6PMIL{**Yv+Vd;Sbj10!}d45*hdV1w|uxP3T`-k_xbsQy+ z>E=JEtSwLES8H3)R_QGq;BZk{BhKI;x2I=DS4UFI<Y}{*oVaG)D*P0rSSYQppp<$z zBsuu;7w5^xZ`oEKGF<+0`7+Jy?V{%_eg@Y&yg&2qx7}vr_nSY@tlY<-!egU+@Qpds zv0I|A*E2IYCCa~5dht)3$BorH<>i`&&<$Q;XR~g4UOQy-#%#BDph@SXOhw(rp;w&V zUU7^qnY!+>uF(<(%?PfEN=q~}-K2DndUpo(E8m>>?nKEBnaIASeKE%k+iw@nWdA5& z*K<1NX<?0)|MQzQy!Q{3f6j_K{`x29zjg_gwl0r@tx9v09DM|WkCaSQ`gCM<((D`B ztBzPdT4JGkuB&*F?;P>DMJ+ZyVw;q#pH@^(+!M4e*n=~~X-YwAhtSFbRX@+*Pg9#- z1g?tC4cA{4e#QSv+*j|f`sp)1KfTd$W6h1*A79xT>7M??&9URAi&?+uFV;J2X4W44 zb>qCrAH_zqT^`d{&aQfCeM!}$aht;qT>)K7d5$w1S;cNJS@N?mRT{{jV(ovJ{KLhr zJN@I+JsshnwBl~-KM)gGn6yJevqjgyuSb0HUnXhS&I(_d58QJEdly|5dr{$`5PfcH z_8+FiZ3jBonX(tV-(t#r#k$q|?MBvp8(5wGGSz-OW&4HO<J$Xc{@2p4Ef4Fznj5=u z)>^gGxmP2j*Cwq#F)MRr*b>tlTqe4kujUxeK2w~wxbl`w*0tGBpOtMsqho45qxG3p z@z$CDzw^#NJ^khB4@-Yvs#&=&W&V@qi|I1PQaw@0^EV#9k^08Kt2b%!g%jp6ZnF$; zdzdYgzP!ito=bjH`5g0m($9OpX~nghpR#t@zx@8y_b+O9E&RXW{)PP)_g`E8dj9LZ zzf5cQ#;th%y7CuS?Z$a4j%U_q{ocCwmfzZ-)fY}}HCpRYoH=>x5_#?XgP&JF7e6n1 zKDYnjMO)o@kLO*PeLVkJZT;Wdw-$H@T|ZFrXMMN=@2>qD8~6P9o}}<!^MU<4iGUiG z#<FELUB?YL`jv0YTdgk86wsn5BUmBiY#?&jKt@@hQ^UGb=7B`&`FT977dslc)RPRQ z{1bT|8Ho8S%RQdZ;L>xP#pj5z#~~G)?vpc`R?cX9S;1#)AbdVqY|_N0kTb_*mMF?f z&giZ@aim74ft!0`YmUyLq$dfS(~=~oDT`}=U<y;>{~6JGH6r={f4MhDZ(B4tTX32C zJr+6lfO*c*_6!%{a}SeE7K`d;I9s24tfcoq$m(KaUd+MJFBfX2JaAoexT+}8`rdK1 zJx<nvZAw;6wH9ve8(aG>?XKXwy`qaRh<EkUDv`y9-u)Ha^?{9R!$iJ~l2;tA-e|a< zsdz0({N5o!v2#iqtwEW3XBV4z9Z$_VVmdA5d64AO3qsa2tuq-<X*L^aO6M=)+8x;Y z*P<ip%0jlU85?%X9OK;6{`g1l+VrJ2&X{dHyN1R3M%cDi(Z9?KKeQiUU|?W=$7;=R zl97jD5yL8m^$eRCwlnNz*w1j7;XK1MhIfpr42KxbGhAi3&2XRL3ByZ<cMM+`{xIxf z=w;|+n8mQ1VFp7ELnA{gLnK2e!+eGkhAf8b40{<WD{jRG?)Hmz6u8UF&)j(AhJxiS zk<BwF9IIZ)%6a5!Z&HeN>r;+Q^P-8}g^cnJjV`>m)=Mr}xWr>No1(Z!jgy_Cka2d$ zA`@%t&Bf<t8hf9bxT^eR_W9uFDiaRfWjky3*Uw|?W`^%eUcc_`+0x7&m6P`6RO#=3 z+-$QiPO;8ncxs!k$uH?^-59lH`M-;QxY~aIk^gKhvBl)_mn&ABFBMsy%`WtAelK}; z*J=J=O;;Z#85k^?vFwqa{j#8c+fANlo!+o@;>A79#)3ajnm7b!=d#TDcSZ5)=Ry(h z38$BBG@CJF(?1pAgRLh^LW8%S`El!D?552x5}LKnHnQJ199GFA$H%WGa%sEDDIH$H zZ%M0<a0pJ8;j(;s=j6X74nIAFj_vXEvVPpQmF?KX>jxH?`EUMjGut;eU-r<CNSTA> z`z5`tew=8#B_Wt(out{o>Eh%T`m;^y{9YZlCqci@J4|VK`mw)$F2|O4H(YF{Z!P6B z4CAP(yM5==>8{;jJI{4HmFKU@T5(D9?C-d9`;IfuljA<@n0#>d`QQJ%8h_d7tTV~r zV{xuBulm1e>#L5{d&KQFsbAi|F$%O8osog@|9=Mlid%Q~a#ut@ovN`*zAAd!makiM zytl2n(Y5G?^`*Ww8eMOXSR9i`?kSADE|Kix;nTsHS#a6sSp2clU~^w*4`#(ylgZ00 zCDqi`H*ePonq?&7WjrNOf^WKaRdtm_+d|!|44SDs{%WY4ihX@QdefU5eq6=pe(t-S zl${-Y@!$2w@$a|RdHK#=q!Ai**K6aHHlv`hQ;va5&!1;VXMg@&;&6J}Whdpcw{`?; z-95TEf4{Bc{Cidlr1!jj$9VTZ?A!d6(e{;H+b;NDSgv<%??3<lN3PAUe7Dm$GI`td zx62;X^OS!2Wc_9RmA@f^M+4&*1XXo$EsqopUBh*G(Nyu3pC=ugba1}r<hDz#s^=yO zTE-b!8U?2bFXvvaEB9wZ#>2~LMXEPnY)IKw5axMaP3X!dkDAK40;N`OW;vv8^}Vo( z@morM@MZC;YbIaW?p^=6|M~o!m#?!M<+rLAXX<`Vu8ehmSj_p=Vrkpdt3ivp#J@Vt z3JQ#>n5O2{?G_g@f4W4vTZ&GQpiR*8Gag4vB;+*gmvsHH`^C;{AL)Er|JBFxO}k&_ zzMpXaLr+*&()|GLDeYRz^A`s#WvD*&u!OrwA?VMPyP=OFp9rZ$&7GOF!|1(IxX3ia zqfs?aE24R~n^rj+-tk)*+V<f})>c1xzs&BQiyCXzH;H?nUw+r9=#H4Dcl%|lPkKwQ zK3u+4t2W|Fq>B2VgNpwTK0IP?k@JC_olz@yO5m&Ihm&Go-aPiPUw4Xfj>YXCYy0z$ za&Nq1baYBq?nBLKf37{quedek-r8pF<*BD0=xlnp-B;AQ=K~}6&$AQnm;LFTUpVpn zf&E&F|GD;Ep8R{>raRv&J{kw_yQ6;kquuUXhc<LDakuZ#`uyuucKTocnAk3sPR?x% ze>il07P6f1KhS1h_#^mr=Ks#krqze#KU5z&e*TBQ{b~Cn|Lr~nJbBUnkN;(Dd*<E5 zs@Q3NWX{#qSnO`S*KS`hf6>Z+r=PwF{CYfu_p7YdRtXJ_HdfE2=R35#t2(>1nBGkP zu&CYt_6g~zHBVhHSDs|=dA!-fn_**&iR`C<ydMj6wc0qAF40O*lZ&fWd+=DvYT^VZ z?+0E_8&_-Tru**n(h@#!cT$#Ny6DQ5h(o>?)#9%zg*$Dkd@y;A_QVLW%q6v31lD%z zt`9vr?fTK=ro-;Lw`?t05cGJ%?~o1ZTlyT<OnbL~`&WnWyB4n7Uz4%s^^bXvo%z+a zshe#p<uB=d+brELD_@cJDPz&n{kwO*Z+rIdqxE;&$8}#*li#npyHWJ++^^eXuG?&= zKHMmNDz5tG1<q=B->dO;?#9dBwatCZbdN8HsdS20sA8TMi)PNLB@t}v?lwI!NWD~5 zEE+8{?Mp$VoZ|GS%XoD4)T{5mIN9OWox&QD@gOL9;;9EkhB12EJhm1@zC7t+Sg}=# zQL}0r%LJt?i;I&dh)riqyTiG0n)lT3sX{3)56>xGwWg?0chSi}zI+omZPxq-SFRS9 zJMUCHR<oJh%y9HS|9Shbm3ym$SMIG|?pJ1RdiU1eWh;NHpIQGcmg|y!%t!WbU%dDK zy6UaJ_viZm6)$G*mbcxKeSP`;@cx>j20P2wW~bz)dBxPZf8~6zzRfEjd!=oNR?7}< zjv$sFtBhu8v3>EpzLL>fch3rI{k2bwg12gyD#&UkXm?G|dYHP@HHx=mBf~l!v6IZx zQ@{0;*zQ?(g|T_X<A#-2?}QX;JYwMK5L>;&MzLx~h-am#W0(rdkJWx1*9$Yf(mStf zXJjQj+FHUB$KmDEBWAIxv5#9VO8axz1(r9Vr%!ZrP5y4STi8xnSywRYt+<ovpWOP3 z8-IH&$*yqyJ8|9*@zej@uU_k0Cc80I*8au2n!@9|l)tb2wY{_Squ|2#H)grKj?4G_ ze(l7nV}4Z|p6<Jy&r@QvXIpA@{F@IImuvsV9(?!SbnDW#^0arHM|saj=69Huu8G?I zyRUKW!&Tq*zkPn)@b8}low9iMHMtE<f4Pe0-t&L5OMK}rrAwKClP5pl@&A)kP1~Ji zAMVSaluMAhnjds@O79|9;fF!G(<h$!w0~2?V?Ex-8=_-xWj#A_?<4c#*=}+c2K%Oa zHi*^y+iI$x5?%MVY}?b;W!GOkKl%M@8vlj)B6afBaYjD%@pDbL&EY&YH|*S@jB0oD zT&dcMn)mlUzIm;GA^m>c?0+A*v*S*irPR;=s}TKP>gPViYp15I4xYkUCaa~{-0*5j zL&h<E|J5lI^BCO%Haa{~T40*3BK~2|4sE?1kM!1hOJ8Ao?0nEX_VK#yP3v=aKi}Q{ z{^qh-Hx&1L?%S~V|Iu$NSAG*e`8jIE^c&YhlQ&%7t&w0G$j#+FS@7yb5!c0L3wahy z$>7q@43k&ux?B*KvS^Z=MX;#vOWq&md&TV1E<9e^c&WX3mdUf{2W}Po*vW9+>HhRZ z=IP&;&*%&O;!^e|q^xJ&f)i3~o2y@3f1!}NaGIj8YBSe1HunX(YLiTliXAo&*0Etp z<z$`D(9q48@WlJZwT*YguJiHrMoixR-MsYs{E9b=AGo+zdtW|ly<P6t{L&9|<bIh1 zpZ{`@Z>>v&V8EY+A7_eWcwcjR$+-2^om;ZDU#!2p3|?N)`#9nGl7wDY5&OfZW@dhr z;MSF6<!t?Sy5d~X$(uSXb>-hQpDp-hvgUOdmpJqNiD{`*4@Id+g&mtvzQgFs<FD)g z{$mWeuQhR%=**~zn>^OM_s=+SVV}KWu*lgBU7wZ+3Pdfq`$gJ)^VFNmP3r$lcHGv# zOK<<-eG8s3&MR8w+2--c!KSjJ^J;p>-^Ne39iMC$erlehyFpoHxncS&PdPq4Q;{sK z8x~F?Gi?G+-gsj-L64Vbg>FT5(yn{;Kc8}o$JPD(yZuk6-@NxRk%1e9;)Uzd?C<)O zr~0R!Pq}<E`HSqA-s*Yx)HrU>ySMrG@#xCB*O4>r`5FUio!&D2{;H<s`q1m;qMi(g zVy~dtMvMBEA5Dr&Nq9cfSd-a##{~|alLGfr8WbOz-|(Kq$zWh`z}jky4r{`B2cD(! zA6_W#`t;qoTH0k+Ro`3NgxI*RFHb&yaP#bkH|Y%iPp_1Qoa#EiZG+@So((AzHa@ZI zUzU8zx5vo*MqG!g*QN+Y^P^<~ms0PDEG?dX`qOsCFFX4co5b}J(~n3+L~h8M{d?X_ z8H<wqO|^fnEZESyTw34G<mc++yUh5v_a6;;&Hmo=PVs{E>R%71o3H4KyJP$D*nRo^ zi9htK!W8S298R08nYjGd$`Ialfvi6aKLr`SN!bu5vnQl&bu8QM-+Q*)m?OAW^tt89 z{Bs_H4jp3Ccdg*k%xbAsz1V%wOLJwT_G<Zcr(|3N#iNvc6x?2TUz0s^kmXoMzuSd| zi^|cH+S|<P7O(pL@Hg9WYi8+RR>vmY-d+Fcz=4Nnzuq?QtNZ?IqcF33y#23?P1Qfj z7HS99o!Y)=@v_zXE%)tTyM9^up6t(!6W0CtQE`9X!KdGa>R3NF|K<JA(6~u?%8B(F z>r9$LT8>49q%?5KBs`rj-W%x2UUS+l*h*<aiBtls?ZSS!RN<n{e*6z2Em|aP#8-Q$ zyR-@GdMuLQbviA`FfsJ$^8>HA8nV_Tg>3oFZvSKY8_!+ti?8jTUj6di;+zkU-k(o# z-SwGA)<?#V!`ZM^%>SU3_R94EE4yTLdG<VEiHfK^d4@@msYO8Uz<;HqM)e;jr*}H$ ztuyUhmVR~8)qm=fGpeUe^4WGPs_InAwp&HfQJ*qCXNQNLc(%CF`{L1r7_lHvwLad8 zp1IGgRL**QdbsdxwYr;Bb=Y0`lzFFac{|T_`mQ|t`kfu0UG7hem#H(kXS*@CBweAx z_VZWqP4=62E4`MJzW3wEwNPb;cDsi6sSmb#eOUEwVUS(RhN$U+(?3m$b)MlD%Odc} zrKaFpk3>h;99J&Jb9WQ=>oi{%=;+m4eCwU_?xSZtt7MxtZIN2A=+1`3H*-#?x-1U8 zqV8hK9xeJ-O#9G-DZTNPpPwi)B`;-ovTxpA`>5@2Q;O0b{0sf6yj>?;RWAGOz3TEk zFZVUyZC-xt_WezDxf`-i?{)qtduCU9#^;sm=KX3vq`m0-|BOvrwTr$lmTv32bNxcy zkHfCZ<?sKzdU5U99s3=;Ha~Azrncc((H!-Q9v;R<bCxi#T)aWbdh%5ruGO7v4HMkl zl7%;AU6hc>U9fJ-y6*2Azvtb(EqbAL!RnXub~s=CdC0k1Klo<<rvHCuUfweQT8)ik z&Z#`tIQEqi9*cTIv>ImcGoQNNVBYJsX6AyLji$=43d^tG?3j3$L3=}?<VLagKV>8{ zb?>Y=th!P-iP>C~gIjG$^I5H_J0|jFA2?Ar>C){Qr=nXaJx_DoT+1wLa^${uxyGIr z@V<EbiSN;O4`$`<tF5^Dp*-(xZ9(iA@yOV?%U1)oR=wtbCuQ@^;j?!2HQt>5lKP!1 z_ZdrO$#xtMTeEv_t?k{w`ts{i+x5PED0qHuU&jUedy+46<KJG{DZSflO{Tp3n$^-X zB;=&-UXaiBce63Ip5d@Wci$Pg+jlM$*Y96*`xaxkzyIeIl7>%PVqZL7n#G$Kx>fJ| zV#X(dNeSHxSEK|~m^du_v03%Pl6gkfS5K^-^2CJs-Wtw}$2+&RMC7vCyT+XIWQ$~d zCU|54XRNGB4Cjg2sR7Jsx31^ZEvbI6zxV!)z2D#5UHrfF>bX_ACx1=UbDU~XQ~Q1U z^`rHcMk4avk>z(U{!A^qeqrL-li!ZpTm19+#=m@bmDIP^#}jq^eYf3{i7e0f`+_-p zx1a1iP6OfJEw!_M<Q(GRW?hnWYt0RHRSqLA4+DP}?aGOF!Xq^A#E6~FIo+DN%vYkq zZsWrTKgCw{{Bk<iCG7okOKjzq>Eb&-FEZ2G`QV~ncLWd5%<V-LM=wmSX{Z)^+I%oc zU)5s%{VU1b(;_pzMHYL{P5i%do>qkZt-bOMcdb1b7dbq#?mAho`)1#pjBl~G9N#DI z^1JB#|HE6wyBD_qXMC8w@O^50`u&!<E0%f{UsE=8D0u&}!gKz1smvdZ`MY+s-gUoU z{YvC-@fL-2TVuJ^3qRUdsO@dvmVW<q-=^Po0rRHY7HQ=#=6n_Sp~Pv&<7SWG{XUn2 z3>*T^={<D4Uzs^k)i^cs2{Zd8p4;^kU5hjs*BVq!uyau02r>SylD%pAujUuFuVV@> zbG*>~+WdH}arMQIX_gmMTiv=&iLS^C&|J0T!qInGUia^Refza=-_vJT9q-yp*PQ(J zY}UQLW4xwcZGBt9t3u9~ui^gw=1rcI+>4#b$-%e#zV5vnTN53xRJ75~pR+A$zNl&Y z)w2odrGflGnx?ysoj$NE`mDG1!=pUWVsUdc_C`Hi)I7cBg~ffZo+mTT*coygZQLRz zGij?>i)HSFxl8hPNXMOytj`Fuu00)QwnezlXg$k~*TO-ogYTV{y)&7ud`8#9c-Q%+ zp@EVfC!}vhZTIL{H7Crqn2k9l`Shd<sz+GEgy(N7&O9I?wXgJnW0tmfsB!40zU`se zj>&85U+|X{|I%1%RUH2O+~K!-t$noWHf5gv7b?wvXPe=&Pcm;r_nqe7a@FL0UG4vr zZ+E^mKF;s?YI9M>|No<aZ_U%U8{3}kT*YS>Rvf#gI@GfEjp?rE_WL$I%=z}{;obFb zGGD$}vH$0Z=Do|me_8kX+`T_svhn}t{<~OTwdVc4>6`Mq+v`5x@U6Leq^jzH`j+1_ z-+epbwQJebb@DfwY|4Hrxvnf*G5Nq%nbO5MvE6GXENbM-?Co3Beejd}?ZCdLS$8D^ zvnPh^@b)%V30cjQozk_iw5lmOYWbUM3@_F(yiU*km!R9*ae37Xledd5&*w>h-Tr^p zyN7>0*PomHVfEzsa~7MY@f(F6H{Z9l^7L%!rxK?;Q)A60sE1w=(@J&L%)6c*#Iwm` zs@>#o({4&c%o8_HFpZoi>l2+HvL$+nP{hoWQw4p+0=;u$cYOOi>DttZO&^vE*&ln# zv*P`!Hye_IoxU{5=r{QWq>66cP*=d2Cb`w|<`Is|8}A(T{B`BS{oeTc|1bU>w<`Pp zw>JOpp92?<^Z)(x<le^4&daY-Qh%TOckuC3tM3y}mh$s|^v}I#wddWFw#I*YO5E3C z>)f}--Q}%wwVnD&;6|6R(QoPQ&;P`qpF8oc<u3DT9mdri-hox(d0|^i{Z5}q+%6=h z;?<sZ?e5Pb(T}a`c2!L`xOH*w?{`1A)qj_%mX-efKKJqePtDddj`v+&_2s~?XUtBY zc5PID|KIo9<!Q(MGMC?1WBO^hjo-wA$Hag^G%P@qdEKTJ9t#_IkM_@9vx(zET*|=- z?MvENtqTrrQ%Xt_a0v^z!^1Lf$@OOcUrX-^zqj3#{o`r;-jA0ySk0_8nr%1H_U7k1 zyXF6X)ID(CGwHp$<NU3fcJt?*71%Z<Bu8!Sw8-FIw;69rUY{+pXll{=;`-v#%gDV# zvjSoYEyWc7&q-;X9=G8BscFXMD<|8ZpI2jO{cF*uJJ%oVtjgN@=g!OYS680Qw5nN_ z*q82Szc%CAWxq`ey`R4*-;`H#X`Q(KUazN>2|^VMx_)U*{UofddYpOLBcEHr&%zIX zwmD`~e>>s#&6LFFn;Xx+RJL2rKCi>)?Y2e@^Ob*3$lCcO=BpR%dcmyExA>HqL5Pd6 zx|rZML!Zt35xK@c+5aTjPk+2{w_mDS^funoss0?d-@mwB@Be7(bfMROBY$n3w*A|i zUvKX}`Ela(_22w1uSET{zF!hOAMa)Q{q!A|lRH9X)lG6kRC>dvnJkL(*v!@xyUoHs zFhyIfYtB;U$3CJ{w><NiH(|yRp#$#BPvR14#Pwo+nU{XLlt1&5|2f0h>3+}WyURB{ z-#BG|!!)lJ*QAHHKe*5Re{8aNfW*oFVt;q|{n#!e8m8kRdcn>8-`=S^^4W|98>TFA zUOsaX_gwuSMn`X2$=$kPU{J6y?Zt%;_nyb!x_50)sl0XJ$9eyfZ%1!?R`5y5=D3G$ zaKWO}k6T<!4Y-^I8V_>c?3@tctfZ(Px!`Zrge_4KyW8rTuccnU_<!18mER{eH}oz( z^I)lcTutlEZ;oZveDV*Dt7w{T4Y?V-X47(yKOx6FyHxL-S=G3D%jFYg470MYob;Ek zG3<{nwXT^izPT>tZdK~tsEF<THM7Nive&yBG338G_*tVpTwm`#ClgQ1HBGnd&5O@n zeSRmBY0fDn=I7fRyS6625U`!#AlUoA@&3WNOHAdzy{gi?Fw5N3YO&Y$m*wC8<}Hp3 zO}W5uLHVXmF~f`m+5MHL)$D$AB{lYan7u9MnZ9h;huR4*rs}2Mbv?D~tCQcnn{!fT zzch$=qVkESjBm}El(y2>7M+HVekCq__0n~=NY@23#v0WW-&wp3&mQ>IxzzuUwwn9; zx_l~o+3OO&h{cw_zkOhjp0Rbq8UB}>djHq`Uut~h9&_b_GzYmGD;RD#8(rU7EOfA6 zI(g!nXAV3Kea_K089r^}I?9+~c+%(E<MP9)=Ts+_o9Bkk5xQ~qV@(NPa_Q?TzW+r@ zkEXj<RrNi1{cv8tQmwW1#m`pNUtUB$`(Zdsh@I`o=_?x_-+VLE`n`>_@$v0*B=a*R z?KeNwowdv7>6asJ2Ud0#CFx9jW3ov3z)LUj*_u}_9bKUplk!t7A-z~6#P}rlLN7hX zb86>87rrtzOuXgGE!uUiqVDs}le6=FUAyVK{{Iv{xr!glU!`QcIKe!-KVN85*|R6^ z*6gV=Y5gl%4<xd_SuS^U-WuI=9eHt^9tkO>aMm4IFn>lDOLO2B;fn%c(`O2|n5$|R zwykaOzS!xxVoPJulu&KCk0xQBOseY(#96a%R(`m><Lwc)e@9|X*QP!^P^+t-W*=j$ z^e$(f`0eUC^}N!uZ6eY^V#hD@M{n<VU!VTvW#_bMoy*-tw`f<~XRk01R=tvY`HoLO zJktvENRC&&8T)r~-br)VtEx3icT%ilt>&IvXC+p%%v8#<d?XU#qmrUHtzdJGqRFc} zU$)5Eo6nh-aex2Zyfgm{e?POg-Td47{>{HU7nc6NsM~KVyX%Wq@}4h(pC3)%-gm0- z9p8oWum!yh_k2{;gJXBZ#BZEqyk*|;4Jwz|F0b&uTU2(TU(id~SM0}<RX3h;y9MOw zY+dGM+x^rg%Z0Dy=MK$VuOhqZOCyh7ni=RlZ(ZutE7wcJrfM!PKG^fB&vvc<*ZjL- za{22kwTjZ&@9%lL|BmUe)3f*8+Oj;oAY0+4pw;9(uYX;bweiZdlikbvOw0L8TEg1I zZ(6<OwT;hveP^%Y#ruUC*Dl-@>uG16R`z|?JYDk=+bx-2*&1xwwr~krSF29F^yDp9 z*HH&ms|kyq?ODS1arLzcQ4BmPnO7=S9(1_0rM#2L@L1gx+1(3n{rWt=epmR`sSmzc zJosk#qt0A(c@W=`wd*3Ly<Nn~5}oO{C)sVG#9k+XoEafH$7CikFMeni62<lY*_UwL z;y-^AUI#e;ZIgD|pLg@?V|KUm@3K;F&AcCfrqAY*IL|lPJ4cMB?-1T^ec?{cgYpf1 zr{$UF#BS(I+LGNZ=*M+EL7?cQ*)9|1OPhi;iYD7g#xPg*9`$fv6=5hHdGOidSSM!L z?TvkxV{2~dvy?C{{PV{B=D|1b9Xjr9{QC6b#p&CP?z{K;Cf7t<<~aZL^4>1pr>g{5 zJ{6oy5P$G->ZiwdpL{&=kI%u;p>MyL%&!mm9)Gqjx~4MCRy*_5f0bABZGYd<mj5G_ zzuHy&j(%;Jk@SBRsrk0I75=$P-q9B_ou;|gEuY)}<%jP#pTGO@p|t3J#!M}<Sr7Md z)+c+qc&_BWx9j8gn{DfBceK^4Ib`&7t;XR)9G`Z})GvR)t-UYw<Jtx`GsP9NUAXcd zPZi%`J+W!M?vK@)6Pwl_Sv`qm>#a2xrO&FSK8=dqcry0Y*Rxv77K9i7U=*)elr*nj zLom%+=*UZT7Ds>2w~DuxG^n&5Nfc%8{~BKVrQzuLmobUYKZf`1p0=xGTG8njx2Las z^WP#-Q~%n`Q@Y1D<ukp_ldr6Od@TOX=|2xHy*>Q@{IZGvrPn!#+g<;7x3BMb-mWVh zUs$GlOjY<3v)03Gv(8Ny<;3)qIIpCD?^$nMzBkF5?A5A0xXI>A#J9qz?;B=+e|abI z`n~QCc{;y87WO~5Tv_ow-dHoO{G0fn03*vImlt{~Pp^8J@@8J!uj*HuGI&ne<SG=I zc`fxZuDIp2%CYO9$ddx&#GUPZ8HuM%#FY=<yPEpF`TFY5*Q>wR&yi*9Hm=@Oo9}+S z+5D2Nc>N61i}I(wiB@!KiGFm>5{>rd-ZraiVy{_=L&tQ*%%^W!=Wt(BkW1Pk-yBfq zE^b_@c{XqFmfoAY`~QAD|2_7L*0$ThH^pa~ef6B+>e-XB^s3saMO?{dbJfCKWCEXG zj^bWf&v-fb?a3$iHeQ@#z_i%l0B7Iw7w`YP-k%nKWsm8<&iXku^%lQHii^VRCQoxV z-SG8>_NSTlz5o8Li~Q*mbuN8V@l#_~D*-#N{golLvs8>7*QdlUxv%oUBzVy@|6n5< zo%vzDhZo!Od;4dnD42X;;pbqQuxpx3!mSvd^Qr>xkKh0JZ1$IbZ=M;yGC%%5r0@LA zLn=2Xzp4{5W?>IA^W1)+v$*6_>+koMcpu&WD}H~;YY&I_@>B1;V}D~k{WycT9#<Gk z&BTN9lZvO=@{6A+G5>vDe6et~<}AKdd`9}K<~N_$KX!h3rf6!=)0$}}$qRYB+M*Uk zF8VahHRGVzg65g>p0A#7TE94UgJ8{cVJ+U3cW*i_eRE=CUdqCvTD8<=f#waR2iWeU zmFy@m?C#9bVcxy{j8f>OmQ!ZN8=KzBNX)kJd@$u<p0?BD?UTG;p2;(r`X)m@Q0TQ< z7R#FC61}q$(Js!Jfufzgnx0O}o4GX%O;n}ij5kVW^2=^+pWXUxudnUh^*Qy=+|Ngv zp1uF}_E+=$Z*$h%7l_}#e0P_btT6MzYZX6FU6>egeD?ZStF4xWpEo+6{n~kBzvOg| zY=&pe3;rK^C7jS07F4cjrqOONUCLNf_fSltOVi{h(g$7@3C=(D@?gT2C#)}e@+S37 zj*$@CGPz;Gv<lUwQ)(77^(qHui-vZ6HdW>hmF3Cc{uFSl`F)lYe;JR=4T0>xryjnW zws*DZH;*^-W|dBUy*=;FD!YkyKfCN%T6+ER;>Y@LGqYF4&wskwZ@$%+BVtb^&wTY^ z_`7F?Gv~ttCB7>KIh1d0*i@ccCOkdsmWS#_#p69UF8D+rx0IDk+O_-JoSoGf|3B$2 z)T=wbxIbt0esz;8Rjbl#vljLKdwk=(TJ-vEJ0XsLA9lB&<7jN|_0^sHJZ1J~@oQy_ zA9C2af5*8Vp1h@^Gca<|`Hr7{QC}v9S~=Xe(#c5c+NJR^r8l90!C&<AiHx9?%wM}j z#bVENrX48rEIfDlQ=&zcnT})0+7z`(!CHlV4%ct*db>N;_V%P*-{)<A@tA$ryr0+m z-QM3e64@OsF>A^H9gou|=XyT;{pEyut@6j&na7VlR^NVM{pZl4IkF%B+T7HidgX1% zDc4PZs#xc6)vCpYy*cFJGt=|j-Kv8>x2FZg1;sva{mk?8*aKGfLm8WetFJtoRJm+M zO4q41;ZHiY{A1d`a9Zc@r&A)2{}A5$nxFr=XspzBnVT0&{&$@VD=heN^5nPeFX!K} zy|cVwQ`vHpJ3_Z=6(TAd@-ybv{1d;ee!MaN5yKhFuf_|E53*?~#z{CR++sPI%b?}r z80~3Q!gfGPN72+qZw+h5vKUp4&eM!$>7CsA-U1qn5_NezMNUXd>t3k1*VM+!uC;f| z9PNJpu+rYIN8j;WIr2&(?fK5)_ZyocOzv#VHb^t?R8=?s`{U8+H44Yec5gbXrToC! zZ|%~&g>^1Vb2?tkzB+S?u>PG}JsKZ^E=>`fU6I+@=#rQ3aHm`__jc0xj)N;a5@X6) z3xc{?wRbqwJr1=#rJ0?!YT=q#@ncR_FT-|RP6}G27PNcX=6@SbJp0n#`b4Tk_>{#( zUY2YxrmtBmMR(LrE6@zP+7n*4L9gjU74vj0Bb`Imd9SCeT(fkpMU&o|lSj^E+%0Lk z!uiN%f_^i{tOuuNE_oWY`%sDI4*#i+y=xc9Y+Rk28<4@rJvZC!TWQ;^+Ap^LJGCcC ze=GTQoh@eR_3!?3Evp}I|DWi7KY6zF`M3A>J)Zb)-rZR3Jg+tR*|GcAt<C*A^Vq}< z=W4y3Kl#nq`>}T4ypwhJQhr#!7f-%xU7gkK`z=60MsjY(Y>AF=6W+Ub@7Ud#!ZUO7 z8Efb7Joilv_Q*Xw=csUwJtcqr+;3`~Z;s3okJ8(4;0N=>xe`qVi$wX4@lOkpczdLt zee#h*XD3b6_+e?;eMGh<{Q8d@A2zn%&wib^E8CRo(0sMu@s-~$<t;1EsZBn-R4ww{ zn+8@{#<_7UVb`^^QeE=&-14q{7V7?*I8E~CQ@5a)yt0#JGj3YM+QrS-<|Ll(9-jPo z?RGP>vdVj*?33QUJ(+TwcmA%M+~R9h<coA}yURB}FH)$DUO9zNKJ%IC)W#`pmLZ#d zOg&s5%(wO`%cS#4$G7oBOn>-6p!|x??!_CjGqx~3-h8O3wOeY%#`f5=e}4ayF8^{Y z|EFhp?PKwM7b5P@l@&F0-Tr;mD!bav#h>2oaQ&>Dx^WXP`<9@}#xUbYZ5kUm=1$qM zFxx6`#XR-AiVw29wqC|J)nCXaEKl!W;U9CyZ~vs&`j;Ye{o=#smHw3dm0U5cQ){}W zVrExLox$lm)dhDK-DqK07#!g_StjD^!ScUhb8m*6D}NK?Z@lX9{IWJ?t&4v0rw%XZ zY?S#BtlZUmdgsCP#f)5s%91uJ{A~C<=i;32&)U@uWjgs29vtFj*!9#vC|&K`oG0lV zpFQ)u_!1*5H%c^@*xk6d=G24$fd)3qylawoR-WB2_h+T+{fdHw&+ATIJKXFpU%P*A za>AFp-_A7#emk^%7CT#&)wSmqWp9Eef11?Z`IjMKQ}A5Yk4I%(c1+|d6KqVqX13`x zLxY+6?9O9;9AT!#H(PIWhTZzJ_fK7te$D30glBn5zkE|0O>Z{T?cA|QJ3X+X`_oM| z)pZ>+jy^C8`#sg~xaeNJcV4Du-YWz}x4ph{;K0lE_iH|1_vh!CbL;BIhc{|xm%qES z=cj(^?nR}a(vy>)t3@AJBw=0h?99UB=jI$Vl{=Fc+M3v#vHz~G@9ezGE1ZA#p1Pgy zr?6MsOW?(v%>9<4EPl81V;25(dwwDF^upp>O~pH3I&t&Od{FTHK;6xj>{%<WA2HWp ziz!=Ob$su}zH6Q)56ZT$?XjI`d;HDG+XV^gsoOV+bI6Az@Os^IF;cLpv|d@UZEgrp zSy1LZKcfndmlC%;k5*crY)}nMP>*EPDn93BbY{z>7K>+Yk3L6uK2GTV_ro@}CjPig zSkU3Q^WQAWw-C(M+%hR;-!cX{z2(vzsRl3nJAz~8oEI!Mil6+%K>c#lq^_xNJ&HHa zjNIs#>epv`>!uW6WtP^Y_~$pdgPp(Mh`;vo*Y>z7o%xd;D-Q<0E-vlc<#Vd<{P!16 ze!0D~5wlFpW;@0&ZvBMIU0!|qkHjw<PP~f@Y3{1u7+N${ATd^%JDcC!wOF<LWB!Ay zJJOEvHA`5nnJsBq@|3xK;@PwD?_a!HvFbgCo7tT`f9{-os4nG}q<r$*YwhrD`eJ4! z+=nh4W<IQ+TWd0Hk6zfh@Tt*jE^gg!{;q0K?|tzn;h&#+|B0Jidh^!q>t=WF%f6kG z>iOc6b;9|;5YDd+ha6qodX%29Zh7LOH7n@#r;ko;hkW{Gi^pDG=^4Jy>b9%am6(K^ zomC&!BtCAi?y8>a8a?%(mq+VThwPat(dX5k8@y$mmes>8t7qMA_+sz89oizh)Nk(I zYuj*4F86HQkHTyEQoPH3*X=qO8~bIpkxX?%Uj7F01pO}}RXkE*_wK1oc%;D-@T$;y zH&-m{l%A@vb=L!ASbfh0o>(n=Ci>al=2y1wx8A+9CGY9(^S4ZV@3S&`<|l89txC#q zzRcTGa<OVb@&nOF^OO0-*Q`~D^E}@ZK5O~ospoz^o@(rz^zOd=)^=H|@Dr6^-o82c zhW$;e_y7Fci)Cfo^Afr)TwsV>rt#JLLyZ02O1C{iGk2~qh|8SU7k+E`<EiWa9p7yH zXsT$@o=^VrYv%NYSIwJxW|#fSql?ndo7Fr%9Q~XpV&BJu^~&G7b%Kv6@kEGCzOVL2 zw@N2iRZeJ|%6@NKm5R#m^7DSLIp|&CaxlL8>5rxDNA$g)3M^}FF|hr7%pm*aRkPlG z9E)enYdtihnB8dof-83t&zxv|E4Dl`U2A*YU-8{*>blQ8G0U%KKC`&oO*gLM`O|%K z{xVP6QhJ{^_xHN=u4U`>qF!E){$5u0F8k~?fqUPX>TP*T=1Cr3BHokCrB@l*dt;AC zz^n8#Tc+oo**EX*qgACZ*C^h8;C?gyK=1wnZaJPE_fAW^tpDw~!kp#*UzOFTX2q>| z$=zQ4Q{00mtK&n3WI=4--i@4_S=Q_j;ugC);gikb%0mzBVgy2s#N%h*sEJLERet;L zZ)U}Yds18Es;qw(RNj6N5x(M{v>9ve+-6m?Z%)^4ZP~vywcfb);pO{ZeE9VAjck@0 z@oY2K+FBrTn>$;pBflvpSn>DdQ@^r1^0!^sf9ji|etL6Bn)>8_A8#y`o<HrW?_{C- zJ;BkMhDVmKep;b$?M<V9=Hts^syaKG#Iw(Ly9R1Dq`8Q^c3|bVn!m`+gOz2<^v0uA zIUgqrMTlrIOg*)yW%h=sor}yIO{DG}V!EYdF6d^sRE<aWkjmQ$&iX&Slz0m{WL>7{ zO}D?H5+nY|B+9q)uWYv2=iH`+FMnM#Wn0*L|BgvOJYW3-r|TEx-+gXNj$62Wx&1xU zO~;Jy-MU|$l<~Q0_PMI_%N7dn{k!(@Qs3FT9&P{r#cj{W4dNdQ)Vwd=l?u6Y@6f(U zNud#yC%5iuxMEYR;{9?(fAPnVW$h2%$9eTUf4tIhr`Y*}%jaJH5j<DiH&B!5hjzD@ zH)G|$46m&shReH><yZCWT&lH{&B{Z<mg&c;uvcqk6pox0$k)61;Z*hIpGn#`?Uav} z_Idqu^5ZL4Sa)s9sU5r4e>}%F-)-^6mRYO|EmIo3;}1W0_4`~*y|qGC%8gZ<^KR%U zpW2+ZMEl<T%i0ymiTVpn-}N#?g_q=JX-)mvzVF1prrhN+8{!?fJ*<4wPAxNTY(AN^ zcIM>czr4IQB?dGWsR#*m%T{vu?yC^e(Q}P&QoMQPOF;JDxv_5_&NEH+{T=n1{iN#V z?8k4Nnm5!I%-EA)XTE#>KhYcJu0^_X+_M$e&fh$JmhwBjjY5?rwaa|w1d7kQ=$Jd} zIIG*r=d<1|xb|cJ^XnTApRKJuyEgvS?=S!A)6d0a{Vc!9F28$@+E*nB@!v{QFC|=J zZZL0t{lG-IbFS(QK`{*;x#Wj)ciBk!?tZd0!}p@btfx~_%92<o%{Hm<3%vHJtLanG z&W&5GPBhM8+>;odZ7Q`+@0?5j+M7i?>Nlm&*}s0P@wM>M@K4sclh3EtZB9%`VBVbj z_~qQW&+7l}T-AC1{)*jOqD8;j3PtBud{i|*yJzFq0?EtKbrI7z4{zX&3;Y~1qsnEX zx#F}VJzA_M8De4uT@!t}ZcUq{G5PvT&zXBTmU8;4t#@5>sA2LcuT^!c*UStNeR*pg zSMts9(4}@dR}(B%9>sR|@cujgXhKXt1mhg}MMY*ByOu9yGl|>4ckEcFpVBptn>7Xk z-Q1TqE~$AUHkoA;&qwRF_I<0u{$743)SZ5HnR9LQzWWA(Zz4^1T+CY(o_hb{kw-om z^(n9F!Y}+>pjg&_p+3QR&+^<oX+NhWK0J3~VZn}i_n_}e3-$eN5ARz(i{<}rHr1u# z2QH-?G0>Nscs9GR*n8@>o`}qeVvEzWCeNOwooH<Dnf<km%YNfx%ahqEGaJ->)6PAe zc6!_DJ#$J|wP?9&bti6Evvm%)e(yESxd&4wX39@*PCvMVTSDZvSZBkLXRbS&;-V$w zAD6SOTE%3&{k`O^ZMiQFzKuUz9)J6vLjC_!N7CxvH_F=Xy}kYWw>JxfAOFcHKF$2+ zM_+Ak@9(k$ySJWQ{NbHqedW&oiodQ)?>DP^e<J?x)H%j!|5ubXmi*Z?$M`st=;{f2 z6Q9mi)v9U`Z7G@g=bpsTKIP_^drvI%cP(D>;EIgzP1zHiW!fJ+3r(JGm~2)fzUQ-x zXUd7bbF;g)><maPmg?dARKF&@d*c7_T9b#pKTGcID1YSiZTS|<-zInG)c*SW#<)cI zkHpn=Z|u$LnQLCWezD8DdVBu;iM12^-rv|4dvE*YqIhpsjY)r#&NrJkWNuF~`tPvw zRO+V#8D*DOF!#wU^pAZLmYc#KcgI6><Hy8rtY7_B@tJ&6Q4RYX)H}_mz+l1gQrnxq z3bWI^WZgSibd-+i1}PtS(>S}%U-?c9oB8yQljLtK7oE6}?OeiioqV^lh-0=VC0Aun zy8ckwzM$vi_O1{9yc!XPQv@vEd2T(qKSlKC7RPnEY?Wf`_br;xyydXJd)(un*M3&4 z(`?<cqU3w|mG<g?o3fvj{H^^n?bo$q(d9OK7VlnvIaW;aN80yi^Vi>0&e^+f>)!0+ z_he)B?`}xl)c8F5{r@yu`9!}`|7#}eSMT4xcv*A3ib#CqVe@raZ=~PL|Iofyzxjem zk#}zRaX!U;YC@S_CSTs|vA-B6&%fjPF`>D<8ymK}9(%67D*4TZUkWcTKhO;1pQDoC zAbi84FMHaFrhC4-o*EjYls>OA;d)vTdho0I^{Yp(t?NBH>!s|E-Iij}tG{vS>N>4S z&7J$H>yAOiPus7_OTOuH#QoX+#3SIA?~d6aUQ3yuSnW+)D*0J9+h=CU*`lJz<Vm}) z9&Flh+9zdttJ584jd!#4b{!WhjhE?uclVXU*-dSxE%UUmGuTQCJt}(FbMW0_G4~CM zv1>MVoqpD%e)f$*sqTamQZkmGFFtwFp6=#$uExUh=f#;5b8Xq{_m#drFaPdkr9?dc zw>hzUU*0zV_CIxr{f%S%`PC2BrTDKf{<wACy1lQ%4cq(vc)ocrZvXS%#O{>`4_-N{ z{CK_mt9N!^e*O57-Ct5_`{|a;{ePv}QA*OQnySt6ewXDwo&NLc$7((%+1ZlHn`6H! z{diWF#m<^#_|`DcPW0GvS6+Ql<$WFO?Z!4$PbB5+EH`Rx|FYatvVX%=gS^g<UY_|1 znd_%4yV1Fm?Z6D)+c|-SQ3hWYKM&Fg<*T36Wg4@tA^fGLlIAro^SS3YXmN(^`uS${ zDi7xUefb`B%O@`@E8cY>_GIJlf84eL5yBGtXIJJvVT`Wv-J0$ls`J~e?Dp5tL(@uQ z8UNb_8^3(L@YoHD-R+ke+I!|2>0MhE8poD-{6O`4-a9(`FD&=JIPu$?oo_zpmZ;QQ z-c3GN<Fs<){^)mePL@tz{iW!wW`@)?=5O}iI__HW)m^er7}vGlZO?r?J??1V$Mctu zuU#Z`MsHhiZQGkhiK`BObya6ort){3{#i12kMy+b51ppDJGSZfb@A3zb^hseSQphK zCcXX+?~Msf?_VvtF?o|v-jx&PS!r(s=DglubS(06TDe2O<k|zCrx$rtua;o!x~|)9 z|Hv$|tv=_$ky+U{R1%J!t_{>nV07Q-sd#b2%Z2OK)y|fZGJE^_RaHjt;kl-BXU~!{ zFTZxBBrh-L)|JT3-%~y(Y*>{aT+A)c!P+D^b^H5^6H|(wT->*>d3M;^TO}LTmu{K; ze7Ada^!`hSKil5kB!8)0DvJ5*wB+4odmrh4X7RXt$kJ@3+?-{dn$7mDCKsP(HpvE+ zOxU>kob5l0Z<ZTn&+vWa6Pll={-xmLjc<O*yOYGWc`v{C^X8)~u@AqMb{@I=_F=*A zyPZdNefx0atgr9fxxT*UtFK+n&){yob<O<BdiC{Rb>rW}-oAC)`_}=736J)$Ofw2D zf41wQr}~Ttl?3A%E7;jPMBc6R`Bjj&rC;pl91-ruZ&SM*nO-bfnI!yg?F?2mW0&A% zkM?X_*_9;a{Vw2m*`}9@TsOj|NiQk*q_X*)O5EHtcJAg$>#cToTP~`UN(qww7~R#e zT`jy~hiC3mwr?|zd9C8=PAm)y%FbvlRkG9k!Cu60fst+3u_&XvoAmm*6yLroSr=<t zwjlj^^1*3!ACBw)eRHLFZLg^;WAFCA*G_)CapCUk$L#HVdv4slv$1RX+xKo|!o?!j z#F#oK87)|M@w7GXUKvde?X3;bsgt5_nLIBv;K>x6a>}MiI$F|ePthEv!$n~N@>7cz z>fI62eGuNjt+~tMqTd;>^q6HuIlK6)c6r+7E1Bfw?Y1vGJ*{`|>sgN$mfdfAa{X6Q zbMC`uDZ%#lO((_FhorudT=-h}<kjzMB2TI-9o)BU>psy~r{ewRO>fA(kCuI*xZ&dc zP+69H$7jvu3i3D2Kg(CJ&o|-a`+pjr*{?cU^<1@5NuLsXKJ5l~g5Vv!<CU(98#K4Q ze39Ylc$Vwh>KI9dqw@sBRmC5^uoP0;dMYs}$olmRb04XaLiYQ)@3W-5_Wcg-o+tml zqhyNY=GRy6>-0>$7bH}rHG5*U(C<*GOY0LDql8vBip(h5*<~oRVQFZV&sj;Mb<X!X zJZBxY^*FqFw^iBvz1!E<em1VQo+*AW{rE9IzR%*@k8W>zyRz=Hu>H*Kj{h6|HVST- zEVg*+k}sR|EHVz8h2PfNY=1q+<8u62GvoaW4B7>kBpmdLY5s9dXJ)92O}cWoYfaT7 z%gdXB#l%I{UAz?kc1QNrS?g-|TnM`Uf9kR~p3W9e)^C)FP0x*!jg;06et2tsLv6+d zndK#3wR2-ar_WyG6f$q#lL>{^StsSLEIM^qVzZlex=%pi#FHY7?>fKP)#ZEreU_GN zQ1DTAS^tfRg&XY8HT`WgDmFdkbI0bzp_RUuf7+Zcu{-}c@^fY3!)^NJrhVTyo$hBO zU!I;X?6-aUwtE%H+1b|CcWeu#&)+w@c=v1g539P<2blSJczW#`Uf<>^JA7--U4iWz z3vW4wpVXgiJhSfB%)jMP%VYL9T)%ws+Z*lWo7Qjfjem46ATU~g|KfvHb+QFARart) zi?r^lX}G#fouH?8QM&8kgeL9C+#8El3Mu(`>okPkN?2J@HtWVdON0Jp+k|_J%R?lW zvh9mMXtH(6<R9gJ0yB@yb(ZqfdLVG|<WgQ&H)Aiai;1GAr~FcVqrSwVqC<v1<VA;R zbEx5m%`EN*1Upz;BWxDj_3F5-%RjHGsc-+j+}ji9|J&kmfBmg#i@z`b{&>yG|2K~t z+}yO@?*E_g?R!4g?(AbLyu9SWvaTwhcfY31=JfWNX;Y^&wL|`7lT@Xe-m2#ZS(!4M zcW*1&lda7vGUfJ%O*YrF&3c=P-g!DWZd}?j<EQG4<q>VHP5xQkxwAfLMYfA9aPU9B zI3UI61B-A^mEKz;Y1JN+>DvM){!D$_FkK+jc`bwVds8h@_j!>@6VjOHd|*4_ab0cN zj)we2PP@Vk|1VnUqT4jH<Hg~Z3f=W?SErc0_-K?nW80s!ObwoiM;aT$+%A_IF}p5W zxyzz1{BF^KxH&T>e~j9j^Jk&n<Wt!P`ufA0jAi0>=`_lO9Pj+vaM(rn!32K+*XeAo z+q-sn8He26s%`l<#wWbq^sIZly73cpE{RE&b*8x$neStIP6hnE`8LOPWjasb_h3!? zW2VhT^405f(>r4>y*QJQ&t+zo=)Jpd%a-i563Zu-gx%yb2rg=D=d&=#-LlKme)o<J z;jgTJtsM1SGi8_DV6Jfw4JeouVtn_QQ|iU@+e=KsGUH5tOn!U)YTe6czj#e|&suI) z{{Ei8e})ndfBqLjjK6QNzl**6?<()!yLV03{$2g!?UI9Y|LzsCR;><txBS|h#akBa zl-XJ7dRg}Bv6p>W&tqh->MdRT%d_p8WY5te|E&{EK8Sw{+5I4O-M&{wvn;=!IWhI@ z)mgRg<L79+S+5tNZhqaWwEmdY*RbDLtM=dAQNQnB{#nggKOc0d6+D~%e!qS8+_Y1* zPpxz>zt)+XJ$GJHsaT{%<y^5OHPJQ3dJE1knJc~g+Wf!Y(*56Fc*_yr8TNJK_xtl_ zXdKAN+j~4=@6!Ws@6X$Nuj@`#VT;JE=i6RPS-OJfhRoINdb4hGa!FWyC_0te7?kJu zddUIiQ;i+77sa@5N?z2<?9d%klyI%D(Tzbooh4MXX|{LZm4`R%E!`JhJa>1+db4}C z1+)CP<laA8w6Q7sz08S<q}wi)p+AihOTsHJhzsiV`5MphI(S;}KzHwn#{IK;C9CC( z6TH}1S9-MWT%!F^aps*H*YvqL&1aScc5n(OBz0Z8ar%S-yI;}troN~YU&AbR%`;2i zo-$c&W5zXExl%^t-rR#cI|FXt%VhbZB42X)?KX!sOIhE?_GoJ){GMWcdB=sQ&pRx( z3Fuw=7xPUwcFBwR+7U<8ja$z*&78Kyvo3vBr^J-$CzR~;TyLKiG77UO4{X}f;?1+b zJw#JR`LPFA())hT={u~palJX}lvA5pvY`I<wttNmFPLom<Fr9bY&92GWlrgL9{%rN z*2UKwPC0x{&Q9oIHcMlYUcFP`th7tjkB{uCQ=Yj`<%|ql!X}B#o#zeLUX%P>%owvL zqDHQG`_3qdB;i*xV`lHOQFF+%3thQ9)v3;f;m-z>9d{WPwpkvst9ohvWoOQ$$g+=b z-)x(_rR!PgMC%`aJ}~UEubxwA_?>sZjmxiq*;9Y=31)@N`!Ipe&poQ}M6<-h%c5MK zi+2|CTj+2<ZuCBwAa3xy=Wv16s;O=6?>x8OO^%UKDmud~Z5=8b)%DRKSzvCG?acXB z=g+K(oUFL6AXiLA)KPx!!|ysKmX99I)UH)>oA;cdNal6r?saAt4;JwX%WgOq?td~k zC(W;HfupUMPx+25LQ|9G`7Gc{U%&jVeWvZ^>x^FO3uO0CHJ!VO?~1JPwZz?4ac{0~ z;5+`OBJfJg!&%cbPvsulq^9=CI3gj}-D91S!{4WeRv+fl+pjRwF{gUbPQR~})3k!b zE_N*2EGiMFuijhhrM_D(d;8fLq2H$_XoXJR!PHlINx}HREM?V6&l~1c^gV4gD*mZl zaHpS9)*xMMNs!i;C0A06n)+Op7k*=Li``=Jrg7=XMG;#LTQnLgHLu;nFz4&Z1{=qw zg?)$C_t}5`opZq8N3HwBz)Rv2L{5ntP5&>uZ+-Yi?dbuUvUT(4)y$uGMnG>;da{SB zl~JF2b7E@DBBx@WzZRlVuk}v2gzcLhy6-o~O>VhY-aE6ZjYJxcTb`dWe-mTi>57XU zvra5GNmK6AE}L9<RH{7flvAEXW5*J)=^?Y5t37u8^1LQ5ZoFD#|A)QC?i<qeIV`)L za(?X;4WCut{bMb=>@TC4mJbf*6$MT0Yvo+xd?|E_r?J{%u06Yh7}s?$=}u(SQ0vvd z!STLp*%=qr85a-gs)_O*eZe@pb7d=+SmQ#KwkKb5HyO*HKfn27@wS)=vX-0waqR8u zdl)gByFcZ7tVG?*Uh{aFW!{_iCm-APV#d~;jOJ$|wn?VnNh!}c|Mi1BOZ7#!)|G$5 zeU=D_pDvvH=|#xQY(oVLhWs~yL5mgmSIyXTTO-y&c3SDbFIT!&ay9#z=h`$ao7ns` zVzI!s#|tFddaN{_tAsPeX|K_odTYjxwnnixbDlkZV<>L=S)#AFfB%eJ>r<cF&m3l$ zcf3-<@zpO&^(38n*-CC6Gdm1Z!}M3F?fP_Hs;lwe)kDpOSp~=A50~&<`|$6-r-j2j z9iHR*ftO;KWqPLXNZy>ld7k<7rJV^YH5*iaL?%pRy?N*Zi-=%(uY#|S$bpic15;dV z%UOLMam{<8@#DpnOAokiv@`9AWcghXs<<MfM*S)8^eqW1eX3^u$-8MH_3GhN|0d_G zvfs^F4~-R)&b{4k5H;s>&arIA;Dm4ILNtF^Iej?Fe9Y`z>qe<KAC4dalXe64c}r9a zb{=s`%e{6m^{x+(Zgf-6qi?J2nd_cy<Xd;hBK#Kj^`<$>;SoY9>%_kbR=Ztg{WWFN z%a=RmmA%YdE4PJter>7s*~=5(-V8sn{>|zyX;BN3i+=ijTl(g-^^1sas!vY-JDq;z z>8sc&vsW#dmUM+@@x36?1c|NtLK=UsX^RkA+ORLENQ6~VynVUWl%~Lmi@fg?89$y9 z{GNNkZwB-39yO)Mt2Zob&~iL@-qv%r#nkeZMx85HM98JIE{$ZlzH^sOQ(n-dr;An# zUi6cEdGO!f-m@K7uFK84@v~qP<HtXj8s`e@sV{y#*P^Pd{JTVw<qN;>dw<I|UCQ<6 z`CEHFx|$<syG*iPiO;c_?p6B1)5}Vgv%cTqu9|qpn9=ev8~@JCb)9PacB;)vcreTL z@ph5hEX!o%Y|2vqJyg?p@m!+dlhMR?pM5O@Q}6wcd40H3JGd{Xf4a==1BsUs_I+K* zZg~9Hi?=R0=eIk2Qxd$^n*Al%{LI#4r*>YGn9+FH<iUmK;eInd=rwq`+MVBc=XtSH z<wDlyHGGw4-4o7+KCrxB`E=FBJ5$6}^f{&lm^`;&<_KP@6Sg392Y2Jls4UI4*;flT z&r*Nfa$)(pbqCyhW0M#&o(U=yJDRsYnK8Ze*s}@ZJvQ+yFH+b#rDoeE9+@}a;8B2D zkI&01b9y<BRkrse>?ysrK(P5u?YVhohq~VHkGD8{+G*;OXAP$gY8boQ*ckiuXiRkf zBKq{XXJXs*hl>Jj7O_N!eEH;}>7{kBPkV2Uqg9LLvC7zrzg>lK>)YA;Z8kjp;ifoy zVf_D$9F6PMtE?8;d9OX-DV7qNdO~38uAUuprZey7+%!d0@4_XqOYcHiTDFV0Hhl1Y zn{sFK(RnjhDVfK7<GJ?K!#jLJ7SoOT;8|T4iex&YMIJukiBnbmpKCc?t0+`Mb}_4D z(9UZCD~+aXHmI=k&r{gfY&~Pg`y<c(?JfVbaaqKo>e%mI|F*^6wf!Ac)n;z8eeD~$ zSAHCx507p8s;rgv;zmaDn)2-A-v#CFz8Zp}x8A?bsav4FYtOUabHDhOPBbl@_&P8C zc13l0ey#WYMt1#Qh5ZwL%DsC2;g05pgU7hlYgp2JesK8t|Co@wi7VZ0%?6LF#lAlr zn0alauL!ExM4Vk(nzns=44<mEU;HEEGe0+QZeytC-E3Dk>F2~R{oymeFN~X5`}fhj zmkZ^u_{6X<ipTF?mZ|Q&-s<g=v};=?t1}9BJ145HdZ!Y4+uQE?4Pk!Wn9DCFOV>~N zdHCwF`5Wf$jGE+Bvmn<jvZMb2Pfg46j~ja)Bu|{oa(VihR{lGo-CPyPoaJnlhr<PD zG*0?-zCnn;Z~eh1r%ek^b{6~3x8|FbayQh%HMEDrvbKtC`;&rVfdb)$uT~1T?&v&w zz*nhVdgAks7TO!FthTP0!~S#Qk(OS)EjJtj#8{`e>R#&F8PH~W;Ud$NwF(;A@mo}a zI*e9Yb==l!l(T$#V3oh8`utbQvv#h|TUWE*^PcbyH50p(nCpT$elB+me@n!)&3eQX z!?wOH<hVu^Q+co7k5#AI_54KgTtXT1KJMAz_G-UalDQ4@?i#t>p?f0qJ)SN&^|;~k z)lZCU3VTkAE!J9J^1P38_OW$4gbufzzU%U9eTleI4evI!DF^43whL?QQJpKfVP_C$ ztJj}&=fcDjTK%^UaXk5x@z3v^(TjP<atzXy&on=7pIY>`TYGu=cl}SQcPef6Pe1;- zf4$?Q#6^mF><3@{EQ#>6T%$LoDPqsAn6j|x=O=V_yf4YM+ZEFA`f2x5=38M+^EAxe z11!9@TIR4nJG?DKo?Ymwo?p!B1#{k~Y|j>)H|=6$W8j~gdMwRM|6)R??7L`hbm_ji z(WT?-V@`fPxkSnQin!<fpIWc1UL{rv?T=9Q5M}$4$9ZaFkNgI`b)Cyz?{##ku~pc2 zPifPM4cfjxnXRTV9-4mgdC`=pr;jbBJvH@Z-hOL=vGpF&gHqf2rqoV}3QlcwJ(B*p z>86z{>$Iy6|5ow6`7D!_8ggyZ<ryVUy&TidNUq`&Q`#;T6DS<}H2lKLWy(FKS9G>0 z*~Q<n*<&8@|3+-{@ApDH)Awc9<P={%R#E=?<-y$LlMbKf7gSN-FSmV$<kjN(vnnrz zot<ry8}3Z8@4s_!-n@g?=B|7=?ZT0L1rIpx7kvL(8{6^fm}sN^)lc)j=D)dNtNDFK z%Iv9?;Wp1sO_+K))N7rOWEE?Z#oJ(s^2oeDqHI|kSLAlO=Y9S@o6&KfYp9J<2Iu!B zw_cfro!+Qse(rySNQ_faYN$&1vpEyBXYW7wpv&c^)8fryXFVpLHTHZR^yCyz<h!2f z&qa5y`*q4Qr2EUvl2)6}RZKrMPjuH+3Qe8wv*=SYuj029i9etH7OmRxN<}MaV{ER} zRZD~GanTt{Q&*Y({<U<o#k4H8n5hic4_sBtVSPSp!`6tI8%$XXLIo$)9TSYssE92+ zbFDO^^sIGOcU|JGd$Zbf9dvgJZ9B?vTS;=8D@XJU@zp6eR&nHna@-DTS?krdwubM9 zSgh!_J%XjChvo+9teDu^al9(^v!~huug1V@Z?|6YdbK{?d8f#N7#-)G5n->jQ?~Z0 z-&CvI_{Jvi+0;*#0UWg*4)TX4-%M%~(5SxW+p|_;$BWfPU3(<9w45jo7MniHWw}$B z<}RkZqa0y8VJ9=(`SiC<aFfh&*&~&Ienp(Z3ayZ*pBKLk@SA#n#e=mr>yJM__Mp%; zJ$@H^z=@J4CKk;9m%n(tBy5j@zK8e|)>zg`$EcV0kLsS}lwsce?pt}`smIHupEic_ zv>x4d&i?c7hUl&hJii$qe5!qaYU+!f`9~^P#Hv1jm}^|rTjIFxqN(!r71uO&y3Ib* zA`w)mS+gvB-@h*}|1jS;ZL#E&)g@+g<@+Azr{|aa)jwh0RxDEc?(PXu-{Ma;8~#Ke z`7H3JvHR8b6|NyXi-Vq|Y*%$n36Qn)S=FbpRLi<xf9sBZId?X1r=?n77<-P&WX+a( z*ZxXr?$y8`$8&c+oml)q)APXLM%yb>f329tx2m~<Bm0i~?o~0j?gX0bd?&x9waF!& z*EGL&%kI=U-}$zt+|T&aa({wE-tFry;ihTZ<@0{MT3P+O|9#Hy)D1iJH>I*4KH@ID z&F6xCzRlL!ub-ZLxcIEyy^QVE>F?~-$?WF+?@!FDDnG8xzI)d3OVP8;x3-^~_l4u# zwAB7nf4e{R>}Z}MYmxlhMtGe;cBE3e?q1cMYnCc|ExCWEd3^wrk=OU8xyp~%ugT2q zG~dATG31EnQ_;>lDVAmX0wdnYyt}aGW5nI!D!Xu=vq7?&C8b40ajA{AiOO3AWWA0Z zo;-WeQ~gu^&-Du@uavS&?Gn3YGDSn!r8ef)n}FSOioy;X=l}g%awTQn%&7H^DnIr= zo4eX|%KL=89bpe|o#wt~SIl%{(N497P)%9p%+0$F$p@^OpuK)?xx=-spU*Pyo~m)P zGOfvQmZVi!q<z)`eT~=p=hyCEl~L8S)>{0s;_LIgYhCYz7x~YUJtx#3m8qiU`|9cE zCPQN#Lw?C~T0wc2_bfTF`jU<1rw=kL6;2AiW||+aJb57Ku!iO7p8fov|2ckXow{eg zP8!#wbPlzynW|hfPBZvSUvD&pS=iag>Fl35X89b6aufQ`?`;0@Q!pTO$5g$q&n_z5 z7UhyN=#yM-ragn>iGiTjp=n}<Y94x`YVjwJ2=XL1F>MG>=wX-~U*s^EC#6SfRq2x( z3_ZWx94#k2R9>p`T4uuPXHJbjCl<DDmY;ptZAR+^VN2Ib^Nusx=gOQp=5|ld;Q5c5 ze7}<$Lbyx2YGc1jywv^Du(Y){HY!xD{KlNw({pYp#<?w97qMv4!KUDBkKV4LPj_tE ze{9|GTW{_wAGQ3KF;m|hxgI^~q~Ef~S605spOkC9#%tU5&8a7)Z+~!lc0N2rZ0dY1 z*6Lc$wDOZX)~#ZywpBl6``}E~6SogZ%XN;~c1gsa@r}G%bZ=wCJnpDeR^Jx|6Qz!F z<*l0WN$BOeZOgV)IVa6h*x9mJCh_{Bf8DoZOG-BcB~R`YQVFrxR9lcxtJB$%aew-r z<OJuOtNDArWIWEDU4B3C{{G7TaJTyV8Mn_ZyHe}XIP2Eh++^SS?a9gNfBQXut$g$K zYdT*~iO^oRv?+}}8-rC>+<!hZ=viEaS7fGMsoSg%%hvdXcQXCo%A@1F(!M(5Ca1uc za6Y|Y@y3il{xQa7vwR{QttMT4RAFjUceRu^`&ivEZML;j7bNUYy7*@QDWSaucT=x? z*z@|E-k!YsJTc1|ufN-5v#GEu?WC!Wz53Ji<_+P3Z$3K~{xW$dEZNtba_n)?nvD6v zLT6a?1(yg-jWG<G>>pv}ap=<Hd8`X0RM@ZWJbB~sg53hoqLRW-1%LQ6XT?sjWwX>L zTS`BA8@|kNJxkoyhg~a$Jp7H~d0s@aRd}4SPCPSzzCqioohKG-`5bq8iQxyG8?DQG zT^pZ1n{Tn~*R&)bjbgW{mLKC6J(Cdh|HvBrXl}-;U5hT>G<Mq?VP|-~Brw%#&)ZWk zKWt9x-nZJzuHy28h1HKNqPCRktkjawT_w7yy3b`+(P7uuO77h4-J7`f@iXlc4?g|z z%??Y$zPq)7j;k2<MRV1ND+f+(m_4U#wU6<fN8LOJniO|PKDx*{{ndsiGVC*pO-@F& zSa>c~Tpqi$#Cx&If)Zbr+3l~z)E=!4|McLGNoaBLhop7?)AnAfziONRU(|Bb)h|D9 zZ8#yZYv-;sAs^RmseODir_0s<Ns3>mtv0=1D&*4+_H~N=-LcO1?Dgkbho-2w8YF!^ zV=Qg(^NF^56PtZ>8q31{)6VE6pTD(kT2vHk$4mV)S4F?nS~6IdpI^4v*xy}xzS*gb zNy?dlrmr?Mna_INIL|ero-t9^Z@N!}&4+`*9ubaxQk+H$iYM(TytHA}zPhQ2mo^mF z)TEz}(JeR4zIKJ@?Y+M*k6*40u$(oYW!CkEHGgh9&2mq>U^8ubWyhAz9}I`O1e_uQ z*#y`a4ozh_6y-DHYLeiFaKFn}PRXjg`IKR@*CSKhd1}&QqadNy@R@UVa25nx6?ZIA z7C*VX;)tEJ`jd-Cg|vT3&3NR#yL7d*bolGC)mpQzZQZgadlgT-?$7uA<>kj)cjrC% zDgFM}mlVeJ2GjM^W``(Qb{ou?uX1jZ=c5Q0W~YrFb3Ld3<TyP=^3%CR*M0lckL(hi z>s}`IR^itrp0^(-u412i$Ii{uHD=%P-8cAl9L#)_<nT~J*!vT!SDUIEpZ1*B4{krm z+NUD+fVuO4+rIoW$Jgt4o+}htrzjF1E5}z|ULnr=<$6in_B%$u3u4-C&3Ky_ADZc* z^G#)HRM!W$#>x*JcWl@@pYC~L#;AN%_pJJ_$t-ztOW5)cHeVH4Y4~)@(S};Br^;1Y zKeq(i&0}ZYSmP*qWQt@7!?K@q40lNKOng~7shwlu(!2!O<?TLCJBoq?oVS-+gjJ^X zWr=Z5d@Pvu=$#Z_$IJJf>{)*{9w_iVAC~XC=1ASw&q=4=uU^erX;!WM>(`;TtCgos zy!rh2gwGX@_YzuC-U(NVKlOjI_Lq(NrzGF|ht`JaPkyzJ)oRU+%SC6!EY;cG=;=S5 z|9r`eQ-3@S8_(AS@yz<cy>!p7&xv!ig<^}oD3@<r+I0Vc&5zhQ$Mau&ei*JP5-)Ik zU5xLe&<i$(hRo+fE&kT<*@Qp;D061(ir+%>1@BwVPhp(1e^#--n3MG{4a+^tJ6kW> zv){Y;fqTU#vDQnC5sjgf#CB%LuU1{&leN2D<Mer-X@`Q|uzG&}9^2a+`(v{}Zpg`$ z=;%pDw2Qu2dRArre!hU;?ed>hFEyFp9nxf8Vp%qkKXJ>hr&XWNZ}a79cHz#MUTyX2 zwe^Q|yGL^;Dej*5>;9g678_Fs=^dx`9rXQt<$T?4g<QG$GiIpH|5yG-TAHzeS7%Fp z!DSiy?_X?Igm3+K_x{tQb5GtBAK2ZvscCIlchRq%y5+xiF8AO&k|;bar)>9>%jfr= z$~>51y>o}=;+dOI1?pXFvfaH+yU#UU^vLF7nf`yXn%=EHW2Y9onZMvqrlqCM+%?<9 ze>{=(wd`~a3A`WkA!XgG)pO6Zh9_t)Xa2My<7S77$}GEer*|AEjIC&Rw`kQ7Q<>YY z+)-v5F5Hau`Bv>y@R&)xV&mk;H|L+Me)?bEw$bCX;aAQN@23awpA`MDGRUjbKjiZy zskp8aOQMqNg4TAPKbj)CS*%%S*P|C-dTyP%({n3CRWcwta*2Aeij2%mq4tfpz4U{` z)zvI4g#N8ATj2bl<ZPgpuu5|lYx{!>=UgL&Cok9XTV9=if1kL{tsnc|W!`ezCB6E^ zcDMQejzukaeeJEff1X*5)i%3(Ua$W@{_uU<h2=k16+92i+7(`Hds6&<*;Kuh#YWYi z&u1!5KVLNCY6{Q0+(hS(;xoHm%4L3dygb{UZEDrrgRQSiKdt-Slxm&1`0TsM*$zdi zyrSXy*$RyvtEawckk5<Q@M`hjkH_`jDymu=|GIQ{$8@nHJGIRN?Nb$x_eS*mGB|mE zdK|N$&FAl{&leo#?kxPx^L+P$t?`9BKW~}%_s!E6s%Mw*?(lvYHPdV>_s$!JI&mj0 zuf<)u;_h)=_|nIS{hLl4cwMwe=y|i&rA>Yxw=7MvQB^pwR9COGqr$(<mGx<)rPlSh zxu-VYd9zyZk9zoz8&kQ%a$LD&-gNJubCNyNh<U;PRl*D#{@R<bEpXhFeBE9$FXtq$ z`MmXq_fL5Dym;9|laoL9$VPa4_WIDfe^bF+$uy4Dg<Ea(+0J<@au+npJeeC>*%le* zBjpzvBbw!8|6b;c_TzOM|D7rGWp($Gje5RiqeZ--)aBp={YzI)<_KG^ws6Qj8J>Pd zK|(G$J^cI}?Ldn)jGE2M44<D|Vj-W@sJ!Jd$6Jd#n<B&xoKzI>T2!!T!D;pKlRlFT z7PPp&;;Q}46eY!!t@QL`!|GYyY-S&8lT%H#PkjmrWqqU@YN~i{g^T00E0IsEF3J`8 zsrz4D7{_yd!MmbbwmY#)a;hQ=B|7);EX|eSepkS@IeOkfnLrL1MV3B=#_$I}o@!0l zn|1n;!8WE&!8Jt!ye?AHPhPU%iMD+DEp(yUmVzZ_{TFI)I+e^9m0Z;w|8~RqXY)E1 z>q*3fi0?4JQ~cjo@w(FMruO=6=4Mmc4;RHOuB~=hJZ)x@x~X^D|Ml~A7fEb1PAkwj zmfcw6cKm_;{<KT~XJ)At|2uRwTTOKR!-K8daTm)2yy8Un=L!|Xv;Io=v3z)P=I7f! zM`vzXex_fbs^?Q6_Y02`Z+R?EUQIvEuvu|K-kcpBQO9}b9iFVVb$``Ip~@|xt4;_g zDV=z!o;Nw9jn&nx>rAoJd*`{c1@yN27;l!bFFNt{&4QD$%Z(=M-fr7<O1<T6`Ioo* z)jyu{?)>^s=Wo>M=<2e+-}2urh)!qo+f%dmzr&KaLdMg3OOAe?9(49E>qB8L)%oAK zzVrq6Uh%y$eMS0I;rRU)ua8`R?Vz>&sejF0*3A3vyX398{Ayx(pJloKI}*O*RhVB* zuIB47znZ<g?@DHTIN;7a@3~fKw&m-r=9(9;PlaB;t04bdYv<&Sz1v=&IJkcGXZHQu z#O3}}oj%hXZ@tU@^TGAuA|kc(m=n~eFkHCs+?FHk?*bXEUr)q~=Wtk0?q|(<f2gJ> zSMAe`FIOgUe0n!2E8vT1f~)R+uKMF#KX<E5dj3A@(Ea)C>(ggU2!H<WqGa3CtCcZd zE6zQd^Q_p${3Y9~?klldA|HOXPXGAR_rUYJm3I4i@2!1$d3DO~;;T_dPOTDc*y(oQ zj@6<6ds+Y7XY08?`}zO4?imO8=8A6mxwA<;QgQBt`v;b@J=v>h_9#7U^6lWcsm!PB zc1r)d)m^vdA=?erPEm=M?-@<Zi&l64>7I6@Wvlt!TeY|6dh}flJ1N=5Kb3dF9YNL7 z`!3sjqw8*e5y_i<J1uYay~gu<a-aF=)t<Xs{DJHAj%T0WDWBcQ^!lfN{hVy$r{98R zm27*z>r~vMO3jvQnOh28C(OJZWDqj_+|KR|TWd2-SGY_L?$rwX^zcrP(&6WKom(f~ zUj1$X_vS_0xpU{el*oH{@1XI){N?|iM)|Xf=RaPmuds}5U7baRxY3@c|C8UxF1Wp8 zUGYQ7GY=g1%x7^FU~v#&QS6XuRN!nDaed_)XmnPi>(mA#-_x6PPxD7kOmz(vjSUTq z2@MrFTDE9M->PNn7X7+j6wAZ$bD`SGH&=RPk6*7}xBl(z*-xufa~~OP+bVPY`e}Z_ zU+3+fpGjcj7n(Bn-k)sMwVE808Z4{dZ$5wT_nW`975}GvZi!$2i1R)J!|`RI9tpyI zipp=={yo*cR>#H=y=ifZ@t=1A?b^j%{vOJ56O8)&PpGf!^vvW;P+a!&@U7kx@2Y3) zUz_k<<McF(Ut-)p`3^ZQ?&+_ZI-B8L=JX#Q1!7x$8TM`{ESci7UH9D!MIPtNQQ158 zrPv>^JE?avq<e1G9mx_SAEtmg<;72q=e-e|RGlB_pmA=az200?x5X39E>9`VQL&uE z^WkXiC!V|N<_7Xt_V}+8{}k+ULfGlw=aOl8-np}%MX9{c*3O+JecFt-VtTf$b7|uB zMOV5)v+XZ?m7PiM{P*kW{Q0}$y7sCWg>NZ7!fDZ9_D8Htz{`K{5BY{e_7ByJzWDvS z$o2fjvv+)n_jTtNC~st4^E)~vdP1@FKa;a>)iRc?UoOjkD`cLr&<eipIX7qK%&<As zBKW8w(ZyfU)kkIFX(^e@Vyk5vTo-hobu+S=^4RgI+}|k^SkA{?F^S(}@w>aFN5=BE zw(n#2^BHDm?6jKQv-I|}6f5mAm$bdi5*uOQJf(E0N4XQT`Q)|21?|fpif%k<J=wI( z@wQz_(vF-NjUhRQEcQwDB+n?dF0x5Kd~m_qgN_QUQ%<z~x)eBp?^nSxbKYkDQ<vp$ zF}2xV$v7|4XLr|r<uXrqqq7D*Wn7<=D`(nH={!8?RH2m4?LD{OJ<<8`O?Q3a!|BU@ zO(~hGko7v@##+XVum?trKVDRphlihgc|b<Hp#8yy?yv*rzL%6TF6eGzVk^kdJRZ)! zL2=TdDi&_LM<3d%56xtEeE0ocw@SU>-dTTH%{L$Zq5q=3TEEiq%bhcu&pZ8XKmOUW zpu9kRr|uc6ActES4;L`;o?Z|xe`}qNd&z_2{C8fs^5;14-+9sQp2c!1qh5K>m&2RQ zZ#AA`*5|(RIOj;j{ho}K(>qq2XkPqZ`?A}SgZICy?Oyw#AxJX+Q+t`j`FVGD_h%?A z7o4ERmX`mx^Y5Ovx;tyCIWn2<KQ(!vry0;9Eqp7*H}*2yxm<=t-U|*cn_f7jR7fL; zA^1xE;kPf<%qE&oUZr#8yHrBO(X*)yAFY=cOC2~oW5v;MHggu~?vR54(e)ce_Iy~( z*>$t?TSMB`Z!C`!Yt9rkJ(&90Y4x)1H3vDe3l^G2yp)n^&H1an=)8Bq=~|C1m#x|l zx*mV6)suCgxin<X35mL3+aq5-idF9GFI*t+c{j|)_{OROYD@R{stPQ<l*9N-t6eSR zMz!ENd%IVP*)5fBzP8V5gKEU0|3%)rbpBGtomTrwVTlEH?~eB`bKI3?!ujN~&I?X< zO}<II^G>Tgshkw?Nv%^sXZ8C-XLMiuU|M`6=W~I;%nB>xm9HK)Pjm^*D}S=6Ci=re z?~wTE7rvV>ln@d4xL)<Qy!^UI?tgV2=PSBj{Vx2RF;CU)_$1v&A0JhR+8S9g8(Qs< z`o_T9-)bWrKI!s;_Q$7#Cb8eUGB5Orh`j8?FUO69TSebQpYX4oDX6xbow1VT;wsgt z<+7TO9&Wz#<oMOni%Sk~KX=oLJ&h^pg8wC#b>$sB&Z{OZRes@EQk8nO?9hCVtNbxG z=f1V>DXflvQkHo6-yzk+oJw=Il)D?;wJs&?z7-&m9`E$2nR90@Pu|L7<xF8R%|9xG zGTYd{Ok!_|<t&YyTYGD9_J&0X=lt5vo%zJ<f7_;x$Nn16+3hF(Pq*6{UR6}8KT}KP z+xF63?Du6NXZE>0vYmKa=<)6(X?C{%5BS;G&GyZYFu(AW<)+*Aua|;W<%xTF1r%)( zTl@00#{<in|B1<At0oq5#xIU_J(C?Q^!e6=*h8|5&&ITNi`#y^zO-iL$3->MKTe#v zfFt>j_Ls*B<$`b5Z)iEys$N)W<kqlF^w098;ToF9JI%X)+jM^NJs?`F@PG2M&7n43 zyLlzdcL+}2f8dXVg|sr)-J(33IfpygB*fApm{>e^T~p23Vzx45hK=n0+?!Xf9PQKP z&$0gI9LB{y@BZ$*tLq-$S?Imp&u&Y3#q_e4F9ET2D>isezGBxpe<}Y_<^*Xo$0wS_ z&L=1P?7kD{q;dGR%mr7D0w*22uikR*TC06acL?7LJ#_ow>hHcw>~A~1PHw#$Irrr* zPP<<pU%%$RKWE!(G4Hv77Hv+ICyQsCUd6fWLjh0fgk+79MJHOEobLHDrx{I6Qad>1 zrrxc_^3(o&uGW`6Ti(kk6#T}xp1I$4XM+HT>pF=r@k1$#R)|QiOFq2j-ov1D!F2ss zH?BuGKUDiB-rCP~f6oTDiN*^eUR%#PyZL>5Rp935a}V7+wDJ-Q<1^_?H4JnAt7ae4 z+j*$z!y4w;$>k5TFJ0TVOgR6=jk{}>eK6Sl-Y8gO&Lz$3CC@I!eLH&S+D-QxHFAG5 zZ_fH4_kcNrf5uEzF5Qh0-a1=WpYZ4ZC>rd0X`XPt)D77ehH{DD4<y^1h}9|Cp#N}v z-ItC09lmoMKVCML*uI-DEwbW_&-t?fZ}ODo_9hp6m~%Nf%f42&>#k4egguAn8DBV4 z`ESuOXQ$8qeq^6N_+4h_pEk9%+6&$nGWE}r-FG}=*2%1ib}^qOzFhZd=ZTA7H)gK) zyML*SWuHTh@f(vHYaA2b90;4sTzfJ9$7T8T{w_b(%&v9VRC?y=TG#a3XM_4p_Hr|M zmCHW0nC9am)$`zjlVy$ck<5z=-PNbQsWVb;WZzISW5$&nMHcBBrMFkUxEL6pb$3?Z zP5IS6Qk+X-UY3NZuidB^?dGn(x%1oS7ZZABweIP)S$D>@|E-0_&m)=Ya%(>=T;Ag6 zrrzUt!{+PR2@bz3yj<UJ3{(@C9<^ZUw$%c;iys|~>~%WQn(&k9#NXS-x56i$=@nYG zNT*oLszU2jxH>!EPb(q&85;wOrznI?)7j$JXv6*9p<6_3$+yr;JWCnxxSXwv6*zhB zXpdG3dr^^hQPcX(3)d@$Y^hZLY30F{D|0OWjFoIen2tc0W$etN%!kVZPIbh#OK+QU z>0%xGJg-UYHx@8gNrrwpas8%3vhKs(%P-ekad5sVFy<_jQ}%Yasm9P$5tj7#@SzKH zCaw72VYB1vjcHOdmvU8_a8#-<T*P$phqsDy)rFn+R8Ah&U~bd8w!VUGs>Hw9Uv#tr zGnzgbZ+xMWvSYqdWdwu!ZJoR4if&k~VW?%4^W8Pk)Z2WMWwGqM;>3yfH#Vjglomuq zFA3W+MfugmN7<40<6~3a>)cuH8B^7Kx3Vs1^8DIQ^UwcZ@!{+98{!2yg3e}4>8;`h zj2}KU@XgU$(#kubQ)9o}<c9}U3)aci*V=jqg>76n?~=&tm=}g7w;m-gv90n9dct%^ z@b>?2;rpdZB-cJ$u-(2eVYOOCqR-~-3vT{6+{?=DaU!GYfk1V&p!k1_b4S%r6?|MO zCmjB_hv~DNJ^z=uNo_98%Ighx+r}Aj&VRi1>(&Feo4a*cH`_aI2-a4*Ztqg{kyDRt z=Fz>|xb)ggx}zBxn3omYl{%9%&D46?*AlVoF3SoUH*&eoo|$z*ykT=dQ%NDOT!+rl ztrm*kA3MJ(X1Z>rR3ILB%35F|bBo)VoL>Kyu%%}X{x$!d-caHpR3D;Rr!TaB_eFl; z2a6WYyfUMQZ{qPMlN+=cORxW&5?E9<<wa_@mD#EV^SIQx?ZS7ISIAxpU40}gs4wx7 z))QM7raHy@E~)~$SLH(_n>@G<F4DT)wMwM9;M0q@a+j?8-OHOL1Mgdj_jtbix%k>@ zqY|yl`BRIx?3n&X>-LmyLBUJ+s(dwkzQ*iDiPP?vbB?{q%=mKp_Q`PJ=$0!IL5p@x zxFZwfnY$#|W$*e~Gjv10hc39aFKZo#PVoEB=7I?`bCP*)cQ2l+q`E4??YGmZD+_A9 zUMag5${o(Qe|28M8y^w1BZ>DcZcjO7`S7Q-K@ktTqx^-r50B-%6Fqf*>f;3_CkhPC zWo&(HW7Ku+c~L@(;sw9Sy<5(@TW;FNFtd{1x`3gr@14x!wi!MqnIC^hJu7;5ablQC z#KPFqVNvfUe(bd>KL2a0_i?khv>Vf}c0cP=DfiC``?_A@?&iH8?%7U{(~sUeNj*vX z=^lyIM+7ctbp*c7@BXz&{mo42kM(oaLbwn8H`wy))C}F(n*Yvk75z}Z!06@1bL`A2 zO<oN%_&h2Y5BDfIoMmNG;lCBe%zSAF_p(<EIv1|Z);Y9pN<oFn%-7m4-2^_pUGnIf z-hsmV_qxs)C_Y|0T|;|mz_mx(0n>JQC;M$(8(yAq#pz&B&cz8|E5z2y<~`i+bX{)x z7mXPU!lvdcT;11ZkS18Rc<b+{Tema*@R2@qJ80blGwYXbo6q`~ONuZ4{`X0(g}H~z z+(kQhD`%U@h;L|U`62Vde`>Ux*2{mbn|38GvC^5c>hSl56rmbUd*7zW{RLsuk0;Cy zYROSPcq~q1Z@1jJ&Ye^3OJ6MCseYl}^wMsDb5i?Q{%f)AoggZ(;g+^y!ckF<2;H?Q zr8_km%=CF!wV%%7=JYQAbLi)r>+}D`m73`Ez18`{|AYVgM1!6@{;s=sd>D!<W2_r~ z&u!CNq{m!!_r}!q#<w4`?d9V;k@oZif6K{Be<$<bw@);4;m-TMC4%#`sq>5*68(E@ zSPhjT71K(t-z{<e)|_7$y!rn@yV!_jFL#uD`1f6I=fl16|M$PXw)e-fXJ2OW@7q0b zTYcYr-8nxq+N}Ru-EH6HtHH+1(p~pVU~+cb<c+4PRlN=2j$C2Orrc;XOIfCU|8ZX1 z)-Mh9sxd}|(s?)9%&K=!-f-;8BHOP!u06@kE9JIriB*1{^(8sBa`wjw_FPOyju|9) zSS^3cbFcfR-q!^0i7q>3tisnu=)RSawf*qnN?*(_`|8ingw2<h{CV^D*<|amI}`6& zOuD=2ZOs1zi+3-VySM+{T>E{gxA)cF-uCYDAJOV>%XEc*cW!&X=jpP!43ni#?$Gdi zcW(B!-0&B5qKzk)8fP9i^mk$IYRl7bbFNTXdyvIvMo*hTqL-l{kLk_b2{oM8C+$&D zDY`wuGrDJ=n+)4a*+n<|HzuvMIDOX4VJg4*k04J5gQote@6Hu=9kJW2Tc7de-rhF} z5C0x|ZU6J&#NY3%KQ*79<f3W!bM0LII(@s}!M&B=Y|j>#zrD4$vsdi13fuKYTi1D< z(*$-st~i%8(a};yW!~YHY<!RA%v{6VWZ|~O;E89Xd*%bTbmqV-&y+j^&u_ohukz?$ zU%>zHmQ)MvS@()o|7LAYEV}-t*+ltKfnABr=N>bK*?*#T=1i<V@!P{mU`mB`=%>Ev zC!|lY3EH<sPjuPO;hw8d6>o5buXCcc)3t@=2{+y>;4i;=eND%tFDn-L?F#V>V!c`; zvTlO%T1QKv=5Nb;IgQyn`cGOq`0o?hcUXj3!)t?Q$fwA;6RuyDS?PM>R{Y6VyN(z{ zZ4_=@omhR1V|$>C5Sx03oBh)njVC#4-FU1E@0%&V>hL?-AUpYdN1XIJoe3L4H~NIn zTs777(>|f8)1SJ$Dc0f+c&n{1+%#Kz>O1ER>!rG?_)b^lP58=lDtDq<#M=uGi_RsL z>@Ymw5%yl>?2l_}8?#J9JXiN|6)(stz2_6W>~&|HcS&dPvYQebA$!l)oJn8xZnN7} zyU(k?MfR0X<XJy$@3IpUrW~sG^P4ClwEX47Hc98_n}ko=x^DPC>C)dR;z#cBoG%yM z65Np}Eg^VkMG}|%fiKL91=r@Vm7NQa&Hre2e9~RpOrJ@w=j46a{(aKz#VR{(v&wun z``NPzerw7VeZO^=wJFo>lV7Lsh?!?M<rqJoxNgs(UmF)I`}@4RCG68*W;1b5qEE!u z=ey0{{hOZsFXQONk7su){Z0OO{8xUAaQr^|?VmrWUSrSuFtI%>caBu|ch#ua*LP1J zdmpv^-wEBBCpWTJP0NiD_f}W>7I^>D$GO?&HGlgSMsJb!T+{Ua%?`OG=8T?C`P8mA zrY6lexzjPd&SBPDu}yv9N7DH9_BQz3vNhh(yz3^Tz<%!yK61}}^XjwRg}!TVvo5~J z#&qvUxj^HOi4HQnZ>Mw}S}o?m^W@@cvG(w3Y%RtoWmoSr+LoweWgzB#@6*h8>F4sQ zD{g+9_xA7N?5JOEw}ZFm_$=L4lbm(?v%SN=vg_NceuaNyY0bFs?oCwf-3PY(>xKJ{ zw<s#^(2&_+HGR##%CBAeId7uQ$Ll{lEc$lQ{GF>8#p<k05of-lR}{9*+F9qYhtA^V z-&g%xl)1#-_40&_^<qhK=9gAqYL((Rwn*a^`#odPH;-3&eVeGckzYkJNg?)b=1rHN z`HMOqc;AdVtKzyoTRcsx-;QfrP{dK|t<n?Mu1Whh>4w+7`6=rr?Q|%wHMgD9Hnoj; z?;__H0a9AGF3b{=_Of24Tl;slC-<Mnd$#Y?&5W~hXj+!TqodWX!*yEsX79hq`wTpj zI?n!exT-L7YVyOh&{LKh1b+WY7iB-_v}TP#WaA8mn=y%^*PEZen`W%uc{b2a@aCIM zr(6FBX+0Jd<teDj+%1=3{C9_CsU{a=SWx$wjo#Cmmjw6i>3sjfce3#3Ik)9A_i8aK z2K^37*~YuW>(WM+zklzY2@=?7&#N?z=gLL{X5Gp8Yp4AZ*SdKvYkh01=+j>>fA3uV zOQcTkbLKBgsX00)&R?uZRTNth?YGg{F4zA0-RLjHw)3aWpX|nw{jJzUX4TcaE%kof zC#9CL|J-SD%KwYTyx+-c%bRUI^bVf1P;V}(Tc`b6_!HYMUg^TsQ?Hp#zWhqz<n^M` z&N+VE`lT24FWV{{VKG_$f{M%b`78}P!q2c3@Gp{Oj(NqCki}>2_~LCNmjla&YgeUL zv{$d+@c+?@tm+TD=hc3Docw29|D~xv{7iiIZ1DQrGtE)*y3#YxE~6Zya}UH#4l9*1 zn5jzjTu_>MS?bBs3<ZyP71h)VpDWQa313frpBh&a|1$N&1<U6RDlBo1cjUebUr6Fh zb2r^_pC>iVAVJe@HiPhWk-UkDjYS8iY3ME2R}wO^@Ce+i{#I%6hP<OCnf;5;96#c3 zX3M;EW%9o*=5qVD)+fEsNSW-F5TliyG`F?;e*j1N*<<c&@7+85Jtrale}#YQ&#w#i zsP-8O<rXxrnQS4w((u8(EjxV};<Yj+?pxlgwz^knsTbEW>3J`{GTl8j$<5UF(qErH zpQLA{mpCpt%rIyFCcfv_r1d;>J)-TxR;~7Oy_yi1zi545imq?Pj+6Y`WqUG;t}Ri& zb1=Zu{7vtLlL4;kv$lKqGe6X><#>Ba<x9`>jZ@2#uJq?@$=;=Ufiq%t*ow1LKTdl# zc}d!u1$w#6uP)V0*&{FdDfehpkqM{BCPwEPzoOe+YtM*E_{gt5#uq#FSV-_G&b5IF ziuz1$r%rjCDE{me(pnW4!}L|>qf^A3MY<jfI-Cl6&E-XkTG?I&Nj$L?oxM`~fW!ax zE=8wJ&1+}ySH!YfXNb7$FHMuXl_c0THL_dzc_vrNvqj5YXK!gzs$a_)dOcD^Z<C5` z?y*{~+pAxmRPOkCZRV_p=Ug3lTxT`PY8=e(zTg$bY-1Ybxsp%rQiy;>zVi9_CnkM{ z^H(c8UvWfuT6SNPdS;%>Je51DQ@?w&$S<!sW9grKdJa?g-GESmzt*p^SH8M)@#tv{ zPx17Ldbeg&uYS3Rb$&sC^wYx}es=s(0s#TXM7U2~b2c~K+y5zn!T*)7%39Nd@e3@> zTzQ$^1O(eg?GJ9h9?$Hy_f_7ikkb2_yZcrxIQd=VdVuS>^u3dd?CLivJukNN<LYgi zz<+^xzxT?(l<q6emwxZ4>G-1;a%G#1!fQhprlZk20v7MNQ^fX8>rM02h@Hv1m#ck$ zGxJDJ^Tm1dGIT=k^2y2G-<DgG^!gg7;!F{%AkAeR>i@-#PPUJg^|!n4)v}S}en?W{ zlmn-pA6_bE@YekL!tcpX{?1Ui8?@@;)5BZ#+C4k*a+YCm^ZXmlhxT@LM>VcH5iI;{ zPf*6vYoDSlZIgFy&Cyp)c@lExbz<7prWt1wx6l7<VrI&IcuKvkiTX;*eN)#gc-vGW zYAL?bQty@E-hIB+hi4_sdU-j?CgX#qB>$0P%Y1U@u>Y{y6e4}zd-{Z@?RT?}-gbW> zZ4(=D(7vN+qThkMiQ6)`tsZP)@mslr<IdLy$9n}P2{HJsRP2(wxS?ZSspF%nKe{bt zvrC`wNTe^H6!xX$lryXLm6MtxQzYy+B<7e1e?0c4VT;X9dx7^G-k*3E9k*`fVt?70 zJ+AqpT^`P_e+ie}-If1m&YI5|iF3>g#4mb&PWRE%T6tP$`lX9;IRY-}8{1vi?#h(D zS6FBC_>uT0Gp5x%?S1mQDoZn_F5=x~?yPIkBY5}6g%UFXRd-p-+0yIuH(PxPKa?u9 zwr`%!%d*dGO;dQ3^&4IK?>kFcg=p#V?aT36BmJW6UUx{}dG#$RcNK1>C#s!`^M1Z< z@4^tS$(Os`%C%G-S8duSDN)~4t><ss7IOBR*}V8~2X@z=t`Itwv*Pls++7N<n&i`7 z>&>Zub+r7S?7eGgdtdxL#=Yq5pTui55C3d>Q*XBLyRQM?lIvG@3SDOVQTcD>>-)8m z`}4Q?N1rkKvQM-wP5SL+-rl$`(ei(6_P;s(UhjClZpwVVmRT2mpZ$?8Q1|Qtd)q&o zFV6+%UTwTHTXC{;{^8XQYPaW{T-YD_XQk<6XL-)`QbuPc_=cx%Gc{rT%GQ1Lx<tmi zkpKO%MF-+PEZQ%)>QlIt^=9W@ok@IFRj&@~w(Oh4$$V{*eX!G#1q(tribWjeaC@gd zdr@6}`!HX#d0_poqnGa;jcc~exc@hQ`piTB?UMPUc&;t@yYSF!eG&EI^|$|h%H6)V zYWK7JwDq^Y?SFUUpZ&$v{qru`n0^yaPUep@wvL!{-SxTN;##?%8W+CCYQ;JqJi6q{ z*0n3L%LA|5|2@yG72Dpi&c0^(`W4ysm$p81&b`($<?r(Mb?X*wim!hD{=;vz-&=07 zoZ9wae%OzhUzMl+-gxTcc{ls8KWFz>zVZ_7-{<skx!9s=`)jqzf%|1w-;WRde}W-q zmz8itL%p8xiY%7Y7^$hg4(nFN-^pITT`|;p|EE{B=Qi9;_<Hl(zBZo+y?4Jc{E9tL z82-?l|6-F>dEvMJJu>mT-~Ev4UHRkHq{+3FPj3ABdfc5$R>)TQ%$>Re1{HBU?;J0e z{1e({Wj9Ca!-}Ox-FB_f^@w}U6V-m%`NSIu?O2ZGH8m@g15TTYyyHzd)b_#Q!99Mi z+xl@6a<>$eeYtVt#`Se+$MtRFHf(xd6nRsvdymoD;t!`>QsZWtb%v{jSg+@q_VUga zmHX3MEzS4y2r0RzR&W_t995VW>Ln<&DuXLxPXJ#JKd;iImsQ=OOAnVlaed1)A<EDE zp?Oq>@{+53rA0Ne-G@s9mmf`6cX+$aqWD<C6obtnp-!S!(}I>x`MiG0>vsQdJp7aG zRrgPdy27?4Pwu9lY_ek^<IJ}WJ2iXuo_6G(6squ;tBND>M$d`jin0t(qpOG844YQ6 z>qVJo@ST6QGj?;e$?>%P{NGm`-&tS(?Z?ss#Y-;B?aP*64HZ727ji$<<v#1WF5_!I zVl`N#((1!*EU8>5ker_O|NLa*{gw+({y+Th=IZ^+UrbhieQNRhPY3RJ+}xEg?e?L` z(?nC+%B=IkXa1f&b@9rstN-SjaA~dG!I7uA_NPu=-$SnKb$?_Q-Q_SiD&;dT^0u&M zO3($51cONlTP`ZySQ7NSPs^&Dt0E!&-1}v%ZcA0ZY`LSs-L$QFb;<h`i+<1AKe=1u zYrXW^v!}glz1Hphta0BX!KbzCnTBJif+qXX<ZUywleLei=Cn4ntbM?LqJgV!%I06` zA{pEa`rMLSpO|(8YFzMWxTDN>vFWz^tp)Bk?m3jzv7TUE-cl`e(OpK5^`?kx`~}{5 z62A|2A22tq$?<q@_do6Y+9^d|O-U6NwlNj|zy7tivDuT9pk4pslAU7JuZ79W%akPF zI2cv<?-o3%z*Hf}Tk_LV`$bg#yp!xZ*jBUJZk<=+;2wAIa@4+=F)SIC7xpV1SlDxd z@r23aL)VQjge6VA;aGJ!@sgjAcD|TuXuIs5w%yl%Jt^OAbEEwEi|p_6H9s4BAFIdP zR(x1~|JH~3&x+gm|2yw}##nvk@1xh@-|b8`Wom_M*nA0CIAQ<8Hks2Ybszq4-&ZcI z{Z!Oe&AE1|Xi*N|WnD#XrX`FU@0m<Cf2C~39pvt1^2&3gSyyF8t(?f8-zt5IXLhwP z%|H0`J^#Z4%LQ32&WgKCetvk(yQXPJOw~j-n=D?jWaq`H4`$3c$5O~x?YG?gq#{!n z*90G>CwgA|!RM0pPE0s;Yr&#zDldJnCx^?u^jv<4i=%#SuWzN2jMb%ElP<bsJzim4 z_e|Pw@%xL%A4M}Y?bhD(Pipel>#cgp$B#7!Tc5Lebw$SV@VkG~mwngod$IKyPhYKY zwY+YO?a%4E!!G=8Sv&pyg<YkRYDaVu-=!7#D$F!n$-d*VlU~}59HI8c84J$!-4x#Q zV(ImHr3Z2+UF4Ve+#si2w$R>-L3HmvPj1hii5s3D_^LeRx%F)Zi)j<&x~sM?^1reA z#rI2z=N_N(JsiEz^T)wj<?K1rF5i2$+sr?2>aO<t;bpv+^ByW@$Iq|dn4O!Dd;ALD z|7C}E@6=j*nCGe9gW!yZ0i8D;Q!i?L<<@Vid&sv`B7yI4_G%3_jnzk1bu)?wdmU}a zGzblv5YT%?cEygR6|YN~mGxd{=D%3?ReApO>hAqpoNuzpnd_bXVLfMY<7(?=+kS`r z{UKM{{PD5MdiP)Ui*6s<a_~s3cciasSX40QmE<Lr40{^_Z<j^Io!pk<lHRangB`ot zv?Sga+kI0d_hz*QU0gcj^nI&MXH(r~*;Y*sDb+mt@aMg)|M=EidRtzVw*B%Y?sIo1 z{`1S)tI_^f=%wyCSFhI@c{8~jCvH~`=grP4J21m=&!*WY3~G8lrKBm(c%{%{#IeV7 zFW;p-H+rsc=v<Aw))=N0tE&C^YwDa$-GS?lUx=wKt(bY?iOK(7bBQ;SeWzk(b@{|5 z^QtU9(d5p&SoYAak}EZtpZ}_ahJRdoQ$oJjS2KQA>?7~VRsXyyF8<+)GwHs2QOj3W zNmi@!Vn%zCtDA|s?Uu_^cU-vev-V|xCBM``2C*53z2vsc=wjD>IQix3X%E!%UBj+t zwJUF$^M&ui+~~xNvnhE>3zGUJbM`r`P<2}W-SB;^Sx?yUpB=4IAEqumYiWO4vXy&X z<GnXLy{hkK_Fs9U)nTY78@gepqujUbFUd@=FCEcQx)Hh4%0@KjSVyG64YuFsStKIo z_^n^a;5eyj!r80d;@iYGzG19j5O6h_o_>L!@nr1Rn`<6z-dkK_)^2~>JN)_wwa$rl z`*@xERy^+#Dp1~gK~rdkd{_L*KLShF%`C1^Q3||%#mLy@@mc@L)q55OK9l=?_N?tX zv#nWo9*1xrf3~3U_=GF7MK{Nv`n}m;bD87R;+U$umIub~Kbp6D{FEu)5w_n{xoTyA z-T#G4dS02QE@-+h7H%;2|CF6g(%HLyDMe{M=9=cws&&D{yLf@k-p9K*?-w$@{=Khj zd(6!cF7s>UB?~8O$}cXr-uo(!(eO!_R(chu30Ft=h1uOKg`KlM9BdExrf_JE(5J>l z#~bQmABo(4Tzt1sYhq`>yd~j(_BFA^%S0&g@Npe7+OJl^SQo3t(R}sl&dGnCGKT#> zs=v=GzBy(?UFq+SbHlZ}toK{7cNe95<v1M5eBUIvS4?Y8ist-H(Wxwf9mj<7mYSAa z%-l1_xaTF;;sZ-`)Fiwz4(K%m?hNr;x~;HZWyykN|MsXX;hG*Z`^0>nO&4ve?=4?H zwQTa_w`sp^$~GrtJ3gAit9G01nbBLrBhTLH1g@!=;QMl~Y1FBk?)rP5uDToY@9W#` z@>6w}W@ty=4BHpfy|zY(TX1e-j=W_o_k#&yxhaZkZZ8#Dm8E>MJ-#Y-#X*mIzi*zO zw=zjN@r+h=IjgiM$ITM29;JyYsm~$=Jh{a@ci(c`wXwHkk-0VN#@oIb$+x2)ToY%x z)akQCGl7Bs)?1O;&NF}ZGt^GydLrX~Sa?#*joQz*dd~Iuai5HsCerJcYiy8RQNuU; zrIMNR%}viY&9u1DvtZNAxGdw#Cssd5yJTTBo1<<0+TyOjC!L1VwQePG8_Rn(na-T> z`3&FTKI7-}&R&0%9d~Dce5S|zru8ScEzPo;Bi33V%=XRbrfOeKb?@?^Q_?H1UeD08 z{nebzZ82@${NvYae(t|<U14$LhUJ=5{X>mC_k8(qa<1vjjzbQ0v*)OFi=Cds-|63b z+2s`1v*#v(lcUa^{O%ysd|%gZ^3u~?bJUpsPo1Nd+IdR-k;%fsFAM$89Q~lua#vK+ zm!Z3^HEi+S6I%@TUU2VU9n(FL_qK{a%*NYIJAc_k9g=J9v1seDNIM=o%kRI>HP6T; z0gt$@1o}-m;hP;T7W{0*oU_+kd~Y~sUW=BotacVCxwdylQc(2D)l1Fqo?JOO#&YM` zod4g>zP|2pCDPmMt-QDFpZDK;_l7Tg(ph|G@&DhutF4u`i|>xP_BQ+a-C6rfHZ6J4 z`EzT9^?K*Zysn+Cikx|uS|kq}Y~Wm2nCX5g<M>W%hGUM|+(I7eXR8wVE^?;qidrHl z;Gr($!7O?3dqCQ)CCd3Jd(Lv^l%2X09=~uQ>yZFOZZWlQ>trSOtx}bH+k5BM#*goQ z6`ZjweARvU{j~JM(f)65i}dBZp7vvZ@@gYlzQZ?cpO=dZC(ls!zHGT^>Y0^Xn=Nim zy(A#XHSa}><m}i`E5B_#H;-?6wBp>WuE#0bjs~aaJU?L(c{Fj;zC4xHsWZ7QTZfx@ zl%*!8d<yv5)OO-p_#r1Bu}dXwIRejEPCcvK)O?9Sl1uAFiR5hARVH57mdmKV{(QdU zbob(v=BJBOE*p5Yv7h|)#BtL-RgX2bGr5c%!VO%u9T41<uk|GAGs8{YsVTRbbEchP zsZ@NXKleXFoSzZTl&xMJGewlFvfs|CHaf9#22YVz;F8AA*Ru}zE_!;|VO8XU(yr1| zlN~y}UU!IJD&bo(_vAGj=OE4rjQ4lyRd8uMQa4}sN>icdyZ|Gc|77FE2hvs)u32)# zN{e?!PC(MmP|3eL_xdF0Bxr8_ULY>X-gWqj$0<KaPs#Yk^X&81u=(n-dLR3Go`<XK zT*8`<VPA6jFZC>NbkF~3U1D6h{uuL`Qx8M#d0!EHdCJ}SgWSRIucmBJk-kvex+pew zCtHu&O#w!elWaX|oK=|$w;UpwPp*FzaDzE8X%FLq%V!rb^D4Z%aq*{?oAZ?I=C>c7 zxaO&IM#TT1bMmwehqaHY7WlrKP&e7~q}`@an+?y-*?ylVWBuu`HTTKx^Y{MWZTGV| zZ6;Rtb^GysML#YqezQ&1Eid@=i+`Obg&mv!ukX*Te(+3X_uJ~<-{0^2{3h<(oog#k z@=jSjb9cu^7Uu&yR;JxG+a$s(zhb-UlMbc#Wt=a!8MbyGpOJLiQ>vz@l+CF+&}(yU z$mfNNHP$HY{dQ!R?frW@{yms*?&sg4tX!{Ewk3~Mm(L24zGm8WtyFF;_l}VDi+Oqv z?wUD=HEc1nT4?Werx_uU9$X6<-px5_ny7JGO`YpQbS9(Ca>grB0dj9t*>)T*U0}3g z-=v7R+V}BI3#Z7LX7NS*fAdasxAALt`Q4SLXV$L1{>I*T=hrK5XFh+wr!;H++}gw) zf9I_~uKfM$m&K3k?(a+ITQ6-lL)xz5#|7IA+1cEa?^I{VCQdoLuwwm+iAU28=nKA{ zn9s?vq|blScCjT>#O7>r$n05l;>CgQJ14B!Y9PXG{<_#F`*kj3)D?3EB@sqvQSsXe zD|>%z+wK!+VLrL~!juh8LZ#o*mTcpF&97&AWB#uP_G<q!AGb}+*So*J`}$XzX#1}R zWNY95x!CtlI(X&UyC-{3FP1v|?)_ckNs(1|kGC$5d-M9|>b`Be^Zt}&9X+v7{r$fG zB~_Z$VI68_Z;pN6J=>J=tn#h!iEI0eE@Uj*e(uSesxvouexGmo6wbeM-p6E(0#0|q zoyV&fc#~9Wf_fO&ZGU|K(Vi`HJ|};UOwKueDt5Mfr(XY>u56||Kfm)IYxjGjdFOzf zWTbSrc-6_+>-;mBq%Z!H`F=X~@DyWRhChn=(-YEanqDy3Uw8R4r#|i0^6k-qVy{#h zrZ&jxJI$9_{H<))B%ex!lrOu5&ZcjF)2seHt)*|Nw{;6ow(W`6m%L5I)7;DMWk2|S zyt?Yq3wyU|bEnqx{k$Vr;T4!ZccMd=?7x|N+IXHPig7jl^$hwhbNZ_1+Bf&6C{1w? zvU>F3`hCfc$k}Ui&;6(ns6DuSf5nX@yXRj|b>p(WP~JB2M%oW`3I6Pq326+S##6nX zM$Wsq`2D4syH(h@CVqW9FJ{TwJ+9B@9LU}I|F8Y>!t$=&muHp63H<!f9{INQvwv>o z_xT>t>v;FR-=T1AYt0PP7>oUH9_;phSgXD1=bD#H`cX>qS)0SY@c;W~Uj9HXy1n++ zyA6)l-|FuFX;^nWcYfK<x$9i`{_1?Y^z6cYt$%%zMxUab=W^bd6npAgq;cKttmf}` zQ_pTn6T5%YK#ALK;=_#1CbwKK`A?~4TArrz=ftjQySCZe*h!kZT>ty@zTI}cWA4}O z4%-Kwu={JWd)}WpduR5}w~wz7eSP`dF4Oyto4y)X&s^i&uz0oPBX%d{<W0$f>>UE^ zI{ANDmK;j=^@w`Ly-3j0yIyhic7N$FZsAG0`0Acr$ad8)jBT?FPdAzQm2KCxnz@0$ zcy;;$%a;{xG2SX?&H7u}`i))n+>Ix<z5Eh=@5-r<J__%6+3u`V+|8={%KcD^mZj>3 znKyZ7o?N&guKa|Bf{O<~yLj^c<+dk2_%Iv|VlovoTYa=_5#ubbo&|5)H(tLio3Cb8 zWO#O&cWe8F{dbQ>-rRi4xkvV=SH?mU2m6K0+%E10o}~}&Ny=UjwNyM{5K-9BI4$Y; zo5-WG+g49tl(_gM-F<pr?X>FYruR4dvhlS(w>i{$Q$8ss<V&p3zm<!P{%QVP_ex`# z)`3ex4M9KF@z@{ax>YX0ZS0cbG^cZ)g?2vck-vL7YYd;xU_5`g<f2{BHOJjosywuA zUFLp$W{ubK@VB?O_s^dbqs8&}`e$o(^>TrFLAU!ar|!F~@}&2Pb*18Y(fz`lVgCDq z`_KE@cI9q%`!#n@;H2F0_1BqCy4RjsoX!3Iw)?(N>6v#<#^2ZH@K&$<5j1V<C-oh@ zKl1DuU$bZhEUDA3naNl$nV!ybV$ExnNi27C&RkN<xaReHPPgvERp;L%I3zt`4lK~E zT^9Cp=7Ty(-kji-M<;E)w5jio|4F03I@!-{-&93nm874x*cgQg`&;;0q%5xMJkPSN z{7dHN$hY3Dwl2%gXH*$n58!tG*~)QTK)-{hsJ5gsYG%5|nnLD-0)K9wUljURJ&L{k zk;yLoHG7UMo^<_&<l;a2i4Lze`=9&MR>rt_dc6C3zDM=9`{r+dwg0HX--vXXNtqST zJOh7E+4Ah>_8I1S?~mE&efjNMGx7LQ!{+~!<qwFO&Nn^3@2Fhk)MmLuf12+Uo$=k$ zwep<%6P<_3K@$WHUTisggQ;D4^}NR^hf|wpYkgDv#FPFbc-H%c=?0B|IREoLJYcA8 zS+L*>|NR9Pc{h!Nls7JFj5zG~ak9+%TJG9;;!2aORM#?x`-ETYI`e6bQW5JF$%k{U zXa>JduwxHwU!8q*nc2;in>wAhbbCGHj{G*ewQ$|Mi-vj|D%n5zhIP8~x4c{|!pXL& zaYAxY!0{!mO`%@P*CcMd&!aNwUiEkJ;~Vbz_pI}{X@1}9bYOzC{D<W`ZX5VZ{Mwgw zC*kX<=9At&dk#7LW*23@aWy7E;dkJ_x_9?C_`W{K{QBbZ<)5N9?ToA}etqKl!LO_f zK6gqvC9v-OY~XaF@6t@ifBzn}C>-%hE8{vkb6e7yDVGzSuWl^m>@@29EL^5?XGY?} zk3uIox<t4mI%c2W^~P%P%6oGB{(Tv7&rGJ@<2U>8o453K=lb4^Gqd<aW~<KFJtHUP z5f`(Li2Bw=N1d*H<6>}k*tx0mO}E*iQ+!<~HD+<lx?_3o#h2EPXG3NiKVPYSxU*(X z$|a2_>A7DSJm!{8dS($G^=iwyC|xGwo*u5rPDZ8^`PRSTmEDzHlAcssVsY={!|tVj z9!|BLxcGN_f5x`FewW7&GuGUbi8PuZaepq){YTu#nf&Vap3dMaTk~SZoyko%SX;Y} z2fTU2a8}Vi-|MOAj~VBsQsf<YS*J5HT=u_`)KO-CdTCQmmcUMnaF+ySvupqK&)XT^ z$@kDZYybUH^6N0EY3r`A-0&<bc)u;Tn!8_Q-ktK}vcDy^eXy%<s${tBogFH_;zPZ` znvjb4vW7QLb5FEOecYeF>Q%jBhI`o8hC|=Q;+)qj{rJ;)wscvj#d)svAj1BU|3=9@ z*B@<tYijVF>-U-ui=)h>PP~=el4r4b)^m%^54<l_hE~j%i^zE>`_J)O-`~F%rvCiB zYTv#Oe!TnseaibMQY`ZO*E7o++YFz|hY<(Q8qYdZ{Kq**>ZHt{8YVm4*PaL4Q*&dV z7<0~SKW9Gq>clCRU(VLFbeiJJ-1=OLM~gM+@Zpv79$wx1C45WU?H_Z`1iz@+I5B@} zl7S`Dk$ERRb)EQ~E-}&YQpvQ*US)<c2dy94|8+>JSao~ui~Vl9llQ;7#e4Fq_pFlW zo`)VwdY^2N{iE_($o9CKSY2PJ-QgWt={LMhWfEV^{BuI}`HK2@oB8$OzsmZ4eTxq( zc)RMa#C&bJH4@xnaoWACrmcqm>YhzM`uqw<WUSWt$^5C$s{B3}Y`Dyw>|g))NVvYt zf3;60M<u_W{;n`L=jy)plKXx|lAF(5O)ol|a4CA?<-|?an(dB4?0)i*Z+;)!exzKw zWLieO)xP%s32)~8h{#&(_QK=qqVx6#`;DsuYVwoC3^z>g{qp(i`i`_OKhqXmPBvXq zk^V&W+^u_C=In5o`)ONj)m*{)KSy}~%zR?;@5AKe_Qxr_;ydTQ;nHn3tmux|{Uh5V z=C44n%&`lqZx);?+Fbl(vw?`<8@c_}qTg5jT;+J_&wa}cEA7`D{=M7ajLhCW54paV zKV-f7Pp@b5%hRvxR{!4pL8(W2(%#;B*K7%$B{PGk`%nHGE7%<|ZAy<`jM~cOBCbEW z{%C%%T|FaML$1U?Fh+aAmj_4Y=eboG9JbiMP;c>-mY&~Vr*J)9U9gR5hIsYQWrr+2 zd&?9bTYY5C(~ryc+1#_S%-_M8&V6b6-%r>4ALm>=SG~<<#=Q-Sb8i`GaV##7+ZS$e zPD)?>MCFNv#sSvM{~vyy;Cz3<#B<KNUiZ1)XTD0W|NF^v#-F`^*!EA}ec}r9ceXo@ zDQ7ipqP4HhOe>OF@#30vy30LIS3~_x4nFLYKkrENm5Z1>d%}tr7j|2nIl1QXYaxdR zhdaKO7FEsXt5)Ju3fL2B$XNWSF7MaAj011Eztz0^klQ-{-z@KEKKJMUot|=O!q>U~ zRxSH@sXJ!Um+<vY8(+kUbek=(-QDjvk!6Fr;>$zpE^sblz0wuE=Chr>F<+q8KCkvb zw%zq=+1rDS%r-E-*!9hD$~WF!$t7Y7Hk=ANq-*cPbbGEumF9879Y+r=nw*r8p*Ugn zD@A#2Q=X+Se=zNS^~e9`6QhS}iIM+nUq?RcI4rP#WBsdh?>7Zcd^)k&JUi}I-FEH0 zd(Q4Rz7<@tc0;<a$=1)ycqe`+e61Cs-u2N`|3Oqy$IO<y?GyLTDh!O=_wqpMlRdK! z3Ekw}yL`SwYV{qK%wz8bzDmR|JE#`RZ}NDjLv3Vfq+Gs_cAK>M{HsUJzsp%@_1v8$ zw(JpGw9ckQJO6)P9kyQTVCZw}#V6JOC;j<QdeSB7t8(Kn>+-ytyVz|1GgSTC{Nrcy znJ~6Cx4mIC!V6lT^PfEL|3YX}Y3zpc7Z3WrUOnMji=*uY_cf(e#y@tsnLL<U!8qqu z&!gN0PZA3*Px{2Ca4k6JzSrv~yJt17JAdcSWn($hIks7sUCo#B&-+pR?Z|_G6oWhV z=iW-*wpTo&WSyqRyS_(d|Nj@~uW#r~IGiiOF0l3~$0keruCw_G4{lv|%sHoJ7|z%= zWm=fUVkff?UiUm+`7tWLX<=}FCh3~YpnLpL(c|RP4^=O7hq0frG@a_N9ni+|@|>}( z+G1ndl^<iB7nkesf2v75RPp-8k6BAs?$vht_hQ!-=bRhY=5+D>VJyG>tNFU>`deRG z?cz6=Cpp~^>*TyHXCrr_<j3{NJG<qcDW9#}vP@)ilVtKgapnX5OSBbs^Auk;nOuE8 z@zcE(Q(mXe{kDdE!@50JJnPw<_Wbdh^vl)raOl3-8ih;e9!to`UUa`Bdm?kzk$j); zrt3^qK6Q7#j_r5ZER^@a<iyeL?2B^McV3jRKX#IGW;C}l@V>ptMCe`;n|ak1>mn(> z$G6xx&v}>Km}q?MVO{b1;#-$Gthar58lHK1s(I+r=U&Ta{qx@N!asCxm~HUC03`{} z@-=%6@9ux{_HI~s&DpQE?^@2k5}5Yx=J%z`<zMbkjeV3Ye7)!Hh3WGO^jG?C<5O*2 zsHkXpWZumi$s4{OTihJioF81Dc6rl=*A2G99{t}<U-qQ!w|*dhx8!nSc~XYT#*|E( zODisJ-I)J<ebm+a_9iO#`y1>Hl=*dwH~mWW3!8N1@hr!d%hhJ{P5=D*b6e*>fBN!- z$>-*!C%49nf7|#q-on|g+h6f+`wUs0p0WiQOqEmD?9>)NusxJf-YEPS-@JJivnJFq zGZ)0~Q+hF>xoB$BVa`B5vxLN^*Y4~KV=l0J<!8R&SoO%xTmS#ApB=nAXNS5^lHI=k zPT}R7F7;JkCLXyo&v3_{nQtU+DfiSQ>+gIdrCoA4{)3$FVq30nJTfNEH{z%Lmfle| zc}MyM=XTBSJj=RP&CFGsyX)IJ(dOOeOM_;Y@vqzQ`qq`ji<Onb<86(MPUYUNcoF5e z<J*N}y!A}`<^H_6a<|++_hzm6x94jdKQq<t(|r2*W%v2#P0wFXQh6I>ztWr8rl5}} zhyB$>!^URjYR5O{U8e<e&aC<}<ND(Ot1pMmVsmbX9$D<a*8Ie~Ii>|Sw@x(q`0O>G z?Rh)Zoy94}jJ-2!op;Md-j{DSKR>&p-C)9=_CIZ*-zInjI?bKGrK{pen4te$8RIKA zKg+NN2^(COe|}I`N%g^^2M<jxY9vyE=ZUxobfww3C#-({<1oMfE#<y|gxsX}Vs@1W z3f|p$c<A)*Ep4@Kx5MANNV8nqz<Kk8<Uh_O&73mKk9J9NhMIgZh&3u*EnhAwed1}( zwUp_?-i=e#ER`xYGxtlpW)QfU68KF(JG#T%Rw&kR&$l;;)Ah=ZuZoSfFt6UVA-m#j z)i?Fc=Ke?8-zk4jJ#ol?ar$cKe-cJ9MeC<rElmu1@<>!=!}V94*I9y6WVKn3DMg2u zwI6qVlb-+Xy6)bWU)KMVeD|vEPx6kXhwrohP8GVD+;GyM;O*-zNnWM7g3gzp%~!N> zZ8*!_JU7j~Zzc1g-ItidwT@ramMXclcXIXg{yg5EpVdmQx5d<NHFy#&yR$ea<$T4Y z-MP%S)Mfw4-utB=xBurmwfB7vK{I}Ig=F(=*zZy~fBH=(_1tT%j`9a~$;4W&XET>% zbXqJLuV;Gs%KR_;9c&WcpQ<eQ-hG_)uD;yL->iGYl%q^71Xx#3VvsvAvthbGLuLJw zE~Ux;z8pE=VU?1*_I|~S3z2qP?_aoWY%25p-DBQz{oU!`uFtBf2xEMiBk?*%;`*I0 zPaG{ZAF*G3s1zd0w`=n)y)~Py+Ek`K<&e^obaYO*+}iy{y7l=D(OCynejj<b^3bls z7sP9~70kKcUg_HCt;%<2k=`A?U~}geA&*LpJ@OVsTTkY1k2$bP=-OG28$rAmJa4L& zGDYq+j$CcKx;<@yM#*{Z85ydI!7nQr`PE+)_|5M5DraLZm33fepxGONUbPg?!gS87 zU00-7UbcE$c~*B#(eBUr{ku7P--h4!*bCz?SWl?uIDhZ|+<f~FZ*C_4=9jGsxqaWL zDxv7}%LNC^Uw!bse?w_cO_1>YjoG(-)AJ9?ItuKb<6y+FXF}DoiJ6ln+zh`ee_<5- zH8t!rPr{+9tu2#gp1Jm$v$N86lkk4o>d?*oXRcm9T($Q?z@zrc;yb6`D$FS4z3{H# zxBNx<2QSkTqOMvOeBp69S(O^i%QZh&XHD$GLjOIS7ZifO-@l~X+&m-kA+wP~$2Xsc zFAl$aII())_TLXayI)@`aieS6Ugr+GUniLP->cjSX-)j6a%s2Ve1+FD<_MO5oVns! ztXj>Ciprk`hBprsCQ58{v!2BIF#6iB51EG+)H|Hs=~1f4_I>rylv~QG?~Qj)_1#!+ zQTS|a{=Lm_Tj%fn_Gepfk>IBN1?wi*2U}SGyE0pT&;QT;W+K^QGRA=t&-9dJ1=pO_ zpI(;d=^JgZ_0lQl_x&tC9ByxSur#!O$DMED_%QbF8P&yhKGs`#&sJQ!(par7J?DnQ z(KHTqN$IxQfOPi0Q)^>Rx%&6K`Pt3;xcV1w{?zi)xs#^(-`*Wme>U%b#^hZGUkCXI zibRwjU-@oL#`U^sug<BxJl9>4F6uHlY~2%vpA*matru}jv^!O!GE3okp=HKqIlF&X zwXSHF&vh!bG}z9!X#b*H6M9P<pLOi(JN+w*)oqp5uPoQfnbTfqM_tMbU$?~UR-XCV z(zfVS)zq_o8&xO$bUEepdXBdzW5oLyu3i6C9xi=UxAMH9+Of7W(bRWGWghN0J^gvw zrzmE&vI|8&O17MERo=-wZDPjZi~j5S+AJ(Q7|i>vH4NuhO}xXer?lwhlz%$nv;PYI z{_GS`eD=+AlZA)+-1YY^eY-rS?$-1Df8X|t{OP*GUm7{3o^9g(XqGc2JK`_Ixr<(o zGM~&JxyL|SWYeRUT?{svPAA&p1$)oUjFDKrFwuhDaH`rZi|1$b%8Mr~V05@G@MM9a zdnCgerI(9SR<=yzKM-x+CtFjI^!jA(-eotNzXkset9iKUtMbjWx6jGS)w(^_lek&G zr}Fl)!?We<UY0KEzRG?i_wYyM@5iIwiBId5`KS2I&vw`M4~~A{H_x9KGy9A~?or{Q z_*vC#TniQ^h5gJ~ZO1ir!Qy~QiPo-(o*E@fwoX1;KS@v{;o#izKbh@nCjXxZf7kjF z=uzxHd#1_d^J`N7HT)EuTm38M<eke3mp*T>`Ch{N>uzY%493i!#~+uMc70sFG{bz| z<m2-%to~Z^C)4$EmDRs5m0!+TX*&c-aB82avh_N2^2g-|Sw?@ReE$0N@u8z16y)lo zwEFFPHIC0;7uavVHoE@lV}Gx-d;UhhN`xdAKcC!Zo4LP#+mpjjo&BY1%;vlOyX&&Y z+O6$k@V|Urx9aU5jVsS}#B!!jylW$Kah9IN(!#U%`rPLSTw**CSH;9~a)N*|Po2Qu zkhy2XP0xz!pZoVH;iJvGzf+feT%2wqohBa|qrf2l+u%Fj*SGZ%DfcI@yfHiQ-O<Sw znmU5Dm;Z$nq|{mSO;<VfUMzD#Q2u$1+aXT_JY2V}t9T%sFU2N5rE^{T)8lR%&tLvK zS!-VD(XZ^&-djw~XQ=A&e)?MYQ&~{r_T(=HyCt8puhW})V74gJe6!gM2WN{(`Tm$Q zwQEJjNw&#r7-o1BM}C+Q*{Ss9)vi5DxcB{e6~0g;bfw(u)H$z~`o>KU(hptmQj}3Q z@XD6syxgm%Pj?7i%Cc17>Ei3ROP(g>9i6HZuy*&;r>Awo7gcR_=|BGS`2@MMJ#!=d zu4ik!y4c4TvG$5!r!uF=YUUqPCH;c9x0#9E*Ot=sUZi}q?ez_VZaML}YteTV9&i?D zc=BKN?6aHS_4ls0`Pnb={b}`$cltjws(hdH{J>*_CyE<7UKUqq+qReWJ-7JS)_3=8 z78n2K-+IQahgM$wVR<g**6Do_H>`eh%swBV_Muo||3Ta4CyjPJk#39m``qLM6jwcd zDwlE2Z1UrRH3u_a8@$=WCwIb+EpSEdssgo%o@F947Ulo=k$qltyXZI0H>xVk+NTyy zGm<EYzQXuwwSv`3{STA#-Cl1$sQGB4vpTz<jO7lm0yB|9P7mXWe(T>c*?&yCk+~tV z`OuBVwXdIUh&(+1Uq!9bq4c|Nm|G1~&plwRT(EimVU0QS6N~n=RB$f0cYUzLS8hjV zOFiqhOuzGwpPjSX5wW@3ZH1@SLrY6vx1@WCr;j{wop@bu>k5T0uQUZEjxlJ9w3+(V zDp%R5Up}*D$(ajo!hJhlU0m!aY*4#Pq0&mlMx5h(drSITA?FJ!9ZG^5_jTS$y_CL6 z$${5u`@SI0j$O<zB>6+dRPLo;S@&v2W6<tZ!Y;CJjFMS*A9~7p#$wUx(<k)KFFrck z`?6tm!y641$(;S>;(giQ6s4Iew`eYLTqirxBw~rN7Mq95MfNI1$3XobX+JJ3Nt&vm zdvj^TtS8oOTNh{eGKz@5TU5QR?-yS!*G^}{Gp83O9Po8`#<2EG-^DWrG+x;(*(TV) zdae4T>kPHYxvoDuPoE9WDz!Z}S>Z~|joTl}Hl04aV;S4^sRg<+h8sWpKRd_0R%7$7 za&?}^;*ob>TQ$!#zw=SP{NM51(mf|v>|SB9Y`Zwutlt-B7EIod{9M-Qp=&{4PSB3z z=X{CZmb`i=|83<u_Vd?E7`n}`Ej>KlE3t;9CL~2ybED*3v9GZj55yPm>ERVn+p^if ziu-1y_w*Oe@3$y7{@_@#;IJFpfkR7*`ngY^E!f$V*;IIw{}<cMG>Pu#y^^BlxwTt` z_7#;g#=m{gxl;D~mYz9x{>;taYinh;_4nC}UxRnwj8-iy5dU9u^~#kWH^N@NxnaM% z>EEI+;Rh6JoTeYY+JCz%UDfbqi09kGq5cl9ySDOcJe7K#sXBLJ+TJ@0>MvgK@Un7i zKat&?wf)l5P3uIsA|BpJx9kYJ`m3)0?`wN=i9P@S#U;M#I2iDMxzI6#OPkhy$iIE> z=E}%kk-vJkOKz{<Z}2-purT70Kpp$%%Plk3cA0w43S~*}I>GaLOI60RW!DYr-1sgs zWNercwIgdno5{9U`cEg<1qb@pZ%gv3+@l?RA%mxe>AGtD@~@v8lElL<_}{$u_};?J z?fV!1iVO?2Pc{5fxJq8XxOQiq$I%EcpA~f~OMirT8ConeP1`=*=c(`KsICC}{-6UN zr)wSdX5PZpHQ|wo)_=AG-YazevvH|D)SkLu<%`>?UAk3L9i9g}WT&j%tj2D~_AH#C z@70y2<BqX2FI-GsEF<^W<W;f6a>HXPGro#WkXksQZF%`~mK>Y(%iFeX)!)T*!YwLg zmh`5=8Pn!wHRN33@n+SWmtgj4(~W5ft>zcL{#3nkYy;=w)~c>Ey1aHZ@pslR<g0}9 z$kp&Xzi74CFezwfRlc-ez@dMyIQmYVYKZC9axAFfboE!`T>prB2S;ergO1n!o?O8P z*Q%Ln1ZCUzee2@A8LRChyZXngM(KsF0<#0W^0$g-zFu7P^jcr$>%_|}7r*ff*|RGO zOmS|062fY&Vrx<0o|mu4^MQA2$Lrdhr@Qvd+B2`<TE6x!bJ5DZ&nzFT{hv|$(dKS{ zjdb%ju_sryPyQi)UM}5MGpNAnnAdNy!f!cstxn(ls+p{`x3E9(h)F;GHEwmY%IUC` zSH<2fd7F`HXS~yTi-pVVxfwx?%R`P8?~kvli|4$!_s!WGvRdn^+wOEK)-K$`xN1j( z;{WBUQrSiiqY^nxo=r1hn>mk}$3##2T(2m5@jAgRYdU1_do({1^JJ~y;6Ccnuwp~w zDueX4%+xIr+o!JBxN?$|ti`qUu2WB6SeG*|dj5pPF<L81PYKS=GEbh{rsy@#dv!qp zYv%Sle@^uVJoUR?c-Ha8a@Aj@j*0blZ<|<FWm$BWWs9m#mNYKvclxIK;^#T8C^yYT zv8%6aVu_6kS-<3RTI6zrta}dxbT6=Q+$yo?G>a|H-27yj>sm*789uv3hlI}Vt(o+m zd9Ne?Pt}rr2j!jwY_s;-6dTmCVM&qNg=vSCRD*+dy>|3pS3Kd#HRin?2BPmDoLs8I zFh@FJ@=MQYp-Ocz{FNJA-ssOyDPL7S<;d*0=|N`{42q{Ff92swlKOLKg3!F>(zZeJ zn`Z1&vN>PGbzV6t@!Rs-jJubeuk157->$k>w6M}n)+{%bYm<P7+%`Y1`{GO|7XRHT zbH#hlt#rx8m+U;Zie%>XC@iaRvW;uG7n$VMvG?1|%-Z)t%!;?<7R<1Y6kGDeBJrl5 z;Gu7ElIhPcKe!QgVpUkj+~-SuW3>12)dxz3_bb->Zdg!f{VkR4j{3jt8S(41x2*S` zbVsb^dx?YQZk10TS)RZA{%z@je5-|10{J)TH{E8L8~1dFFP|0P`+4mLW82R;&ppWX zC&1WZF0)?##V03LbnFp*t$e^I@8!$XkY&C{cWB2+EQ|12d!}}4vf;!AVfUG)hxL7b zzuLnl)AHy<@S{(B*BqVuH+KrGzuvWNNkppZilz3GKVQ(Y@aETgHQDxsjQTG_$G>}h z?A07iGES~IGv~{zX^#}FG?@N6iG1+2c#-nZzHm}Pg6#D@Jx}i)`Lq4j(|al%cDkKP zd)BAa#+r7`Q&?23{nhB4V)B<T)tj#hS4Fz6lb@5~wL@ib=uVZ}T7{m+>dvcLviByu z7A^2>+dFYqg-U#?Y5$*uIw8-yAGe48nRs#4pNY9se<&yKf8M`G=--KJt)JWvtx55{ zGx5K{=Oq^Q`6@GC|NFb|-`$(n9p*(`-j~MDxHc*G%?8yw8}{G7y?=7G^aqQqTeowL zPd47aa;k{fb*Yp8>|AHC-bfZL-{GQnK>H-?i?ViY)-DMi-Hmr&q?TXg{PO=EXUK+T zF^ToOhXo|>6ql7xn#o|kFev&)WPIwOU1oAGy-GHGc4M9xR29+pt6%s^o7}1wj#{@T z<l0FWiRZrf?zc=$o%xvRr$n2@8d<$FdtSUdW_qdBRXCJqwVM8ytwo1dDL&9({*ll% z=W1n-yk*R>Z9E~TB`)`W(y3k}p?k^if>Ps=s#^<6e?D8dVcoeIcOv%q=|A?A(}-Jo zI_6q>;otwpp*z;RRAtcn$sRYc>(2!#rZ?9Dp0r=8>oXT<_&G~ro#=Tx^V6kUDuSbX zpGCdazQ$=L(pD+=^u&MGJtrbxo>Z|)NWFiwAaTa*2YUame^N4Dy642H(>Z+?W9yth z_xPpw%&>ftc*tI}>SC~EhJDZNj^mNC5_1nEI!EpjHRnmx6WsA<L5$MGaF_mGo?h1{ z3paAeNp;V7Ep*w+|HuRZN%@_8ij(=w*cop7xqp;bt!Zf&y{~d$!s;0vhg1TM<t}8n zX@7e>dFjS4MN8VOy8Uh)o5<zb_<YISwY$6CUB8)fl#6kB=$rIuC*$gzrLX6uh#Ag) zaYsb2^~V`wOW7G=vuE<~Ex4R0IO&X%k!G6X>6U|y%Um<uU(a#lmwmRPSzE#D&$VYK zt|tCr*`dAgYVf)ncjtyp36EXk_u>SfeC5LvKg)xr%l)qVH7(!w?f>Kdnr(0YKEB<> z?sK~NO?}pHzW3_8q;LOiKD^l8BC=xf<3F8W-M8z_mDpvkoO4@3TJps<`E=&L(wqHb zs-_l|EVA9qe|@TqkHbFsMKW_|q&Ch!`I^Ud)wwj)Q1ucQ(;FMtPl&KKRAznf<^|7> zK8@qIbT8aEXI(6nD_bTsqw?w^m5)<ST2I~Q==tPlxGR%?^~bt?gUYN$Q;vKVir;g6 zH}Bhn#uD06GnD(ZcG@&^>G`KzNMe#YtL*CK@1%J#q<^LGLe?F^Yc~kX|9tvpo~=l& zW%{<CMv|6FTtaI8hD@6;@mw;PS#Nsw?DLt^Ds85k#m>F_IoxP^djB1*sEJoTGtN9) z{B47d@}cvq%oFamH}3Q~dtOUhc4lMC%?Bc%^th5PEHYuaVAaEMO`Ml;oqe-`;KF2H zvE|(xq_0^U#4&DS<B@jObu2M^_;}wU*A)xbuaanu@9YT862Ei#_s^4G8RjkCeN%$Z zHOc7u>*yPHm(G-!{tl2}Gn!f>KGA9Sg#KX7n58Du7Pb25mu*!DzuxR}Nx7r@uh-<0 z3J1R|V71RP{?YXIV~Ti;!j=n?o>}$@=9b5p*Ew#IS#ZxR{m3`HFT0PL-kum$wROfN zQ?9^s>Ap34WNLbrmpxs&XFuZ({}reH+>Yt|Y3?zzUjFh1w#j!da!fmHS@dt2gIe%J z7K^!`nD)d?WSQZ+JjCUIuK(XBE8V|IeB*GPoao;F|1rO6^hLWbpXa~7seGBSc(#6= zN^!~wzaLYr)St5WF^Z?~t~qe`^CqV6A!)36d@Cawmp8viI56=+)5=EGi6@pZD6L%g zU*7J|-uC^ayB~hr-Tmc2|DE4A__d@N@@LMqE%P}jcxJEP^LM98{{Pgz`Zqu}bf3M$ zmHD}=e7_#BFzbI6|NnTh`|6B&^1C%&$1c9`d!zQH-6wQk?lL<2yy>Kf**Aa3k1u*z zHS2B*f0tbu`0<Z_NR|B3s(!=x^{c)s1!ip%R1QqEzqM{ltH$gT=95p#$f+?N&|C0V zm#ZxCQpU=}mgp&S9^BlJe5)bIZ$eUc@RlfpH}2;muJ=4%y|ac@v0C3gL94R2<@-J6 z-|DZFyV+Mq1{{97i}$efaUN;jMh6v_+>@(jFW6?%v1!TAT+Q7sC)B%poQta`znOI9 zOGEZVMMecDhGNF)f4ZY4GV4Z(E%OpM_+%6FiS;VRwGkDaS?s=LoyEH}FU(yy!GXKT z#B`pesL%V^^Q!q>e;pS(S5RHQR_(`!+&^s-`x<wgH^}2*Q(DVa{fBScaf!((|F&I` zyPaCi!xdSrb-$t2_U<hKmn0QKzia(Q^YoS`-uif?%+4*xxb5QMO&|3fJ{~PDj1^$@ zn5WZv{9_^0^sm+j=1ZO}H47Km&SG+rVTJ79N_REsk_4AYTxnVl_k0s;j4Q1QcimQf zGUmKQeuQl7tT!w8kMLTHtmkz#4!f-<eSg<s`8*$$ZSOL8ehYW@n+HZuJMZwW=bgr; z`zn(Y!;J3--+JG0s&4w}Z@WECm@WOZ)@7BGwnX{_kFC6(r4rs-*UN2R#uI9#aNXfG z7xVRZ&(u05Y;x{X6gGOE@On|os@>+!bCyQjcRThw+4h0X^zg0ET>Um`Pn~&uigv=Q zqSR-xcjw8Q#%;IS7SeJ3`|dn<{l~RGp6b?rxBvg{O5Wjjx4XjPE^gR*a_x3=wp!_J z_ug@v<!Ssmz5n0qM&{}J)Mi`WFnN-->+zN2ZZq$y-i&e)V4kp6v+su4(yvb8<s46q z7B1>NmN18*z_FCgTE<QBc=8P|TV93udzNc2&XV!cx1O%NcG@1x|1ZP;vy@Ehw47wI z<A!C4N7<sIA$)K6i!9#;U#b6Qe1F9=`%LBjR~~VzO6GY-+_^mY?OLI!j_v1_*x3H& z?pyXuV4ESk-2}sxdn6WT#wIyt$|gKtox5V&mv=m@-TPKvGwI(h5R%ziuJf#VlD~}m zx5tT19@Dl@`E{h~ruwdyJ(BOQ&AG`sRo2+R|Hg%5xobr>yJnvGX2Esy&DVPZw$oo1 zYPu&HeyY*AmwU8htx80E-So<%Cr%Wdjy=}=n_uQe#FkkvHomvlm+X0$QB+~E^XG?$ z{q~cZzO~o?^lsgMtLqKxjOFYz<Tc)^uKW~kyJ>%ycTMij0GTkEtX0g{49s@(tlzP@ zE^XIJVYjxEIR+vuySiV-9l6^3Z$+q^;^J>69O2B29BC7ua~+*r`&VL){v&~d?hg$D zO!QgLUkyH6eD>|eE5gV1T<@8OZ}|U2yl3(2YrRtY70xTErwCh@8BAaQXu%=o>v7f& zf;;W)qHP+2Q;s>N#_#j`cJ;@~8{y82=id-NW5K%mws?_$%+cbY-1uYf<*f@g{7ISe zw%hm5r^hv|pEqR0`~Q#My52$fS?`%LYZdL+@m_1rL~b#%G5VN!`^KEgqcLX7PRrVC zFp$377E<Xp@7D&tXa6HN@Si?r5T@>;q^Kyr%&=_vrFTMWbY5RuBzovZI#arW)wP7O ztLCkT3}sGlwJMUDJzvanYni@gkidKOHibjkYY%c4g<hVp>feR9`uFqS%>UqK#kRWI z_1^`vy2G=27a!|wTjrn=v*mvH%D?MU?S8O)<CfX7`jkb+^{YvjPjB#Duc)yiyXBA3 zpH;I~#`iAS&$jc@@fx-#ZsF?=)oksXqbtH*+*e|qwXJMpzNp%!y+P-rlFN**v)u@& ze?MK>d%fp^4GAxq%$;ha_t&{N-0aJ{Bf+sK$9?AO1APas`h1=DV#;?Hrv-|Y>r5G= za(ESWk2Op)&Guka;c$8FTc&@hp)=#^RaH^Tm(L6qoE22L#hD~CVa<i54NMcuxI-+P z*><pVJmir5nK#*7#=GRwf!N!9<(wu$OQ!5z9JDVvdG#B~r+S&|Cw=V+zis<zUS-_e zzdTd(7G9FcQ2i|VO#PJYX1A^B>!y7_vtYt|)l2VWSu($uDQ2ecdUmq+T5{%kr`gN1 zMRVqfOnj@gd&jz<GruAm6rJ4uTO3)lw!4bm^UAE|GaM@KMUrb3Uaek#=J)jHE@s<q z-HXV`GAZ3&n39sx`!dgNPtEBMAErH>_@imk5})HA3fzw$I~b8u@c6jCNU&<?I+o`y zOs}@BiqX{T5Iiw8i=$Fpd#(Hhjavb17sIxcNZ9aBl;Lt-xZU#HMve2|%};Aixx0Hq z!;UB=(~28AN)i%Qe%$c!z`<trW6wR7mmIgArvLs%(UTL$<)@^F9G&w@$Cf$F_<zh> z9tXZSnFrc3tY@DtJW~+5{eF9jNy`zll;hu>V#>p(KY4UF;9;?4TEQ`S1(vUm0_Go{ zxm_~AfO+ZaYaDOcJTLuOz1-ygFPB0e-;*~cr~a_*jJj-;8{wF`_`}nqcX}S&`ZMWK zqHmbP)yV=IyB<_sdhm13imD57{*9YbGIUti%qv<H#JKi**u^;-+vY8r*^q3uDE+VE z(}!<aj#!#*id&J#_EvHuuWha{<Bh{DdzkWMJCv0>CN~B$+zd|G>zpU&-ZgJqwR6-3 zE4DiG;0NW_taaN%nCtWz?|KIxuszDPn)&@-X~w(K!G}YpDZSsj>-&d;{oGz>Bzjsi z9IQSct~oNtqeD(H-alqf<ca8v8CODPGu4V1%CtOd_7vIN%EU3_;Nly`s!^ft8eT{L zg_Qbwm9Dmqs<P#>V*BG#V}I*V$-yI$Gy6nOxxPAA9xyLg^FYF8O~u_$L=B%EZ&)HK z!gn}xqw0m9iRY(eL^FlwC_U&(Vo6(-wDm>w-fxwm`=TmuMuxtg^*-cLgwn6;wk==e z8+R_T{3`EsTb%RMZPT~gT6s7x_8)w_w5Hroct+oqM&qduw|o}-#1+{lel&@fWi?Mx zioQ|boU`($rZ8uO=_qUaDktr$)!Dbo{we>K+26F|#2=c<-(xmO@($Ylp7YqO$(lyr z{og!c>FZvXR5s<7r~anNdP(ZB8AqAs&36ktSCSpz5EQ|3VzvjDq~dI)6|*&S<TW?& zTNw9f8kA4BUUultn_2S3n}al`&+sUnZ4o%pE|+uT6s?RofvVeY<?u;zA9Z$UfAh9V ze-p1m%?*R?rB|Mu+9<tZ@lD^Ced<eZ1a(|dtWtDXzf0Bi(X9W8J07a-5YenUzmuc# z^Vy|RIqp(9s!};i^K86AM31iO^4fP>LX~0V!J~5{BD4DMTCG2>cWpAK{<Ap&E6-nC zz4&j4<?@H?c5P~7Du_3!mfQBxLSz+3+uNo8v+g=<T{0=}MC=wX(>L$BjoRMs-amPl z<NnpL=CdDKRodMx(7r$IyRVCVSE+E?zbd))Q8_+E+?D;S3^VTqn?`(@J8{vsO^(Nt z#b%#=d+@JU&x`h-?3>TNQ>s|ENLb+9-E(uUUUIno?NsR6eF5usC{EpeBI_>ys{DRc zYmE!PAG`X<-&uP;m3_h!{bie8tWOY(Tx_e&aO!F3k}pM5Cy1Ze`Y}kQeKo`Gd!ldN zDc;CibaSoEgy@%zb1qmtsET;8?E2xY?_NszKMxYNTDC`Q-t{R>sp5x(^1haDh*h1j zf9COZN>112E?Q=K_nwI3as7wyPO?315s;j5LVedW1H+wKN-1YGPd;&aVjC@fPC9YJ zk2y!P$}5#`+)>hDJ+Lk(^3I;)KQ7pmA6WV<tmyOV1Lvl_t8SlRueo)5>WO>5I`)1& zTYYtR%!zNp!f%eN-Qf4jWVKjYH|6ocoA(x5-TA$uQ`bpN?fy-@Co{rt$CN6cK3^HT zJ9}O7{P?)KaO>Z-ML&vFreBslzD;aOUgp)CG6&0oWsMi!x+BKgaCk+2>Ct75Dm&bs zZ#kM*+GMa=#xeBLUezyk)AYT6pIG~*o%1K(#3yxM^vVP;pO#tkpnKEZrW+?$_b=Nr z!FP|6THv?oNB-I_U4A9>#oClZ4{Pqc<27mDGO=t9qnqa!@jZ*2z4w*HdT9ON*js$p z?~1)uxz`ES6Rq0ctXJLnpmBJ^eutfk58m|%&pAJ*IiWM`L5-{2p?_R!Ur(H--YvhG z@k3qHB8J(_!S6IZ61|IL&rK|n30-1bD}GvNH~)91T8`&>@h<1TGd)`vY9nub{&S`M z%g?oeA8TfspI(t|Z*?$s&yy(yEH~W?Y>%+5*vK-qGihT|jqdJA!X>wsIco|f1_?0i z;MkmVGezjO(G=C=oSqxsb#rm3YRPSB|Gx0Oee2G)y(g}@&x~PS*OwTh5z{$QehKG> z1)F@t*_5w8j9(@_C+)<?Ju2zn%^5hRoIN~o?aHbtlaAloo>=gqc)qmEoduKUo&UVd z?2^6Jt^51)-nQ=#O0Z3|EIi}enz+_&x8UPvoDCsyeY37Bb{JM%Q1!a9C+tPZhR2Dl zoDTY)vyUyy-M8Tz*MrX@-ZQ10-n(YznkKxcwF!Fj(tTh1_Rm&tLWMs??G<W@J7D5` zdY39kW7n))W!B5ho44z-WPfEl5tY5fD7bo}(3d^ss!#Tub=@AwG=KYirRT9y8tb|f z<fS(71)qtXS~}ys%I-~}C){7IdlRN7wB`D{<IJ6toEBa-dD-SxyjK5?)Y}&!+MzkE zr>B3rHD&d^)5Wj9&llOfhfTD2*Qu}S_xk<_zlfTU8no#3pGBLhW2R1Qo)-Og$7lB- zn~s&uCyq#Sv_9^>a!TB}`$g&7Ic@<`$HO)^+XqaYzG_C(v#*<8O=@X>dDLv8gV2qD zgIZo;tM43VXyIg-xbdh;&-v04E*6C%$LOfQ@EOrhHB*-^6w5f{;K`e0d8#<JLQ0u2 zIILo=qv!3w$$OU0uDP_Nbx;3n2_f+<7IK>_UrGPDRmRozvRD1Xti=akEts+D+deth zrwd({uD{gt#CuZKO&dMSDT|UPnWSu9ax34f#$@TQnEeH{c5Pp8Dh6D5drteRT8L8C zWwk46Sz&4+x+-%nFVb88x1_}KZLhx9gSEQ?QXd5!-E-;>)4ISjYkl6G){5;5icL!} zTW}|Nc}tD?N57)N7%9c@*XFa^Vrn>7x_nvu{gTIZXSX+-C+-Tqs~Ts`y0ScbjqH($ zZ_7HmA4&3Dza|ztDRPG5iq|5hc^{IVE-E{{BIdF~nUUjL6<&+CsbxWl=e)Mf$O#vh z@GUD0zm{?S`vfmHe#v!OQWqaz>1f!har?2zUeBra0=FHf<(+?&;whP|_uOFnYkl*z z`$MkkJu}?6l56jqEBE#}zs*(syw>a6HT@Lv<ttA5@|S*JtP-Q}ZMvK153QvSb=@9i zzh(ND=wzX@>?VsybAf+#__tMyUPtmi+aWZ2vA#@hwm-+Me?rA?+D-PF?lL&NI_CI_ zvrMZ)&9cmoYnk$=^t&5gubm{x(C4A^Snj0UZ^M?2i*!V?voxo*&U)&$Pfz8sp7pu( zgDV}|<HX%^<65@84CPbt%rEw~*|@`arRq9gp0b9(Z{IzHav3}Iyh6Sdd@ft@{lX&m z&PY4k^tF%mZbo>&-JG=Wv0K*K8)l0CFUT(6HZv`6ZOZJ7crJmd@u5krNz-Myy^YLo z?CHL1!Em~4;aTq-zSAou-~C_r;lSgpb3RI2gp%SM+7@w!teCjq##hZ(w}Z}n^V-+T zBX|1pv3*>ZkKJgf>f-Z#lhb}cG$zWxYuyP(mg;%Ifp=@;oW+XgO>=lR!+!R}*YdMZ zUy>3zobOt9x;IDph)&|JnfgXM)h0O2PLZ7Zf|cje<`Z@X-`n_;r!n2_5a0Xd)@HsH zCK7)g=4x2|F;3DiNoWg9S)G6B(M}JIfap6j_RDPMD&Kan)M&Eej(vHpGb=Xk?z<?w zzK(A;=j-iFxi&lUQ+h8K-MU?K{n^R2lP>OAZ!&E<<EAdD6BD+sKfnLRR<jM;lC#?D zgCE|#BXdpZskvr~@_{cqTXxPqwJdbg1Xlr7)u~C1p1kYVE{fQtvHrQG%Cx?7swR)N z?`ZW2G@5W@x+mM^AFEiD6ZuzsmQ8VzF`K;hI&aU8HOu!d+<mRTChlC>zAeo+PClPE z=O?e>#2tm1$L>Fr;f=X#xb^P#SI57v2%dM`w2JB3m;b@ioYl&vw>)G%aEWIr&-s|^ zmaE)w^P_u++1p9IC1SZMT`7V~lUC*_2eu_xsLGrOirTVPu!=$Or9fO>fg$%M;R7GE zt*f+do%A;L@A~h&Y3k0mE%KUsbbd}bE_u`M3tNu5v(L6!b46xP=zjd`2iKwu>(dcd z)9sf_9%Magl;YNJo_X79a%`=@w~kJ^GfurJQ#VI=F87*g+WEJZFa2Cn$)EZ+d%0_( zug=upC12%z?eZoa&}s9Vl(aV`<(}U3C|%~b#jzd7N=@aGd$MJYdvbVkWX?(}DzcHg zF6<<g;l!bM)?wD^v-*=yzR{gM!DtFwMw^jL+u?ra9kOjfe#?bpm}(23J8YP`d*9Y? z)1IXJc%?u4^Dc9vZmwqa`mcMhN8SJa-{I#epC-GS;IIt0DLY*fcUzR-Pkm{$d`9;~ zhbQl~wgq0ja{o;7;vZcPTv{er?{s$kZ2Iy^n@*n*`@L`RM_L$z!-R^&r?PlyD>>xl z-;^mjZ<t)e`l-4=P5Pk6HO9>g^nWKE%iVW&&e6Ab?!?ZOzO{S)d0&M|IrlwvE}y;9 zFE-_+spG;J`;+1A#}+@$4ylVf&-t~g$#a|8+$*UXJ^5;hHJb(biq*4D?4IT7x|g*! z<ZjO$_q@W)oqObZoOmC6=QgwV_~g`d?t1r>{#gbyPK%3vteno^J*DI`(@C%R8`8VQ zPh>h3)w6tD+LX1xud60f^JMK_vH1lLCx5%JWBrPlr{Yaj8AAS_R~y<ZZCGXgDC-dG zlf8msVT&x+8O{xVCib&g^idN-<-4aBr?|F-+?d(I-_`P6@%Xa%rq+4+7dNPM*Jj;o zS@Gaf&W|-$R_L9arM%NUyUoW{<aDj+)_lQey(!KeF~;5}S~~<UmkZ8hs}|C1mT7$y z<P&E9E+{?PW#0ZBEX!FhdQZ6>p1xLln$C)q$pRl`TAY_K?T+ExVf*=JY9i|dy;*)% zHxeETyxigHYbcSU$FM|O>)?{l=hW`Xi+G=ltkTKLPG4)Amy)qO>+-n-e?=?V$>9&9 zUPiCnA-ZD8DS>LMSC$*&qO>NZ30mHebiE`wq1-#6v9(D?!ystst@5r(4EiTkE>B+R zU;8BY-TJkW`>%c1_g!3H{=YBXefCRT&wJaA_RsUmsataU^;^3l{?k6Q=lyyRko<Td z|FXR+Yd-w#RQneDE%}anZgN$6CF>Hw4v$*n-zz$WJzg(d)>gNC+n0BrHmus>bZU>K zR>}&)BUY*!Mn~*YPo7(HVYBs3*E+ZC34g<*^YSGkem->VUi5I|!pZF~r>QiT8Cfs) ze;;{&!!*HVXWDO7#rxj~`fS;n^U6?U|4mK#t$A^A9h@pJ7bvK{{LG~H#Ihipt<x}p zVNZsc|LQfCeCCZS&N?1C`P^0f$t9nBd-=s|mkzIJtx)~_^i2il$2Y%3zr~8^r!K1a zd$6@qP4&1+@S&w{5szG4*Y(~m&3Y2aCA*_^+TDrg++O$wa0rLbSR1)xXF%8NEk}G0 z&g$>h6npf_$LmaDj$hRj<M!>F<j?eF81z5=eIaVy46Vk0X|0<pbP}I*US?6V+FWos zuwkOJ@R4XI$&9GSt#Nk_@LH+;T(n2>@a`L&Mq+I|r{^BNFF8&9XwGz_qYrt{I*Z9} zI`^A>(wcj%(?4vk&{-Yvnj>NMo}Y2Azobok_~wecyrA6azQv|9*-w6ya189(o&MRv z*uuN4ap{uiDHGD0%z{3gTH$JT!*NLj@8&Y`>W^-v^E&k%ip{yFrK<3pU{O8moO8B4 z%1Ua%1O@hsVQ;$6h24rW^JG7AOJuXIjCN5)?`pFd+1G0CPn$2F_etgE+J>XmQnMxZ zZa&jo6TEt}sX$I=MM-e&f%0$9m3Thu)ZMS${HN{O&I<)<hfU&k@W>zMN?ZOi&63ai z^HGa`QgQwIoewviy!q$e|EC|N&+oE0wc7V_p1$S06UNEw9zRi=UFkSaKicSgV(LDP z^Zbihe+otDT~BK3{^Mr0N8;#F{&P>uxi)EpCiM#M4=QP##BaYT<zMAd#&2g%Z?ts( zwSSS0ugD}Pg(;#=(z(?lhbHYXJw0FPSg+4Prm}ju)f;9oM>vE%t6<jBv<{#6rbYG0 z)t#G!dHmK)2$~V7V)Rh-W!OYN^9CWU!Us8XU0t=AHcEfvJ~53YQ9YnQX}>}Q*P@`{ zM==xBx3o3HmHgrQGLg5kD`~}Y?T6E{e4c%k;l3eyl_@WUF){ka`Z+E|;oK#2l*>aM zV?2bodfB~KO*p;AA%9PXVVL^Ff;*?3SbcRPd6(y0w0M5T;kxsaDh-XPx0anuv7Hli zrO8_>F!YS}#8A&p7n7|_mjv84#dK|)RnEC*M#jAOjJvx{G*i>om#IqHHl=LgDytCN zl>hkHnV`M$`OYHkKYWy{-e3OxQ*@4iZ{r)Cqd%^C+`ZJjdQrkZwLAMnB~o-U|Fd{U znq)FwcHMSIg<%_$e5=XBrI80J!}fK1z1~$RzQ?<;TYiat*~weXCv)s4-4yuZIPZ8E zm#V<7;?2%?7`W~-f1c%TFpp7RDONG6?aai(OCt|fUf1|M;{dC;_Gj;~tfx*Bw{lO? zl%BNGXoXD7iFcfKH&x2!E-aC9$k;7&G2tgK3#U(#;hK~?fpt4O!*w!V8u{+{c`NA6 ztvjXXnB3MD?Q=cPv}j@!>(UJm`5*1M{lO=vVosX3!$VI$-Nq*K$UFwtey4en0w11x zPG4gA;r;#J8ob~CvTBL1)jchCp!RsT*V)vbPjMUyFTI`0+y#$6>Ug)jKzTmv!8`Na zCbBIOoFvctF7lUr<NWzy-uAN_g5RHc!Jp?}vLXC}l<bGk)xjky9X}s0Yf740&*oYy z<jQF7nk_QNErx@^Vqw&QI(-ecn`hbL-;^keF6UaX)-A83aM5M&w#&<z&5vF7KfF<W zQ&;hg!uns4H8V~qCUzTIBnl-@W9rnbX`6WEtF>%J*G#^k4G&n}X*~HRBgh>)_0hzH zGY8x6eEyJ?w!^SH_NTGetmhqnl8c#)J^!s&+Naw-Ygg+pxsHVrQvY4%SsZkjpubaR zhfIaFZ&nk-U;7x<r1(g!$!CteJUV-K_v+JUI(5(O5zYJ@<I?<YUhxHmn{y^ha2BVC z$#+k%Q(XRzqc=UeYr*G*atr<%%B}ubBz0k_TnV?an1R0Q0dJmDU5a`yHP*Y&+s$$F zHqYl4uX$5>B?|T&KJq+yjrZ9_r!4YiOuEmn*NvEOGyD0QpO&+K37zj(nAfiGy{K-U z^75F5<l}|@j3$4-EH*zUP<CmNrjB^&)c9$SzCN;<r_K^N=VJaj>1LfXMK{aSTjVm* z41dW4A1(>jadljLT%xwsuKb(M%hU}&(x2b-_F?~Z#?A3FTa+EAy@@_I*Qb>GCnR>a z+SUKr@#F79)tdYBf9*R|@%a7e`FmHsH@@<d<>;Ki1AIFtX)Vf#V=X+&GP~zjsz<?8 zmx8NL<}aSX@UQ;gkyc?&FW1_xdIQ~Uo2!2H)U+4{X=}vEi-bHV@%holRnxtL$!m*7 zYuMX%j$WaVsyp9B?_T8)^|&@A^xnLVV^*TOPP|=vHFx{w{fkQ%JEvM#%{aEI?b_TA zYiieYw@Fp~(b;(;L)5l=ugyaB^GRPn=!B`-dTSrQyZYkh2~Q8ihI9%Wocexn@}alc zt8ZJa4}P=nNwJx_o#fH;UV9w&yM*64vpJ{R?)BTqey2YUCMnhiys=l_I=I@+XLkCu zZ9>FS>*>?>9OBq&Eo}Cw@hpq{jiReNJf;goF7Ubd^TeCTDeu0#bltI`Qp{iC0q1Vc z&n*41d^77Eba=u8EbRAI*y^1ZzPRzx%%2||m&Hn13j|$w?*2S^c6#8gOW*YlU0oR2 zlHPFqjoO*V_Q!7I)}Od>Kd$73haLO6?;CbMDfIFVZ8-PY%WuKN#%b*Z+0k!P=W+V3 zkO|>gaL{=VS7oB`oS2U~({pmQ(=D$he~q{^jd9nd4^4f2DsdP0CM2AXxpH~q5y`)< zcc1&8+;w?g>e8wYn|+={9-DCBggT>UfLO~h3$HJ3!b~63cTQ_4OJS{i{nSD^xXo!H zr?Fh`f^!_L6~#hRyF&|Q-sx>wq|@Y<GEu#Ks+pPdBlVSnUXN``FZ#5<+z=_X*79T4 zqtGvUg>8L;x34%#&rG}4944?-B%j0YMCuf;XX5`KgtA=H>75v~xcdqJ8ub-BS2oJt zyINip<3IWO?JI{1%h!D~>dUB~eE#|s`L(~QHebJer~Ull^RfFEJ;~5t*IInobC#4? zahUjV-wj4Ne!P4!?7lybatp2NWb%46iNnQVUXI04!z2%Xg|kk3A6$x?|2iw<M^sLz zvv_gZyVV<)y?eK;vhKo;sUc^-YQL)e<hQZye0TNo`(Atfj@lahdn0v3@xzDJ&V^!& z6s^@GzD^d-YHmO4@W(~}^XUhw`==dF6nql6{ZZ!26Nx-JXGHmI4&Mp+D%#Tg<3d|b z`88{USE0fxI~HjCFjHvdTkCgKhk@e*mvDoNp7Mt9nw6UK-k)S_*|w}|Nr9<ggusf0 zI%eAoA~S!U`lWWGsi}BwVe2`c&dArAQD-eOmRg$bJ&^v1b=~zIc?*Glc?*NOWt$g1 zTs?QSlvVwSJ;epLy!Z2nKRkRnK0D)ui+o+LWKVtiwep+A>-T*=w|f1)@Ap=_f4BYc z;^M`N=jTt!-&fXQ=dAbtk9^<1r*=DPO0HE;cp1EAdYzx0&q)pSR&D>(DMC*?`Z&)y z%v7Hy!G2crW^g0_-??k1zntear)96$wbOhL>Q}pcl+D;QM>zk0w!meR6K9wH+jv^( zZll?fyX|*)UWdzXZLgbr*I#qO-zAl*Vd^_4UOHv)YaZ9ES;0GwiO!b3bu4O1?Ut?I zUtNt8@xGY4w$r<Fdenv5Z3}+yvHxtBu<yd!5|8vr-xof#6Xcd&xc1AmlPBe@v_Gz% z{!(h!D$|d@ZXS7^vQ~0OU2E>t_Xj$n`2#*aU66g$sOb>LH8t6U>^l#bk1!?8SdiM^ zxW`DMQd{Sgi*TxGqK2M8Z0IwUW1Jfob(GCHtKYWD@L<BRKKTIsk}`oKf09(TYdI^P z(9Krb$j6yK(Q)F<KRmCWP6^wyv&r$*<rbX_e~#70w!dG=x4m@hkI<WIc`c_+7ugoH zzSi6S^tyujH47JVuPpKT7UUjpux<C&+V2TE*MdFg?=8tZ6MOxJSWoV%b+c9}o~mVk z6!>W6>u?F>OS#id2~`&zJQo#}p|RZZi>}VzvI$Nuho!#BJ+nMod_&G8faM|IN=uP1 zNh?0QshlFMynDvv)+0?<8753iTJ$w&s>eK2_eYJ(b9*MAo4&t4dycb+p2oE$TC>ki z{$RZB@YJ(x$9uhJ-ClIip|n&%!gTS0tKxjWFPy*Pedh7y*AF7!XnbyaB(l^o@Swmo zK~{Cgno~|E?mMa4wK6sC5Oe0wh}<gA-uCMBiKmUHk2;oUtUI*!b|}{uU(>ul>y~*e z(O9uWI74@0)*2a&J==DzeYascxBHz_W>%lBotvv3R};AU-9*!JV;`mOv-S6WIhz|k zk7e&_=RcOM$09iF*vwBiU!9@WIVbIyM3l*bVhw$6J{O@CNo5Y34Ht9HSUhp&8DWvR z3(F_O1*go9c(tgl^%A%2<Efr2Tg|ddqxakm4c%UT<=3lEw{5><cZ&O*TVZ?W_8aak zxhrp1I4$dLRi0bwoBQ*dSJj&ri=}$2zuql1eH~R}c<4Bv$vb0@bqeQI+>XvQD4H!7 z;G)Kp@<b}|P*-!!!PEdBhv>$;amG0xHAD?6UMxN_oAG48f(7NBY|rgBsonYC|KZlM zBfbx&w7jqQ@N)9&9bf)#<896U6#jFUdFHKmH!UCKOLoXvS9=Msel#oWYW4LKq4|H5 zChWdD&3e=J-1~j2N_GFu&y{@>dpY3pBc@;cN|Kh{FV-(-O4-ZmY}UZRp>=%8kxCVb z3+&B8841SHs;dobSC?GhG|_R{%AMLd;Wn!aT&<M2{!Uz9UjP5gkA(j(ll!+kj!<gL zC>6S>H9yMFbw#a+!;c-D6AuY7ERWD&3eXI=8k+EgIY4Q-O8(S?oef_YmzXw}HkTj$ zFjvPZN<)QH<Ku@P6JBPv?>@5raOFp~%?aBQ_LOcv`Nw3bNy^V~k2n({y`_hjaLT`# z8U6g3{#2v5R#oHEVGoaf>HF$(Xm!o@8rw~OH(qmac3+TN9DCSy?Z3&}L)>r8NiBW1 zZqE9vCYMSX>({PX`!jC(DcRN9+3U~j&X0}l4}L0_qxpJG>F#XnS50Sq57xxbyDPEm z@52>qmnoijxOryS8h+26MvwPxVNepEQ{a_R-4vsrYT)~1$rG)1p~(&!2iK^k-AQvg z#Tm(}l`W$1qVuocIrFWVf}WCFIHqk6yML=R^!T|rtE*-&GRxL|D$l*NCI61$FPG%r z=VI&C!p^RpIDcK#_G|y&ea`>meSq`P*5#%5^;ANRI+vR&?vzTb^Ri!^v)m})h}U5w zfd?TIzeycgaHZ#Z?##5=n`TJ9d@Gd~d3j6Oj@9AwB$r=3JazYa`wj1{wpttctiG@} z>f&CvOYe`ywLLL?87KOz!18hLgC(}9*{5G!)qUZ%H+D^-dDO3Wi(lr4@~PX&_N&{; zve}=vn7MgV_zIs@%}!zA0k6~_yQy;Q3~Uc`5#f?uvn1)Hq2)mp!9K-VR~NabE!;no zhmWN~_Q{FBCZPm_j4&JbR#`<R$1J5|$FG>D1^w8z=H9*XYr)Smzbt%ie@}RY{U+m& zrB(5tqt@#OGS;m3l$iPah25LwuQtXT+}SgIlkQD#)3c>PCZ$#nlTAvDmo8ehLPW`9 z&N08HX^oQul8bxX1jDr+tP+x8%IVXZ5;R4G^ZF%0zKah_vdcd>)TDHudp)me{!6uw zVaip<I8E;7tYUq?HREzxHvgxzqT*J`ymcoW`i}R^PrkPJ`I84%SISk(-OG|%F7hmA z%>_ZH>Kk#cV)i}d5smD<51lveJ$|7{-Dmf*`kHU8&vrS?{@r?QeIIZ8@9Vs7eP86O zmTum-){5gF$H#}9CVKL3-eoI13i5u*E5R<_*~5D*qG`^{RGH7|4i!_ipH)23@>!D2 zq4NERrqpp?sXfYBCfw6vG`F+IgoL$xP@Pj0GO6E7HAu<->L$~w-`jd)nRx}{v+w;{ zW&fV<`_>;9xpt}F*tj$6Lnn*;ZJ+Bdt6!O~iIVJ@R=HdH+LO?-f?nIoZTqfyl<&1} zd(7wZ-dw={XoN%a<5WX22f4WBWX4{hBu1VKi&Kw8IJ71+Zfb2)y17G$ox#iU*D|ix zy<W=4n7pQnaAzEeHH<bADR8}%+<2t?ypzd?H*X>sF8&jdN><!Djp>8W&H6SEhKc15 zJs5uROV2d+h&vEh9(2No`<%Wx*M?fnK!@jt92vS8C*;g=E&0F5&>>}^go2$mOM?W% z#g{6JF8|-3)Ntf|o)+7IstHpxa{~<OcM3W@Io-(+CC<mNp;vz9J!gCG`b`cz3DFvC z8S{jh9C#YunNF(Hf1AqVqI!&B(f99<A{L1L{+}qqdEvZjZM{nmn?P-IPoJctp#xvk z;`+IdHh+kWm-|x3?YE)jh{ugDKW1&oe5+8sgzpWrtlB1bEsF)ql~-S!w62%0aQ>|D zSrxuhu6z3~(o)h}wD;bUdN0p#6^-Bv{wu9+|6S{P_0G9p?dPYJ=B>}Zy+!T+?owS- zS*>kX=cQ-A-*($<N3Ffh&416!r-XjXDK-DLwLEF>txDVZd)59=(Q>O2UG_h24flps z>OT`S=J98zh))SsaF%PE*4X4_d@|cPXw}T?4UMxdhNy9Mw(6T4TE;zpzRAzZ1#wC% zc5}V&SQL?=)GV{o<wCf2(Y&?QFD|odtd3WHe0S-dO(MIFii_2<-47M1{g!igq5u3A z|DSt;>=ug@?VLOB{DXkN=Z^AnKfcI)St#~*cHz$G#E+*hiXYorY1M82b>?M@b>(Rh ze;&{L5N(%tG{5MfxzvXps{>~K%Pm>1wBzy){{MQ7_djf9sNubD$FW^Lo^k)fW`i05 z_y5ZtG&Zr{;Sz~(QDohza_aQr!Y}JD{I;kvin->#vZ^^|;g!@E#&auM-zmj=E+~2S z|3%f_nAPXEJlpl)@Pn=oXZnBsl8L&|*vq9j(=gKaS)tZ#zKG*ZS~^PA&Mk57#a?<T z-34AbfA;EhEt{}QBBOlCjnyU5T@(M@(5bpLDRpzg{cW4mexGEl-hTIKQF^(hxp}`- z_nBy=@*i%q{rGS0esgisoOgRB9=FSS-Ca7Dqu};iORL>|lDGfsr@z~}?`zkiul!AW z56{dy9I}0x-5%>}%m1|32T0sooO-t8$zpBgoQB^CzdF2+?pu~1vF5h3$B($_>?;Mn zwse&4Xqww{w%Fc$p^DWLZpF(-t1T|5<ZN>a*pqO15|4(+!=0Pd9_z_G-039naA!da zd&W{d<^3{;v}Q`a)6_BdKQ{gJgUe6rOdmu%hz*-5xoz1NHja%kYKl9Uk{5AIQ1Iof zEXYVHO9=4gaJl=CgMF^p2l<P)y8W)s%5)BNl;hq1b<3q!oA|!I3)uIyz$Gzc?$5L~ zr`X!_7vJUjU+b$#zFI47T9W=Kv^CDnT3G(%4ui+l7C)}Ey|q%GzT5fn0~y=)Ywk(9 zhZ{fTI`8|mx3A#cy*^pNtJ)n-MNi^2XL|AdzV!3Nrs)AoO`;w?ZK#T}OsRe(Hhcc# z9h_|~x0fACT^P`j-dyPHXc!Yd;q|K?n;q+TxU_VSKh!-i=QPt|j@E*M4vrf0lG%fv zGAO1h-t+r)FVjiFKW=*GzqJ=F0=2efavbYjTJbfx@$&+KHyllF`+q!f|IdFdvR-q& zR_mSE=#S}D7S$*9|M~R&>suXa#$D1ZdH(cw<+r~*ub*dk{C%wZ!|m?-|Kjr#Q(f+V zIb{C$MY-4BM=zpRmWSBvKfyigbB|Z<Y3KESji(&tOSQPbHcQ{J@7`O@V-^#S1(lRq zwp}cE^5EMIjaid6Jvube;L(=O%?~!mi8L;fpFG>uUTsD8_8V(rCOrF;d2aQVf;Im> zJUqPLqI!yb$G`90myiDpJbp{AJ!|@*%4vmPGqnDNq%L27XXVYR_O^d23!CScMqgLI zVEQ9*n|j<r<<7=x$>jNO=B>?Fzvslqc{5e^(N><1x4L$`ZOU<Yv4znvM=T|dg_Y|g zU&0sGs9uRjhYsp}Go861UMFHr#@d<ETt|%y<0tt%SjsA{_3_+<1)Kdoy$Xn#-dsH` z<0!MWP5xx=)@^1cv9_<<ZMda(NQ6sRD%h{Bp1@aPyKQsq_Ui5HYOg16-1hz6YN=oA zj~&T2Nx!#wVHfYa>z8EbecNm6zS}M7pGyPpK8p+0TkP3BOFDl}e9~)CujBA{LYH-7 zu1itMqpBAcQ-YsdNnar0VrQxN{qgi7%Sq;YH$G6x+oq*wc4py@u=a3?u+mNJ(@)Pi zV%=bDx+gl<Ve<D!CudJA{E&9YTYrvNx|I4Fl`qcRZW$MzHf=aQv;Fg7)=Iu#*{&b^ zcwH82u$K!q203ueEIx7FGq2&so<x@!2JJ1%y0s!lw``eV+_CoXjZ^z#OV8eQ41JV) z>-*!!$LE`z{B!%dj8yrCRWFTW-ySrZzh3i(&5@iQ+Y6^zYmcA$_U_KkSo6|#$`L<{ z7A3!rOZ&X-?LMPh4>Wg(ze#)WOLV3i-`%D1%O7bU$op0BNYKA9$i}C=LOt)SiduB$ zf>7axwMh>I-fdF2t|TO?e0{EPmw2(m^d$ZRN5!1|#m;GnNT@xIX>3{9ufodQ#qdS( zy^D$Fx6WD24;7dXDz==q+;M$N?~-IiM=d@6@Z`;rr<bj@pU@eiaNSL~dnQYq?kBb~ zgEM^(&sZNn$M<c{I=Qc3L-H+W`0k&6B1Pg?L{fY4|A4~@1zRllecgHFeeIX*?<;$M zx-Gt3FhA=#|F?B+Y{ol2U3qAK`6h4L_QLZAg;&2S|9+?Tt(L0yt3bw0GnR%}e&uLg zEahQPtmykm!S|HYwv7^#y%rqYHFc3{INL6_1rrRmE+`9U<!WnMP;)WjS>(j;ntV#p zQs>VzCq3<EGw$E=(Ja;Pn6K)GMosS81>A`<I)yaOYcPc;8y($RC7rojK~hG1k;tXJ zItmku+Ju_;!lpQLWd%vfyS%EXF)Bz9Km5ij;q{$g57sW2uzZ!!e=m25EhcqS&lTn6 zu1>1ExOm_4Xy0J#Z)=UMdaY)s)n0y(6|QvP&m-yk5$jK$GI;j-dh2P0a<-#Q`Hvz# zD6q<IUu#rTH&s|fW|yahN!SB!llMox(#;-RjuhXd`DwzI7eQ?am8|O9{J34ZKIW)T zP_Sl~lyq37S+MY@^o1y=g0ybm>uU;5Mt0~mDvF&6Q1O!bpmnC>SJ27~mQ1OlO%W3= zJes{?hV>hxg{sr7V@@4=_1@mJVAJP?Co&4|u5vyuUw@*0^;;d=J+D_z{=58Le!?-n znu4;$PtRU2*?8;WrdKYH;?;%E>D>B$>C4Z#H`ni9CvWptdyl^Vqlc@fOx9vzIjPen z^GWIL!`Out(*)HfPvwoB*CfDwJe2KahV!Zur;Q&}IV&{Y5#{QP)NH!M;KlwrK3R-$ zt=WuYnsX(e?^*e5{)+1@Uz^YHxBfPpJn!Dltm`v*e_Qdjx_`dTRu%1*&G-F{^q<$U ztL<;?t2}L%_D12%r%U}Ib9oQP`B@*m$yT=g+pG9`-|O|y9>3rFXXfnMbDyg>D6>xt zv}^uyh;wtx40-)KTPN>PI+0!|thI5E3d_{yDv{5xdr$V9-J_ttpJ(cU!r3xv`KJ&0 zu76Y{y=Ss=5Qm7w!<rT1(-updo-)(>mh_=R_UyCSAB8GKOggMm#Z<U_>XvT19}nI& zA9MMh7?pp!{(tit<wDgvlL`~&|NBr@<^5>#k<DLTpZ|Vmuk+<?uiC5c%no~N`{BAP zr}AH`S(Bgt(!WuDVGh^It0G<bAHw>*uY^rb3<`KTVcjkti-aYe>t^*-c$;1KDQn*3 z!_c|J|J4$qCWgt!wYD#kpFD$!kJ}*XnQ7&@dA7d=V`o<g)@A)$v%M=Y=F<J&S&wYz z)%|FE_wZe<?U#v1b}yH=u&t@O|MG~{%>B8^i|@^i4GTB>_A0~nQ=3Bmy4T@11b=#; zu$y|IPtm2gi8XV!xyFjAlXuAUx&AxbR_q<a(j1<ylv<!C7M=1!b>%h(Hiq@ey6bf; zB_46^+`POrXWHfiuG_Q%B(f)kz3T}IQOv3D-s@16x&QL3M^%4f&d-~+F?jvo?TyQ3 z$@zz0{rGR=^_*{_e7h<$qL<oNaPL*$uQvZ*O8K9Cr}qE7$K5GEXVqO(ky2Tn`-Pu4 zllOJjmA;t&t!&-jW90^ZQTM;DE?Tj2TR_~Zrd7<+JU7CG%O3q**bx6E_M?#0-gSqy zpLcrP2$=Lxe52E&ha4Yt_xR|VZufsJ&(XH@5aUg;3ri(G2sFQl6=-hp&FJ{&Sp9ny zS5L?rwHJF!1t(WJO`hq_`rP%Cx9B@(re*UM7G|)_|CPDAGiUD4m;25>x0jUuefQ_t z+2{Y~<-D2vd3O1+zCS6yzs;BFJIZ(XzOvzq+t+@a)ziDPwfO6|dlBK~>H5WAj-=Q4 z^Vh$vR$un0w)W#n;luf|Z{OJby7uA2?EaDxn@?#?iE49AYkSW+`?ls^nwxz~YSjaq z`IXLj)84y<tXcF{Bt`mk$E;gTNz!g2Ge4_lJUq;9skmxRPkNj7L3`JY(p^fo5*a4E zQkdWPy|$sovf`lKL!s*QBt_>hb5<ycuR0MIDXEym+xaeDYiCr$;@_u&Y~^=q{MbAH z<7s`n=-Qbv(>^Db?0vK-VAmUCyMl>TxAx0Ch&=N2t?>uF7{Qfu1ea(}IANz7ES-BU z$)F>{cG^t#0~QxJO}ln~pTcsm?L^nddj|5Ry_ciZIn25&TY6+<?k<0OL+KeyX2i<S zCHhx3eag%%KbPF}Lw4<?iTs@lF3c;vy{2)7H5+53`So4pE3!7Pzq<9>+s{At-ZkxI z-5NVF@Yku&^+C(DUf299+?@4(+g>g1(`$==XMLLctYPivYkj(m-xsVsF*&zfvbOKs z)_c!7v}fP^-S6J_=kb>h$KR{(^S=N4-|+>XxzdC_7Ip+Jy74bwBc+gaYUkul{w$_N zB0*|gxgr`OOE)OS>{+nGM)7!@ncnes$s#e<ZCp9cq5{<?JQw?Jy2`TkPuiDrE*8({ zoV2u^pZg?NoK^SH9KEBKwki)_>vKhR6khATVjLCQc5hbdX}@>AXLdHtd>$|{L}jz* z1qp>Mimee-4ym*@>qXeld{LRPF5y%B5A9z&BU`5K{rllCr}5vyLpJRVCRba<4!`|m zx25lfep$vD#mI`AiYI)}Glbj;vZxfO`F3&#zr4i{rh*3z(fq3#!tCxuIvXt3pYi$Q zKE|$qM?Wjf74J93Na*m?80fS8+RflM;ik@wO{(^4PxShmp2~*L{9JpZt{{=G@@2s+ z(ZEGh8?||&yN)y+2wS=}`_%2Y=dY_C?X69IZ+r3S>g>;Pv;W=g+yA7>-P-zi)oJ-1 z|5>M&XME|Lr@X&*)$ZRb@5{ZcOe#6Cy6T||e{N0UhcD+sSC`F`t5N(od!DdL|AOzo zmN+Tr9}KnpF66IgwzV_5IMFC<ca+J-CHqgeL{HZ~KY?dmh)3#)#vg6w6QZ<y`y#Yc z9qvWvomFiQa56jhqVV;SIZr=D?dsq@`6)yFtyajafEuMT?~oG#9`Rn)Mwa0kIa=Q* z-H2cK=5AeQm~B-{SnRI%pTBBFt$y+6>5InuN6dIt{;}7ae7w2z?H0GQeVJ!A{<pOG zRd>e6_&8r&b=l`<>FZ^;tPuKL66X8<*<I<fdhu9`<rgpP&WXG$ZT9`fro`Hve}9R( zF5NRZXko{Grd>CuHOH(7e6nnQPqsp+|1sZ`o2N`OUOjQhSagE(J;P-81*RKL%~=ri z^?0$Lx?=KqrK)K%H=;jvUOirrq<P{>U<A|E)usy+BG)N7JP@rB+q2PuGt#Z6OGHGm zYTDsNnK3IhK1>X|u;hia)%z_MWZp(TdU>y`#_ZKGO>dsk#f$B3`n?qR`g!ey`(KXq z`u}U#=G(DtZpXHp8DH<Y#4dW&n-mh$kkNfvq1ZzzW#jgVu3uEUS90zZyT@7e#j%oM zzfQaA72WRn=a}XuX7Azin%;OW(B*mBg3Xfe&nX!H_vt%4Gdw1Y@9&&ejW0jfw54iB z%|AA`vNUi{pZoL=g6~@vrnp9mq&rMI9JaFLN_OOf72$tbJMNp@-)P`F@y+qi<|)T6 z7xPcBudm3=nV4J|uX*Zsk(QTf(E6Z{sV>isKKiia#%<|ojW=!|HGSt38Naz<O}fH; z#d*_Nd;WOcIC@?s-?&*=dnrG|YB8?r2eRz<3nyPz@rXSeFu~85@rmey=;XUzFOKZZ zaa|G=tz35O)bXj)d9{6>rB9KZxiil-mG|K}p4c6o%4Uni1s93Gxm28&rg`H3pGU{@ zJIqTv%ngr7%YO>k9(ebP)swT2vm4D-?;LsCVs7@JSAO<#PW|22+O{0-j$5}!I?iv6 ziqw+8$K_HJLz|0>*dFX))m^A|i-Y}E&mY+XEh<~S9+ADo?j+w>)?7aK!(6vRE51&s zTw@^UlDLr9%=K^Ti_rVB9g*7C@7?>l{B$+vuGs<mxn?}wE6bX-bm6aK_D8Qr2HV6G zv%k1=*FrBkvrC&R^Mu>A6@^;N`6dtdv@T88S&={Kx%rur1<fv|^}A9k6a4Oah%V>< z^ROt$LsWV9uh1?3e(Q?nGguZD3+uZ0@igS6xs`3>h^c5?vrvP1xrJYW?T4Z!<w=v4 z9(=EovtaiU8TJmQy&a#o3!J;3q;f`IHQ&2gc<v?kL-QA{51mlH{a|^=hK4&F+Z|Xd z138mk%`a2h_&_Qu@BN2AoE!Et-Auouxn}`uXX|zOwJ#4`PhD1#>8jr0$}h%!P9)qa zL&klEA;aBCpSAPiq{PmjUchXw$itmlbZ3o-fFy^4<b~igt(I%YbOW*jxQr4WEOGm= zgIR*LGfjc{=h>ylcvePBoxN}6KaX|J<^>U~3p6(*ntl3uAh75Xe?sKfCsQ?9Ztu-L z@lrRY<Iwe*mXB*YK8lH|u*_I|z~Lar-p$vqDBC@s9(Lu*IyO7;SuFhP9P-?}U#DN0 zHpgi`SG`gGGWF`sd*)1(HS$`sEB9sC-<4l#CY=wzE3-ah)tg_{o77Y6ym-H|om!yK zd?tHifWrhw36IGt?+tPnPgJ;k%Bb!3Jd0y&%kM2<-)=mmtB_ZHUaj88HwG(D?)*3F zO^Z&~dv^0feK$-vzbgl-I!~Uf;bNxxhWWB=&+I#oe;z6BX?nOU{<h!x`Bjs7Rpgw% zXS+YHj+2tldA_utUq9*zmyw+~Z!2@$F4@1QAAdhs`))D&i{<kc&u&|OKiGG_xsUl- zbGv7o6vU6Kr(bv*l4Z1yBkIP?3v=$uDwjO|{6vjstL;Y#=^0g%<M!A7GTjsQ^4Q<X zUl;Bg%#+TOet+rFUcH@FLZ3o>Zh3NwYU&H;FLpZWylkq<@uz_*>aMA?CZx}J!?K&# zVa>;zJ)QxK7nWY*$u^zbImN0=-86CW?g>AnHha3HrCcfw-Szstz2${6i&;0W+F$u} z{q_By8y-)*{(Z~a`w{=o^=(`Dc-@Ekl{YPY-pknRUcPeYx*ogY?+=ef3)fGtcpdZT zZ}|35J~>ILTXo-Rvd<pQ=sQt!TJOZ{iD}s@g+8W8E9gkXWG>)-)Mf0*cxFLr#*UuO z@W)4$-!57!H+@>!X5KHBR<oZi?=#qYJ})@eUgP({=i6m!T2C%6SNEuUdh@l^&D}-P zOP5&esdh+T5Hai6#w|W)9789jNFG*E2|U4If7C!zY{M-dJrys#%aM^c*DpW+Z?@9o z&G%1duixA8G+McM!S6JO-UzpV3mZ1b>TI}>86baTrBRbw^MvTcreC>Y(~iHGmbIrd zJM{94>8pF{EH9p`%dcwrSC*vw`BKO=h0nZc&z<#GFRM5Dt7Uh}?R-|!tsC2CWUsV} zJ*x8O%&N<|N&H5+>F4i-yk+yvUoLz`bDLOUl4Qz}uF|xVMaHpJ<`x@;4EFx$yf<%+ zto1}K!RC$e`BQBhKU(B1EO^=a>{H7$318uxX)8<rJrnTExH#oi<yY643(o%bIsaNO z=<x=pBhi{oQSRIP6V}PCl#n@l$X9#zi&f<&VN<;(E?k(bE}VT%C9b-qvb>~f_VTOE z|0dgif60GyURA{Gtrw+Sm-QUpp?Nh#{%AUTYr!!U75|prCT~t(JC?mdW*;goU3w4p zs90rfWd3g6?7GJFi2Yg}w`Z~I&X?)(C%#>Es;$I)t?Ofsvo};!Gf#P{zb$oU{p~Y% zlDcelVf2ptEql{q)05Zj`ugbJw~hZYt{!NPm;4#H{?ttg={1>muAV*m`&LvLtMcyI zw|C80IE}gdOWvORyN1sa&O85ocxdYO3O2XJ%=cfuu`kU3`tI&K)2s7N-LuWref>V- z^0oU@Z~srXw*FOqAxT!usOPzeY=>Na@Prq~Rv9?)v}#Nc73p~~SGC3X{+8*AOAqEX z1_#{BJ5uS@bf}5nVal8d>5WEp9djGzi<j3%sehbYKJAm#;t7v`^DIc6vhV!7y%rx{ z<`-^iI%cu%l7?>Gk(4j9&l~nx7tNWF$+G|Pi_)m3fIO4FeXQ$40$)k07TvS#i%Bn9 zoEx*W?1`6j&Xfs9m6{ix6+WDC(OvCwz=vhEX_KUD%c?hQJ~MIt+{;Fr4$59lzuhdG zdh=(Q`{@%CtS41`o%8Bp^6mQnFPGn!k&@30)I7J6&wkh6$^QSZ>s72~m3F&*b9-v) zl&PPB;}<?+HF+v;E_UN<-NEHEj<mk*I$7B5wcaU>HCBU*tCH)^0?rFbnvGizD0Ydl za#u3^;;P7QitV4+KIv$DjK`}ToCgklj>*obSh4fjYuUB`ZmhE9WuKk>>%-~2pW~ML z=k1xi`f1r$-iP)+AA7bhIu|5;b9>7BAh9K?0Vh))9JupAa-l`5u6k+{v!aTaOwl9@ zYo|WpwkKYudi_&ZB_7u6=H4`M>YS@boi@DcGr8!xT==QagNwrM`l|OVefOLFeRlD^ ztr!2?rJv8M38f3aUwr?@e^bTQTJLM^Tg;eui6z``U>6iAIdNrChtou(tqNt&R_p&W zzLy@ZpsloDLwt(r{6@=%S3NFVnNZSJxBU6R6QNlG^Eh`pb;f%>T70GRuc@VnKgZ>3 zJb&bk)(79d(cBr^sl8>coON-VWK}EQzrX9sLVvHDzS8wLPucXNKla~ZJ*MNH9Ja{t z^p=b>lH!#+3u6@94Hw^knH;8J{9#6F(I+pd&2D|$`Ii{7f2e;n<E5dM^+(4f@#+s} zB&~iK$$hx5eovtGG^@!6v7Z{B4l)+jM@-A|UUguZf8V22OV!*(++Js5Uev!fi(Rn) zck#~`_p+~l*n8{3`tM7sPoA*M{Ixe_I;+@S?_-Ddri6To^9YzQJ$JEu-)Yh6^>3$X zC&XNrcYC~PVfD|#*p?aEUhGQ)56+FS(F&WlXEN_{h1ib&HQj%1U$<+QnzHRR|6;?= z?-RYFEp43NIX^yf&7$|{bicdmOgnwnZTtSHQ#WnrpIh5G)^58XsCGa_px%3_RFnpz zdi{aDNftcHOBs)M{`Yt%*(wnI;`zkmRhELP-#-P1Zo0dP&qPm4$gS_pt8^Q!W3j4} zBklfsxINMQDmztTsTRXrXW5ol{aX%jY&!f<OitYQozd6iWAlGZtynMI!)}`|U9>ZK zlj0v6;a_@tebtQX|80!@HudHFmCOH2+UtLneZkzw?a$G|Qjr}~z~rCu#A1SK`NkDT zrESkW@!zk1x7TbjgL&|rbjexH!ZzZ|fA9Fa>D$Zl&`oSJ-+YdLZ0R-sv87fMOQXvy zW!~GmBHC_`Ud&%DS=4-F{l&|hPvqX1d-=Ulo>REERL+bu!r|__VvQF29J{h&=ArYf z7S4Wk^X4r6^r=P1)P0Yc;B$|63zqr*P`iA#CwPzGV{ad$x{5fpuXe`AnA*G;k8WPM zD@%!|M^HYvGiX7Y(aWhNCLfI+Gw3uOxzBvfV(Wa_1pmjM<NBlyR4|vVJjhmJ(DaL~ zvdZ~VWctpfmOJJK-g>F4qTo1t;+2<c<tN;F_@&IVefvvM-?^r<`ASM;?t}zyewpBY zywTTm@xEvC3Vy6JwYxuS_o0XL((ZeBTiju??^*o%LR&`3;f3qo9d_0Z=aYT6E|UKQ zd-GP)<{$aKTb8Oul}2k%+p2qg{ighr)dKQ79l-%!@6&R{&Ix_olvl?6ck1+)-&p>C zx-o6;s=3kI7sa2^e0HeBIO$;PeH9^-&$Ih8DjyYdu^YV!{id}jWyTHtiOet8Uk(ZO z3^6`B#c0W_g65Szi;CUX$4}j_`riF<P_m5j4sK62)|n|!DyGhG3TwO@uj<j;tn;-X zN`<-FYLAT8WRWE`y@n5~VrOeUGSalwoBaAkU1ZJm=jy2k&)+{WCHVf2JG<%wwguMg zOKMNz?mGN=Le7NeuaC%OJo^0k<LA;RKdqQjIaI4Iw3#z!U6Gh3;*_aqF1}|bo14Og zS1T;oCTTXiFG`3=HDoU3G+TE_#*sPs{@op)H>^L~-oE|!*J!(rH}5O=RIc`q{l573 z@@)q*`rpWWEMv3hUu-yAUFdA5=5fv_`)zs0-<SQLVprGrBJs(u)kbswFhu#@adq^M z-O2MNF($6%Z-*2UtGtYLSA&MezMj>eCad@TWMS?0usSDD?7*y-ysgFDgY%P;@JRy^ zZk-7)&nM?r=B#?SDBLNvr=YxM_08)mq(dV=Io(^fTWj;-pN5OezW2R&z%2Xkc9!jJ z3zZXWy*fE%&%`ZHRlUC#ardXjbG~Crdzae=%YV1IA%5n|)kl>p*X`H6e)_vY?a~DT zOoF=Yoi{|JjyZ@MuS%9xPF;24B6ohC^_I7v`u#%xZhFTd9JyWn<L`^yU#xa@p1W&i zH04L_qxQ~?+hx-;_+K!7^?qi#jqCL7w>MTV@tj>(m&shrTC#KF0oO@P+f!%!%m1!Y zb}_c|^8O|DrT&Muo4YyR{ndIz`^^56=NEk4I4$ewdGX6LpI9uO^K=rQj6UO1r&3Y3 z{ubr36;~##UiyLmQ>L-X{B|ambFUo5zAy#<J|^AyZQs5l+Fjq<*Y9j=fBOER)z0u4 ze^;h!Pret)y7I=JHsNBk51TVz-Yk@o54!xp#7w2PMZlwGTkqkMd3qIPx25w9OfTzS zeDU)6)Azjf)A-N3ePk7O{diQ;rM%Cp)uvEV_o!O8oBgzuFNa-j<{rN6CiLGRP$awK zyU*34F2~J2d!J~WFt;h4@RPUmyg+Z%jEqn7RQM(-$y=G8t9-23EyAxFm$=<;c3Wqj z(yq(zJ-_=Lb1CFXcMs^PINzG29Ia($b^cG)E5*S3nqKdw+xIK&->>pQa?kW`<AA{2 z!s0ms7ks$n;x$;7=2b2+TE-wY(Nbzs{RWxzq~D6(Mk4X=jz48j;P`Xn<j0vArJ1vz za61>iH<~m1jo@a!X+IOQeY?xAPM@r7GS%~f)#9YIUp<eQ)!%yQGEZ&wlS*IpSa;ru z8S9ImoO`iA{Xx&KS5YtS&g-+iJ29?YA;_@i<)!w{i>q~xXYan{R(1HqzZb?<$+6D4 zi)$bH*yb-kf9G>~@cNB1e;yboxNt{mFJfKrvtp%kQd-JH5B|yQ6S_?%Thwc4Sfmtu zIIy}ws%pWpO$zf{S0<V=gazH1)fz0UlT~kXx+_?#(I9Nny|xubdAg^r315(J;6Agh zOGI$bhD9Zo4Q9V|oTS?|*PT7reQuebl;MlW1>zG87r6X*-61r!T0eHzshn3UR{wq# z{`!@bj69R)vw+5bzM<LKp`oX5oqzl0cyQW>%!#kVQx4CNJ9<TLqEu_l9*%47mA5>7 z#2DIzI+OVOq~B_psQU1|4?4-{xrFbw3SZYG7l+{VBTFwj39Iecs-2l~bZYC-;%C3V z^2er4b(}AsbKBbDearIr>2rVWx%+<F$C+OOWt@2y{Or^83zA#K_F>CH4WAQ}cD;XL ztfnrrQ?Ig3KAmel50~AY?5sUkwg<H~nfEa0np$tYp}tULVTIdjO>5qjnHydUZGW7S zwVOHcK%Pk9wnFa^>#i$-H)cHLI(*WZ<N568f-_FUXw2R0@Mwcv{ItVQLw5VOX>gxA z;JJ*q`)}oopSMrlt1T;9lbK%c{*Pn(>viwi&0XT_O|4#dUC1}vyTATR{Qvj6U#x0P z*xEmLQL6CXa|yk#10v79vh~mZoBHT;je6{dOC@_YKIfa4cB9iWVzSXH<%=Cj-O3*4 z^A^8ba4q=1%Te70k*}Xj{-{%t817V`@vzM0^tuHBO-HyiZ^gd2yVh|b*WXNz-s|Ca zyH?z7xfi08#h;jPb)L_GWluB%j+$Lox!=5JE$26>2ch<!wX*NeymkM-!6ZBAM#H)< z3=gzcuiV4iSNLn{g_GggCyRdW{I%@%{}!1$$KUd<F7(R3{#LDc&y=k0M}Kx(Xum#o zH6+dPrEC3rr&TL8o3zV5@37mxT>khgvzIIye-%!&&GG-la)Uc{Ze(c5s%wQ8>q6>w z3CN2tJvB4>TE$K``|JC%J|8TL&z9T!uxamttiS)tu1js#eLij8$Is{Q{d#c!{X4sD zOY=VOIWcoy?d~%BOTxFW2UbRxY*<=ZuwZHGhnl--`%l$X=U%=3IpiMuuH<A}$Gy+; z=hh3oyCbcA_CorvJO4JxD(fomo!Hb?_j6)N!`bZh=G(rRhWz9SJu~$muXFi#KHf*4 z=ezXOP5vu!b3*jW9YQ>9p=$!qA5;IE^+c|rP(b`}5Fdkd30IH&snxy~-SeFGdw$%0 zNhL|<mO`tHtEQTdOJ?xe9ft#BW<`Ea{QRop_*?GX=D(6}|37;_NZ6>^^)pZCkH3Ao z=bG|_p2tl*Js~%m&s44MM)vW5Cwym@WV~H_;+DSqz4P02M7oSmJH|`K{BJFOWcXyQ z{O#>RN%#L){J+BQww7hSyK=wAjf-!LoC~ejUEFwk!!B+ymD$r2jyZpxrt(%cxa0Td zhN5O;k=IG-x9z60nia$>JChPstSKyJn>dSc$?m!Omwc2yPEelo^fT|(V`X<=`5jq* zZd>yf%a0%LtH$i{EB4D@{X+Wfg8RznCb(%wby;excM`lOmFeE28r_z_le%H5xKOfp zoY<@jQjE#{;U4QhJaX&aF6)u6q1TgaEfd9O^O5E8|9ju#63_p6q8_|4oa33Wjens) zWg>Gzz(GBcdo`yyj$ZxXBI=!0)GN@j(4qK{!@L!of`8Nxm@bHPTiD!ctTgBJv$V@{ zH`z|y|L-zywZ)H%Tkl;tENOH7@{5~MpWd*hXU{Q?{*yD~8O!2JsS+nPUtZ2Nx9rGE zH8aOx*_S&%O}_Ac+Cr&|>n*Cb39a=B3oaD3iSC`3&UMuI!OabsSsaNUoSKXh70+L5 zHxRRuiL*a@B4g<>4ZoOIZ|9hGxNWTd9B3p^@#Tbv73YELi{tH`_VFjp-y32h{e4wh zp<{>ev5DPr&)W@}7Ry-}u1hjztmod_xOvASh55BJ&-423IQijIhou;|bH(<F*AGVP zR<7plI-Ss9EwaVTg#Frt#|JF`gxvb~lc#*D-Qp8WeJf+<JbXFx-t(yNTQQLnpQ*dt zIVKwt!@l{fgYlNOM`|<HPCP2uYjt9`MPsW+|CzvY$(6rade2<c*(Jl8xwV}?eAC6( zZx&2QKkm`j#3aBQxmB*HHRtAw(q)H5=W+*4GuvFk@a@=D(TAqlhaMhdGFtneZ@u*4 zho)TRJ63YW#T$DId&dbq{kb4X;B@itrcXWmSzkS4OlRs%35jd9`+93jhtlEB6&iOh z|34$5lKT7Varxzw9?v*X@-DhU=7B(pP{a9}V<~smu&yzmTPSoa$81?b?Xk$Ivu3)# zz9c=n`&K!7SH1NEb<d3ojwR~9qvG4-E*ZIc@morZKb&IR6QHc|uvPy5Yt55<y*+0( zxOmRe4DCqcd$nK3&6x9(tN5G~0^zrJatmGP;N)0({+ohcVVT!PwZ*45q&Xf)HsQ>A zuwlVzA?-Kmw>C;ncq0^;ocZ9j=dO42*FQh+u*ma^dc93#!j)A^Pae7}bZ@`OGm%~P z-)cMAY{JBEu+?l^^z@mu&Z4D}cAAUg&sg7xS<4c{@p4~V%my}|2!^=quGO2~SnM;o z?fF+XRcOu5i;*qm-GY4~M_3*@xXd~JGvn_mr`gwcT-vL7WAp8Y`lly76P8%R@xy1= z-E)iX$<_aURb>3k@%mToH^+@w-_6~jyO%$HTb|K6$3Xs<lV>jX-sZPOsW?q_uY76S z7Psm>ZHIM*ixc*yO=I4*S94vM<cFF~OWmq3Z0J1{VEa<^XpG9u?EX1RyIqgO>RQXc z&yimjKBNA}q(E8AD<A)yx4&8Ve%rqfR_p3}{%yZ&FPFV?)&A;Jdn`YR-m)rvb;j)1 z+6B*bZWP<-|K!eyyBQ+5)w(uqr*T>shq1C~Pnn6a^}V|J)|-<8Ef-`5&dWTcbN<w} zhsSuHJ&`G%T&%O_qRiyp1LE_ZzgMeQ_)~Ro=P5nad$Zp8`&rcPW8M7RnqS@4{7K5j z6P_l);faEoj*90*R=vGrem<B%C}PU`=!LuQIqg|09OS?Ei=}h;M0@}F#Rq#V#b0~4 z3!0=am;HW1b58!b4d!n}Dq}LLZp}&E{QOk9f#inQn-c4_EWbXI_LcR$-qgJQ=*_>E zz0b#5wZ<IW#~OJ~u6gEs>*>e7sqpqGNKFY4-C#d;k>g7qsVT43ex^DqM)Moq-eFuV zY2=j0(9i8z`}|MYot(U*HA@;}B=>vF674X#=~v$AF{{u;>cuL~Et(EnG|w}znA@sN zzq4fnm(G?=u`}HC&+bmkjh&ICo?a6A&hMh{G&l20l0PPvoDw~|Af}V=d+@3U3mSFy zD^0nkS#jqTQ}R0n+ve`cQx2OlIx)oZv9O-A>z;AJ^af*C5TE2SMqxk0Wi69bh4gH_ ze3T=01<!7;n7-tI;fzJ$t3_<i8S3k;TiMBNzILXWr%STiQSX<#uB+d=zCYs1z9#nb zm+BRbwIeofh!vFeob|7BYeuWL$}|@5jU5Y9jh5TTMYP3L{`r`xr)s%!=X}TF_P$j2 z%g^JClHX~UT<8}&*YG*z-;TWk>wm1xI67Z?(yp16jvae06zXf=v`^dVG4qZI$4bc% zCXxAfbaLi!dxt$pekkg_gk62ws)>6{Pd{3+bC-W;e0cc!Tk6^w5*b-i85$uvZzi5| zwX#;eb9Xyi^Y(kTrZ(Z%*Qu4heJ}Rauf}uJ>EzZcFCv00FDCEw==EdMJSzD2`i}7F zi$8hia_(GkWkP!2E7q8l=N-nrCpLff+EDyi$#_}#!=t+<n9rW#bd*bFVqAC$=e=CT z1+QIg<0{<q-}C*rd9-q`%paW>|7ZNQoo)WTB>&zW*_fS15^Gld`u?H0?6^&x!Sn8) zj+=fY=8Js$BQoc~O7HV?BUQfqyuE*};2(jxJ|?P<Z#=z_TT#d<+?A5DKd&u-Gfw$f z>1=Z)t*H%68?XBH=W>3to+jPcly>Qp(B(@>il-l$S*t1@UU}^uH^;FMi?#Qqteu~S z1>E1i@Yv7JV>_FKTNfRhdRADuuiD{wOVE}K9bPWE<2pjE3el{V+tQyrdt(!x*eP#* z`<&s@q$fLfJ^iE{RXNRR^~}>}T~C(AS1Dg*4So66^6&l)YbWt)oSBh#dV<Q|>(VZl z8l~MXEzO*`<+ig@X2;9|-ZkfB^tB@Ywd+h=a@N+rC0Nf(_}Q1@<??rz+;R!GtNHiS z_0j8>FPYi->b^|$;QlV(D(0UY^&?GRd!J5}LiFP}AzizjAMVzgE3p1em-j3Z3@Pc{ zvSP_O-F1Qc9=M#WnaAC5qGq9GOXCE=<ZWH88KOdI+GP>OOWaQ|NH1{{RE|&V5^vqX z`sLJe!<olpTN}Up`6?aU_m9bInux~quMY*wLucQA6BSmfoK==PrPPEytEMc}XY%_J zan;AnN9*>qaRzR^a(~(7ZAomot4k-i9FMjXyj)r{Q}|YSity{H^K(*o49(qx{ygVU z+@krcpy#Fgl~pEJvp*E2RVql#+Py@O%d2tU)#4Yg+w`XVdwNlS)1Han9*UPYzR!La z^LQ=auT86TW?%5W@AaqX@BKgh`z<#*Z+-mWP~XR&2YoGne(O8v`|Z!1z9ati-!|{9 zUVdHm?vkD#CsO7F_}T8sSaP7f=}?j6!GB(?JQJn~m?TY@S((g!;Fs1B_G@XY&)TKm zXV9PLS|2&*({#nl;?WNG59FVV_0fM}|9su5%d#s~W;Z9TiFdT!IVI!1h54<19kI8I z^BGj1_kMM3nZ7vUzog9T;-@<{n)RJK6z_E-f9C!Cn7gYob2Brq=FC<9($9Zf{aM?8 z)ABok#_E64@3kwht$gt#{J&tynI_|8zA6RbtZD7q`<5KN%p{j?sP*gd;p*uguHWSC zy)J&po!G|PP*Wgm@?>?hu<4PwMXo_RUn~vN_XtnXQ&&2o>ze2B)a}J1*CnDYTcw!g zTzs4q+X7}fr#G&4l<B<FbLHL%e_gj<b0hix@7(>%%zl&hRqxb;x1BeAd!|qn(>3GR z%zl~cKKny`O@q%b|Gc=4&3=}Ey;if*mL!`9&OaPXYWW%^%=O#EjF+()9*bx0iJW&v zHfzTDf7=#x^PaGp<NodXOTN%$k9;3pIOD{~z9wVW%UCPszpdW{o_$Z-`#pQs?AiGj z@97t>eU+c}D*ov--HYp8nSFg59n$AskG^hMs+B9K@zXpre%Z7~;@A6MEeKGIPHA42 z=Qx$2XMsjh(?!)cR~@zp&fOUvtYmdSbQ1HP$i<s?h{xo7Pjjr_alp)PR&a{I++-u` zsBGt{hlP{c9qg6#Wo9nFxWlLY{NA&_JU8BQj7U2k`=9Ai(xnC5D-3eNdlF7`ue~nt z(}eHNicJlNSq1ns8YWc#Nqz9kgwdm4Q>D6bW`+I*=7wu+KJ0T=OiyL@jaA94GxJSP zV|$pq`6&O~U-|1xes^iznf+(u@8Z9L?$4Cc16IZ?%B%PG-C22gjj?9iEAKBG=AT$_ z_%7G0=n$!;(~@TdDtb3dH&ic>n6qXdH?PDimQ5_vRl|9gbgReZI4^0HHu+F?d56vE z2Q0GJC%n7m$FyBjr~RK<$hkivp6^ov+|O$Wm`}WN(9Wf|@7u$ysUKVY?O*&VOn3jR zy!u<tbj?HTx2pT^ZT@6_|4vY;`ElN9(@WQVGFT;hzSqos_4_|I9}m6OK3p%VvG4u6 z<2&1)O_aY={~~0`EIZ*ZKdj3h{N?oF7U|xlAs^*iJ9}1X(8NV<3@aS31xyGHby~48 z$;>oiZU|E>>lv{-*2nUy*j_x;)B2{G$+SCcp2?{x^?|3(aJWwQTDbjaLdpM28b^bY z9IU!iJZH^yG<iJXyZvOp&9@{?x-$YB<XCL946=_p@|4DKyvSEPd3n0>Uu_-s&Ck@_ zR?iVAQ&n8Ue<srN(wt5gw)gLfn~P5tNi|K3y5O#0mG2iQT3KzUe(HMH0~YT^uWQWm zRzCTARYqGqT54hH%$L*NUEs-Dez}VE)7$%TA<>E-x5rG=(HEb(jYm+sX^u+@<KMNS z{Z_}GvKe2D4&HU|lbp}-r|~U)#-`?XZEFN|?`i*RTe{Ntb6VD3m5XnMmPOmT{OrEC z)=aX~tx4$x_u2Kce2+{$A-N`|p@UaRa6X$-*cAaIF0DJ<WsXi<f*n?;^O_c%NPKWj zdk5FU?h7T!uIJ6A&*auVZG7<VtM`)Ek|(B5TzkF3=3P?m`h9QjU(FNKpPgyGx4z@< zoQ>c2r|j08$1*2&k=5^y8xQ>b{HjoX+VP@S*4?L*B|okD^`!53(z)<k&m_#FPbIYH z_Wf^t(W2d7H}h8x*X}j(C#2K$0xxWH&Wf89<}R>SDMa{9$&!q#2F+oi9bt(sMt@cI z+nB^X;#?izvbKGe98YmaMtJ9nP|u8T>)B-tSrL}uPi$1Rm0D_=vMeo=xRy*@&oz1d zL++hZStmcAuF<4_W_H1aZ7%NXW=*Uu@ZXhi>55?2qV}i$imRS?|4a$s(^q~Pzs>WH zviR!HmX{~;KlP7&-6m0F|4TH~;qI<UpE{=g{G`CPZ(^+26tkW(WsOu1=SV?U%|}6- zUda7cyjt<cx%K7Ze!JhMJ7sstOR;ZupV<Fy`J%98y)L@FECDVlCl}dl+&wYk0`JA; zL9LfBUtnGkzUB9c_VU{Pk9jS>wLi5B+l$RVX!dxg)C93f=_xGgQ<kV2+nlv{o!NA( zqxwhJW&iIf?shgx2QMFR4iYfs*=i=Z(0}oB2@USArdoMNGLlX@xwr;oZAj*NG{^UG z>WORHZY<DgzwU5|t=ooI`UvZe2?tI}`KH}jC6x8lGm%%*ZK|34f)!c0x9>hZxGDCv zcGbR%0Y4KTxm=1dPyXz?Uulw5Z@$Gv7yGVb?3O#UJ=+ZPQgoWPCT*H-c<|}OD#_b< zcTQXEoVK}c#+k?^+aDa?Br-K4$!MzOjBjGA+?IH`33Q%NDcL^h*0sbc2E$`(-Db`+ zU{K%aH2oZpYMp_^f}5tPK50qCuYPvz?YIAzdHal^!FA!zW*@a@`zL9Mq>4?PIm!Q= zXzUjW2DPKx(>5)uFa2_Od*9{TDpHp+&Uza9`5acely0<c!N<1+4;$IS;~oBX=!k?r zZtKZ<adyQ)*R@hnZ^a8&m?#-Ay!?A;rqYE|N1ojM^zh?jd841=vu8Yf>0cfHYVJ1! z<|$LS^|>GIGG~9#_+Z!eoV<@k+wbT{y?Zui`yF1%6F<4_gIx2AweIe-t#`bCC3}+W z&7!|uKI;5RD+`=!o5jlQozrBcmN-8NXlcF3!K|KM$;Ip$f1a`N!lQF5e_jiz&tEK= z+;g_yX~Waa+wbk#mUTTo|4v2P^;P{b7ybHvXH7jFdNuG|sax!s!zIdh=T>NaymRtp zarwPUy^l|BY__(@JH9zN`TQMeuDjK8KlqyaPUN2OYF)V_=+*57><-gX!b5K>#fDBk zvFh&M`zs&XPr1oI^R(@CwbZhb_h~8fA9aZRoba^Qyj$VAeRz&xoWPT}(^*5WrQGT3 zp8B?<eu9nzr<?H$wubdjXC2d=YHQ!RL7ORY@pOsQ@T|}G?tFf<y;|<3K<>@rUDIz% zF4-Hr-2J}YrG0hDukUTh*-&3wa(Lmph(9yCU#H#*|JJ+b_u=5|_I;wOml?R-6fI-w zHT3uz@R6Y>aM{t9=Onpqq&AAIj*)oF<<pfKP{S>Dwsi-a;TEB`s3!+^-gzMXBK6{m z3B1voY2sB=vyVDF(?0boLvSybp<a)rh4ea;&Zvl(ZEIg;{6Cgoy^HVuZSy<t;_lzw zwmd8RdH=ijw)>W*T|Xw<e|OXKmG{)|RXw`6>fA!>oqZYqZtgj?&B5J2`N_j+?;Nfd z9G~WF7y57I!*_pcpU&RUXWCu6&m=_cOpx!6Gujr8tJ!*wdFY32JiBYbCO^G9$+q5a zHtKD&5Z%4TS#$412GLzUF4Z=A!IiEoRs|-;Mz{X`eg9vlu&qz?NmljF$$9lnU;Y06 zs%ct&`~2m5FFtBqmlvxnWc+^HVcG(RN32~rn*{V1+|`<$wLR+quUWz7{o(6kk1#m4 z1=+6OuOWVB=KPnHr(Ksk7h~9WN&3t*kxezLY*(*oP&l9IQ)qR#@pbLw7_Y|mO~wT$ zPnm_wzPn$PkWw7GrfT){ofA%+`M9-sZhuZ>>FayTclqzB{d3Xd`H6F~)pzej&)8pK z`SGz&^vwes7xpgS9-i-3bEEZHx#-C##Za%@1&=BX4kukzVTeuD+Hm3IK^K;dod&6X zPVH90mQq{N{T{Id&F4IN%&Ia?uCw>3QPb0-8wxfEKVTQO69`%ETD&8})O%IrT*mgU z9Isnb%8&B>Nl17;bJgB=Yp<Hl&exyr+HYDe7a^Xx<GV-t{hJT3eLq`&@A}5v;QADE z;}15u7PkdgSDuKMy!ESj<Fmd^rTy#P+ZX2NzW#V$bZ&Lcd-L*~e37@@)lwfr__yX} zo!qx!W!t*8k_8t_0*$*CwQ(1vFR0ft>A4g;(K*~@*UfFYzi;1J6~FqA>|xtY-=@o3 z70mUjne^lR`T2`uw>-KmC{v&BR`TC+(QfgZJFZ@F(|UKzdUeN>)lE%u3yw*hG+R|U zDZIHXJmN#0)*BTE#zf7S)0_R6HmwX;sKz>Z>$1Y_^Di^Y>!b;us+%f*;q8@aHtV!z z%1&72Io070V|_B8&B}S(6dvbIE;wvn9bU>7-M*@Q-|wsI-t)A4KK1G|v+UM+zuw;8 zzx(}@zrE|<%fGlAdaW|v*|&P?`km%N>tuFpE}f9KI`aC)Q|q|o<+ASIjy?93XZ!Th zt=H05zA2S`9ln+CduYg)KAx}dBkl|5t<@@KDKmbzY1)adGashix^YeJQNOuD)L#?T z#cVOt*S5OEE{te&4PEDTYK3%)$l(bNpIY6f1eO<lzLF?qo^tZ@hi5g@8dKPxG5YDp z=RA`wh||be@q%ZEY}=OpgF&4g=HgMshga$Lmwfwo_QTq_?DJx`KVHB3d)2nkt2yr; zq+EQwy~NH!;OEO{|4z)?Q2Axux8FA|{u7Q~6(#@w?8@iD`)#iauC{&AKP7j!!L>hA zH#IJ9wtg3Xx$xVMxEC{fp8eUB!*sOpXUJlU^x0KL?^;A>#rW2UZb@*TW;nSb*Y}!= zU(V^1E#HER_Q-8z^trp{<(VhO>r~g>E?iar;7Q-FU$W}#zx>~>sII?#;h66CJgHm9 zw#e@M6jA*<S>C4T%k<;7ZukHF^x|~*x;=kBP33p!?`x7f*%xfpalq4+|Hd%^HowdM zUN4HY7?zzlaAK7dvx(M$k2Co)#hMqJwKW~f>EU@fU2fUI2P}*+#~vH)?9?xh?7!5y z|DAon>C0ER&sg_MXxjwO6JOwNC3X1oCW}RvW=*m0f6g>@UrGPH8($w~oS)dMExoVs z)w>VpM89lW*?#Pv-LI(&8@Jgee)GD&?8UF<*xdF$n~S`1wVzwn`OLn(W$E{;snWJ? z{LyJ05s_GNqE&gKZ}Hn5{;iX89(wS_X8q_~(dxhGQq681kDAtVDi>5O3Z?1~MEg3K z&FOriclY#W?@ymD?!Nx3WBzp6wZCqCo44uQt)|WIUVU?Lk9YnO;9b6<dP(x>$8}Td zQlC!?y?eqb$EE1aPP+sDgidn&_{o^n*4-bxW1-d3rnXlSjIO7fR{T+nlXqTq_Urd~ zmjCJ=soXaCdW`?T-Tw`7vbJKp_k$HbzGRZhS1h%ExqhEW{{LHB@Bd5x_-)hSiR*1Y zteva;Zc+4%_xmR8n2@O}ZL_cN^h{aP?@7_On%|sy{eR})+Vk=U?<-60X{lJX{MAbR z^H+^eT+Y8$x8U&FU%grvEQ`c{KhwT%JL8AR$HYfZ#m`-2yyXzQ_=(PP;hdlU<M!?Q zY=7#y`^0~-PGv^@T8uwq+V0Nfdfc9t_0ef<fMe7##ipmqKhLOJ_s<jfR$t&U-@j9e zO?s>3%ug|IUK<-1L~0v-Q<&SjWBTPymiz8`oc;F2_}5-{>Fu^sx6A7Claq`LOLjc% z+qAIl*l#OK*DouteO~{k<Z{B@_z=nOxgBp)mi_Y2UH{td^KN%xbz$X+FEr=d??_GB z@>Bc$UPGfzYTrJ+tTnh^ry`#JzxwBof3rV-tkCT%acBMQnVJ33qF2|f_u|HVKW5Fb z<<tA~nem%Nl^b`^q~-tS)>L?3Z@oD0u=CWd(f(f!u8J`(O?>n9{hGJ(Ik*4S*Zg3z zv*~&B{QqzHcZU!EKi=ML_eU<p{NC^LZw|lz`S{0&%k?7i_qM%tXlMWVL3FON?SsSe zem;%-^_|QAX4=&-<b3@fXIJyU{#5&V*I(bS)kn$i`{w=iVe@r;%`cytPZXCr_0=jK zo2Y;0^6%C%+iAU1t7>LN_54d|<XPjYANJs@;n{j#=VGt9YYYTi)Q+p%Picu$5Yj8) zd9`u2&$Ftnj`OB&PfC5e>b8L?kG7y`)}lkVbT)Ng%$s%L#$OS)zSG8^SzXe#yVAZH zOxW~rhk)Jk@Fnl>MjLa!>f_LPdN5@5;?8~ieE)mC{flQ`Kkr@K-lq?@^*Nes*?8>V z!xMLZTd|)`-RZuI>HddpraxAd+uQGXE&gZO4d?T`rtj9Td1Z0c`qOOg*^==~@9#A` zaC2HUlkS|!ownZXbyfA(C;u<bdEZ^X(dt@E>F<em=lb()=Pyxni{razc+K{}``nk0 zm-oHhzh%3Yeg5|SFSbpdKQA*TR?M#=Mmt#|TIbli1&24~d3Eb3+Qpon(K0{fI`@*? z56X{bEt5?<`l>m#v^4c#)i<w5XJ^Uq@b<se%$xi39KRa}X){EJTsW}T=fa!{rDlg2 zn<P(c3s@s`Q_T3Ch?23RwpdX_2dB23%gqZFtB>8kBC#g(&d$!AN%<?eic_z~Zd|xn z>0YT$;_}0tN8}B@9r-7jJfH7^?u)wkZ#R~IKQCwPd^KkOA)DiF2GhKmZ#o`z2ngfh zQ*GMLVHISU(PnUAVpFD~`s}8w6RiBB7W8aO`*WbN;?IG`kH&L(dE?*4T)p6F|L2wU z`#ry2Ronk>UtGWQ{l&$L7q?7XesO_Gj$K#a>&b?zSRPsV&v+H#HKR(({Ce`PrE!%a zH?x!c7F4DOuMLUe-+XP^*<1T6&bxEm*SxcCqPasu`D3%*-p^a(Qu@xlUBQvO+S#U( zsrM|q?6$oIW(Qsdu^&BFwZ~B7#+M}@FRb}jwc~BTIwtc?iv`LR!sqCzybUPKw>Ey4 z%Wi9HTv)Ps3tzeUn-KGDEyw1th`-}K63sj5&A%_ji#T;>N_071X7-;fQQ_5aocq|k zG)*&uGhH@}mDh7i+xNy;JPO-(apLx}cQzj%bw`z+_rA+B`NZF6-uku0x2LMR&YJI( ztj&_+Tx7PS-6Oau&8XX>J#S^OY+Ic#x11xZx`vhWdxqJ%W!<yYYv$b4ediW?|Cm_L zL$_~JXBvC>y_wS96<8?Ub8F@CjIV4)S-l$Pk2>yq@Tq0y6tybHYHkHqm&V_ZtvXK| z&S24EHsAAj>IL<Q;VNGvkGu;FD-b%AT3FR_qwwYLTxqWBPu71b&A+te?&jhn_l*Q> z%f3xf3p;AMcGdTF3*GPia8)SZty`Xwe|w*7=<BFI_P4EW>|VBT*-_R{eKHKiVi)85 zTQ8j}__A_Af!k(_4wjXbx3}`1%h-MFjraRSY=!YW7hkI^3b)%jr^`V<jeY8yCwyns zOOw=+Rm+~T9+@iMAv(|NQ<!FG#UlQK<%P_Z;XL<GDzWr2MKlWa_w&!3SGL3ZkJSo= z2fR=2GztCN|Lq>zo|T_Z3Ge^@>ec06|F-Cy-llVUn}E}eLl%e3%=irZUhi1*y2@5> zVM~CM2ZtwzBG2PQ8@<B;Z9!7A%;YBrol1-3Kkc!}IcU}rm6<uS(>B}K+*G-Jvh1_} z?%d<KAD7JZQ&)BSx&Qf|_j`B!+T=UwoX!8rf1DDE$#;v-Rp0wO?|aQ3KW_mU=e0*= zBm2@8e^ut0DINF4X6N+vm1T1de0^Lup_KbI&l{KRHip+eG9B)^;<J5+`HeMpS9Ei> zweyMUrRpyhzR<CE;{l$;qE;0tu`QmTXR!X<kf55dc9sqQdi$Ek;<w~1KVMqexOQRO z|5+za$hLjGT`q62ahvj%bq5XZ$nAIJ*jD@S*opr6yT8;gt_#?>@t<>bXVTUD-!^Aj zX8$PYuwP%*YFx<2cWmE-8HSsxb>A3lyL>2Mw|lg{PmYY_``rtlANx45_s>O>_451k z?zhKVeNo)LzI4v@iRWLb&o^E8N9U?^M6rwgY3An5t!-i3?>-gT^0)SS{C#)3jK?S5 z)!LN55IFz;W9j3W-<MyS`Th9C^dBE$_qA5fowGZ!?3GZzV_o2#(hS{aRyosb*dLkK zXnd-DV!U=kzd-3{DI50lHS-QXuIyv}D9sXB;byDylh+_r(oL)Rck<8XU%aa}AN|XA zP+#K8+b!o@M2eo@i`l(-g6taZeM~>!950+#vcD;~m?x&KUN?T>jW4NRL{C`FIdF6D zk?;=+_m)bki#*%GGrwW|h8vkXxPNhRpI_k`-+1DWP^A9{(QSnmeH#vhpE$PKZrOT< zud2^jW}60|N*4GxUuJsa$$ugX1#8(dKj^ZpoU-ol)?Yl_elucEq|Zoyr~UOOJLlcW zF6lFJ-FwXz<eo2;|9AE;+ttpWf7uo(r+5508`Cqn{al^Ra>ep5T0eMP!qhw0q|86a zVVoPig6~(-nd%?gKS;{d2h4Z;@zY&GkhhNc9cScrfh6GvuTCZHe0O;N-unt=XJ4Ct z`2OMf)&B)+>zZHr818SZxz_S&bI~6*ch3Ed_OUN41ok@`eAGQuEw6k{;m!F@(+`aM z`fKi~%Vt0LF5YR%;g%RwGt*;X*X?r?mow~=X%V>Czh>D_L-}XN7i`+rvqxw1Dd%Y? z*7ZHESz2^r`pqjhvL;;1Jj=1<(Kg4*)tsB%Z)7F-XMb&TF`Ka>=bY*+rSje~llouV zuIVyYy*{GYt!Hw}>feR?b!&Gk-;m6Z4tpE*UwwWz@7kSJx4#}-_FnD&zQ+EL>G|n< zK3L71p8NT8(i3IR{LM%D=52DG##dn|6n80Wwsc?YUR~BR0dWq$pFdsF>gsHILo86g za8s#6_S_j)Sj~^A?fba>kMqH84&P@T>B##1;K%b>ZTT~z|9@MT@Wgs~{CciW7q7iF z*yvrr)qZ9FvzjA^OpCS`Y;exKQSTvAx~uKh&MKMuFx5+qfsN)7CdRS{X3b}iS>0fp z#vzdA!>6v-an^Z8ffCz3<%w%FeX_H*Fy7b|)F3oLB7~7AE-UKM;oZA_y^jgj?V2fg z_$~9{*S8*5@2-~LVQFW#v%F>wf5fUs3;WJb`YL(<!j)e;cMIRk`hLRW&9{WZpDq?Y zy!t+!@27B}{Jo!>{#+IOXZHMKxaZH+XCI!||NPwj-yfs;Cr4&0{V`2AVK)8XDOSmx z)H93)?wM@<US~|-%(aP}b8ztq8To(zzW<;5c4gkXu7a>Xb{CIuls7bgExb7O)A0{H zoW|>>DTSN1OqF`VHHnvXH}|Zo*$-ScGQNr4nd_BXmN<L*yl-tg4k&M*c=#xrpU(xp zSg(hbH$vu_$?j1SJy`KBFKYkPH+EZpKA3r2m|ZA$<JpT}UmyJtQ1j<?y8YGN+l&jG zO&`|f|G!a?Q~UgCG{5Z?fnB%b?QXr5;b^<e-+S-YVeWsQbW7AWJb2Fg%DnK}mOIfd z=eU2YotEyEJ4@uxs?Wu?75{%~d|qa}ex-lWV~gbrC!O;(DHOFV7UoqtH-oRDY3B8W z7fsJzq<&h%|9!Rpr@)ubcTBQhp2eGSd|_qhIrj&~`jh8pyT*KDJ7aS=!T8%^tD^-D z&z7(3{8QPsXG-PFUfTtq`A($UF19<n{-`8-_Kr!Dc|Hhfoz?vikr*-CWDNtG=#mhz zH~pG+LF%7<IuEk^6y^;0_kLCU!?m;4x~PT9aK~R15Q}8!JKorCrRDpmD(#+VmO#Y( z^MCwmyUYb<&e)+Ub0$dOCeIe5Oe0CZ)drV$=6^~*QG0zs>&*MICR@r&wn+0yee3Uk ze_f_`U8L~cnim2WzCQH(n)y!R(YNrzHJO}s&wYj4uLk|#I<8XlS0<)*Q{Cj0zc1Fb za@0g!a#h!gnDsLKlDGYtfC~>cPTy3W{;6$ByU2QDeeWCF{_JZi<j}pu!}9O&+gHkW zK1a!>FZ7>!=s_3vKGSI?4_BDz9hJQCA|X`o${A;_jDtxVzRmfN81h%(`>bnyf4)AN z93gR4^=!@L5H0H;7w65b4!7B~P)qP;Meg@wyw%@w9Nt_A@b+GzxK2{)-nQI|l-JiL zMg#}zaLH}`u+Zb1kJR^B)3lGrDtql#Tbb9^+ib17u9cIuSa|v+|H=0^cnj?J-1+>F z#ohkDD{kn#wcNVp`GcraoDN3kpUI}gr8)Bz>|#8nVeF7|EM}S<<N7B`e*^p$wbwWZ zl;x#8xOC*?<tOHbGE?U9TN`KZJZ{OG{<x_iYNMLHU8ei`8y-4y1l`(Sf7xLix+Y)$ z+#~K=&)M^G<Bcm!#NIdV+k0k-q7a|UTJ>!=u9unKy%3}M$k;4(*UtMB(|7Es;#>Av zg7L=v-d!uz`7Z>&KD4xl&rH^lwen|$oYjBM`YlI)7et?5wP5+ZTXJ^<rDac_ab>TL zTC?%3k&^ut;gmRW|4)KvCBCu$+96$#Uh(+BH0S)te*x`Nj&=TK=90Q|PSWbabq~Lr zQ>3G|=%i&$E=ucSiHUl;uX1m4<(kdLV$rd>JI)`TzdCuN-`1)BZk}xa_U5N-weL&i z-)4*Me#&>4@4sTF!o}quFMPMEc>DMJ{*!UqPo}4QDSdLuoImtJa{AV#J`G16v-Ml{ zuk*88_f=%6cIB_F+ml(Fe!q>*-y5Q_-DGk0)ub0ql1i0JbZ4zNxw&|MnTW^h|1tY& z!o;Qph4HP~$UN)M6gB_NAt@&^ijoQyr-t6jC{o!V(ebD_?8fD=-MWE0rscdBSHJl0 zh~M3F>ht~_ELnIdRz~`?m%r<IE+uQ-OFP-VSzU;nwlw&=+bJHV)0Z-@ITmy-4_U>s z#AvCYW^a#P?#az9H&-oJjrv(DH1U>+Vf-Y4>E4I_9DXSqliGD!|I@9P$KPox?asb# zz2f+3<+EJHyEFs0Wh;8ku>O5#;-T1IT~6;?&WL_gJh*D(<2g4Pp6q?;x~`|M?dgS8 z%PP0>{Y{Hw%$vP)5z7Wq`AG#?t!MhLsJCXVeZIKnS^vEM@6XS_x%l?s@A7}|b-$YY ze$VFg^9OH6da2hN&i9-9$hh>2F|Xx(&O;MlvJ^ymsU@9Inp<Nu|J>2qWiHQe-?uKB zG3n&{d8wbC+`rT_;ry2d@wMH)uQ$uJz2-G@>OWl<BX=k}Y?YTtxLX-xg!a>izPa|5 z^SDh;3C-TN$#VZq^~uVY6n~n<oa(aUiQz2Ww&j3y@r=b+Jc8$KJ}vlB=C-}rBR;*i zDR;{5EtGsCDRqJO<)42Eyk8aT)a*|DHfiTnty|aX{M_uEo1DL8Nm^`6Wwa;r#cx_y z%C_4~IDUK0mmA#+wxrdW>GQ4rRik)IYqEdyH<pS1rsf=hO-uC7xtN4zeifJ%aqpmF zr2eCK9?hFquhnd~(Xw8d<!8C-rp9(7{<%piCw)WztWrGrp7XG-dCRTYi}LCtwg-Ql z#c8~!bh&<jU}w(VNWl-TN(!gTkGg-jm#BQ{j|lq*o=d!krW7|jd{3XXT;x+pi>dF_ z3DX6xZLp3hu)gNFP5pUS;|0HhtkiqD4QVx1HnwZ$g)r!IO`kdchuzNWFSZ<h5|{iq z>`d|IjoNu;JNkptvXuf0jvsu!zkdD3-P_B1U&bB&apT|L<^49lyPg#U`}<#B*34dA z_s#g%9e)Qo8+G3mEeZYIx(VxSF6`Ew;vQU8Q{QLv@8c(ReQpz-otq47s#EssaNA8% z?lwOe%zS6wq)iPvZc9U+7`;u{w!qBa?rKfTQmskvWHLiPcPx9ndWq(mDV|3d>Qv7i z)LP`eGi*&jOEOo_d6~d{^ZB2wys$Y_DO&!`ZJ|w}XCjQ#H%Cvs(9LjDchBC+PG0fT zTR1DjHroa&{ES&WeK*_gJIDX!<Qx(1DN74i+Tbe_V}2!H;!^0ZX2z`Fa*5m4H~uzZ z-?@#;E8kV%#o7Yls=sHsZ@9?#pM4~y*)OebC$hck=YsjFJ;{n|($~!lX(|uex!?DR zoWi$Dhg)~dJ;8o;VTtOez{qv%5+Ns!rv5B=r4wnFz>rb<@<$K5S)%2cu-Rdeds21^ zvWT*YPVKlJ@u^8Ef4afa!<OC4Dpjv9Dcd;paP^b#N6+37^EFj3I$dCATbanPH&FZA zu`Le&0|GahN@NE!F7jjgP$DsnZ|CGL<vYc%rf2XRR=Fz0xTDuf`tSnr5I%R`q*dNi zyJO0nI^ERHi9YJ#oGDqft*WCg(^CKX;l_KH)tB~m#3WsrSlW2AU9_O(<ijBCCySP? zox<KNm&Q5i@ad`LWlvXL;;{}qUj90)ylmaIw_;4P=H(OO89zE&g#P?~I5+p<2?uwB z8-@o?roVaoqIpfj?43TdmD|m>D@n`<YLvZVXdU6eskgPHN^auxGW(zXb7vMC<fmS~ z$8I6|_Hfwo4smwDXMthm$(NH;EIB4SCTmWO<1>(!jo8EV@Z+zpnJIfkt7A<1BzttP zUl-WDeEZLk89W?qC-0lMnY#yX770D7#lV*%x2)?DyZoL%uU2o~ynbKR&#wu`1B89o z9hxtD&{v`~JNvb8-^agy5}x@yi%GL8p7h`5|4QcbZ!>f6e!kPleE+U!|9dO@eczTf zzP`@K^W?*GHL?BSkNll4CYoF-aqis6b&R*icum8??y9N6cc+G!mQ2a82(RSK3)}W- zR#;uCwr|FhqKlt)t~wK!tX+TM1hcX3;#L`%T^sVR-l|)esZsp((TCXfecN}lK4##` zk=|w(QTj~dbmV-a%Gx!0EISW=-I#X$_|k~^M(*c+MHF9mKQ%R4@l~?+COgX?=I{U9 z?0Xx}Q`WO4NAe{{o@7S$?w8B9ZEJKAm~-aN`MP7>kNxlNPCB~R|8M6OtDS#-c6@z5 z^+NTDUoAI&nFJk^F-qQGcj0w#GHYJQ(=FvnPY!+k_^Z26dF_Om<sS<C9!eSdsl8|L zi(4PPd*RZz(-P7mmS;XzH{I3t+C6+*u2xE`Ziv#R*8bR9&0TAGudNa;HvQcZSRG^A zS$?Igt8=Q^M<au4?(Ro#ncukibLRPyGQMAROZhI@7CdH;llawZc*|1hgruQcPKWQT zG~c}BBYn$CX3gBfcY0mP9=k((R!+HQH2F$Uj?vU|wmV;@tWdoqTrqdvtnCW&51Lms zoD$54IOeS9t^KL|lit5`^)JucR9v=L&snwjY1R3leu>`?g!I#%{dn?j;b!N<>1_$V z>Wl|wU3h$e=do_gEynCuR~Bswo0UGPbmNo-Q`1*iG8XNMJaug5UE`Bd8pkh9dTrek zpxypymJ#y~1-s=_So|bUolsrFcPWfvwb%*fFPR4>6t(0}Y&-4$>9?EQ&fVExrrrI0 z-L9bM@yzx2H^09gZ@;7XviLSxq2zsiYya+L-(z)N{=LMW{q`l>>OUOJ|FS-E_JPQi zN9y({f1C6>LwdGUuK6V~lNmyf-Pv?pIzj{367-i(_Uqkdvb<bTrt+N*N7QfS))3PL zv!mPk|KB~A``^@1?(Pj!!=FD6?%TcSvHSg-g%3|RH~l@39sgE7rqo2HHqYp9j`x=j z$$Q)Ng>0FBnhE@rvQ*z5H0zy@&bG-NqCQ)>R~iX!oV8{}bd=KqX^tao%1ckEL`E_n z^xT*HXlp(XpIt>^&f^!I`KkNNwT@Y-#o3kon96+De|~M3{81a3%57ObEY-WFB__Q% zIl0tDF6zK~ua8xh{fo8-yf9i5cYQh|M_b&|bc3`tQq0Tu9{&I2yywH6XNvxLq>2AG zHvIPGce?TZidmEA?`*aS)?fVVrGOCYeD>1`8lU#OnS5%K|DpSn4|UJvsMpyX+_QJW z&*Lx8a73pED!h(4eE0NH?ZUa8y`{&4<b2C^GG8iE*EMl^UV3K9+_;K)lPy+SxE{%D zJg{ijq(zRKjyae7-OKsKJ6Nnw$?4Ve;QnjV61)$%+3wUme81x9zP*!IA5)HhVLi#F zGAsG?=|9P`_wVoh&3?Rn#U!5fHbQ-IGpznP{WyDBvOHV=1?MT>p2tyZ6N@e%+xREe zbaGgtRJ`jNre!`ax~2+pa-BVCl<jrg*^Wi0bx(jxgP8`KD$|^&=i~OxkrYXudG^oa zBMf_{WG25pQr~RDU$o$djb)&>9a~+xqk?++!J>danu^YK$GE;`-6(FlGIOGp?&_o~ z4<20#lAb#AXX9KOwZ0SW8`oVHzI(eWe^zgg+^)(uXP&&PW-I3sU+4ClKQDLx)RT+& zzxzyG;#}yG+qhZ&CR>4+TkIVE7e5u&tEOcAsIF8j?y{eEa?fYeLj~gXipDji^8e4B zJo9-{UY^qY)os6$?(l0VFPuMl$!THZGcF2yS6_3kaTHtC-SL?{Dd*jf?l+&0cz&v^ zJCN^e^|es!gXd3Ki*0OOC10QLtVvt^HYkr@Y=s|ZRQu$#&zZWab_X7IZnsLfdmvXW zFDc-vz?z_)Ig^Xee|hoiTx@0RVr}8CvnMZp8C~+EZiS*vRa{l)e8tnhA`UNGJ6r0X zYBBTwyY&aB&(ytCC$cx={_ZC~FLvzm$SAR3Y!dpyzOhrFEO1q#_p2PugB__8H3M}8 zPgFlTT@i6i!7{Vs?>66kr`O+HeR=1<f753!m%kt#ll10Q^nS^@V&(cD&E8Hg_D;NR zH~*$<dfsH)-IL!$b}TFR{=wwtQhN05sSB)oB1;(GySs|txK#h5`un}ld!7G2IbU67 zTfXA|_T$Hn_sPpk+pGOh*OPnu+P<jp(SfDw`FLu+UTQSf-&>OQX=ZxHU$z&=f4hXG zJ*wY!x?<szhZ!*}8UMd4%uM5c(xdo=|LTsY?>uwbcn)b^Pjau&|M=zR#<HBpCv9zQ ztM`|F-Y);|<=)+$ZEV;5b8b}>Sj@51saS6QMVZg}*_;ZI^BdgqBpy|0u5SF%=Hq2) zEYj@b6>y9B=$g#Z*3N16%h&SpA7fmz=GgLkX1Nb!L`}P9#&D=DUHV;MmO;*n^Q@T@ zj{JBQa`@oG3$MC7zD_&$`Tqoq@84aY{M>xTUz#n7XP4({<)2R#;y-_W8D958MO4R@ z`LEKC-lsxV!WW%19Ja423}NoN=FMy76y{|n?Gk;Er}Pqw;@T+(J9=hroNN`Dclxtd zhqlO<Pm$q|UcBhMn_YhY)a&Q}9!9&D-`)FsopO@Shm{}CzpvY&XnaEc%p1`~%FT!O z?g(e=_+Q}kM)_Lq?3U6M$D>rloh`QPo49IQLbt(2PKL4$iT0}#!c3fQxo1}g=@f^u zE#9zM`t8f2d|AC_iKV?ir*6}{_bRvL{VoNo1vwkKKAsNI{h97<s-LXM^XBE>YcDQ* z_%LhZwdmiAS8tP*m#nTj`*&^q#oOO!9xVO6U|Yr2Z^zC0_uJMjTKl~1wbd={S#z|j z%}c(#lk4K!R--)Wg@?)7Pwuv-tIfWCxo3aN#^*<_;;%ZU+KaDuY-uaqyz<ePIoB3y zh6@L;a9bY2`}d8MX&HxuqvTPa)+?C}5^Kb+%FYzmTV1y2!=XFPt7M;S_MiAS&e!fX zYlN)Xgr#jaqI!Aj?>YDx#qHAY{;<12K1b#CTgJ&N4?R)~(|mHq(q<ax^17|rr>Di* zN7jB{d3(F<#@)^J!4f;G9$oqOcX^9%xW9bOw|`T$-`9&JiM<#87pG=2V@ILYMAgh5 z@2wkbZaUj+J^w_d^#h}Ve#xDJpXV7X9et#x&73@oTd6Rue!ZWR{+#y~mfRX$sh+*1 zUh54llrleUedcW%&z04orM5$}_g(<o0-l<v#pYfQc-Z8=iaBfbX(ic)e?D^HGvnRg z{8fuZtLhhjzmfAS<eB)93Ek3uc?$b~SQcFo`q^sXw|Djhxd-<iUt-)c&Gh4r66R;N z9=17x(}nX7IQ)I}{{Q88#XJ{Y#eKh=yn?^}Uh?nI&*$}@-<|!i&FZD%`|0r>kv#j^ zr-jK^<#!*M6t=kBWm(CGuYW$@|Klrk-#lu$j~jR8eV+KsPwuBks_hGyRTKQN&GKNW zB**({pR(4TONmqaf4p4sVXl8=sqZ`U850cRWIY7@E-1IVhI45D?z&TWgVkM><805Y zy<&4sbF4oc+OhZIO5-0oi|wn7KX-F(KEA-XYRzxs{Yp+x+x+<_$1_cT*rwLruHMel zH)rb1a~r>HvwwSr!{waak(}<rxJUDYPp5P`mvB1#esJdUXGZ>|3nsVk-(Wqh_4~)U zGp|<`F1LMi)zW!eZn)9<kJ(1W$@5g@<}SZixc`E}3%yph#~%+~Sh{+1c>S-klpQNG zEk2oDKAoJwpS@DPb-S-|9P<ah1f$JYM78|B{j|B6xl6mea#oGi`=a;f>d*Pai6w{M zDl08{leN33)L`@c<M-A$e)`FNfj$1zADOj+jLTeKH7uS!_tK?%6Q^)g^H#|{(yd{b zFpYVg<H0$cT*cw{h3B-l&fin;Bg^z-dB~S{UhmFKa4#ujw%i`BymPPA#Q=$mlZ(W6 z?>%(w*zs3Fo)^pf9-N$KIIC#g#?*kd%eAVe_BwFhzjf&MnyOEq?%1CUza?Xp%Ubg6 z{wD8BoZH_N7o1M(R2B8s5sllv&~L+$sk_Bav2(w>d&pej^pYi)oxZ%^Y*`Y;IX7&{ z<*t%2k;Rv%E1zHPFwd>~YTJ`rlT$5|raJYzy52r?O1RbOW!HJ9ql=sl2;DuOw9fEM zt!Dc>DW`JYOR>z~r+VcWd0Wj|z9x0*E{-p?>ZNCIoLgG0JiE>(OR?*K;JY0XMl)wm z6cJRp>m9vM!Tjfx1=l{L&YQ*1Hd)Kk>{NK#wv1_;DjJsTcA1*uFBrIIMzn=xd8AO+ ziIh*WYs5bauar46v1_u&(axa4rjQe+D;4Ky38znD^c2(FT%P8YeN9kO^GL$7$FE+W z_<m%UR;-H{)0A00AEngO)~?D~`H72X;}X`b-C^skB{yu+5lWrmCDvk8F?BJ2P~zjA zYee?xPPI7oJI_?RaL(`ZK73m1L%yuI(f;^MT+YnnaSjt4^5;b!$Vmv54g8|n=)T%< zicGS1j90o#z2iYWsZB|*bH%cZth?8|JuhEd@~-_-mDcxV-5EdSPj9*WPt$$kj{jSZ zoqg$Z<h<gXofD1C-`$y&q{GUkv+(G{ZyS2ERb?y{w4VhRO__aC`_yc`<rB*44TDc+ zWk26`^7qV_>(sPfzdQW-^}CXWXLV9ZYnCyDTAWti>F*bQu{S!kb=tv9<G-^lPussJ z5WV<tOIv$ccgoz{Q(<wDY)l4|yL%kAS{zs?rY@c1@=%zw^`q{(vt75lgLDj6hLjp; z3vLbBs@0vQzB+Dhb;PA-c02pN@+YnCeYR$;+0z?YVcKDb!Zte@7H@nycg6{OZev@W zdpy~zZ!~X{kXq2hI*m!<=24%SYmHBBZH{R3>-KZLl;i!`uV-FY$p*&l7nC$3Zz}s1 z7>ImQ>Yox2Dn94!EQM>btOwSIuW`0aTp}Z>nLaB^e}&+xP$PCh{%enP4cVt>i6_3( z<mHdu_O#BbuhL7mBJ<rLzU&vrorD($DHorf-KBqbZkN=%q`ou4m8o}&pXt0Vnct=6 zYkb+!zWlgNl*bf<eATI^r-vTV+xx^cBp}ph`p-W*ekMFPG-chHCx;d|X4*IHnS3~< zBh}b6lI`bH_x<0Kt}SfXvuw@MRj+PF-egOy++A#U?~nY%?JJGqm&%7<-0$&hL0Br| zv$#L^CLUI;5cb_1`MXN`@!H1f9J_l=8(&7P+A6v+Q~vTTH`UFGOKayEg|0kvB>HPo zi)@O(xv7nT(;D>yxRW>*rh6>+FyvIx&dF@vr!_GmVd2!P%G|m;UDqwq-ufZ`*|ck( zMZfe;t!&JG<oEo<%84gd3O>EUQM9U0b#0;9hO$-b_C%@AJ>?m1tP~%0Ut!*}5@xO} zuiFV{zpjxIm{z-M(y5JWD!tZxG5pU}U?{!j%D$gDv22az5+^^#_^MA1y>#ohmB!2~ zFBcz8E#v){p3!(|=dvWd%8gmO`0HkviYaaV{btXnLdAFc*68frIHfu2pO?}lFOf{u zsDD*UXC+4JZT$1@&9|(871Kneo=(pDZ8?Q6PkT{b1>2N;H98ea9^!(JZPc0fPK?<o zW+|^CyQ}?Yu47()AK%X6n$0<^>@K?>+=~xCv!aEom&+pCbZhH7DXT>*XC)*F_RUs4 zpO;m{Refwz&Fg-f-(KH35?JkuZ!gU)xqZHF+VSn%8{TsrDrfx^`?2t+-ue%kKi4_@ z;XP&E;5O}vb=<3{^_nYKWHif6(z=<Szv8O7-hHBcLU&R9?8D`<4|ntZT&I2Ldx%GP zYM)1i!@C<>+GpNQ^(qtym)-T}pif9jt8g%fdcte1%L4U%8m;?R<#9@d{GO7)+4^!B zLxrzrT<H_{L!DD*|JZl3>(ZrDhFiNQMsKTHUv2mDso0m=4=-!}H{HCSrF1e(Z>sX? zRF`R|1E!sJm^Sf7iL7W0@0~R96&Cya3h&Rq6!tu}xH#{3@S@8HbqpK4LY#wJm$gNR zvcF20seVBqQjGbe)mzO{<sDiRQ(b0#Y-M7Yb~I+;D)G=V^DviV_WE(1>iHph=k<1X z{Fe&6v(@Xq&cZ(@wa@uvXFcUk)75j)je5J(E4Ni>kyp}I?aiyCLRYMkUR$>Gujh@^ zTMybS?v;x2{+H^Uc{b)k%kwy=^7F|jp5A`(o?m3+Q>KZb=FbHF9FgAPd+J8j<1g<P z9XsPAI?**$^~55sR7Y9W{j9<%0&>@Xu5f?y#W_$RJ~GsI^^xE>`9n6wE11r;UAQ|X zd-JM<nDUEEv)j(iD0j^bE(rb5ccZQL>c+76MII-674O^%mF@ho@NS-S$=|QqYj(O? z9BL1@@Y~D#_+Z`)`_|7tcUXvJ&$wuR=30)*+rp@A4;%X~E?FD7Zi&Iuu%HWCe6yyD zT#ZQVK66r3rg2(>Skc)Q*<OJ#)6`!-b{oe(tgqN={`t*6^ZKQkFStFY%Fg7mKe>PB zzav(DM@t1%`-GxwkKEFGy6@1^*bQ1wIeI6p>GkJ6qqgAEwV8q(Q7tF@Os0K#5U{I= z`{U);vu0m@Dz|6V)mO@y{+4^bIBYE5X&UNz?ewd8o@P!r{NK;<)MZ|p*YZxm=O5<; z_HAKmLMwM=UAsL!hRal{WK~>UW8i^j2RAgBy<n2b*EGNJ(IaneVA^Y)FsZ$t`PP~~ zI;&ju&?#=OV18Xf#SfMG`?`O`+pc{reLU}(nz4H%?^O0cjej#j1E*#SPCl{n7}GH+ zr5?91AJ@-2T!a)fjv0ysU-dj1GU2jr`-JJ2nUgQQiii|dafr>E(-`h2y1i{`xal;l z^@moraZicZ%P-9T`}yk4Reuc^T198E{`_+$DlB_z&u!P$YnOaZn8~wI{pzD5Q?^<J zh)H}4eDPk2duPj!=F-y%!EL$ztKL367GQht!YReYvTOK-*{xI8Fc;|CF6w!5HbFON z>Cxxrcc<yyezgAl%j3FnM@vluE-cl)5M`WnTzluNMOV{`ehP|6)o#f$-e+nc|5A8D zw1(ftEY>f}H8a*Ub4_KEayIG>*qy$xvA5rCb#vv9r7vqky$q);sYrShKQm1%ZFYN_ zSeCZmW{CsqiaMWlM{G8XaxfOjztZt(S^91Uw>-ABHy`zCE|yCCYPV>WhTqf5khJM7 z-2q90^QK=A%81Qij$~gEz2=GCSuOF{EpklS;+eLpJrbpXTMBe_*ZS<Vh+6Y-tMAO* zEvG!W?`p`%exDJ3X~m?bxvfik^9?_)KdoPQ#Ns)-`~@d>r|f0!>o%@w+?BHP)F!QI zTH>3JPGd~nsLJxc=1B0T)Yp31;;VLtRN1$h&Imkt{iOD>KM4`DLe?MJ+;l1H>8YLn z4`j4T)n)6XCOtK%+9`9)En{n7RHMU+){O@@CTtSgyrT4EL-NyYPK#1c&)2?cBJq1+ z%|sz)`DLF(KJ>^RvfA&}Au)Tih+6F@&iA=&L9WX<#cXah-um=x%UP!7JI}iFm2r#J zL_A1H&v~(wDTeV>n!~}V%gyAj3tePL_3+D_`RU9T9o64+%YWS5UHa#=(8oVH&)OYo zp2^Ekc(vnLL~eQg%TwX6m9*j=jlXP3wOY?4_UTHO){WKG3f8)nKCe!mt}I#e_eRMR z`}uSDx}K*unOyam&#yQs$5(pkLBshvbGjEC42=>y^Go~b#^#&Vs-D8a|GP{KcTaK_ zHrBYAnzTbf%k6TxfVC<|>CvMro2uSA*rYb5^`&X%8R>U=o||RT6rHZ#7VrQ1+3JWA zSN=fZZtXyaYR(A_GI3lR(^IyEJx{*iVI=P!`zOcqT|&WxpHkb|e%=4cv*pQ@j(A(W zD<`Txe0G;Vdy!G!$6(S6&*+CjK93DDwc`ZVxOLny@qc|~&PA4)%V%cB9htsDRkT~- zs(Jr34gKw2ljKkCJeFqa#-={0Vn>J7=bx1(Y*$>F#Ai*vpt)G?md~3oHq$ln5w=s* z4k*gLH`-bo`9pbu`Q^jE7;PGIH7|Q>p1EJwy+HiS%?LH&Jsw7XZzfN=tG_g4zDls~ zgbOboAA2@&<rTi@hJTwB4k|>h?&q^j_i~Jxx`p#yD8s79X$!1&vgxVsUjF3RniDTi z7S%73uoJ#KJ)JY(F|Xe9UY0<k)yvFzMNwHDW<O5E_k6x36<NHjxyXJ=d%w^0%ljub zOZN1(X9VARwAxeTRq(}<)*|B^tw0s!{8!@K3P)$~-&~sMX8r!5UHGKr^qjz3ZQAO& zkEcv-zsK9nD{OF-Px-*jfKLX?TJD^f=Oy%o&6-(Hw<+$t`@-v+1@;Ok>bt$aJtID3 zQn!Fi&%N)a+ZFdRzPmW-OPchPxg4G=JX-X3M6XJ<J#=Nqmc&)L&wa$&FF#%EStxIE zQCc^QJ?+GaNcPK<=6u_7GbC=({W~Q|7pHb<6m?iKop67e@O=BT-5T8--(5T-S&}`| z=X55o+Gw<5vfu2K(#;}XbML#k7cAd+%H+{viN}`(D{nXM$a-;K=d48KTD9Bn=A6ta zt!V1qGIer#dRpPe6=HXKlDSiOKBr9O-?ebjbB53RS0!pq)6uTid8%o{nI*Pd%dbc% zBqB3+@)C8?ZJH0}POA`0-9DxI@E!Nqe~A;P|2-@>-DmqN70c^QMXoNAz4Lx$e9-Ne zU8=~s>*2Yq&u5q9hF0V{p36Bglef(9hF`R3qPmAze{-IQf9StQtdS=wmKvq4NpKf` z(-*ERAbq6E{rI1YVf)VnY}l%<@^E8r$GZ5<m$Y7gUj1UdrP#xbvE7?vP9>k-KI8bp zkautHte?8>w&<RS3w3ghF9LY4pZJ^kQg6=(rq~MaB?^8F4x7(OUY)x2pn#c2#oNri zecSwN_Vn$^$yimAe$W01%kr+07n+ZQd)}uSB>O(HmSx&ss`)kA*}HLnKtoRVv1ggv zmm4|E3EiHS7L|KsdaL0@rAd+JZpF=0G2%4QTe?}W)8mlFq<*!onEZ0P#t-XczHeU= zbEM&r{IX3uJyJG{{F(j8YGRC#_tj1l#R;Mg4B2`cbQX8$DEzxG(4c&*@ACJcxEpO- zVm~W;DXAxz^~>y=BW<L;OzOP0f!j{qnPJyv@0#<w&57;w)YQqnLB}l9*PCdvGEEj! z+BY-BMT|q?{qk21%6H~DI4d{3cFzfRS^lO{i7`-Bxijc@TH?bE47+6P=DXWTv*pDK zX5XrgHmiwqaS4w#I^nM0R98@+AT5-2;?{&;{)gI5EPPa%<Keeq$BVd=$GSQ1KW=$% z_3q!K-zoy$S7%KXd@uCoy0Nn%Z`-12w>mZV>P58QJLY~z?up5a@|(I&zAt$Tjdwmw z|5-EbL#6EZwUcVLZLmrF9I|6w>z(pxvoj-WoE}wcB{25Cwt5yODtzcl(E7=LCTo<2 zgg3gZQ_d5g)%~I9j-0psvZDneUr#?1z7(yh=ev}3yVid(*J}00XTqgpR~X-k++{3t z?w`@KDKAr&^Dup$<`Q>$2aAjP*1r5n%9S_8ip0(yp274w`g_6rlb4P=aUDIWb6#0^ z;<V0>+n)!#(S4D6zH^`PqhFi<B~IIw<Is52woS6P?w!LlH~l1zFvkTaS96$5RoLa_ z_+`pQ9+OK)y4a_t_*-tZ(r{gJzv##fS4Qn%S+y;Wl`)yciJdCPgxX7D=gy7Y<!rQR z#-zjUQS9u|k7xf*-uUlqNto@$$>ouJRpxVJ=9wH-T>0S2S%!{+nbvwo-vwvY78gey z5E6Dgdf@h{L>>|DN6TH*f3lbL+`S$7=3dVYle1@M*j+ST?t9}~zSiRJF*&Tcxt+V2 zo|w;_#+$ovo`bi-M~;G$KNb%&r|mh#v&yDi%5T#Dck^dI)K5*)Iv>8@>*MNr?>Rpw zyIg0Sy>pr$!(qD+!PU_l97D93-dOruKVA^r!*P*g;`h+auTGwpkLmYdRp=Lfa{9m{ z`_mVtE*wgq+o195i_VJeUlI?s?^lU;i?|=%;r;r<=AIi{gWVj(gHo-Iq+DF_(%1c# z(}lgSrsWxJF1egy|NZ!r)8ZYqUkdE<*w0E&YiU}4rdg`lVAJ`go7$|eB#vx3wb1I& zN-u|xSy9RCA1<ay%8I9IrpG#}a)mf5drPeSy7{N!Jbo(;c`dd1?+x~ZuWV{<+}CCF zVzuDz-OEkHltbz(H~#W=KC@f&enEAn$2kshk*RVIW-%VP+}ONAF`&;lI;1kg`qcj2 zOFMqF-rOM~G~M}O_&?SaQ~!5aB`L?xI$^oS$))~^U}aHq->M1K^G^u;UHEXOI{&tb zyD#30+#y&SaPZpX-&_~(n;dJ_jp^5EO)78_YY}GB;V$Bc()qc<DYEYK#nydFI~R*? zE-LtbDt|)5(bp@z7K_f9=XEmtLa?T#k@w}*H}{sz`0!QOS0H~;{gI_>r>s{p_~w^0 zu{?qytjX-{%o>ZV=r0$APqbLtA7Q@~y)jk0yL|qAM@J8<H63dw@y?SE-MeYxM30Ob zjmwAUJ4)w246B#9DSqmY;>(W0bEnw3_fJk-)RVI7XMD14i1dQ1OV4CUSuHov@Z@U= zIOfJaE%U{S(!IK=Wr{wFyAPT?O8BZ!In8Y~k8;lsrNZ*#ZvyK=d)3c4vCrIj<G?J@ zvWh<s<XC&GCpNa%bWZrnKIhz4ll<<*ERl+7f;;?-(`E>Uo?^2-p2|^ovhA;<e3{=% z`Gw~v7wg)XXg_yeXEQgpdl`TILN8$}g~NBlm^6=RD<5_6i}qKUT((0a!`1VO#7njL z&2pc=pV{+l(TR@TDgT#DO*|RWl$w-bbVO$37Dl;?KDB?jS|nd^HgQ$-_lucEbT-*& zO8M~JDtftb>6Iu2vGXPVO8ni&CRR6}YF@T7=+4Yf30X${;&-O7tdV??Y|6Y*hkr`~ zgJb!o0~Tc`TV|~h%J811vx4KqVpXoI43#c>{zaI@Z|q#Nc-H0OxvB!i0_QYWW}ag| ztNB>+%fc}I%LgZ2+x&-r-M5Q5U+;VrHw-;HPc=^QyivhxFPqhCIIQ>;+%r;4!r3@D z<(B^OVcFc${?DIb%aZeZnpR8;*|wHP_=Kt}|L1w!C)Io%H=T@a60<$6SE=&PRL@F^ zJ2_8tvD-PlqnXcC!~Hul?w!BL=agGGH^KH_)~4(Bp;O*v?rnYSE6AW?-f1*1Ch+Cb zo-h-po293|ZmFN}^Q}ku_w@GbCH)GnhvwQYUTpiM+-&`h&WlCCg_2Q8nzl0@CAs)y zhGb0C<SnUdySM1dteUK8sdMWl_+PsnUTC*~^?ZqK<i-Cdo}I|zG>sB;U%qN1ze1`| z`jgG~bmxA(wEv>;BA%#;0;yXsE#1QOY@V0FMvrYzSf5;a)?AUPS9`|(#L`J`Gu4du zw#ZG@H!iBlyke9Twes)Mz<2tlc?FAH{!h)z{uFcPjLmb^LpM7kG|V^6Qnsy}bx$Ld zS6Q!%Q=eg{=+PqG!doquHGEr4%zm!lx^$|I>64&jo}0hVM()!ro>>3$Rqy7@(k;t; zZm;|z{Qry6ef5_dhfi@apHgr>-Q>8QvCu6`A#FkAjZc2>noA@9tnuKh3!AE|>9G6v zlv@u)4$4R~uw@iRL|INhA+#f^Ut4eLXNH`oPuIHYZ=722|5czu?o@H-Tc4gO=K6BG zE$807pZD9A6=mvPk8%&%s>&B<t8ZP}dLViWmxt$U{;>FEYd1;c*11LB$~ky0XYO0i zgD;X|?LFpgH>sRtKhyt_)y@ygCU~vna9{K}^2~#`=O4M49uqKIw5xK}rOPW8Kem`# zw5e~>{GJ0kL6(~8sZTWGpSU-gPMdLfjm(0{{+w>yWe!(vXdH>u;>bQUJF{##NBPm< z;>taIQ_oBlk6fr!S^R2qz?p3dSHirDIK1X{Z8F~Cx3eu_<*JV3u~TEu1@x_|>{w-~ zU2~w+E8KOlBU@*+LzH*e)Cacr7oSYFnp2!1Y83T~NBMQF;N}UlH`iQJSu&+8WzEAL z(IjE5O>0<-B8r=QJzi>kn(^uU{w0>z6#AE+Pd}a6m9aJ^$~jj$c70af6aK@;-51zp zAMVm=e`K)e-_q$v`|?g*@{bl5Ge`_R;!_df&3l-8j?h)T?NdJLsz}YfV3U;nvM|&` z!*Xwki1mb<*Azl{l&Ti=A3I^_>QL^uvz%>~<|+xjxQ?#@3=DBob8kHgs-CbW<UqKP z`vpeBr9U^Y)UzC1cHNtatLxk8aPw40)~Q><wKKw%<gbZ3+wmAaIh@(OOHClfJ?8Br zLxG2LG<usWc%s?88Wlh7KP<C;QrUs(e>{u#-s-40?_r(0ebtww{gJwhWpAz3nt3NX z*FP%eUD5nm^W;2T>euP%)~(b^*r&SVL|zU5v>4V<j=cJ=)(I60)4jF7Kku0?an{~J zYS9(V=H`vT-g}LM&n*@BlB#|>Xif|7AHS;-vrhgNnil9|mA0YM&?&E1tlvr^+wp96 z=hU>lFCH4LSBTRnyi~JlOM=qQ=Vz~8T(hpr$L+pjEUV_*gdi@dmv4eXZl!q3WV<A7 z%E@vtGktI<yrOVPrme8g=7sb2c)GCrCY)U}zgTl)POw<1K@SrryEnIsWLsc|qIzlc z0_h+g1C^5v^3#$UTQ5~KxiYV}nkms@d-KPFCB~0czw1qT#d?N2H}R0pwl4j;_fDVI znzXG92rhcgb+zA4YyIMsVkrj3wFh3Ah$&m1@vv)GX_uODcjbPu-OlQk)0W*on`Uz^ zyG}s<t?*|1Bb8I%^p`XKRzB+de5?JLnSY<zEN3Xp{Ctk_k+R2+?Sea|pVB^*#_Ykp zIb^3n*G+~?QYSYv>d5W?HS0>&zFKAd^NuHTHFnw+&sy{Tz%>tHmwich?zUE|$jpvY z`r5f!h~r4mStCxFt3N;NQa9w>uqtp-hkxW1xq4rPJu1^LhMX1Jw5OE&Rg#~>PLuQX zi#Uv@-;2%{U-@!r_1g){X1>f|`8DP9mMI!5x2&q{k~$lBrTEK&oRsf6{uWIa10th? zd$WqPi>vl@9-TL*W@GOUv(<8ccI7D4SAD707qfI)SP^h7F_FhBMfLWg2j$U<`zQ7v zdOt;dk4n(=$8t-QuAece%ogOi|9`J?yLeJWY5S!6w<Y%L23($eK3~Ud@0_fP<Q%Ir zCN-&oj6O$sw;l<O@cP?)O(wHMa)!kr!!>U@pa1k)DIs`l%H`m`?;oC;6<tfZo`36Y zR247RLY<wlElc7ia2JSA3HScDz{a!ezU$4SJN@3RpZO-L^MaL1tY_G<$j2Y9eA>lf z5wymq>xX!(#t~7MqN&;)^^8+@7rshcyCG>RJIB_G8@m389Q}Flk=8WjT)(xAn>Ow^ zdoCq<ZQqu%1zn|Ev_f^BmYmf-kX?S}Ufcqw^2;{!vNz7UyEBZ{Z>Pt3p`S55&Ud1& zom>{7rIf~hLe$GNN99w5o8RQro4PkAg&w-H$<1Jg#!7)XI-1UF-zrzW`8>~r^<MQ$ zVfFL9;W9Q_d6(P8kH$VqJ9nCOhr#xC@7<0}rByjwufNXp2y9VoU&+NEx1Dj%3Aeae zvkYfNC>}cF-LQtS=Ah>Gd;MF3pPV&XEUB9>dxf*`Dd(E9=edjaZ!+^y{Czo9%{XtD z-@H4yflBkj__NLVubE}Y`tirFSDjR_y(vJ->}_T)yQ9tL=jC;E<=lJrJfGPq8_)OY z<vv+<xqG+DuOCrne82GC^Ri}^JlWkJ^{da_XLtH>XokUt?3Vid?e&VmH;?b1b?2k} z!gXDbuk=s&y=(Gk@1GHG%5>WkPiWen%k#{7tZCZOcx~;DJw>zEh3tPg^_BUF@Xd1C zAsLS>kEVWaX3}q(w=Q=NuSwm9h1b7v??18T>HG6Fo%>6!);&1u&Q|~X$V!(-SA?7X zepp?9(Nnw4df$)xeCqz(=jTm*eem4M+6ehwldm>kz1S5H5*8&WrLctUMN#Dm?|#$F zW|dV3+n>6a-S3Ivo3$z=ct^EvLb=L`S4wJ3)1#OwIOX^*G6hAYhvnOLX-spATd(w( z*{^r&7VDnnHlgLb+e@d<P&P=&i+vgW>c#i(?&fcF-q$9^KMY_LeOxJ28ONs)!y03* zJLz@Wv9Bddt#;*DmY!YC@tmRcGv`J<civ~|@q%^{9&DByS+v@%l-l?D@b$Xzoi2JJ zpme5v%?{`16P-JzR=ed~p1SqbE``rCKYeA;xn;_^IOE6i6$V{L8@)J{%{7jsIM$?H z=q!6@FZzO|P;OcDOHGMhU;Sh`*Y+U)2OqMPj5241r-n_=U#q0`Ib`XsJkOGwr@{h6 z{hNI!g$R~<u2Y#Nx2rrV_rhWMt;^5&USH+Xn)m(BuaFn@`b)x&&MEXfp0W33)VoNv z>t#w8-u?9U&3Cw{w&04%LJd>jh~T*)JAwoKm%rI5_<UOEEV0Rz{6{R-ZN52w&6;5S z{P%2Udz{L&p1y2ZvqyNzy}R@DzdrSOl^A_0C9Y+j-Z^zmt#7Vwy<WNpYZO(=&QHzx zQ(6>SE~{0VwR47PHRn>R!)F!zY$pHM^NPnyzF)|E$ELi_s>INJYD>?SM?SlL!)AV} zVrgjH%#H2~q>~vFIL(U<at<uiOJx7MWe&r!m##BTvwb_y)uH%m*0IzroC>+0LKg4{ z^!4xA%JXdRj=#OEpW_NdmT&UUOnq$>dhwy9|J<nhWTh7?w{K;A-_zU2YjW4vcH6cS zPo~SK*VQ|J=$mopz?JRm13%wfy#9@T$KFd7AyamnN-KL@cPtHR2~)r7DzJRL8~?ul zTW;mAoEVilO|(1osK~>u$FjScpO_t-(!=%S(Tu5m+<!veHJrRx88<aKf4;7)=^y9T z2NCMm_b9r&c|FU#ucGzXgMu>tNb4DQC$C+gHRs-AeZ#%WyGqr4X6_M<uw1%zDX&}n zBdN9@3Fmg7P?&Ev>${%O+4lFUN3=7)3sje6^SynV6~nQ_R^f77-<EKrTiHvG32B>b z^_!jJ$8~YtR$(y>r%KD@h07$kx5?zpK2+)QJ3`^(u|>_D2Kseh^XB+1IW%X3iSx>d zzZV%<+r3TYU9<6}RHj?Wxmzutud)5$7FsNHMo;+5g%Bs<&Xdu-w>u*OE|?vOUi~fU z`{PB|we>?|QeK8wzI>#l{ljsGLcC95or>fY&)U@r&9@>}1<g5`ZawArHt}>*#al~` zn5Ae<uny)seC^gz!&%L2AtzFmW;f{`d*tygKtMD9RpFYAtTHP%>XeJvbL}V&y5M|B zR^<Q9GnUz}bHW~Y9lSM7`<mDliSA^99Il(X>a#B;Y)N(vK6P^1woN<aoOfP66vHpL zds9-~wS@|=UhS&+CaEVB8~xz_Hl6Q$yH;4<(LT$Yx;rK@Ph))_%Q|@;US_-8vQx{G z?dRI*lY6*s!F*VX*h>;9E;>BdJ`teksp%#jdp{}XvoWTWWOWgT0e_zJ$hblEVe z#lgxmXVsnP>peU*LW_?aSfE!n=Z1{L&7<c;g#YtoTW&VWXzg)m<XNY!*32^5@zx1_ z{{T&i6(X}{g>OkaD)67>sDpEOx2P+BcT8-z$p*Hclcyc;n#xtVrKadp!t$$&o*wL5 zfAo~|-sZ3Nd@0v9SypE&%;Wns;oa`+ClR|;=Hx9cV3@Uc?wpvnk(RONpP2YQ*;2&Y zb}o12rZA<AW!5*{*PXhRaHSxYsc(zhT3zeO`n%@*NljfO%fvQy?Gdq}Nq2ItYi+OD zbMh$HhuM}7CU=V_r@1rAsGiy~_2ibxzn3{3w@PhHYv!7ivAgTV-7BlybazS~@0{>> z;}xx<*HMRAY+PCHcs{k(o#widFYE1PHUYz~a?yz^wy%>px_eTG`A)4s7eo85jP-#V z#6{j6U39d{`=VUxu5x{$o!biQ!#0$k)HM@rms(%8RAXUjy{ct%c-q!2&Y2GbE&LCr zvE9|VaK=AHUz_jcQLnexgZAEDWWGf+n%R89%fw&Pwbiv0BA@=VJ@K-9QvT+QtG~Rq z`OSDS`J2G0m!AcGGFz(V_bpx#X5#FcS1%*_x-HFa=gJfRe9WSPW1l=-e)6<`v|*=( z(~~mpANE%-ESfaeJ}Y^WSJ}<Ur-e`Y-wt}~D{y18{mw;i+y0%uqa!b)**C|)rN_Tf zV)m{)nT3mdrhZpj=Q(5HHUFv^D_=eIuXy$H)=@wA)>%JQcAl<xexrKNV)d&d+ip#n zuHzr8v-D)#+8et<F1_K}>tia^y>g>;!JaP8UuSksneHs}E@iInTJxQf29s1&HT7Dr z`AtgFo;p|e=D!11nEm%i);&G3eOj*%&)Yv?HRUDFOE#C^SH9N$&zJeTjl!H8A8y=@ zUCzHx%4XC0-|rqi`*-7D!PQ;g&IO*ocYU!eJAa(4`mXlRaW{P?NOP(0ixQvlgR8bE zi}#MysWa1Z<XOJ_^b(J?V*BR$Ov2-FLMxxekCUH2-f52viF?QR>rW=Pvv9BP>m_AQ zGZ%FI<n&s#)>HlUdhclye>e8~-8^Jw&E3YhQC4ATqhoT~?8(ngs!saspX>EIz35y@ zXEVQ5*W8`D70-?ph+W<5Gf!@&V6jh<-$9`=Hnp>7KNqKl7o>)p@jD6Y_xxMz+gv&4 z$%n$pk2t36%s6HLsG(i%Sab94nI8|hHEW(I)7v2wthe>1jOWWW904iYF4g%5Ob?NK zdve0b&>1matKE%O7%iM#^k}K>%*8#&j9xf9OLeA{ypoaX<zBH~Gd*D=m%xXQFYh<Z zp8My?^N9D-=k(R8S(mN+GHqT$Okhsa#{RF*7`is!GfVv}VEsnZ^o&H1UnO&Izf<1I z7a_@oUp}cjNc)7(+qBa*&gyoL%uLmc=CZwi5>HE%YJ1JeVn5t=>e6%eCoh7&go-X+ zZ{=Qg*`-XhghkrfPeaS8Y~pF<uME4_PgN0nn2}mFU-gSyqP+NWaUt=zGvdCXmD2^p zEnWUS%A2<6@&UIkGYgE~E?cQs?sG8Ah~cf~)-4~@)eaWibn2X>BkKF%iQx~2P9ML* zw(_T2XRVO9fB>N?^y%DG&BoP3t+5$mD6X<VpFd-rDMbm`P7dR$W}7o_}qUd3N$j zH?bA#*S7eXMrW3JGu(T&K11<YZed*dXT}22*EW5>(^jZ#&(mRvPsqM(XR=o}llkhA zlkQ6+l-bn#dySoZ3pdF#J&<|&kJG6(w$SRb=mhJ9tW#fhF`O$aI-Fx8sb$jtC179Z zC-xi1R%v-w`>j&x?=JDHThg*K=!x5meVL1V?#s<^zrW1+%ab0DgKwF(CeP-S$T@Sa zaP^r@(#cbOL*52W6u8p8<05l}1LM?_Q*7p?FY#Pdz4YV4qd(WBZFX^g!nw%k|Czks z3+Mezj&jRqjXkhs{iXRHXOd+%s#y0=<zB<Ldr9e%z0LDi=&oNeC1>aQEvEwgjq0Bp zPv6ustFd0w=<lumU!sp@C0J!-c8e*Coi&-vV=ioMDx2bUZBG8}IhNaUHE(UJQa@J` z@oLFpChdhjYs@^(IPT@0s=M>byj9$~r>->?UYNG6{J7P$<5t$m8?V|ee8%)=r<K@i zoqY-R3;%CuzJ9O%|LixW>ZhNCMyl-=Q=ObW&1KWNNHMofVlIYDH?lf^-eJqN&idz$ zYnwSVedf*my*0To>4*Jv{rOXuPS9q5;gHuTX{-9=f`Iq2$158+&lRui6MquWTD0Qy z)Wbzn4hyMYGu2U-Vif<hOKXLTLbTD&mX3vYx}EE$-wqa?+Sz&~Zug1i3AyddRWE+{ z{cLJ?RnHp%PleN)n|>boq8uq5e<f|@`j%|Nt2{GqhHPIE>vU)L(HHFo<==KHci&N4 z|KtVx#^RZBb4=Nae(--j!Ei@`(`M#O>!T-3Pkv%m-EGi+{_yl?9r=^;TwHhVu$tDZ ze(@`}&@Sfy_LyHTYc*#SMXXO@(pdK)ap9UHEFq6rPKG}8<lU(qay?<kiP*!>#KiXN zJqf9MY8<*=<Fi)Y@%GQFcU5fCD`C4MlsBQdP*3iKN3Vuv`?tuVukA`)ou8I|5EJRh zdUes;`?glX4qfYtpm|zm(YEtD4}F?()#<g7XtK(c&0DJ<1V;!@=E&>My%8?icgxIv zlk&vVXU@5oe+zHTJ0Et$<@YV6u(PXdpDQeLx#pc4)?cu-;Xu6VdNC*d>{B-~rOw#< z?tQ}baH&L&-hG~?=0mD|6?vMQ#S5n><R+dE-#X`zdgfFO^X*^rHqZ8}T*a3^@w)rL z)*F|eci;N`cYfEq8!yjv<kZfvcX%;h<;(TMXPSd#Omq%7E-v9+%XRH)@R?I79BKRG zg|%<~&J--;(pz<O=Ar0pz4+}lHv29-<y<s5HnjcnnRT@jHw892o#Q&hd{lCBGHaIc zM*gia#y+pL&xwbb1pOA6a;)mp$sLozJFc4l5LmFC<F@vR`KK?2O!yij6}sWf(rHc) zR>`bVxNK&8ZZp@d;BRd;{(FuviEq?!y|!ygrl#UdCTr!j|2Mn%txm8j=d|2<Ea>Z# zTl?2kY6ac*^0TeBx$5&zPG#0bHScWEHpUwoZ3#XrHBT$>2rRxI*s)$#%DBnQx-!c6 ziE`>qQ)azsH(51JHBM~RbxZr)%E#rpeTIZnXYc0K5@oEG?lWtn*)}isdKJAYZi?du zQTKoua~3~bq{YV7are+Ht=1N?#m=nHa|Btnsvd|vx32!hv|q6=_`O;g^Pc73ca|_@ z|IK<-__E?DXTFWDMUmx4AK!IrEcXBU{r^k&9PK2JYdXg2tMvuu)y=;WZ}I<6{=L1D z_rla|pZxvAt=awXyXWK9&#U?OZg1TaKkZ7y@-0$(m5r7*uYW%O|Fir_KlWX;N;Qf) z@jLCuEVcj3AZv@ym{lvS^j>n(Tr_`%aLjba#pY3`R&TYMTsiZP{QcCH?Y2*^n(n+G zu}$Y@=)vU`lBt%V(bEr<%$B~c@NUH;TbDm;Plc~)=sN2i%6ed4Ynt2HxbAaO+hi*e z@7#NFMY3kvMftrme;#eQnS4Rg_S)Z>@wR@;Gg5avynOh{^aH6o7M^_g@T6kn?*~Hj zU&>_X|Gs>#$KiSQ-~XH9r@VPMC8p<1CEKZO6F%H5FkJfQaOJ1?AfJB|>&-v$$IgD| z&73K=k?r{Ah|}E>tUL*;Z&=l^FV5n$TNJ_hVM_Gll@lx`=P0FL(R#Ycp)`B3xbXA~ z0b85)#7vA`v+cjXewc3mf<-6YqP=nzjvwWc5Qt+-bjVon=nC8N{%Obb_f)9rJ?V}* zlcao0%p`Yp_tACsHS=}87_LbzE9eyo7QS4RW_AA3J)e)EXAAa*-Ig)hqn)~Ha{uQU zUp}#vhQIq{^0VaL(|dFO&zZTWW}eg??cCi~R%KgbcUsN3dA`5<;pv~}c|>iB1Nl{! zslRVb%StJdUy+smnM?Hi7X~%`+O(a2eDtfIO@1=7j5Bq`hm|FVpW6O>|736IkAh8; zL*CrH?<n$^Ezi2vN?~f-Bh7Y;X5l6&)u3f})QlNesy2#U=e0fc!%bKFk-76*IsOkv zImNgFCWmiT`?PMMRST<59OsKI4UIxx)6WMO{yp{h?M<fKNhvjgKi^E<$s#5wd`_p= zV{XyRJ84H8T*TIj$n@#%WG<f7{aCU8-71|8VRBpbwVz+D{ZY5fy_6@rsW#^N@x`BK zz0f`{rvLm>`PTTE)0Y*w#5~D*(Ub7SH~hlvDW+z*$>uAiST}A-Ir#o?nSe%Q!;jYa zm%12hBbRArvzn!e2Y;B89Vqwn;GE8qN^9$o3l{1x4{vViXUmg+ytwbgO&({x<)>sz zUDmEX8{pReE5FwH-L~cLETvbxp8VNh2cs0jgPH1Xccv9J98TKgpMB+B(VI=*Zce(| znW8!+srboa@09@;XZy%)pYC<&?bDZG<@ZWmAFwexPrV^!oBn8;5s%;6iFaI+GzGP| z&KR=n^2xM(qN3__!j(DHTDOM5>yhSyw+j-^v9#`7{hsq&55u*$8$L`H=Zjxk7kDWC zjNS3DFP7gVn%1BDEh8o$X7f7Bo}0<LKiQ${(q}y-rmXUVpCx{29-1e0?}XAECcf<x zX3Xb0IxjHj)4VMUQ-gj@F)m~~X~(waR!x-z&uW!6|30~$PX3G3#oxcXf4JuH_lf_C zB+p+K^1iv{#_vU!&MgUj8hItf%Hx(7pZ~#YcX;NuJb3)lwqws(HTTz=HjBJpX?B0m zi{3MHo8y_f>ccBxn^^XLJGa+*zuGZ1X7k#@%WchvAA0}!_p;Yk<MLeje@-%@)txTQ zF->P3)*CLE7`!rl(yfS7ISxy7PB<59PL)5!CmV5{@2^B!!FhqIy`~MO`3bj*tnOr} zRV~-x2tRXNo$Z_X-HU(Af0xg*zHq(%!=H0=pQ~N_d+Nhe>+Q8iHE*ol`mSB>Er<QQ z7w`YS`afgFjvrSW|E>S`y{*~3Uq)$PQPYK;trs{g7noj{FU9oo>XG2UvpoC!LZugE z&GHL<?e^i%)O|Bos%n=SY(3Dp;-I%o#Fks<Hq2YdQu|cs&;%>K)aTnYgEhKJ>%%nm zJPEoepmsE9?p3qjmVW86n{4Jyur`iXW#KfBDoJAK+<H0Vu3T;{vuTxyyzf8RpSusg zT=sU2i%aK&SF@E49y{S{eZ5b%^GlCg^s#C)m$>&98)}0eUHEu!|4qZH7t@wqe=pI& z(^}2Hr6v5{<I?qaC3;QQKK;A)@ZQ{eeYU!5xAVI2zw6=uTK4PqyUw>&KaT#NQ&4l= z{?@IlHZ|q-@2mEkZ`^Nv<Me*XJsTCj%=}j1y?)EJRpCeM9*LSAs5|!0P5)e&%Du8} z8!t8+R=OmA37EfvD{767NY+(re`Dnvf37;6<}&z^mY9Bg-Tr;4mmhy$7gziK@oY2O zeXEm~?OJLs6SsZSs;sBG3U+K?8uh_H#_H1j`Y(@;99jC9nfbWBZ_eLSZ5}CyFW%lJ zE18!eVRtCeR-MP3e?skIWif@dXZ@-@K6k7>)4d_~%f=<&dZ!#ScGgqpVB_7I%;3D{ z;-k4t*(XkzGA?L!H-D4w|1aoj;T<W?x&qIuj`JLIy0erouGjjoW<$)CtRs#sS{qcZ zZd~%ccgi`_$=_Z*IJ}qd(?in@ifhWQ$?^qTm&EymuXwTX#ff(;Z?pFGma|5Mt&R#i zp!QPY*So!k<8NKr^lTpc_2cid{++#3T|LkGLiM)q@1CwY-rk<1{QFl`f9=zV^($&$ zKA5)u=dFs{FJCLS9FvIL|F-3rhEH6d$JASHR`v5Fo^r|N?ousUq28Ur+P-ua$B`)A z-jfGkajl)Ix^L$ciG@pVxJ7rZKfZZh+7a1pQ+Ch#6X|I9>1j~XrVYA5ovvlev$yE& z<TBf~`00md3uUh|KaTeE=ix88e|y(%`@OkOw4=lCZY;dL@O8PpP0@o#KQ`X@%AD;a zD|mk8!`IeTQAzH*eoOr-zh|&VeaT1PocFi)+8Ocu^72!>TDj>R+d0m<S@W*$&3d%b zNY^QL`omw-6?wL4PrI^zqKVn^k_qQ>{9X%uofVU;oN2pmrkn^<QJs}-_oZnUg}FqU z`ER`VGCP2wYV||Do9F+V-z$D|qu(h1Gh^U|AI?+vJZmX<@v3q2Ozl0--gtlPTo&QZ z^Tqh%!=6`iPU*S|->!PRPEyd*jTC>R67gUP&!b&GY)rVHT;8<LZWEhn2`|q!ll&&O z+e>cGGqNu7-Vu1OuR(i3=&b9%j=a@ncQb#p?|1*LU(xT@2&x&y_9etisA+zAQ&;ih z!{^`fJ!@{;*zDP<R<QR${X_Mz=))Ioe0Z_Y_iR1Or@PKyUh16N6U`NxvgL7nw`Sps zo5n_)9UjK!94WgMF?)Y=;?5fdRWmmm9dOgWU>SSi0{_`Je$ic<FTRoWdA&*0@AaYH zgE|@CHY|AaPST<v?eMw$SaY!*d$*=0$A|RDzpnl8v+p+ldilzl_q(>g-OYYI@21I} z5_bFVC;I!peL1>crlYNmFW<9dzLjxFg7fEBAE%$@&$(}4vPH4atR-ea$dkAOGk1n= zQoHyom|Mfo%l#W?u;d~?3n!+pEHbe?iYp_Yu8UmCyDn_&x=_h&|6cCOx~pHha9?#> zh;^Jr)%nxw|9?(yulr}euipAd**2k@c77?+PAqGGN93rlabwYyF>`X<^y+Pc(2N+y z>QMi<*U2kIe~2woyOCpja_NV)UhKIqA{Q=S>=AZz8Ph{GV^_OFi_G+{3aWk2_RC+L zlXZ4pknYaoQ@pjFp8qyaU-;9x<!cXqn|;XEe0$zJ35&mr^k;o&|1I43&07AZ!KVwc ztM%VXOYT~{u>A9@AHQCRo4e0;yI$V^q3y?oTVm7IcI9Whjs5#j__uPcY+?JcosWJ! zoO-u>ZND4ayBk-`FI~TVK`Of-tpAh$S3XuLx5amx*X+wzo_N);NYC+|<DrMelP~Yl znzkxjnPX*?wz_PSU(Te~CcEb5W#R(=ZohMow#hAAy;{Rf^Nga`Ey2=z6Fsg?PCh;T zz$4am4?ZLv{p}K0>25A~{MfhLcJ?;^H?ifHk32d1y=Hf6d_i{fpU<y5oaEwee_w9C z{ZGc@gq-v%`>Jcdr#+l|u-W{0xc{FAr~Ci>xN&RWwEbL1oDR2dQweKlKkjDE6MMZZ z;rLk>@%EqBe^@5kUz`-hcQwG6d4J^$-qRCL&p35TGU3+rm>)K0><{iQd&bjl|2sL+ z@5b!EkzaZKg#BA%_C38-{fE5$H;Lbor84!`f<J8Tk{77&u~(?6aQ(2l<W;iF$0wcF zr(Q|utO+esYn>L;w)NT+j-A2svP_Cuh4ZHQo!5K+#7QEDBSZEho7l|D9}dcYYAn7x z^Z(wm+yB4ao^IiqeZzHL@%=mTXU}{nzjv)TC-(hD>5RK~`9AIQn3wOqWrM6t<(n<c zngKD_nGHYuS-olTM%e(~i##)~C%j3V5Gb1Rev4h+4Bo?K&U5`G{fs|ZZCGs;ndmKf zs-ukMjb^T>Z=sj$F}<vLQjgB^YAe-nzmv=@V2{7Qxq8RS{0F~vrH}oRlc}FrpZMq8 z#jpN%c=zm>-4<5<rl9-a=4|uwt3EQ4_ix|a*X(Y6MN^{n{wjZ=dh3IY*YnMTowLuG zx&OZ5dL+)z`$Nw*ljX-*a$a_}Ye(Bk1>8CJE;e3X&Pw2(giOY*x{Uv^x%DEqD$d`0 z$X;HuQt$1L*?VKNlW#M9UEXh3p(V91chTQ_o_FdM(&Z;^?pyPji|-f1mlmyP9n~36 zFUnUbx$hNC4_x^&s`$w}Ro?5HHolH&zS6Sy@qE3%pXB3ye);;iy}xHY<HS8bA8)^J z`Q^dM;Pwul6Q5g-pZvT)o8gPVyk*Xk4@y#ubGZ`u&q{Xl82@?UlX6W|!PiOc|9gQ~ zM)fDl)8;+rKfv6-r|wDZGy6lI<y6jJE{>I{4v1>!WwYAB;C0?aq%y6Hqd4*%bFOvE zuQTx<uBXpC+P=41<@1Cs`?QQB?=$#()_$%yFaOx>DMbsjm$tTvRTTZ4v+lqL?^~ga z{H2v&Li}UJGL*xddo?sPY-8Wnt$DKW@gp%)-r}W2GHL1G-|gR5`Pd~VxL`r?^@+{G z3r+hb*SKH4o-bEh62AS_SJ}zm%h&SW7hPdr`sSeen{6)-&%8Tv-M8Ors+OymcI3Ub zn6u5}Nk#zUNj9t5TJ_(QVqG&jPR`AKIeX%DeQW>1<C1lUXBy88Rycpgv+nVo_>aOf z4Zp?Q^Pb0D#@!?OY~IQA1NmG3SX!S8Fm}3r$NyWT`cFye@Ph|cqf=J-)EG4TOU-(m zz}IfG@>Ko&_3C%7eT~n$miPL$h2k8!tgbb?U3YwZ^|Ehn^F~Hbw%jMhy>n(?NLr*k zXM!WgO2eQ>H8JPeL!+D~xAogjpZWB<jj?fC&)diRDSq*P_y0K@e?CR!u8oVG|5@GR zdl`&E&-q>QxTDp6B4hKRV!@3I&+dF>t90?Zz)u_dovNEZ-OIG^{q?g@hr1{0)24&d zZl2U(yFFz=sfDJ`B9q>ufmKqc`#!4+&kBvN|F&es<&LEP*MIH1r_S|6_0x}?!OMUA zcbS%7|8@DV>eY1&fqUdb*1vwg{#4KDswavjRy(fBNY`;SoA3Sfpg)s&>BXt$`L44< z6wZbfh)4!+NS<}QH_POhaPZ9U<`e8EE;`UUFaP`J+nm1kwadP*|7{fSxSPGYRQcxW zhM$*PqYi!3$_ujk*BH7&@eDurudtN-!`&_4Ugq2{t4Vos@b>LndG!S;PkwCsc4b~} z^!ImncjflKTKl%X`2MS_-+k|Ge7yh7+gG=&E1zF9PVbYm{;8Wbz131l-T30xxIPVO zlVu0*1Pilm^4ak6&dtZ?n^|TbTxFtuHcUp7Eqbj?j;WP%)X{@%2bCIJ7CxJm|MvIf z+0jvU|JC=lAD?%7i(u*2P1)7;|6}(aJk$N>zOCJXSGu=<?8uTizuqmcqd8JI%s8xT z)#epy5-Q6}6%~v#R<nGWv}M<!DGssTkrxxUR%vwQ*)E8))XMr4u%6+wcJyU;8IGkM zw^w+)&#*2v*syuC)w4C<?p!H(v3p|j$}4}j=ilC4K09dJ^SVgs{43qbY`1Tu-G9@{ zetur<hZ`p+f4a%Oi=%RN^v*3)Bi>{hPu+BrE6A*Q%IR4P9Rq|)cINEUbm(p7luFM& z@WFd>Bio4{t_>>vy6%6Z);1?z+H#3C<K@rCyxMs?Uv7Oq-|oW!%euqQ<r-91MC{#~ z|GBRI+3G(D&vgDTUc6U!L;b9d+-kSluI{4fohdB2(q>t+Uw)OZ>aQ(&U%0pbTZl%X zSH^b317^b8EpAVj4g8jRUHjK2S#C29@9Y1U=^y!4{_Wm}mEUR?nikfVe3<u|y>EM; zi`mxl68^34WF>ofY%lCj46@jzE%v_S==AB^Bc^Zpb~MWDi^-b2n{qLigmSy8AMwt1 z7mk0?U&6eeaT9x-t9*&6dMU4v@X3!G%;vcHFF)+Wyl{O8^TN2Y+`>I;3)G6;bmc6I zu4?~jnkRa@Q})Bd$c-{<8`NHZ6F7YO)q#W%?HelXA%`<Hbp+ZfzI{6x&Bksvzv|QM z<?}=4K1(<HrELA~kI{d9$@9_Y?azOd-{=2hrs{d4!vEceZ^llz@jWp~zA4n8=#o?L z5B)bYY?*de8J^TNR`(S@BC`JPUdxsH3idr-y}90Vf3m{;ixb{Y`FXOuNBrFW4?Ay$ z8^oWF?i62F=CUm0M`+9X=hpN7A6L^nz5cp{%tVu)=3QI%YE2Xo&ipj@O?AxliH}*g zy5(ya&k9*&lz85r^}Y7}RuQ|jH=8so?N(TCKQH;EW1iG?=K9$?eWn>1Unu{utg+er zQ|8MxWn6U|r=Czbp#NOudB@2ko-FSdHSupc)#iS$c@hhA;+<J0F&<Z4>gKQ6Q}FL+ z`Mtl{zsh!+zT7#%DD0nI=FWn;ud(}orf%DCu%VUrgXm5B|9^7d&(#gOS5WtL;`eul zzh|!r{x{3(Q=Mqt+P3uq@n<ya6z+x3s$u{4NPYX+q@x01N)8&;E0&b<|67$>`TryL z|H*r@rd6(vXev^4xnQ~V+zX?OHF3AMJuZ)`HM{sgXZOb|FRyQxmSMa2z#wm@%d{o? zzkk?uPucv#<(dDsy1&#e3XAKgSM;k(-E~4Lvh&`*8EYm^e_XT2=;87rmYa9a9f~%d zKL2(C-wu<o{i#pxyt!k%J+j&FVqE%NADbQWAJWf-ujg#P9y0&@m-JnA5;4+z>v{i8 zc++`*;`uth+zs;&mz8<!`t_nA`~=%_m)J!SS~os?Ve>zsYb8Bb`qIq%^8)362i7Fd z`Sa`IRqvVaKbbGcJ9;vGx$6D-Kf<GoePaUK<=3C7+G8Z#F53Rtv0Z)R71vMUe3td1 z&;8TCaXZfxocCi+bn8du==JaHoz5RmyqdSq_3@FNuLSwrZ_Y|9ShLGh>LiP!S1)(A z{R#O?B6+S}XO>mi-Vx1y^(LpQ)U$q7-Nh?=ms#GsdGfs3+Q`cy?_W9DwIAL7L->{A zBjw{eO!#%%WO5Bd_Jpx<%2YD8*?nBQxB6r8J;Aco>|%c{ckM}V-umNQpX`_7BOG;p zcmK>^{3G$|>mP>|j-PpdWO_xjTBq^6*A_=B(w{bOTpWC5LD7c|CTk0GpOrTmZ+`zJ zJHK1s_LoL}?Q7j%m7wDz58pDWiwpQ!`Jg82#qrDsk68l$SvVx0*>l=K{ObCEoTLB6 zRWkB7FfdfyN=`^gNJw~Mx%t3KO}%;dpJ_MSurqVS?AT$=?Dqfj@71Sop4`{kII*$0 zk<-J7fuY`wcNYU(-~CV1r#3czzG1(AKfk55WP{R)232W>*_YTLYPL?V&j@`kd3^tO z+xM2c6b|w(jM}|1hsWAUW8n$a9)U?6*K~P}r+H5h&?^#;F}RU6eb>6X96~DG$&(YK zCg$apmT@Zu9TMPly>@AxQQHdF7(q?d`iR1iHMv`2-`Sn7K7V%I_MNlNemyk({qNUv zKHKe|Fa5kU<j<WYhx9)eapr|gzPQ`!iTsu11^SjNul-Qmy2HKn#NGw>8}4PeMBj`) zA9e3<lx4+{xtFxARUPO~kj-Gb?^WsDrS1@Jaeni+KBGnPE7Chn9<+DQ|7mXel7E!| zcb&|d3n_C9(%;<Ld7t-QX1dL5b4O{76%UpN+ntS@zpHltwPS0o-k6J}PiB0#DRT8* z?Q_3;Upe*(-`Oen?%8ku%EJFnX}$F>&2{~1i^6xlmizjv%J$*0DPQ@OZ*Ne$<MsE5 zZN#6w`AK(HbUrcl{gLjdIA{Kc^DD2{p89Nk_07HO+yDCYx|?s+`WJHcqHFEdV;3!U zRXfVA^Q-sUe?Rb=?c?VM%|3LzJb#X5uV{(&zSe!`Gh)BAPkQI`eb4Hn@815CD%pSU z?j@@W$8ItH4}MoH6?xJ8^W8Q7FWwE9_PkuB_SV!rEc3#&cfIGXif1@^@loz(*A33B zG1VWHa|${B9S|^otiDoq)xo_zzt4zG<=FN^`n~meTi^HG3O5%VOz8e)-6$(laciwk z9OL^Rjy0Qd+OuZ#OD1=F&CqRH+v^+mJIz$N`bQlvpIw#LUbXrU;+OmHew54kmtz+? z`R$#8k1;h2zxhrte(Zgsl5cLk<%xUi*k{zUeK&gFSkLMok;C$T%Z~%@%zOGCtWFlw zf3~@?ShdgUVb$8AxlzgAjAg@$H@PPt?0d0c*5uP#D*DRehUs<lKehd|EX>##FuC)h zfVw98{sU&+somM#x}TRO95>mgd(7_m3&VF;`A&P@saH60F}}+G=DmaSKd!8_6tAAY z>F%ZHtDbV3?QGNawp@DpeX!l6PczlK*Y8d}Qao4cPNA-P7=LqYg3jf2)6S@w3he&c zcE;$F<9aD0@hzIg3oC9uTXXxL;069~pWjCA(B3>dW~1l*lKoeUGT$Yy+`+q#<(}5r z=XNP?-9Oy^ppe0|`m*ue9`}PRKhlrx+$Pd`>2tCC&&5vyPJ5P~2wommE>wBG;qwWT zbFw=3H%$N8a_9NhqrQrdH=jydw)3`G(VU-}h7ylB?oRnxTqyLYu~_r`@9*_BzZkDa z%<+D1zhPIx&Yjcz&);78Wcm5~Cx0BW{j=pw`Bj_u?JLh0nsv^<{BhRLr~i+3pRwLL z<By@=KZ!Qy-qoV-yB{>V7MA|`qTi?exJI$>pQ7%}NvGa?yLdf@x!?21-j?U-b$t9A z)Aw>G*owyn@JX||RK6;bYG(VjFg8KQ_22`(3+sJe&e;3fJO9!5Bf78KFUHHgS#Zqk z<&!&tzs*Xwn;NgkyK#Z7>Hx!uM!o47{4cs>&KH?odAX(U{%grcXMeS%Uz)d2PKUYL zG1%(d(%<{H)G0}YI{)eX^pVZ9QKimx?}<C}-z*llSoT$OJ8RD+_n70$*I$l~x&ECw ze|i7zrF|7X?w#JR-(H(N=ilp@v32(6^PlcBUTFVv#hdp|`(4)?pJzXLc>M~)qrsY| zKC>~Whq<VKxajw#GSq9^YuD!dFtc@+FRhsP)o(7t-K+1_ucw_9jI>|6=Ii#SHc4BJ z{<Up-r)IY2<WHgX%r~cSi)KG9RD7~TpX*A~?t`zaB(~4W{W|NTn*o!{+F8ZAQNk&A zd+qkM)yi@0tv0q?aU}Xn^8P7b-)DAw<bQu@`S;K-FLn3DMj!q??e*@&{ju4>_udI# zv%cuP+f2>cbb@3!U&)l8`@cT^U3)I;e9d3R#DAjij92XWslN4<OzG?NrB-I<bFb;I z?zUc)wZQ*;$?~mw=YPy){ZMxFhuMxD4Cj~R+@BTOko$jARCoT(a-$oU58M*1*4rA~ zfAeZWrR6Ne`}r#A>s`J-{*rI}K;pCDv+0-qyYD~jCe7r3Z1&A+<~gbJP3zn2ERWw4 zeRZqy%}?=9*H%8tshM!6AaM2Ky-zM~zM{A9v#Y{C>;LL)FQ=Y13Q5*~ojT`0oAJt? z@0|<gM>*uD9_jsaeedV}XO{|HE|2bymFjP|%G_&STM>Cbb*_HHRn7IYw!7=jnES8% ziSYIln|~Z|;;0K`_C7Z$eEq8(KYdNl^uLpSug~-OtQU*?Ug<OS+6i?o_hx@tFX&!< zGF$hF=ch!I-uk%<>#DNeS6-X`YG#JLWuR2Yzom7*p2uv7w9Jat3;I}gWzE8j)?15o zrHbA+W<L9S=D6t;$<%-9Rd=?2Sp6i@swabG&yl*|2k%`XzpeZ9|II9^6^EPi+Wu?x zXS05Onz!nQ;oe7!73beoI6ik-UcW}VW!AgH^~^f|c22LjHFbJ*&G}U6<M!YG%C;p& z@Ep!ayKy*4QS7k68J@!iI&0VXENi=%u~8<=XqL0ovh=H~EZt5hs<fS4HT7hM;Z}*Z zP;aX}w*M;rRsE}|+H1G|{lk6lUKj6pcYpiDf1l&e{CAj|vPkuKbP?y2RjOWBxtB=2 zYxpX4TP6Hj%;u%D@)Sf0;!g|9OwD3%4mzppziP6=)!qrOS{dfu)n585HK^HQrQ%oK zo3{;k-%PjJw8ZU8?iTl~Jz<}CnC_T!GRzDLel_df<XNTcSE>%a6;(BL5C0sq(p6{0 zgeWoZdsntaF+IrYZMzmz`{F8_Z0?R<RSY#h7j4d!@L>Fr)oo{=b^Gm<TZ?x$^J`51 zW4xsAU&G$H7cQ^#;93yQuuE=XeY*Gr<x<Z{OdmyN=-YNJU$-*I+@|#K`Q(Bx3)ZoJ zw|(%kbGpK(+CO$h@(aZ0RqysX7#B4E_kwl$mEXLlJAJq<zn{56&fz{|>m`Rh?UPb9 ze)2oLSJ=XL?7P4wi9@>$?zJwg)TnNMRIah>@I{F_4=Fc4!7uWT>nB!pq{vO&BY*U7 zMpe(jVv+O7E9H-WuDEu5a<z$+`VYo?{t3&3Pi839s&5o)ey;w)T=JfJrM$GJE$jQ> zj0!0q$NwTV$0vR@eo;Nm?))J`QT>mqmrS0S%dX|Dn00Vwbz_h4%GsV~n_pPZ{yhE2 zZp$Zz?Z0-Wn2XQVpHyiy=ktzp>W_cUIXt~${-K(<wD(M}#13s0IKOgFee37F9X(=` z?<eh;eqi^MTj3XfNbS9BA%41I{~X)XHz)V~7yYpA$@7hqwwhm<Gf`*lBb{}R_N-C+ zZaQb?)(`tU-<R%*KmJ~0a%AeJZS(#~TL?>koX7fKZBw<h{mnJ|h4uFyuRQzkPtAed z{2%wuwAmi8d8+aDse5l<*ebhEcFt|tlnu=O@*BSiN|kS_7q2Z_m?{3(-tBeXxpR5n z-a4L-JNG*7+#U5ftNmx3xBK<R`F5QJ|A%)B`}l+E1^WC?{uL;;<2f%_WaD)Hyv26+ zi=QlS%02#DXmmPxn|g#j<A2Yp`G=zIcFt8>um7R0?W=Kt$c5kDX@5m;*7UA-O8cg3 zIqzw$V9j$2`}>9U^Ln~JmNLe;9R9w5WuDNtKL>uPo;#3gGyPC`Yfs&in7>CXb(q5+ z>Zo@Y?TLN<=3c^k-dA~(PWt`|H|Xd3b*JgOncTYv3n%@GzwlH0di=$o(#C5J9e@8~ z5BK|6qrc66zwg-Z&Q?F^W&E7?`}t35#2=e-%A!Us_D|}n(&;PZ)Pj}0mMz=uqkHe_ zx5<UkO2Nw`mgQ~p+3O_vJz?fALnGc5`6uG|%_pdS4$!!vfBA-R$cc(g_lwv12#Zf( zIh8tV)AmfZhTSu@IT*j>Pg8%)x;=cE&u0gQaPD7QJXkVvIM<v1-MjLuTebF=tzL}P zDN&0Tmul@$|6HK6V$#P>hKx@S_wm-<T5x)L-M%%yA1&40lUtnf$Hu{`VSj9sPj!}c zz;#By`l|9CX6sa|gVGLSjHyQbPfnG%d8c37ec&?dJ%?|0UDwuKDNn91mv=aS{J~qs zbpKaP4*Hv3v~It*hnsKGOJ}#*7x$<C-uLCTJKNtAnk_v}FK*ATV?I%(a6KT4ZQ@OZ zFZ^!5CuGbt_|hJFibr*R!8d;8_70Po4?h|yuaH0Z+hdcI>$1fcPi(*7!g`|TX{C<s z54l+xRsJo?Z9Zzo^CPNkVwH?rw_1Gac>GUtkL_;XG_AdlFWU8PeZFG$xhST}GY*$O z|EOZz=aOdMJ?rL`^ND7~5348sR6lIE-XqQKv$x~z(`WJ(XD)d(KYvD~&;F%9B2WEV zo$_7k@1-4jkJs!uXEW{a+;j6p&m=CLen$GsS%>Rd&-O^kW}m3iEzQ4_F8gzR^8e^3 zGdtV9rfg^|mv$8U9+|R@^KAa%sb_ueExf)v<+EIj<(I1Ymh~ro$DI3?_G8<G>tUa6 z`Tetg@c4P^kFc5jC-cm0%P;5i-}}b2&o@ne*Z0Y%8Pkd;#I?Vum-y>`;k)GDexuvx zKNg*l4yc}UuhM3If}8rs60K+dU5p-VFYAh1Zt?kN#<}#epD6`W`<F-B_x9;m*g4lS z{uDJhtpD*q`PmxL?+mR^;!pT+eT?w<YyRVzb^1Qvs)o%!?7R0VovR3JJY#8b{^3)b zn&&gC4U2V`y=Se7J@DUkhyJ6t)qAE+2<H6xLDppYiT6h7|BZG|U9@mY&bkHP)vNyb zybFI>+Iusm{XN^~-6wypaJa9#<?gccxxelxK967Vck0Yg!{zrcmWbc8|L{wFPyN$V zs{*cxo!qsA>D}s|4K4*C+p79<c+Ca4xl(?{ca-w7WNtFGP0jv!@><{YQf{^@*F7h# zea-(azH;61dsTr7(oatAs&07K@b_K8?)#J1zGr<AIR81@6;qArxe_ejPFF2>xiI5E zl=3e#C;#LxrpxLd*F^f~H(XQG+~j*Xb@o!5hVafD?mb(U=-10f<yS;)TpqeK=XJ`> z_Qxr;PK@(zeR%VlsVnui-o&rn6LZ^-eXDrgU{-JOueH4|JJmY%1lxnv#!|aB$a&md z%(*G{<;C8;cfC`qTTXs+aTchnez?DUna+KK+tc^{y&&Usjk&^Jz;@y76!zVx`4smX zZ24q9oA<e;4DZ7aJjwSBzPW6WJNUWaTH9e`CR^oL#^TN=Ql4pxU)aymIrboz=X~<a z^A;7y4jRsz*?T<RWTub8<<2*=UHUyg*fxGw*Gf^}TwgTx&E&{U8!KwNYUUk#EMhdH zsomm_&F0{;EQSO3Lo6Q647M?z>Be{Y#&?<XmuG$~u@HVRqw$~Qm)d_5-f+Kob~|18 zq_N=K&NCTmH_slquVZrl*yEf}-c8wj)z1%@i`(jNGMAJ;`NFp?Tkh}kjpcUV^)DK? z?$v*s&v=LX#r6i{Eez|qS4MmEaetiF)gO`-{II_D=bom1*B{YGcDtr*n6XC8`0&w+ zs6&;JUGJ7Y`KvW&ec`j8=Wdz&T3#48&G2{XnZEpWwX*u_i{DL~e6h%8`QlX8ui6pu zozJGG{AGJ@^kRPFv(PUwXL-Wa|B7c{*xA-|ZPLlvKO&BQw#vHS^n0z*O`k36++SCH z%TsvH`((4=eCd@Z7nyP2jr?(|Wu0%zw=$LobN<i1ceCQ`vwyNhwbN_vFFjs;Mz4L} z`_H?p=HI`;{^du*>-Lm+-Ti0JlzVr)39HFb?SK2?uHSvxIi39%b_&0X{qk30@9vpr z=h<$m{`imc^9}avj3x3%zAvAX{%_xw_LHADENjc;KYaea^zWSV<1gxa?td+O)&KeT z8Rx^C75)cGg>uzr-q!qdF1>B}$1<t@_zmBEmgF#&vKG{yjM>-pJNsFz$NKya-*j!# zAL=TdE`IV=cHg<n>u1=C&-m_o?vQKRciZ1y9|D@%<!4;wzY^<oU3Js0GxttEi97W> z=+(Ln&$-Uq7qQj3-1na|(WuTmH6_q(ntk!N^_#wHMaDS4H!YcN-2OVHQg)s6hdU{L zq6K#ry%XDcZ`pC#XHlN>y<XKHJfDB(zZ+lZlke8Q-yizTzN3A<{m;4oTif>=Kh^N= zdzhvC)M8;#jM9^k?rFib%Vn;=E6OU0*Y@$teRntJV4!8`rKeZUP6*a_?6Y2RKB`&4 zl6U3j1^*W27D)xamQ+~oIb}|o-hzNWahbEV4m0P7Wfnzo9e8^-?tPKvTCb;Dmc4tJ zVrh3}8{@t&A6>m~+gR4I7Twyoy|#4@pJmaX=_ejmzbg5{vgfsnFT?e7FCNZ*#gcaV zC0G3R7|Z^JGwa>0Z6`S_oip!fQB%-Un{&S&7kqEpZT_qJ{dD0orZc|UWxVcg-{)H7 zw1?r=ugkmbvzb3V<?)#!{7OGv;7{`fBZ;|xe&3V~Qc~~vW$>#d(0oeIVP?kc!!{0G zb2y5+7ThoR!`si8V%B8i7GOMSp7KrclfMH$^gG?o*wer8xI~rfL1VuAk9YKyvwx9} zS5>!?SfD&hMr}c+(;IvKMD;%mj0_AcISd&L><l2l#K6eF#307Nz{tRO3?xu->uywZ zzOtw2I+fF@5oufRglV?~WKZyLE3z?8WP0<4``(e6Egx^(yfHITUUqk``Q>+JW!5*} zDEEIj;s3y1;Ui1`2jL%_HXqM03oYMQ{OVcsoHb$E9x1zb?Rs@(XU+4Vt81tHI(STb z>%tfP`}Q5Q|FU)Ay=B^Y`9Z&{FWn3J9-{Jg`xW!6&Rbo3t4n@bZ`FUx`!(XP>#f<Z zWWVZX=C9oKtAES=p#3*06yL62aX;@*+^zV~rDuO%`Zw#>>u2nj{_U#T^)o;7e(?MJ zw_d+<w{8!e`t7g$-^|xux8ARKoNN3n_UqxdE4S=ldhhPP<}Lr1-Mjs7@s|JV<nsT| zysdJleEWaRx4cryHk0M<-Tv9PW&4%w<t}BH4*#~6FZwMX{pz>%*)+pE^}mjSOQ&w> zI3BsXWAV1^Z?ivIygYjM#gduZ)S0tt#QKX%7ZjNWUC&x0bTyngbi$(V9#j2a1aEq4 zn-v-|{aD<J8Ml0A87|zoQR-6u62FjTRwd;=TfUS_f8VvLr&9B;`>QkS3=W3+>^JP) zJ7uEpEX$>@`_^1gn^pBh^Xt<W7gwtuarFDLYr%!(lA66T!u_d_O6J?iU+QXqr5w6+ zn*Zg1l&amuUn=65jq^`?n;br??P0c1(DG~#(>uS+vMnh`l6xcq;u&kxmdF;bUsKn% z+d1kX@7Zg~Raa&=_1k8>ef*hm#T~a#0k>EtZF?DfU{Y+)wV=HV_szMsM_SC}DNhLd zjB>y5&b`-{i1k0YYW%9U<)@&EtV6t@hX2bv#v`vTKD90^_FAi1P{}bxjytsXeA6+z z#aHE5YX6zOkTq^0PnPqp@C#nbuYM-kY6MwtfACT<Y)?}hJNF))Aa{qU&o=srv^_|* zb~x~D?H;pV^WD$adRhLuyeRO@-phf)GU7`DbsH!9|DH3=yxGizJ$TK@)e>^EReXEv zqz`zC1*~Hg@$yzWG`aOp>uTwFRtFN5{$#vecBPp0)*8X|xl`(jx9Gi`tdJFZp<HIc za^61eSIJwr55=1_ALU%T%G8p{?$iUjrSWTj+TG2+@MqT4gzw%zuWMU-&j~77@4Sxf z@3w?a;ZKQoZ!dYDTGr7q>D$x!NqIiEq$Zy=)mnG-xO{NUzoMmA<_CYesCDy=>eG!< zTX~AMr2bYBynU}?k>jhg99IiF*8UX8NXXY{P<p$c^QV6Ley4yXh6^@#9}5<*{q;Mj zz|!f>!>Kc-^KBATzF1M$^ilAxc}(ww!*#xUWfRstDKuQVTgH^j-^_eF^SYUOx6PLA zww?KK%cW%#)rvA@E&h87wwBEEcX`!UVAt|TX0pYmA9crNjNVTVlg}+!UfH#G<Ib(F z{81OGl5+QL4E(^gaRIZw>8H$prAzjTy}vFc*|Bt&BacLs-=7m!hi)|8>iN(3=T<+v z-lTKKe2-latXadW{py7A$2A7>hPC@5?azD-aht*t8JwlQE!{);Yw3A6D`oN1C(9%k z@0xk*Pr{ZtPS&}di!5_8*Uh|~&3{)?rB6URxO3I@vL^yH%Pu@(nYqEV+2WW(Q_r+6 znY5!kQ!J8IIu7x@J$B1xfAd8*Yw<~$L8}GNo@8COYg_(Qy+dzaq<nsCS8P7>be&?; z?nT{ZTT;?`pJ(;?1lU9_xV`e|;iFMfk!#Z1n_NFf_A@6;QoeBG@|uS&U#;7GlM|Bc zHcLzXoptC+qgqvq$M>ICx70V^Fl@W(^XGM^?lapYovXstFLHV}?vT2$RrK{Ok85r* zKCHVd8}`q6=4Trh(_?bUUni@Zwd(xdE_KK1jjS<yES9V(ak1R)H(#t)>cpO3=bA;Q zUT41O=KrXF;*k$aQp<NPX}4<GYLFjzzk6}(*WVi}TH~_YpV`Jl|7L5KjV#uwGB@4u z@nC0)j_hGxw@C_ZzYCSc@=Hp$P2Qjqs3>U9mu+<4*eQCq&5NAR32S8!8%0Zm{QPIv zm|v2nv`v5SzITlIb#L!PCQR*I`>B^FM|%GMwlf|FT&=>--)&J2ZY`)ye8u8+byY3n zbq3|0j=d{P8lQ=~Kid7^!t}3CWAtMDuU);FuCcZM;riY)kCGhtj+7o<&9yUl(?*Be zU!7JhX1X+M=k65?4`&@dQ&j4!_gg^jtx{h8F|W_J=B>>PS6-N+`bMEW)o5G3@+X0+ z!oWWF*<8hDTI-zJFIKbEt)H;f_{l}XG)bG^*Va0eGq2g!r>Z`|Z1YXsZ9+%4^?xpp ze|2i%Tm6RbjIXZuWxVG4Wn5>uf4Ur}{?7EB9)4?|ZIr9JSrj{U?_8g$i!OSf67YR< zU+Tv8zY_Bn-EJ@b`B+4T_hD|{|6_quclI4^Thr*XLz}g9$Iae?w|A!Btz7XwpsaRU zpvSZ_(Rtm8n@_~(?TyaNI?w9ETcc~refde0#W#zR(u4^0`1NZz{>E}$-~95FRyEg_ zbN5Qq`6owvoxXVJ&GWRvOOrF^EVfELYjkMWrpu=$R?d&SV&k}O-D0Va*;{7Unh5u_ z3#w1#m~diN%x}M=?qWw5PU=njEZ7mgLo?6+NYleOy*teY@weh^&!>M=_<Q$y?ESLM zf6l)5-Z#V6<7Hc{N6+2g3Lor*C*N@X8>>0rG)8Z&#f~PwCC`d>|2%qi{_3ylP8aX* zZ2cM|zUP;OX=tG0>o<qWdUX0O%s-WPaQz>)6)(Q@#IC%v`(ETdhbo_IABxvrKIma$ z)%4~WOS;CaCp?=vehK`X|C`J5tVhF1y)ffzCa)zqeaup8K5@>9->83o{_{mQ3+4u# zk9nycR34x7<m#cWY^|y5KF^=;@#Vzz57T!4I2H24y!hJ6ZGZo=XJ;^J+8>>#=a?H? z@pIRN%Zo2|<w!i+AG!C#PwV%O-OX-o(#=~Hba*e%<%IwIuV0>-ceKZ)ufoyvT!&1R zhT*M~Z!UAY9X~P8I>kGSFFChf|Ch)t)8C(S+#WBiy?$5ynd7mKt9KkN34hq;|G`4N z{kh1yJ4fuJWs-byUhmhtHrFH8cv{vxe+RA`8sC!M`gZ7ZzAHH*U3oL=c&GV;_g;_c z?HzvB_@4M;H-FyWj6E@zA1kc>@m!?*vqJmazYNx^SI_y`)oB?W;yd-)J!QkEnl@)1 zBt;%e-S6?l<Vn@p&pi9BO0-)&Vzxc<eV+FJ|MQgBZ;GPIrU$FD%>H}k)$>~M71N5V zk4<`b()-oTSCihU6>Ym8y{miP+PbvWuYO*RI``vW<h*-xWmiajtaA#=h@9~~*~Yur z|K_X;y9+_<GoMJloBP0)<L{nTj)l)yo;S5$SzNx)cjtcwj+)-N_Y8Zj*>#r{y4|1k zP5sjw#Y0>7RWatuCFO<w^_tgd>bTYMEytdDk50yi9(ySn)mMBXB>eo!_sWs${WhPO zd}#WER?FPL{n4gRUa@FPor^GLS7E-tR^YAhh0A}YFVMWZF50fY<uX^v63y)&=6sUb zW#|0f^6$J$7Ik@%jc3l}${NXBtev)$i|>ZenTw3`TI-qw&v&jD+hM`VR++*nH1FYB z3ETMfznJ!(iF965(`I!nK(kwKCjZ+1;bl+No~(bUInnWijl7^v?BP}E8=OK*;wPrh z+E*6wov%@K&&5E-{pZ*6ru{U%;v}tes3G#9<&qUn@}@m`k6IovOvx(SH?Oko-!%8h z7tc;xUuk7C;d1w?Uo*niausP^2+&~t-T3Uj=fSFVC%!lK%I)iYophKv`y$&0ll4=t zf7qer7Mjq%?CK%GJztg<)V+In;>O3AfEyd;wEi-^mvn5cu;Pqqk=9!tD9$Uo-g0=^ z)njK%EUWJRvz_mLVrT7@<kU0rLD^qtCvDD;+Ix(1%Ic(_XV-}ZUf5i(`FjROzNF2< z|LI?TTGrYx&Ht=+(e7TEr1I^Vzch~iwyFu6ep5E4Ix$~9rgx&GMR}(8@)e8OFMXDD zd*aAuEGa2^q@J<F;JX2MJ~uZqJ>m8-(YnVzol@I2f4}D~=s9uHCQpGWsi!AR*Eu~? zz}0h$YLKF)cG<Uk)h4@V`c5{fe!sVT^Y?q3b0?`~PM&hWmT5xJza8(H-@U7SZzscd zK#*h3{rAlV4F8`mZ#&J(q^QW;+@vYcptYh+;fjOq6-Qg2)=UH0u%@Yrq7kBD%~un7 zBZRLtZB3Mo5Wm*^HIey-fLT*-qVNq7v*xpj+&6@_HLXpQz9F`)neB$0lp;%Fhl8+- zBHP&uOlvnVzu~Yxcy0st8?N1sGC~OsLOvdj(q|gVW^is^z?|l+UUE=o2KVO#JDrBS z2oBo~994;iZ}_SY%-bOThWB?vE0<oY@&k_@?B|-!KhUt?>}%(K;I)Hi`GLX@Y%+Yy zlNnY&a9Puq{6MjSy}3X!hSmPS_YcZ3OxF(xe~^gbuAR^pyg+_l6ORp_|Doa!CN|9H z4?Rz1k8gSYkaY(i+e2#$(YVIx4^kzX^dDwhh)r`4n|6qU$C*#B$>t6B;(!LF9!Jh; z2Q6wCe;?$E;QM{Jv4G(YpZMW}1p+cm?T5lY@ZRY(jp#0o=npQG`op#VVMz>U__5Fj z<t#Cx;fJpZ7V^djUq7_9P&P*V`r)sI%y$IL5A{A&{~>99(6`X|j?DH0x`o<zq_!W- zEws)#@OGo1vqW3`gV3G?VK>9Jvp1U7?qGh`Vg2yj4(@kc@(0>?NFOt7WK+9%L}c4T zo}A+|Ex4^8RPA6)PgXB`C^M(~bAg@SfxMUw+Z`NsP5m3i#UH=h!TzqZ`r*AD{82aB zGv6HN;d`LKmnb&<L6A(_?gEzL8OH;Eu-F}~-Pqu&^H4(XaN!;P>5sYY$nzgy{-|Ih z!GF;Cqk)Y~{{iKX8a7h>2a`Wq*vR=G5dNrQBk6xI_@jx9?D+%6A9el+&+C2uU}uHg zyngWqtskWJ^w%Hj{*bhXMZeYjp>Borz2@r=WB2grAK(8#^hfv}q4kGWf6TAojqASt z@M{J0y$<t-XDhhxb!~t6wu1d$XZgds75sDBzdx$2u(xaAf8_kbz^<wPQSuK9yGH*< z!9Pswn$JHf{$aDPq5in|N7Wk1_=DjeO>1QDA29!@TO)n{VEISe8hQHz{2!J7NZ23r z|7iS2X8!^GkJ^8v_8-juX#I!%pYZ?I`;Ym5DF2hLKQ#ZN_#gg%;`K-Ge<<ISAFQP2 z8m!?E8sh7?YGKr>#Z|MsE@xP+b<w`8wMA>K+v>|wTh!LNW?#12qPN!l^<}m#in%V* zm({jt=DN+kEVe~8*ERaG*%sYgcit_wra>KtL>8)b1@+8Y*&3C}ersacqPdykx2BdY zwopB>KxO8XMP{=c-<nKL3uHgL%<t7AOOxr(F4jaj+}$#vDnsz=rKDSPzb&xM)W0?R zn_~Ab4d1_07BWgLQ9N}?D9Y=wiIe3H!MsH_y@%EoNZat3AJ+ZAA;ZRh=wgBCTkig# z#;yYWJMOAGW*^It?7dvKWlq?Ie<cjE9_$wnmT<^=wO@Q#!XoSGe(_=nkF59ciyupv z=6a}KJXyju*K7I3mnCd-J<~7Ff01L=es1aK2P{_e^%iiyJYOOh>ofhr(h|v7zxsvR z4|0BK&*6T4V0(#bEbH{cnFV$+jOvFa3)EtL>lbIgh}zY+Zn^Xew_Tli%c5U|?dr{2 zZvB97*W`DLcE6O{HT~V<-!B=fCde&ne<@fc@~)lzg<;j4c?;BEYF5pfw=n&sW!1d6 z1^X{|e-Ya2v;M;BFH(E`@-NK(BDUA}{e|6M<o5c@Uugd#SnD(Y!tyVYwSMszrhgHw z^}T;#`xn{2&Hp_AFM9uy{nx~QzV;W-f8qYy{?B{=rTj0|m6h&lX<;_4%rQr=$~=); z_ta|L^OZKe%RhVVF<O6U^{1>oR_hODe~Q{;w*K(zPgQ&D@()OVa@%8=e`xlnv^|#j z2ctiQ?J><ieEU<`oddUvmD?@O2<AP~IKE?M^p2_J4`eIV@69ZK7+Y!HSKP$wx9Oy2 z-ebu-=Zq`G%0J}1d!je*aB-#F`RA;6&T{W;7cbP;e|EQ$|K8;9kM>r|Z`;v-`ObMs zxd)DNk971OF10zMJm;}Z|EGO150s`?^i2O~@&5SfO4j%1**`Sa2*{sl|FEz|LjIil zhlw>J@@J2K*jOVYe_s7VXN}POGs{1$tdW|3F8#yI8nOSK=bsh-h_UNG|D5}W(?8?* zBjTS`Yc%7JP5&JKgX^Dm{K@c-SO1vrYg_;H^^dB3jrmVz|47@{n*a3nkFtHu@1N}c zk+-k?{nOt+>gpQgpS1r-tZR{fdi+OWUDNz0%YS6nwatI}{6}S7<NtH|pS=GV?LV~s zQ}!RL{Ri_uMgK9|fB5~U>OXe%2joAw|1qpTH2+ijAItiK@t?x~nARV@|Ec^B|3CHr z-TR-*|8W0j{{M*mXZ=6&|MdT#+W+xAmxxx-nklmuF|G0nUA<sc;MP@sS68phnl)=( zSdjMW&?~F5Ot<cea$dXgT2S`t(kr{NY`5;a<&e9=EJ%8_@0Dd)##?vZa>`w~Ehu_* z?v-s>)>jv73-8rha!6~@tdNkSA)B)T*JiPAU3|;)?V7T{-K*|~#HdbLIO$Y~=GA3s zE6PlR&j!h6ZF?0Go7FdK^|O^fvl?H8afkLtEvdSiv~~9_=eH}r1y!%EowD>-NYvNW zJyHS9SstlZg|>$9t`?jcTxq)MTPSO2h^pzbX)6n_-n@I!@z|bK8)LR@G`y!VV~t+# zbLp<+#Ybmd3Q(L}xMH2R%j(aTmV)vdFSXXJJ9SB-<GZNQX(PtdjjJl^Hry%7oVs-5 zHIH=emm4QGK0H&mHM9S^#NVHjruwB9EuFQ+oB8CH)b=;mC+HmC?iIR>BhBT)l_p8{ zEFb-VV@pGqEtz;x!l3j>5A)XCeM{JCJ-1eFWZN6Djd@`~gh7z?;p^2W9%s4D4-IgB zs&pal6yNuBrbzZxw^aYHS<sivp|<*#>h(1dW|zh5JCB$C_VC%TGw)@>Po<}AYh&uo zWM6E!l)Tg@;Ra*oBmom9*{UCh`BwCOx^bmoCr8PvILr9;%T^@lTv%ECbW5gXwn@B> z=%>ZbGgs+Jdfl^Mq84lrdf(J!n)DW~WaY!xB39bHx92)@c^2#Zv=BDYTs{z!_jBp( zMa)}2*B%p5mlhWNn&Fk~qZgqg6tSRrs!7S~ZsTS8e&wkwMmu+XeIiwy;8m_TTY8RB z+Vrn?g^!s$vtRXUnzx18^bN<SzueLP{nwA8es;0fh3g6yq-`|k4fmPVrrX<Obn4oN zDeD&2D4MIjpK{mFGHv><dmda})@@(Bz2>BN1l;j*W0}p8YNqm(OLaDDG)pw=<0hl$ zliU{g-nM<wV3+Ns9lV{ZJqj!yB!4mMq1xO~3n`%~-!=v$oQRyl<ZU8i(vuzWZf(ND zmJ&~o7cGhzTv^G7+LokvR67S5Et#Ll(pLIqQQKdei5|&|6FdxbBm{GWdN|Fvw{dLa zI>sv8)V9FSNNCay#ZK)y*F!}zVskgVXmM57u}ZXk;h`e3;fuyElP}p9v}+Rr4hQin zOMMYmGFY{6NutkTBi>A2W~s0pY^^@FAB@bnrJ6h)gAJA%s=Rf+WOqkHLMTV52V{ek za*+JQUmZufJ@$BXC#+uZrQhTKvJD9?0gp^Q_o#JVSNS+gC2sPOZm<6<zVv(jS#hNQ z)Q`nR|5o(aYd!8iS&?jXZ^n^s&pk7~^n3oF@uhz$lWjBW>OB*BvtL}~KC^@Q;Jkl1 z%O+^1bszl5b@^}9lKSo!+q>dczu0=pB6?|T%%^Vey24EP>E8-JYU|Y<J-U9!k<RXT z5a-{Kqw{z4=<7Z14lhyN-||A;#a{6j=SBaHI;Stfi{=ab#T2S_{=$3F+~vLi9>(7# zFVtP_HGg?t^zW(*`Z9UZd=V@{wZUI}FPgjF7s12$JLSc4r^Yzji_@(Y(p_y;Uug#V zcUE~_3GS=f5vYGZm4~y9Rk_KxDe&Nogv|-v394~1$sUi|oJ^T-9^B}(?7kM?Nli}C zNdXV19P99Kcd?puMZ%XgJcVl$Te>U<-;?89hc=!5aw#_U%&X@?z8n8YO}=b0SytxK z>r#X1Q@8(Ixj1a$AHJEA7ep`5Iox#HV8QM%liyvRBm>lbMK3)6JM2ZV@ylZ4m#b4Q zJx>Lrv`glOllOVf{381L$-(zeg6E&(e_pKoG{!3|ai`QdF`Zn08!?HqBB#?s>+Q@} zoZ09U7q0STlG>5$EkEW>@Lrn#r@+HL@bn7(Ob`2lQxe>1T}wYn*JxhOuMUtpCHAX1 zm0u=^XPUodv(&2MHy8FqWZzcUb53%<%!>tUdqcw(PLP+Ep8B}pg5|sO{nq+E4>z3I zu)#;TGLXyNsVyPsg2<K2>QQmiy<69qYD`>QWvi3yvmx^O_vcR{j(5KLx~50bF?0R( z<pm~7OOuTjCoA676TAG)w7d4~ubtv~*S=RvZk@aAUzb+0%LY$_Q_R);H*8Xu1#LZN zo*umU@1rG^XC6BKbjo_6zg@4ex;gajyF2g93g_kUhSl!=9+f-4?A|BoHMhQ<YF>Ac z>lAxrbLjPV`{JhipXT0__U+c2O*`&-ZqeO#s&H-By3mVT)m}u2#-3iD9a^&b>+z!I z(0%`&`g4chUZZi$S+9GC&Z|vn)3@%@dAMoG={p-$?o@D^#~tdOzTt7?yC0{1Ug7tX zIJ;m;wD}MA{f7j1->W>nzJ+`G(O0$8*UA*_xRVhvXO-NvYmC2zw+N{xh3s;_bJ6wA zMOUG+{f`PN@8)c{;$S%^ZjxJZvhuk}PXwwxH+AZGnqBptl=f}XlP#O4t1O=zH%VsI zbd}``H>+5lxu_9p;w9QUX?b9gsn<HUm5TyDnRv}}J9$-Or_|3bw|$EyemD8F&h6gS z6X7PG=DFRwd}6nh+3HPRyqT+Ktdu<~vZ?ZKU;N~A{XH+H*S{~BU%ty<?C-yrxb$ZN z*2c3v(#)>T%uGvvwq>(%@vWC<WL6m$OIgjld1m{I+wK2c@7t|QdG_V{Ov}G>&zxe` zwwP&o<lGsxNi%&*(`MbAY5DfenK@-v#_g}p%xUvWGy9yHCjZNLbHDaX%fF>*W^2!j z|6(^%j#Tdvy%GL<_QmejXTS6c<kt25o%Zj{rZ4GBLl>+6bU5gB{gip?&s)7*{68yh z99Oox_vEpmeEzqOV)FT4Kkn#PuetN#<CNov_svMGKO<({pJ`{eQt!!XZr@eLHKoUv z>~f2rdw=={{j`cr{`=}4{=dBbYWQ`lm3og>f3BAK{PL*U%cC__8$GKG=f~wtiaWDh zeDw=f?SHRRH~n$FA23g8ahTO(pNYF-=9fP>ZT;-@?U~Gs&!=UsxfCEGvsO&U@1)rj zF7MDi3ulCJ?lyR%lqtR}cFCJXXZ6x<xbBWUv!y$->|&z$=C_M3>+O1z)E9eZYj<Ut z;e9=^8?M`9b+&ZN?T$zh-&?kEM-0p3qV-c|-qC!yvhe=l6YDOVzm~L1@10#t_e-gp z)61e>JP$RDl`WsQ{%O=rUg50zomD1pE~@n(v$^%?;tqG-{#kmy6@|iacUr{FA0C;S z`^jkTqq1$^ciu_sE!!NWJon{!KK|%$3wW;cCoht3tD7fw`Rl!9yK3zsE%gQW)=2xt z=I5`!eWt|MJXWxHQAZ?aSo$wtbKA>jyIy`>X3s0RH9hgrW`l=Ir+m;cvEk-D?{s+c zg#sOuSnlkU^(Xvx=O*3C%?rw%JbBaiFLTv|bGdH63a-sx@a<s_XW-I>(*thE1x?-i zKc79P{4NO1pAoj(y7l(oyluPlu5JHs7_0o$^1;nai?VJ028aJu9}JuOvwh23dx1Oa z1glvN_IXV@$hTkk+kf_NE8f_1?~&VgE{<#Bj?2;ZJGInj%M@GReK2?GgM;TzJ;;8- z&%VAtJ#+H%D=FHnyJNyZNNv}xr@L-FE#G>&wDecYf7LrYlN8VU=DSJV>+z{FHhOvX z#FFW`mrk3l+`M*%;nLH5!EbXeRp;)BR(Q#&X6txa*yM2DytF&UXS1bCd*(ftvdw=K z+EcaC)%NBJb?H*E=AY|Uepa7lRUc%Lzm==fSmD`I>CKl{%AXN&TN6`%zu@B9jM5S@ zA0Bb;>W6#YB*m2(E)U;c{c-nQo89WqZoZBCllTAV`)^_^^1iRUpzGiI^6vk7I~N<N zuNj-&qitt>SU1I7-skw2yzk4_yqj0>*Y~{TW$CRidvATw%RjZv?8alM3y-BP7$0od zC3k;A^WMDQaocO(ANjVoZg$G|>%m`-P5Pu3aBAl5?z=0u-KhPf^Y8Jb`&sd~8X`Bn zZ+gYL@8j+NaW^?5l%Gz2kyJVD#_67WiC*k;{w^&!a5L5`{Pew`U0&~Xre3@m?!`VQ zc4^7hH=0XVr@Cv#F8x0F(!qsK7d!if8ccqDeS4CDv67C!b^QmNylrhu*n*wCoM*R5 zO5HL&bH%{hxxMYCl$B{o=8VOO>)I-%o@GZYSQvfSiPu(2Ec3<H4Ld%aG@El>x@hav zhnDk2j2zngD`M=}Yu2ywof>}iKjWPeYyOH`uIKjh9ZZloTDU&w>&-=>Yu`(##7#cQ zy5gwPGP8}lSi6rVsR){Xy7J_m#lw#`&b{~fzr1R$XRJ~7CbPm-S4=&_m-V?nQOPda zF0p)x`?7mSC5_qyC96DlCVnyav*w=y|C2g{#y`D*3}<u?GjRzn=7`{S<J34Ok-A`s zr04>h)R0E6`GL%<9_x$Tyz}(I*1c=|dap9BX+AffcY~d{*}-EjFPhG-yTE*R_XgG~ u*@gVu`VN`BXg|b|^S)J4g5?mO1Ye!ciL3b?oY@;07#J8s)^NRGU;qFNR&i4R literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot new file mode 100755 index 0000000000000000000000000000000000000000..cdf7334384d3e82c5a923192898b01fd692d45c5 GIT binary patch literal 75706 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf new file mode 100755 index 0000000000000000000000000000000000000000..56442992a5b9e45b805bf6a927daef4e24af21af GIT binary patch literal 240944 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�r3>z8a|mu#QB^ZAh4i!$ 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%0D1l#?n;v9ZmU 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 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff new file mode 100755 index 0000000000000000000000000000000000000000..7c2d3c74f19f951470f972bea166a7f829db55a9 GIT binary patch literal 98816 zcmXT-cXMN4WME)mY+_&#VPIfjUTXm6GhhNI$6!|m2F5)M3=DP*3=9EX#gpsZ+(LXA z7#ROBFfhn~a6W6hu)B+^8v_HA1Oo%ZJO&1aJ8sWCPq+v82Qx4*?O<RK*v`OU(xh&F z+|WHZ)QN#XxPXCyBZ+~5UnWSt*3v&%--v-h`U(RBLo5RWLqb;DBJ<?j!~zBe850Hu z7Hb9uHnot6`GLu0B?=4-3Iz-d3?3jXFo9n^tsp&@fk9yh0|Vnm1_q|o;4S*g(-Vse z7#Ngt7#J8hpjaS1r!tL!L8*j+(aeT{>F1A=->+QGNKH&(V2s$nz`$V2z`$U}VRQCf zMn-BP17pMs1_lOY1_lNder5Iz8M!4D42+RH3=C{q3=F)h-p|>6CMQ2Rk%2MZf`NhK zAp-;N23GY=2Dyn91q_TCpfFKjU|>*S>0)xrOUzAWV9c;#VBofAV9@+-aJ!4YAiubT zfw8!Tfr0ln1A{F45r;ol3yM+;7#JHP7#J89FfcGY?mWKTw>&i|je)W82Ll5G8whhf z4_Q-jD>)%0A>jc-k{FvE+p;rLuKZc_=Z+1Vnz;FV0k(Z}j!d#)6J;}F6G%u&U|RJg zG2zel7RDvqt2G!l?B?PE$1f=687|E676kFmPH&hEqAy(BomO#6^_(vsqoWARgH=^; z?i>&cf50HL-Js6A?*ONcC6}^<U!$->M6!RXn*P<FRxeLw3pgB&RBR4lEi5`G_pqt` z?-vgJJ#YKne>`Hp6yA|?cHQPYbBnF%F$z1bNQJBtx#SjIy?pOn&CUE)H{4_2&d&R0 zJ1b$!qV5hAq21!PyXBdyC6udWg!OfQZa)?LZC&NPtlw{TL~rT({)c&Ho2m>0L&dGP zQM@IgSEt_ledoIq$It2VKLaP7h-YFo{KKx~=E9bICPn9Pf>$t`=Cr0{wk&P#kLeql zJv7&9mqzG_IY+MHySyw`PmNo7*;SwR1ea9@_bI)|X3OoW?QT_U>6l@B|K|67<?pL2 z^;x>g&PMG`ul+r*y6)S}^!K&jET5|$ahc+@`DJ0y=V#OJ`M<pX=hiLLDb99NCSUuM z7L;;SJMwG7S1GA&zp}5c)=2-l>gwu@NA~t#ZZw;?MyWLZT3ltk?`*YY>-@SYp5{qg z3QM%lF4*a}I`Z4?|80N$c3rJg-=DYt_wrz&+20)t)Ph#BMrs}j+qsH)?Xr+xMt`To zEor{u@ZWd+<@^`hOS=9||L2juvRThiqDU+Kb8n4t|0AY-Q<s0t(R;`mbL{(Pp>>Z$ z|M;$ZmjC(jAN@Z%_4BhU)ZagxU!W`hpz5FKfByXk^FP1;QTwmK{!#IrlhdaLoz#lu z4LKarC$(5@#qBFRp=+M4Y+V(j8#Fa*X4J}SE4IEe{Mu6GX1ly@L0rJ@D{)Ds*Y@*$ zx!xA_x}|UGq|<s^<;0?rG}u-4$7QUX(xS58^F`9a(=B}8pR{vq-~6w4fmwTzrls=F z?<)7TwuHTCcPjst$Miq>AH%2FKKG{U{8aai%l+8yu-$8RTJSmdKU)QVO`GBo|9Z<7 zd!>@?7q++T(<s?;q2^)nC41SQ@?Iy+dA3gTs_V>Gc~Nt6dWTB%-{`>IK~L_yop|}$ za*wAk0+ww3dhGSm_i-~zd(VqsZ0^Z0tuXl<tGV*S6}`_rUsrs%|7zjee_|J(cRvga zS+`~TOXZ-X%a=N~bhTZQ*d-fhGk>4g;TMrhG`9$6YRNjya$B$HyIjqx>1$!vy~DRM z+-LcUPk45qJAXk^#fOwxr;o<?sM<__zr?yy@W1Wdvr}U{>koTZYU;LxhhMba(-j`5 zS+jfAyU?$z=AF8tSlaO}xII*O>gw;I6SP8RXD$A%ICK8>&uL28ZKnN3Yj&?)YI11R zrd1hTU;D2WoiLXT+RtCZP{T5Z*{bn$#H>>~;R>=696ZcL4Tc9;9+)Mt1@N3<7GrvP zKxu(c1lt;xYYf?q#~aie(i@&P$TR3O>~7e5pzeXVgKPmu1#bq^J(fP^_e}fQ|1q>Q zlr7+X;r7G9Cs5Nt%|Jqe@rfeWRw?aTxhbi-ar$2VyKUau%>B{*%-rK%bdcN81>FKO zCu_`QJ9NJI!B^o2YTUjy=3<Psp)c|lcDJr8_%^Zd!{3=(8pJN!&$!#NKmD%iMES78 z{|;`NY!MQ=vgCrPM7Ex->wmBNi=St*zg<=v|7Tu8QlFWjV)P4{g_C)o@;SepFvaH8 zwV=IrUAI>5x_HDYv(hPRyQk;Q3qi}5p7b}G((J_VaoY3J>y9h$#I^2J?7m>NP%-oK z!VB@-yj-=R7V?w-{JraZc=2U_o~ycdm6cU@r>-f>tPFZlraAw9Y||&^wo7)J|JyF8 zI_>@<ctQ43`Sd9{)8gjd-JoRu$jkNj(zBDDv}69QI&t`U&lHo{8!bG)gsE>;z5BDT zrR&mz^x%i$mj#oJRgdva?TFI&Slo5w%t|5S<(_lqs1|PWSoA38YRd`>cUD2sZdI*& zd42|aTIWAr`=Q}&(Jsd$3NAdSn2#|EFI>sD_^FGCpiJ(AxhpNsE^%0O@WuIkHUBFv zEdE#Y#`yD^%?q~LwU*hvVc#s!KV9McpEW-!g<c3=X505y_rlx<Q`z(?CnPM|GQWH0 zv>?{7GeL8<Nd(?r(_0m({##XF+h;0=t<IK^tnDXHS!<{|W$wP<r+HJOa`9EB^d&#H z2)w?1qMR`*d(zjPXJ^gNsC_iYoNWt}Q1ld?iw!$3yqQzeJx8i#(oyLjo^`L*@4gUU zzVP){?w|7}-acHh>d?LqwW}8H?O;Cs&^Wf^ulXmJc}*M}rp-U}>R#)Ne^TZjZ)*kb zU0t{S*4h;9^RsfNMryB3Uwb!f?$wmNnR7SUZPNSA_IufnX+QpTPP*zU8x;F%!>%RG zVUzeGPFkfbWmviEpqIPJrWbZ=?sV_i9WqPw%uy?q)Km>^=SaysXXa8>(U)db45jfG z8CSWztom@bV>|y=R}**h#cD0HYL3irtP<WQHK&Ym%WUR(SGVxQpZ>U&Dc&{XGebo! z%MT4_d1w8@m78v@*nL3R`TC;XhZZ*<CSJ=C+_7v$zu~vayGyM~X75_?I#m6W_{C?! zwYNSc&to<?A5uH%&#Jkfu2xE|(7WI;vr_ArK{C5SVe=W+hpXN8^@yBSJgT?L`MOh= zl!u|0{IPI`NlA4j!lAF%zR35sVmDIsTX0>i;N%7A3+b|{4!ihzW_K5Ahp->pzo2=Q z@cV9!|1RYYhxk^@KaD;)CHw1fYu5LS8s3*>OQb8>U+_iwdm9|9lU)-2A&;Ss^N$yM zh0X;29`=1KK1^!N<xJlhzB7GitmpnCTQZ6J4pR@?h46*zo#I>ft>T;{%NWN#tI@n+ z@qyU~3?G;uh(2)JfxAGag8hfC07D)79EN+WeoV_7zBhbVG(Y@W>Lj~#sROg@hCp^N zKj-DzCDvX&;bzYAiWO-b^R_eXEZg$3VXGBma5bltp{e7QmIE(McFb|}y-;ENCiVJ^ zNmiPMxwGePQ{2MqdP~jw?D1WKb;()G6Bh94GWCTvDNQf`;x_TLzR}$NM;(!gs;xHK zC-12C?vHG1|JkPdFg;M$CF<q$RsD%iZx-_%klr)r&8)f=na;NtT-9H-jc=>ttNvS; zFRh=y=6S=_c=JWB3~?z@ttlll`@@+YzG1)KC$aAAhld{@R59<dWZ${6<tvYT4TIc& zh1$7tP3CsK)h~{Bc+K)(mA}&XRr1w!=d>fjN>_ES@~&N^7x^IftFzCm{G}1hYeKZo zdZ|w>zIJ50<L9>Y=GQJtcUN$i>ISKn-CjIFW4_&S_xHQc{b}mpbJ1S6d(P_Cyl+zy z&MGt2$yss6y2pL~k`=3dDWCiNkry(TwkuqXQ?I;kZP_kwBFwOMNzLbdYV%GjmU1Uq z?s#n$u{EIR8Cz0TG|z{rO!m1KUK^Y~<Z-@qO3!<(HHTgHWas|Ax#{-XJ!{WeEO1Se z`*c_0_-UaV9LC#!%8GJE&)FofgzIzJudL!pa$Th|rw^XVoogr4UY<PPWc%sL^4MN? z$7>7L#%^Dmu~6~T)iu#aS4l7W>A9NMug={<{HV3-`%9+3%8suywYvRm^>*pllQY~) zR#clm>T_EA%1-cQ=Wf^UtF3Oo@CrZnIV?8)^t23COR<>eGhGiv7t79XEPC}~b^Z0~ zy+=RxTwdgT`!`cy+)U}$bN$wt*?iXMHu)wOEb~9Rq-f^#O^<rr&gv<O-DUXAmN4I| zRzi&DMz&zO-l3P94&5*~C6<=2dFB4a!x!s>i(1Qadbe-8v-6nS{TUU)UEe+&`B&FE z^@FPVq_xZEJ}fQKEsRc@yfI1o*_=1W)GECSrmgkez!tvyqVBBa7u9OSuU*qVxclat z;zfTKZP@#9DrfC<#aC{{xn>{b!)CRAFM46CF|G3j@BOuc_ZZ*&Q@pS^=vv3FX2Iyb zvgA;gRcRalKWllt=^dAp_MT~X&tD8mIs4kSFgi3&IA49<0~sHS$!gVEQICJz2v~pL zO7aU=w0@a?caOn^yNy*_qNWFIYm0j#$7gNws%Z1GFV<EUYL~UIeV}@Gf5&Cv+Fj=r zj;Yyno{Zv8oNueS+BoBju61MQy|s@_m!)mYOjerx`flRf6V}FNUZ*!ZZBW`2efG<b zW#+TqU48zb{{GVWvt}>6yqPI8Ermbo-OZ2FD$6RI#TUL?w&KUtSG`_~7RN+>53e&i zoP8zs`Mu&bn%!&G`c7OS-ckRnwIp1$URjE_V(Hu8ofo$??$)~-AyEHzN747hw>8Hf zKh6EM#C+ZEUuBES_*Z6a{po9AzsdQg`pRvqxenDI%RRby>Z%P(I{i;n1(#>{Z(0;r zc1EvLedfCJo^#^mRKE+Yne;+1eU?PZxyx#&Uaed4*WlHg=GhisP3O7nS)sgePoqoN zblbDleFpK|kF)RHnW*${uKf2iQ~IY!iiV!GnxiEz>a_jH7sG5jx%EcpZ`wWRtbTr| zc&f%liBc!6&TARxFPB}}t5B5R@s{~squlOT&K$`XZ?E0{e5S2dUF3Li)S`3#%Z{d$ zr@yM))NP%_{^pv5W$Zh55q^&rquoxc&E>vrvSYGvXL%FtF#meU{QMcVJCA+qm0vBi z{(M}v?CZ9@&foec+%aNaG<kEa4SV~Wxn@yS=T8+}TTrZ=*T8murtJ4qRxb0;?l?MY z>i%1{zmM&_x@%s6QsV4+d$Ox-!*hPlse8L}*QB$L-$qQVxO}Pon*5@_ALN$4|8i-u z$-TLzLDjn}PPW~UxG_C`+o82WZqI@q%GUnQ{8Hh2==Z*LFAHD2d8{9CJz?{kmgVB% zmyQZXUybK||4w=1Y8$^leBXqU*Z(-36!Ird?)`SA_cPb}*YLZ4%-Q_^x<f64m2HsC z+`QtV!z%?mx=v?FO#1udN&T%!EA5vmnmhhu%F0{JtPxt2X~KEpfZt5ln<d)c&Ym>s zU~_jfJTGu+^6wKIb4uDR_Dl3kDbCf)`V?R`>)3^eJ!k(}c5`LyS-!tZdH&7T$9FEA zD7trf&UX1tyE_fKZ>akU_^Hi*yTtLwET)-vOqe!HJXHC<@p*#!q?<QZGW=xfu~KRJ z_u{>))YB6)zTLmQcw*DHxEtFW?pPGdF=Y$9F%&v^LnZWI+I-=YyKQ^-T~-K{NSnj+ z!mh_B;$XMVjUx)u$w!(km3a@z^zJ?GK0&?MYkBkwHYxSb+rG{bpWZ%m_Db&l^s-*X zMXv9SyV5R*|5vdt=Dd9(yPZ)k_juM!8QbHRb0e0!l_yHbN}cVUy4CE-DuMImiyQ_2 zsyA&6)j9Od(5$C5w^+P$zLWaRZ=a(Icckn3FaE#Z|Hr$$-^XsWyv^IQs-)P*$iL6! zv;DzkJLla<PWq@IS!rTm^X|suiHCw_cqE1`|9j*88;{c^>?=RXpHmk6TP)z*`=5WB zM)EwKM$gDe>YZzz)wdpdc-w8?AJ-3JYZe4{l(3$g_wefU?~=;<AM*AJ-+Yta^m(7; zrrjs!w*KBQrET)bXunU^n|5nno?Je^FmS2lv+c#6e^b9pG)ywMl$;Q?`E#G^`E8x^ z3OBe#%<qia@#5t5wZ5&Qdjd9eHn!e8(#(JDQ*z(2d#r*jf0dkX@f4)+*B@8Xaj)1@ zC)c~fe_nCd4{w``W-rh3#i?9^1kaDBYeE`=x;{<c*RYP`x?Fg(i<$X`+;>VJjc<8w z`@1Jh=5^$0;dQ&uw$&!yo2c3;Q=R_xllSYZOP0(K$&Ybey5gn!Mswcy$W2P_O8;g_ zSaI!=W3HEO@UUat<a<cdntS<W>kC<Sx(&Kwm-cS(u?(^c4G{hF-f_vyF9w%%s#sQb zTvI-~tT*M~@>iL+e2(t$&0o0tMdgy8A<ot>@@{$l=ku)dv1gzDe^J#hE!jnnABZ?q z&GA#nT{79j|3bBgf6#<mFEp*1x3vCi`63g$!0(n<>=(`4#pfr~dCZzQFTGp$m!Nu~ z(B1<l=lJ|Tra8ye`UjidGFzMJ?-!X@GTJ*F|EV40TK{DIXD_aga`(K`E9KuW?*D23 z!+z!5`eXKsx&IW`O|<&SAiuyn=6LBB&HYF8FQ(Sbj9+&ChiF~vuAkHY=pC~=`n=L2 z-a+e0w@2^~;Uz2oXkIe;$CGK5y+pE0^s`T@W_S9^6w|5QSLS9h+Ak4XRsAC|bls_+ zf?rd&cC5b2SlV!XRr4#=xaDzS`kxoC^8DMlf9<&y#(x(7XTHw*ZVp4mt-0ZxB~z~o z{!4qN+9Ke@q1Ymjl%npyAyDR$W%%azzR9c;xEh@qG&i|~Y>^gmbm)4$@XEF;hZkN` zS~?}lWr2ut(2`S9VS>uhf|0-fe*as!fcK${|GC*a%irDkeSWX;=d&zK3PQyxs#}WF z&Np_<n__CqKUZLZ%=UccKA!~!UWWwwiaH!B->qoS2yrpdQe>Md*sXOx**zxg+LD(u z=1!h!&&OR<q~?G0^Ulg(wd9{aG9xV`Y%?FV=&U(A+ptpVny=#FHqFaLpEne)GQT(J z{oA|K><#m6xITZrJUh`ovsgwYw^8X5&m6_v&PRVFZ~ojd$38jBZrxcq^V}{C-H`O9 z-&Z?Hl}+C|Z;j2$i+Sg>^5;FsXjyF7=VlqzX>ve1+|_24rKicP$;TAuZqd5r@%ZA5 zEmA?A+P|&tecyZiL)ylDiYoI`lm4&<Fz3E#UH78<;fbRvKF4Kjn&&4=#vPs=(cgQc zOIG6uqs&psImbgAT|9c~moMIO&w8Ckg}?T*vp>!{EO%IEKTAB~v5i_|ucO?whhZu< zmKAO;JI-7GsF@YLy<?`}YNc<#HfcM??c01l{ddjY^Zu-rDU;5>{%Ldfd3J4_#1qk| zpEW5LmT`60yn7v5!LIdCV}sYO$Z026e_Et7{kn>GyZ5#=Q>L4^hn-x%X6BO<{i$2` z=&bixcV=4Qr(H{5$Cq~h^Zmchx^()#;PTh|w_KPN&3$*V{HsLURmZn@^uG?P^|!xJ z|3dPwll}G0zoynLx&5WZZ)@1KW4EHLv-4%&D8A0%k5>QPXq#le<=nRwsZniPuS~A; z+kYkL?rQnhc7M0OyYBy`;h($x)$?B#$X)tgx_jOx1MclbVu??6FKI<g3ElD{C^dHN z?yp<!UAzA4wu5wzbMB7bEf=SqzOLaA>lQBV=3!pq&i}<J|4ZVQFUJ{pjwtXP6W}>& z;C7y)=ZHqnF^MM+r$;o2ZxG4;kiF(;zJ%xgqgH<y-#=!4bHq^QxaXW>mLiXp^d7V2 z8LkRp`m`eDl!B!4<|m#rm5Wp7ote&5=_PjJ@~0jfZSJR*kt*G(E7wf8e_H;j|EF|I z7567IWTsCpin5!o|HS*Jm);3g-i#glR*QdG6nE+LulT)-;$MgUbzA?kbnim*uhZ_C z&6qJO^1!YL^Vf-c*Ytng%xHF^?S_GL;$ofl{D3nxSqExfH~8GEG1;7AHt%@Ry*%d4 z$^3kaI(7<fI5urf<gDX?!qpC&OS#;A-#V_&anbeOEYiI(q9t0l`*Pwe@7wE&!)~ui zTGzLDuDQkP<c~8}KF<8?d+t?~sm(&+jQ_glUPU(bT{vDb{q~%z+h17)slO6kmaxNg zgNy7^`%CM6EwVFAOSagp3-`73-l`(Ic=8u%<8xAxzOt()f1SlD@zlGN{Uw*Jla;r> z^_veDHXD7^>M-M6(dY8WMJP*Yrv3%tzbmGCPU%{{Ml4>9S2Dw0Byh>8m`gnFyREG* zTnw4{Ugh)MS2gPM-%rRB411)z=uBOWQeco_hx!pMM*;aMCIXj|W_TR5E%EaEQ1Z+| zR@F|eXx^hOtE#no;__=h#zq~SEHuY&(dC^_)^q*MIdVR%=Yzqgh%D8`e92Br53o%< zx0!K?f3*E2^|kyjWuk;U-#oj0Lu0w&p-i4)Dd&BQFP`?So}jlS@7}CZ#jkP4B>u8) zYFKQ0Wv%<1{PuHO>NGY<)*H{9uAg99oNa5CID7a0=f{ucm25~^B5lh(=S@<l4_mw2 z%Z0Mm&WrnPqwl<!Fxjw9VCnl^#eS3Zin6CWr7v)aZ)-^@b>5Vw=-v0bdhhNfn}S%A z)h;je^1ruQ{$h*9Aq$iH-W%(leyN!hVkS3b=3e<v-Cre_^8UQ*_NPd=Znx(B&638u zSl4EF{@<1+n&Vx4%lNpwle^6ssUJFGk1U`4^#2h2r$_Xoc+a7uiYd`;;++iI64Uh) zMQuMC#T{I|X6E|GyuXsI_ip6g{c^X{o1=Eeo-x*V?UzYAs&j~Qj#Av5(jVpb6d#Dj z94)<bBv;Uob8=D8yp1xthC<qfLi(JOG(0EiXa;$|^03WRSa~Vpl1l6>@3t+Iu3ZYd z<?a4brQahxDI@%)p6$}@U#9*u3Sc`OAgQ<b32&rw_EX=VbJtAXp0YP*!uF@KH#KIb zY|fdu_S3wa$!|9~mz~VJsoc6L{M*SoONIF-9W8a-mwNb}(6m%ee>z9xbmdNs=})_2 zre+s8=V^w>K6A@h;+DDPSjL)TnS0bS7O7=!T9%=^cJbFOjmxr<eJ_{fu9J*w5prJC zIoG#iYUYt+w~idxb!6ACBU{>ztaH1<Vd29RxY8&+^hdhO@|07}yC=V8e3a95G%~b% zd)BmstGXAnA|_qcDc;^bb!+Uo<2!eF|M9z{`PuIJVewm6PkhblIhy~H<@zkEEu1d| zWDgw_ign7IW6QDi+O=7R`7yq3w%_Oezkl+5#I#gvPZ`~B=U%nUT2oYB)i1j6U2@pW zzwOsEeM(~s)wB&`uKK39$~y198@<sfb+gjZ7Y1ik`)m$&8BLm+Y@&VS#_#=Gp1l-V zowRXH+~bI)Y8#|{Q?6FdxtjW^wrsiLx-D5TQSMH;rN0+kKkIz@!MjVZ%5Lt~e_^_P zw!L(Izh!^eRqlN$b9{Gr9}?g0_5J1EQ?I6EEqeFeO*7TT<<(2;y9>5*l~vf7Pr6aD z+<BJho2ng)c~`yW`!>7$>&&|TpA%E>tTuj9c~w%f^8TwcG2zGVWxw28rCF!T`1GsC zifY@3RTqNa+0U4#`d7x<yeu_t?StFyFP{ad$6R`y_xV@QcYEI`4)?!u0Y<iOJ{TJu zT5naaD8DR!^0xxZTZh+Q6<oI{=TmlfxUNX@#UrN`@0Q5(Piqq3vkmHyPp#bE>D=V~ z{bPaVi>DKGdvBEazyHtQw5b0uXl^7qA+7GH$iV}r4jjrlQ}pe>b6cdstc9~*>NrbH zmS<)bHkURw<~CLr?q*_Uwq|B#R%RBl*k!TPNW<vEzu)JNec(Tl9)C1s>45_lk}Ajl z^j($m&@?DuV6f)o-@^bh|LK+A!J(ld>>u98wJ+dsR;Xbp-+jK3xr=iV%TKS*O*Sm9 z0W}l4_-lk_D0K-LOkOsrsgcWW)9WY7%p!_`EFz~1)zoJ%d)c10r}z7v;;Wj=<!2Xd zDYjxd{KWq+<J*~k|0J&ed($|Zal(cBhYzd~j7z-M_x0`GJ@e#koJIEp=B;g8&~$X8 zN!S6c2+`H4rEf&CQ~kbm*e(n3Qn5a}_~@3VsFicAR?g15Q2vGc<)rCP)PH(A2CWcL z?46dh#A4<3wCzi88s$cA%ek!-J@0MH*~Hh6?C#9xe{K~1Gs3QQ`A3<3UE-hb?wNM| zGh5vxd%=B55iJ~gB7&O7x;v9Lc?g|8`g@Vj8)4H&6D(Byx{DV@Zs|PzXqJo$|Mb>1 zCngs4*u=-FUDsYxq5aQmfzX;3jTp(*OSFD^IsVYNx^Ua-@GEj(msLgYU2NCQ({V>Y zRAj2`VmsBtCTE}DPk6~HqcbmcLn(6=`|cC(HnqPom-^VWuXkO5c<l1qUyL(_RPw#$ zGhQBEdcv``Yw7&#m&NQ~@7?L=f86B$Aw%wb`lp<IE#jZF;ts$5^@WeoFr-Hy(JA6r zgrTF)tIPR9s*jip6CCQpOgg=%?fcAH+c!sDUgiRO#IK3Xzpg$^oVL&RZNToUao+#e zE|s@h5I%2_zy8enS^Q_BpIuK|UwQY9q5dr0Wrx?8Z=dO!w$So$$XS8nj+ePJj;Sub znqfGrSM706;h7ABGAZkxw{9x~bJiGNlhW?}v%mgJN~MwQ%XudLtJH5MfA^4k!T(jb zYH{51@YmH}W2<(?trCCv`b&+ixBu1jmu0oH?5@sz&{uqXSMr_5cP{1~)!lvgj^i!i zx8ZLmKD%ggcIDp%wd?O*eV4I)YxFJO+`Ze}qL=Ajot9x4wZ`n&*XgToZ9N|Pa#g|9 z-KS!fuH#*2xy~j0&tI<P5C7c#dE@7ap9fZ2zPHx5=(m3Rz3+bXui)PE;g_!d>-llt zEdNuj-Nt{vKD<BXz^uLg|Bl7~+2c29b@0a>)BbRD^@q(xFHL_WYcL6PDD3G=;5l5- zbHJlT;mRr-vx1&YpM2Yz3S1mqRTddYB@6U!tYCgD&>Yd@E~A#9^ys6S(1ecd2Aq=( zS%VFE^OLR89>|_)k@fUArn5vrG}GgFPKttXv4MExjP{%-33g%%;@lfKx;L^^R)~9V z<T*XDUo@gK^xE(5N%D5b7-fzbS`@G?FBFS^Aaiapr*6hE)|exzTNd%Y-O;1{;y`GO zv--Nl?B*A|XKEajT65HGR=4aAnb{xZLX)hyRx)0-aBSZ&RqCb2wZ%Q(f_1NMu(Ik= z3W?ab-^JX{h0!d~cDA4U3x=*h&&Y`0*c;7@btbR|3aJKLon0p4<tje+xVcWFSdgaf zf|y-CvL@`-n!QFE((()0b_aI<{lQYY;<%&9f{R^6Eb1R6?T*UlC~F@T+cq;dQB@=T z_KmQxAN*dsTFOBS4BoL?GwfnyVwlaagkc548ioxFTNw5+9AfBUxXW;t;W0xK!xV<= z496LcGPE*WWw^<3hT#&!B8G_!bqui#(;4P61Tbu8m|t-#HgLCJw4=aXUVi4rBR3Q* zZ;5Q4IpJ9KLRQWrS9_CEtXrRQWSSRE>@H-KcW89sy|rF)!NMgTv)L5IJ!+in6orhl zI~JK(TW>BtH`Cbr)WlWgFSE}FKUbM>=q}q?v%h{GTQ@U&U-J5OZ_k!y_Nbh+FQ-a> z|KnzxeQ}C)7Q<89d`*5yU+c!GEzAF1{KM7u`;Yu*Yl$r;m%m)G;(V#d@@#gYck_G6 zv%607|7yDWFv-AR$&6)>^z4@f{o8KxJnQs^trIWqX*L%8dD6roI6IeR*1s!?S3ehu zcuzRJY@^wX8Jqs82p?=cSrQt&^~{f32V*yFev#0ub+(cH#^JC^9yvaKHIYl(RZi*f z3VuskeS|}BvJ98y(>o{sEphniA#`kyr<e8PwykW(CSE_Vz|4R1f1BC9x%sk(eniR~ zEZ;BbZS~_s+bs#fB<m#222K|zx6q$$Qs?*TussR-ecoY8!_$xb^>aD4yu0CIGkt3* zpJ5nBRo(47pH6q}4%>OI+o?Q%Ro042nrDB<o!fVud7d2iVaMcyv(Nwj=hgVjMrWN# z1|N%am3h_wMO$BWtllGTw@Ll-{*6(fg$0ZZjQ{^L@K@ZrvzNa{`1(|PtMarj*QeP` z$~ien_w=S5ZpD;DPURK@wq%*(g)-}3?}~e5)#uFd&_Bj0)+_ef`PV^Snu=5Y@GqQ_ z8aeIwV&h4lmQPvccUeU>)9mzV{!bBgCcc{^ujS6#)_7KbNyMJwcReYRw<m1*eY<x4 z^<&}6krnT3pWi9o_x!x=;T1Eg+5$sY%#!E}G~U@WQ!`<PLE-BgGLQI#`j0(QdT4b> zbYj(_=jWE$?J8<**}iQ;GjHPCYpLB?Ta<6lm-JjU%dWC-!xPC*Z>D~V-~UT1{QIYF z{e5#D1)sfB)s`5McJwND&g@m~C!6=j9X-O!^Vok?#jz8=J2QB@&dgjAmat||{3gNu zOHzHF?MTq;a9e!l&Z`r9j^<dT=$<g&G;h->B_Yo29irb7a$T3)lWW+R_}cCK&R2_9 z-|=1*dsa|lu5U_9?c2HK$Fe1=-ithc`lujZbn;;lV<lmcs}EI98%N#K&vJG-!|TQN zsNMQxy>-q(L(va&*6#bAY*iF@>E}7?mCBzy{x6%KSg}~^jEJG$rk+mg1lx~Ht8HcY z4&V2Ga+|CBRBmGDieo}+R^Eur<L<06ILN80_a}l?esyUTbB#>+$Ey0IPOrtEk8icy zxlrKDauW@!b1HA$mh@$atMGnQ-}=cq`=w;?CWn33xPtips7>ED`OXpjbLBGYb?fTq zXnuIzfBn;Y`NP~76;&eIk3I4)C<%GYQE$3%bN0hSS}I?z$?VV&5Nd0R`O)OyE-d@G z@W}fcFUlXpi(aZ{t>3Kix4i3e{qfHGo>P|We|hNqPF1GU4}(~RFD<zd`DoRyXZ4SS z*eA$k<b6EgKVz}I6#w6k5g*v=pMIBlcO$+q<?*-P_qliK{s)Wxzwpua{KbX2&f*WA z&*YXBKk?4J<D=jvtFIFOY$pBsFfqjbX0QDROJ|AOq2lFXXN|9(sdOu0>6GB=I%XWS zve1X8<w%fXWNHdm<BCwnie?e<&(4#sTeKZ%JHK>;&%LAni$0cngvPaWiidQDHi;O- zvpw?s`Rw#@@%?2Vt3TY9`C*Z`@)WxjOG}Gs07J^mX5~7$Bj+C*Osm`d<+j|`iz$6w z(=uf0`ophjd|sov|A3WxfT)jfhl<WMOUKp_7p=8MGndNPNr{@OU6d5%K9f`#@@19_ zd)_pwAg4nMf0}+?^+W20d8x`8O+_<b(T`JBa)0u!xZ_%RM0lmrwzmi0&aGuGEno9G zGN}0aHoo_Z_bog4YVJPX(z)MtUPj&z7LWXyF#Ubt|E|5qw_W|VCNl8;^^3RmZru7+ zy8P;@_-gI_*&nB66z69z*}QdYzIXcXzOUY;>-WvvFBHOQT=2EYYQ?K$ou2lOMuyMC zo*AmiHOeYYYhP-0c*YFzDLEgCf&;h?bZcv@e6W;BWq)f{Q_W1#pG_e=pVm&l|B^LR zY)`bx{%92s-Vb^z#?QkpNFM#ER_ru2{GIN0*QIT)AC@TztZXswnG(+aKCM;E^uhWV z#)`vFUUxs_?U22ytGZ@Q%&Hq6`%Gn`&RjdQ`pXo_NNCrbAl23+3$`CCN%<n7Pa z#l~*jJ-vGW{srrHsXm(GE?Qo7Th#t^+;{Jo+o#08t>M^KzqIfwcXi(U-#Z(xoxAG& zyWHgPj=JYlXNSzTzv(tD=DGHY#}>y*zcT&rTgCk4Qq8i)n}?3ndgS{@aAh4kvMJyW zgO>NI@Ls_}%S#cnn49d~Cv0&z(lK!+uSzdRknA4eo*wCYJDq}*156jWuKLyVxgjcP zu4bOb3bv&>Txlye2u;~6@@3|kq|}f#=Bkow4e}G)RwyKx3Rg*|78q)TD+eyQn9b6- zX33VG3*{>Jv!c%gu38mqs?GN53~P7T`wZDTLFMO982t~Ij^1bT{rT4ZuUFT6Ex($- z_I*|5;e{73Yg@CMnewwn|KeDEy*)qv*;n>i*9Gc-pP1Fxb>rAi+1=N#<wf8B^|d<u z$1XmzZT~awo>=;O&(&k{9KD}k&0exNw|x8dWAE2Urexdtrk=Z%n(G+<B)@SQ%Ujmh zOTR4=S=*YV)v;pPrIVaKj3?%(olaV!7RmX`oGrNeM)9iRo=(lgj*MmhgWNr}BOBIP zZ74{R%ZoT|!!Et?WvAx;maUmuHxKSQ_~Y2a&H1l%Rky_+R7>iata`*hX7}`^_oVC9 zN;f@x*uKqOyl;Zp6YHH)?Y}t+<heI9znd&CveQ^e-b*S~Ps%B%am^05>$No=VKFsR z14H^hO>(Thsqw6*D@$=<(B}nnidtOq`WUAO_XwZT<l8@|;<(M()mJQcwrxo}WG;C& z<w-)IRgB1Ug=LkYYs`ZVi9UH9>HGR-@P>I!>~A*TO^b<trL%GK_6e-K{O@n>GYI<s z;h?hY$1DCp%Y)z7h-Z{HZZ3`v@jS+H!sQD4WSR3B35G0N%H;G6PHM9msBk)X%jIdW z{G!q4!hfJKbY-BM<>V8K4cu}BXS4m=oViCT|H+{}!5e*-eV$glHk-Y#%<hPM?ClSI z-<&@F^<AFTFP~A}_-S2#Wp8!seV&YmpG9;tRw#;xF0^pI5Mf+paINK__o0`6I22s| zN>1ceY!9^lxNwJG|Nd(WBd@>y5On^<AFeYSuI%tloV@!$?xz{QPRy-$f9GRc+VS>| z`?h6l-<Ps+6nuK+op2&dNczNi9XAu!$yQ#>TAr_rPsT*D1x_lu>QKVhxvo(*EG*JE zzpm=?(Q7=jl6B{v?KO7~v%T?kU;2j1mxpfc&fCBBbLYWzH4*8`o|^=>32$kazOE_w zRpOsOgO<j+H3wciP}8bBC%Apt#wl|?O?cAC{2{+NTz`VujCi?VW6ra_Ze>nlo4lEA zg#T7gc8r~HXs2pfy==p-90m8(8s}G*>-<W2o}DaE@hK~u=)Qi>lq$c!7gKGICcO>U zFIXPxxL~TZirPGO;|W|_k{1c{bhAwhb~BwPX)-Tzf{cUl-a?;G2UZ{MnKZe5(qop- z+J*`)JCx6Mcdq$#lhbtTj2WqO{cn7mx7R-Yw$+u;yMK?IH2vMbzs@`R@UwXxHj|Ro zJwLy1du=8gS#9+7@b`B8y%vAo>aG|5%Y1lu+dYriMV~|)O0TTSY1nFi{z!4*wyL`l z9sHN(at9}`;O*LFAjs=@as@;GbG>W97RSRncWF%&RoVM=(+Xjgb44?~H_Y*~Z(Mpv z&^$r&%65iDOrk3GANOs}FaNu+{C|kpbF()BPWS9>ITzJ@WjgcN;=<X3I_Zyi&MlrG zEnMp8d4ch2SHL9|?g?CLHl#2bPJY9u5~}!0Pe`<M*$%7gO0$_SGPHblc{W{NZ4=-1 ziivHTWOkXB?e^gE`%+qd+)Ov_`rkXTkIvtctAFlTbkcasb94K@2fMai-OBA2W!-1L z>D5g6y@n++m3532zl6@@@)ffS&+jdM{54r*<?7={nihn#1oIrYXQLddkjyCVt!i*x zYsTtG=Hk-n4`Yfe12}kA9*C6k`QpsrGifbLT(?h>;u)zaQ<`Q(_^agJG`<|3&E?gh zwDjBimhy5wyGNP#tF~7kKD>SU`WNs1zxwq~{=01D%iI0yBk$Wxim@*F_x1PeeLGS^ zH>f_k^*;L6%lvom?uE)*Z%OtxTJg1R`||G_uX3}kJj3Pi`?(|A7azOgNu94RL}gzr zpJ4K<AmY@;K2MtpW~FW=$AqJc-t{bLWsMT8l-RpN?CC)cBL%L-S|8Y4@=Ok9TQba+ zl6ff3x!12@`%VkF_?jn&S9ACYv;A5)v9HqN*u%*>CRsg;QoSTtlI21_d6&qnzxaIF z{qWQ;d&Ah95*W3fpAc${YT6<CAnxI|29~M=kGTEH%oF#0-+SpV?|MD&xyrqzJD)aP zyZuP@ZGTZ{xSou!tnyoTPv5_N$8H>}Jn-B5!0+#kW>e4D`s}gk{?7Mcuc=0)#e==m zgO0F@%v@Sw_mTgfOL+$?&z#B-)ky9G2X4Aap3HF$PTdxf`*P*!rilq1CtU@*b(keX zmVb=8BV|7Q8q<`YJFT0YYbRDmHT~UtE<xeVJDUS_+m%FL6y1N4fA3Q4<(;2r?rw{( zfBWy4{;#~Z`4Riwlp}O|-z<|~7AL?`|GeP&GU4diW{mg4nf;8LVx}7=rilvcAG{iR zXw#~uNuoJDf+1pF-)vTGvQfAx=lH4F=XT;k(+{t{AK24-O^BPxXt!t3(*-laLm$0M zaagfd?LkL|Nw;NSV5-p9o4<U@m=h{zuC3Hv5So4E=j!(sHHp<<`krO{^DB2>lUNX% zU3d51jdL!4m%YD#acl9@KiA*C<=KAx&fK|;580;4)VALFbg*Ofu4|?OaUuV=E`OgN zQTC<aJ^!|?SM%+zY<#-=vvt_@FJF&a<uG2T&Tl#|!@N&w<^rXU86^{DR&J``PQJ1r zc&AdvImxWsDX$l^$vm9-Ug5KHeptb2nf^b2qUSFCFSVom_Qu|t^ZffaE0-#MU47-{ zUZs_a)4ab2``qCv`oeeN7W0;M$^Y6qcTcz#r%<f>BJ{{1?-jLL=0=J4=3kg<993U5 zucz%aYo_9Y#O^=mlsfpX7>JlQ%P<*FJLK~Gp-X6BVc*Nl>DMD<SGq2<IP>DD=hnE% zKQrCZ3q#!1914A<L>EV-uAHW$$B<<t#Jwodb+Q@z?Q1$+dNH^5@80_^+jisH*RS5? z-YY6_eSD7hbiCXPzLIOzdwXq7-)8sUy&YVg9`60xO(^@$mCGS3djI)mKi@X*Ro86u zZG5ubFaPl0-^_I5dA9t$3!5)W=JvBhPjiWRn7?_OX!dI6!*_G{u6D4S+jZ~kH2>7^ zp-c~(95v&0Pp8MZ**#A=xm=xJW#WRWxyfE1cK)<_)%a1>K|@XJ*{ll%Axd5%&1#zG z`@V&hMK)Spx#4%AUFyEpG=<b>?$6E#n=LP%?k(n>{dV7tbIV_w*S<fuE>`>b{m!7@ zM`w#q?9$VksjyVm@cX>Rf}EGro*Zj?dYtcT$L(9wa;-|fpS-eJV`KNt`(MB6zuR(l zQ|`^!%NyCQ_04!@`tCl%<sCDwd9Gkv;Ihf#pvh9lK#R#bOA_2t4CEFwNSo`#J9L`5 zxaz*~Q5RTvK}XD|H!(7e&A!=KQPIy<Qp`~2Xop4o5!+s#9~V7m8y(-IGezUssYA0( zP6wN@Pv)yU#L-y9$fQ~_hxhA)5{aTuA?nJfu5Wr?#k=Rp{8RJv602tPGX`%r-tbn} zbjbmS|F0ju^W|N>PGBC7;-9yb&kow<zHdH$(eB&C-aFcNqBnG#Hu$et#PIQPvxK!W zL%&L_l$W@`kC%_%?faxsZhmt|zI<ineLJ^<ALWbJpZwl)g@xmvJJ+uh0uO`3gAU)> zD=%NaA^i6D2gWOzf3NVhW87rFMvCFz@4)Dk&-G#vvR6(QZ(`7$6{9Y+%_U4o_281= zeV4d`ST9`Ts#aoHuc{%!#N`^3`hi(wqShRT()Oh}Vs~XXhcE=K@%z)8VR+Dd`3di+ z#Lo@hAzjPt68UvB`*k$G=rg|h{ffW*y{+8KJ<F?SzH6!SbkDE$tqv~j*N<-ck^U<B z`@5X`dy0<AemCWobuKU8QtmqImUErdd|%b8e^*64Q(HFK^7N5V2|W&GfmpFASx-B9 z`Qr@!XxwEIf9tsN3d5HlOiPb5-FzFV;NiN!c=nTWU#2EQ)f(ke%?(fc?Efw1iH>63 zSQD~pOPrXt+e6<++pZNkC>f+#&OZ66>(sT|DdEPiXEpV&Qk(qqrcL%rt(e^<Gi9Ew zWHr+7^x7WrP_)2jx8}<9RbnCwgY-<hQ$skdJu0UKey>WARo0e`mJrx%wYc3jb&u4( zh(n8hZCv@WT6B}%rW0i)N0T*+PG9c-`z|5<^o51*mYJ$;tuM&@v3`2x^l$H9zTo}1 z?(O#*t7b9p&3*XdLHF(LOYQ24mlR+354)P*uV+_Na$A1V_f2QL#Vhi^n%+93YP$V; z=!9$APp~D`?0J4+w{ms;_WgU;T9&QeUio&@yd!;myRCz~cfF6?^YX^u)%82}*8aGA zCEGv0KG{9FHGRYC&mWH0XJoJLoH$|snsxb;*GO+`W~_-9ZN8hFlw`DvT|rX)!1X0j zrv;khgBItr{8OoSdvxH_BIA>cT0)Uq_C!r?ddc}iXwGcqynIo|qD-@m>xI8I|9|Fj zw`k6jNq&p1`mcwTUtf_le~*jV@@*U6T@RbTXZ`=@tDo)&vAyv}*MOfp_)Lhw{nSTd zS>F!_?JMg!=eFuXpX%JBVsj=6e=kc7(6LdLJh){?;H?k?)AdR=>UwpJN;b>9)~pbc zbUd}a@dt-c<MbNEz&Y`Z6RveCe>ZXd)IC>JSTRjX!6oOliKpd*=bfS%yADPw<yFpq zDtJ_?dZl^5OZNYsJ6EVz8U4AG-<+GBee>(#`oBM<XUA2)z0kkk@Q=SLJHM@=#h)2k z-##RlzP8Tp-L+_c<o=KE-><c^vbeMN+sT8~QTF{+84L#Z%R<>RUb6b!=@h#<%UCUc z<DEG@^;tqIf=_vb1@J9m?oD+%{o)N*mBD%TgIkv=#<=OE{*;aQt9;1Lu3*cv!1uA< z;j)rBU$)fj+?(nB=3HBNo4K9wmL5|%rGxeN_bsem@NL<@AM5wu`8ao<NAA~iH}0<G z->3E5V}k$hM*pg14KGt4RkeCs?%HU<EiCF8q2<7u!P~XWc#5W3tLFN+JG0Zg7*oCa zTG@_pS}o%_sd=Jcfx_`A3oA8~Po-bA5t^OkKl23BM&bW^&o9@Ly=ArM;g4;z{bh2) zj|NR&XLNqK-`raQ?{CyUT$nQHRoR?;?lb1?JHtQ5md;TMurZ$&a#CrXQ-S94@)t4n zRfWk_>ulz(=6iPP^3FxOmt6X&;1DGf*ibPwZ2H{A4Vlg13jY)IdR9u<Uw82fUE(x1 z$G26h%;xKj{-C?Z)zA93Us<x-Uwqz-d10>0mmhukQuBLhf_BlA$bB^*qd)1ePV8A! zf4tvsRuogZ+1)LdCTAV>487lPEcN5!5ARG#8z!R{iTjQnxqJOo!lo5Bc$ayWv@KO) zsO}RGJZ<b0xzOkJh4%dug}olc-#oa#=vh;JDAT{Gds+T!?>-!9^e|quQD~aagNYtH zj}|Pw>bhR}sF?qevkO&>nOE04ePQ3$VcK6AZo1x|$FwSnefJ{UdB6H?pB#DiES%lm ztG4A(%-{UTLwo+t>sUTR$E)vs_g%L=KC}L5Nl)$nYxMWARIZ<e&SwVamV&uYzMNot z&~xM|(~boz9b!uPH0H}p;JVPE6SK+0PcQR9kaB{JPZ0C=OGaOB9esbf<@Tfbv45n! z=F2D^e7Zrbh4DfE>V{k^nUBS`b>~zq>VkH(wODRf^|28<b@21wHK}*?gT>GD_tkIk z6qWvO8vW^{ch2`82fyr!kYCfy+@CfnO#J2sp&gSgW@t>GY3FAVy~bkFPThAqKd<Z$ zC`~@|RQZ7Y@(1~|XXtALn#iTNoDO=pbeWSj_bS()-THBVX62k=<jh>L<dvh0$p$kg z_ehZ~Hf`5DN|de%ZEUerX8#tx|M1RrTdSKNzx-@3HtU-0wcRgwJ}HR3{Vg%?_|$Kr z{rM~6=il@;@Kl?AbJ?5H+;xXMJ40JD=kQ#g%l-P?+=%UkpLSgqxBM`dWjc3{$CC#V z?S|UF4mN&$TvWhn5wzl<(1qxlTk==kQ>V2WT0VJbG9`WX)|}5vr_5xzSN*?V_P`eA zobx|^ho9S2ZSS?#V|`;ZV|GAlQtq5Z>op!<ahy13;pS^Gi&;7pj20_2DVd-0<T3Zm z2;iPu-@mo#-OtMbZtqvbHT@Qu=;ivZ^w*+-wy3BjVTMb?1OrxkO!zXRx8b+d@?bl+ zA8jurZ0&x%s*gG7AF9MXd%pbCHCY>WEIuy&|H-4fn^<13UNl(cBzWP__4r>aW(3V* z_1bL1Hec@l2Z_Hf`YJ_V*m%4iR@8j?|FfU@OY!On8XJ<*ME1>}TGMd;1M5FevF@V9 zJja$4ed1ozSEAL#wyKEp^v7G-_WsIlwSsQdx`C||Cna>ATBD<s$bInd_8Hw37LQIU zb`(!oFTeI<*7ixf(}TqQYlGhxSoOYYURnG7&hzW9x^)g8c(yx8^Ux;$ga2eW*X_^G zH7L!hVYhZ@vi*P0c%SNFe%qt=*;D?`TKp#bPSDRO!eS3vTpjw`+?Gx4IqU!Y|G#3R z++L69&eQC{rl%S{8Av>R;{B^@onN}+aqIRlp9j~rwH%!4yw+*Qm#lL_rK`=Z=iRNb zDt)>3is+8ATV|`1!tMO_?)~+sHs`&%eqmP7#=152e>l51%^J`C;K*TnRwymfo8TSI zE3PDd)8h$uve%}tOQ*jzHR)>lw{9uB`5@@Lk9g#Mv)Q{cOFv!e<2|YS^}CAx+m`D~ z-{;-EwlzQD=C)kzZ};vW5R+B<SH6AQJ4@3VjnZFt^S9ZRWR-uqGHdbvUqzq($5nrM z%PI4j<HGF|H)iy59qsM<a=Rqi(^+oo9=0P!ttH<&OnRAG_b+&;x_cA<zn_o#H}@E9 zIAAu*Kq6Pd_^4pd2F3H!8qK!ZT;P#n^*i;hb$-FL9EP2{zaMb;E585#>4lGLZ}T1R z&zBYo-T0~Rp?=?-8zR0hZ#wUmkGZS6J~8-}z|v~Y;G-p)`)<6MV|Y<+%9*Me<rB`` zW(_Il?C90J`ux!9>#0WSp=s5Ha=&b<CWj=r^38aw*5lc^`J$qhhMu?bDV?~Cl)XL= zQ+94IQroxY#`kLz^6TfTKRfev%hb6Zf7jotJ)ZXHqVUT4|4;LZvloZ`?%!G2-p|_k z_mE27$vw9`-}W}&T$th7thsiz%mLklK0BwLb5~Gc%$v#5(-fR1n%?uFQ73O^K&C3o zWab^I#{_q%&XDEWuCkg_#pt?5c!0zN2POdxb1f^M>mLG|zp78Zxnptp{{xpi?qA#X z`ThSdQ?FY0%ZP60lMg$3>ejZBuQr=Dn%4g@(eC-*So`qd!hL)<{xiK<$Z+;_`Dx3_ ztYF=eM$00HgB5N?O!{-Tym8SIf3l!aI7F7M&~(}I%DqPeUpY^kHd}SJbmXfChPym^ z!lEsorY(E3*vP|Z=69c)?N?omJb4o9-#mz2y}i`*{hM1iHvDur|7^bbTOR)MFKgfC z-Mw0#{<xs%@3#B%q;uZKmb=HgFWCI7(>Hhbwd?ENOZDBmc0Zy%dV}$=2M4;2o9o@= z$YxeK_kO8enz3;BW4~a{J;^%^JFh3`PM(%FG30>O+(WCT>-7bMt<+2lP~7$O!D-=E zhmI86X(_DVlU%c&S3kf1xZQ8gkIM%3E?-~nTP+^qwqyC!pIpM{-K(B4*jDbzoY!#d ztlLqSY#HV^M>GCbWcM6@l32i(7P#V!6JxfUp}#=y;zbG_Y7KgB!cuiIEB(#}C$99h z6Pj~=p`gzlbCG=tp`t2>jU2Aky8Uf_E^m0>e9JS>``^#i*-!h`AAYZHx(v^nnaBSn z-MMtrWY6Ch*)b=l#xM6<{_pYh4SWv8e=H-~8)s^}&w3OQqV_70)om9OQ&GcYwIY{^ z6D67-*+w3kCY0p-l`rdF?T5V$w;1GpoD#_V{kOt+(aw);U(?@5|JQ$gQ&{A>q0-?M zjxIAV_3&=esyTJiebUa<4~hzM3q5n)p1WV*mWwm;*Hbyc>zT^2nt{_Zi}#JpY|VwI zHT7H<o-y|BTeKy#clGB7Qs#n5Hj5@M&pdg3$@9~Ue=jH;%)MWjS^V{uL;w7c|0>~Y zzizAMtgiaw^vZnCwCh%{@2m_@(9L~){>%6Iv4^`J=cb>(#Jyo#x-|dYTfahH@0k9q zeSYAR3+J|IzCO);Ixbsp%{f7lNU4VoK0Pm6Z5HGRvROx1_G`{i$#tBv&N=@`>4pwI zlb?Z7{~j1!VN2$E<<QwwaQ4aM?RslZY~_sdcmA0Dez{kD@k)OUqm_G4-_76bSr+{& zWkY%5lX(i9{p;o5E3JJP%Dp%{JLo*4J>TJ)@`E*>4fdxV`6+cs_>K4qH-m;7QVuf{ zIa(TbCNqdU%MCj6eQLM0(G7)sk^M8dAI+ZK{-}F#&mPIgA`=^34?MH_lh>UfUefsO z!Or`=`}ckN<Mm<F_wDa8a_?Sss#^EQVyUV;bF6)1<+nijZC)48N%`H(p7UnsqSIUr z@qYg=I`IVh3LiYedt2g9(ALS?lJ!fQqF?POYP|d6?x|SIeP6liW4>MdamDjn?p47H z^0_@L7+3PEhqAdHVCqVkbYXSLits{nHudWFtCVh5>o1zf7B@B2kK_Bd2^-qf_of*9 z&v|tv+I8jRSLJ5)Nw;+FNBh_w&&u>Y_<TmmLFS34y*d;M6@IRX313;^zqq{i&&C*g z=JNEHcRfF*-cgPDm@4+}T#@AS>6dOR*L{C#yDE8$3uA`np{VjpTmNkh3SP9vVDfkW z^|7+Ew!D}hvqydI_wdVm_OpqtZM!XYanJrJ<Bb`5Oa=On)N);ydwz`$+oZbHzO-ob ztM9Y*cfXkReY4@aj#aadJrI2V>_Po+&j%8mYUU-Ycbgx0e>eP|ns<lgSI4X==YD&< z659UnmD+;IzI}(Jk9}yr5MaZ5u=v1BKlSnz8l{;jEdP0T9(ezdX_fGYd@sp~%wbxQ zoj#GBiosz_s}4Hr&5^2bDpmR_mei!SVR~KM*(c1;Y!tHHZX7K%Uh8+E|L9kjwhLNK z5+U;sE@0i@&c#x4YNLYK={1)UyPq7@s$4C?{X$kOQg8JGp~WFG%A%r&`#PUL;BIAW zV_H*gES_Y=!dzgr*07&#I=AC*uVXd=!g|7Ko4%w4&R!|M<<g0b>W^k>h@WKXoE>KK z>(Q%cj{F7RQi9g!SzX)t^<(*Msn`3r?znqdbj|NqT~e2JzCP7|ZHtcVj--1R_dGhj z{MYq6zg#!%w!39i<a4Z<aY5$-t0N)?PtWj+uJ?0jy3wc*rP2~@uQo~HtBUrec`B#8 zI9KeH36P%3r8{r`4eN&?QWsZm>09*rXyirNXD=iAl4XwR^mi|>GqjMoR%9u0eu=)i z&66Eo8<N=;vs}?Us!`T9jlCmJ_<_XDWLIs2iPt_<nM_-=XLppa!n|VNt2LMZ_2u@j ztN7A-RhQXeoAsUf?nbWvRvCVqyW&+q)_d-Y(;lC^TW_^*+tRv*8?P2`@A<P}eSPWW zvmwW%*Tp?3Yx=WeMwD7yi_0l?rNGRSt|F1MIJ0*KmOgFv*AP=${kZ2`+vRZIv>dgd z)U#aM%}VUQK6Ciqk$+*c%^iaqvXPbkYi{2bzFS^@ygbbH<cDqF``6~IyZ35!#=W8y z>5s2Bt6JCSa);R;Tk^De^`X<^>Ra}!p7pc39F&mmHz8_0msPyB$M(<z9d4HvgnYaB zD4(Y?WybIB?*9thRecI#{Y^dUUyephe0#)@FImj_YoOXX{W2x}so^`D&UZb^-x$0* z&*9^F;T1n__r5sK=`cS?>))!*32{}-3)WZ8mECZ0tzMqZbgTJ$+4t>C`6QRox7Q)8 zZd1}Ly#&p8e&+bQ4NI;sUHn3-HO}sA#HKSZLK;^Gq<N&j6nMwD&iPY<5LYPEqgP%B zet9lF^-d?aMuk~7%ZvSPZ$h49k81o(p;sGIp1!`@@GECB(|fUUE8qJUcE3-rjh!8B zllS*WoSu8ei|%V*e&5ROUmO4N!mJytMNQXDO3URHc9;MAy-@Vx?(JKz)t`+EvDj{O z>ka4BH(&H4cjU<zKK=dnZ2Ya>qC4jdVz$4kys)cZYsN9LzRxTE=p=T&aFB7DG3Bz~ zkB!@Oo`-gxl)fk*)Z1mo$er}Sx5+@F|4Ctszp&VB$$L?SEU7Dunk{U2%dX^XOnam@ zsW-65sdCR7)y%1Xb3R_#SYoYR=O%aX)ckMGhu^IYyMFQbqS}9H#YaMKXKB^kGp?Gj z+Iq(4r|NZ4In_b)?_c}5RX(P&@!3i{pR1qs9%O3@r~I4NdAqQ+ufRtB=BxJH0HG-r zvby#f?k5bVUz6RD_&Y59O>(@NR;-EE*-bHGdlzr`x_5I%&k@D=6OZ1W3+D3P@QYor zdp}F^<rP=ostNwp@Z$@(Cg>k#*tF)}RhzUVb<b@Z^>?i;eau(Bb=S+4qR#ERzWqrF z{roJb*Z$uw`>9qpt83nD`*nl4JMUu&Tef*gYw-H_oY!*i*6dkmtC;s+VIP;NUHz{+ zXXliK-uKN-Szvd|<j3EV+6U|llx5ER586^Y@4*2HxvO8p^cKHPoqmI{=-mvFwddGx zML0<u^Lz62N%r4QVH{qSk#e8)_2i~3UZgC4Pls9hL!-{(%=QzEZU-A3a~wTpuy9*l zvUv2o?2irK<0UIHW%jj(M<}0>^ex-$+IdR#<?fT)oF0X4IR1%ci5+iXgyhZJS5LX_ zo}AMf#oQsfU2+x&U#`pa@Y_`js#nA>mbWrragG0KPTp;{X$wE^{;KW9X6s%1IQpiX z|JK|cJ8SpIzE$Ulawui^;2~FB9(HBUg$LSVky$?sx%Q-<p7|hx$tAf*q%7G)_Kj-) z%(}e?ZafhRQ=R)|s*g)-lHr-Ph9?*;3hH#c1Y4z!sC~G#bMmxvw-U7f70AaJu0FHz zynfe}ZO0R`R{95N-^iLV|A5Hi@YRY%x(fu~@h*DL;q}wPR$aI3O41+Z<w=v52Ti)k z=A{s(-0>=q=fvv+iUF@LC>{vZyK(q{yWQ3DIf3g=T%3{dP_8p#^W#q{+3!~RPpf|J zn#7uZey-@V?X@da@A%ohT(dUsZCB{_Wp3YYTU-BRt^XDIIiUQ;qJO{7tP-(&)~s-R z=b7!BAAei1>9SDG-2;D5cK4rD`gOURxxVZ{+@s9Y9j|6xu-#Qu$<q2#QrGfhVAk9B z=jCfxMwPxe<yK_%HT<#ugy-@9X1sd1T0Fvj&A~%CX^+&RR&z&na(C5O)o?S&X<y%9 z6XTtIXe*nnF5|-uX0=N5X8YNFdeGkWM#DmH!K}#6(4{k*jZHM;L~f*e<_9_PO{_F| zG$DRMzs;q9vsd!|9Nx)a*?%wLN$%Et>%Pezblvk~x!b`d-!}hoto2*&Q@>TZ<h9Ht zoy+!_TX&v*HsyB8&FQSV`Z{NsdLQvzEQ%^(`zyC$YNzGR>V&>E;RY-ZjvcYl{URW% zcv7cFb<H!SA8Iq?FN!TO)eoH<+7mcOx#M5pm-}Xcp|NTSXWOF%ydNHxkNu-PQ_GC! zmL%h|4%Uo~Lak;z_iq-q)KB~{C9!C~%yEmDbi;i%Qtj^_O_dd9W^G+6xBqTnoZ&=? zim-n<j}~*jd{7bK^3LeauFV+{%(`<#H}nZFO%qd|K1m>W&g0_Cg}jl*Q#WkO6b;$7 z&Pwunb~OKX_uI;PZ@D(so@QH{_u|iju-~Td6JCESj=%cK>^EEVwnBNE3m2ZRiF@`s z#?rMmRdbWi+aK%)f~`Nl@5(iJb~Ce1{cPY$2HvI0v!{Q{iMy2=m&A8o=1`0Cp%vQ? ztUqX>u*g6vvn0ic`E65##jI4VPXYlNotzbu1wIM5&nW0QTq;)V6R4Icz~!6v^Z-Yk z|6xYuX}non6P~et@?)KKIX*S8W|gkPuWhm~=jL!~ST5hp+}oh2&+v9b+&af^x=Wi( zo|U~?X05s4tes{;K&l^C#!Q_L)_*T<ICgKZ{{7-F;(Pu7)s!CZ+c)d8_O7JAb03P% z-N-vP(P+<W{`Tr~w)<Z<E0^oUe7>=&H-3NS>4*1vn|+(x8HMNi=RRSbq5g}*KKPT~ z3u&JX5`S&gG{jP5T9}ke>pNw(JFq)`{P!jD-u?eOew;V5=HBp4D^XKpxw}o_mPZop zuRWIwZJc1rIAM8=W!s7vUlrH0FW#wE`p&znyPLD}Q+uB9(*=<a72FR6+t}xAdi`9{ zwJ`2($&TP}e`c9YTkR!YXMOvtcWwwT-?h>?9gAOI7y0e_%H;RnT_;*Tv+onVaCZHL z+$l3ZtW-P7b78xY&*Nyxbsv|-?WmaVqtmQl#c1=KD~T_s@rbLvsVkdeqKQRg(NT+I z53Rb3jy{N$Ont94Q91sEi*Z6|3+o^59^Dn6T7qU~iB(DX6s}$7Cf0GhXz>N7SBHKc zJ^fQHuxw3|^>iOjy_!u^f7IW<V|#Psq_3V+-gPpvO3oBXS;BpKQ`(8Cr;n&z>C}v# zJ7d!;#(O({Z1FJ`p68k1vXCoas*;{s>T2UjjE9fN%zFCf>{<)KlHl1}H~zhAc>nCP zfWXUrw|wug>wn8J+`r)Z7yh32;pf;}63;QNSv#><>(#~`lIq#VA3a&MAj3jg^zfgq zsdKo_7<NQ@@;rL-Bjb_!$=7E$&5za-&$-RGUsW<`Lz0`T$?PLdZw@O?y|*$`bOVDh z>z$p-S7%Q*UHk4$<j%r}r`GD${!VJXH!tEbS9<B%>ch1gw^my<YroI1-?OZ)(p%+5 zfbdVZ^25__H^1G=eDB2B&vQ3x-FbGyeAjIAQkFSaBlLI66&(NlN7SL^e$pe>9d3*B zd>Z`{OMV}D6cDp?Y5MWXx%TG{g=@I!*eHtyzR-W=Bv~?JkHi$w^1!KHI&x1{=f2(K zb)~QA@^Wpb6H9cb&D}f4>5S6m6Kctgd!}zyI~n4!HC8sTFKxAH<U@fqVto<UrrTZo z7IU_JUVqrilYe$CYPcG{aarN>G~IfBtGXjIetlrqbZ%7_68uul`kZ-nY@qm0-8GxP zzhb?2uJ(Y4QL@oKq1J*svrfKVa4cBz^Pw5bHk@t^+7P>SA<KGi_3{!Ey{2c}XC?%` z_Mer)n!%-&9vL`Mo7HFk)T5J+XK~3D`$yflv_AgN@ijKqVQ*JtUhQK$ZqXBI9nJf! zCs^7f>gb$@rD^4>FEF2AtamfH7%ahbsefWoz?ZXPKW3O~R`|KyVquhxTl!dSF9ZL% z+-q6;_kCKJ`~UOQ9bvbNc2s8^uAaxHZ*B3f)_-g156^Gx;b(SBh1CgfJdk$aI@1L` z?RFQn=M#G7>$PwB8PgkfJlod1lB2%tPmtEpS_8XlpE9yvA6~oWZI|Txt+NwDk_*-s zJuCa^)0e@2`L-upw8dg?&aYD^Jn-Bc!y41HuPbmJ<2oPzrE}akdF4cmm&t5tycXlM zmC=XWr^PK+VY!yhwLc}74xK%_dd<R4@$c_8t2sriHGU*#9eL!C>y9Vk`#nsT*%=mp zNc<=r&ZyYCKRoW8W`0)Qy{kvWdiP)7;=ONIlG=N-x0$(jFHb2tRrphR!T)s!cD?aQ z4SUy-Qsmyzx-6w7$LQ^=719f@9DO#?@6#FMd~@lyZflL7-T7FTb+`Nd7LL5h*CL-+ zc5R(}S)cXR-+g}ny&q2x{&t=DZe4x&2VSf8+Ld<q*orlh#Eh;S7eAZm^R1Y}v&%R% z+;7d5i<hjJKa{-L^q+0_WQi5My%D(*J7!E-zvx`d{i6Qu|FrF{Z!GrSvh%=Gwe#xB zkH_<VTX(mpd#~!&+<Lp6yEjk!eO=^!!GmSXmd`pd)qZaN{aeQC8_vD0U2r~cMsygT zhxU8#%BuNF>{H@Tlr4LwncOehC$E-n8+~K`zl4lE?`HI*C$F6RX2vTH<Nlmfmw1Dh zQzt7FEpyy*KrZZ)gQ=roiQ5`J)!0wp^mtWI#VX!-$N00B;h$@$MNfNW!Flm&C&kQt zn?7Fu`!RgxGTx<IGMn9NC4bw5tk#!bKl{J@^r<^uYSgp|e#{DByeeUJ^+KSxyR7V2 zi$m9iwgqYL(Ot4w_W0v&>Hj-Al9>A^6jXaX{A?uibQ%BE4`q6Ng*(m#X%sIm{2>;% zb8+F0%xmjS4&2q4H|3)H;{x_S96Z5_KP=Kp`>w9L`0C5HLqX*;mup#U-<5Uh{|TYT zN3P#VJ-9RYR$fBe1@1Ro0UKi9EU`A&G-LArZb9B#$v28L?u13#^)_Ah&y3;8Njf8$ z$9LoEt(fLO{Se*P>;6wtzOdzriU{Ynbz)_rg_W`UT<w1E3XT6zVat8;xbhlfiNdh* zveN5Y*2llPbLZaO$}PL==eoX*3I6<GUT))p`eOI+FB5GK+u7ebAgtMDvU+3JotY;u z7Mf@;-?QYr+U!Hig!z|9=zcbwdb3#}_^m>)Y08Xw_rry9H#beX-r$#YY2Aq{H9cxw zP8yMFrzcoXIiY`=dH1AjM$e*C^3z(DbSSy6^!`6xM^j5je8RIV{a|sk_x##ZIHIOT z1hpEbZ-2Hag2`^$vriw7?%$;nuri=AV5N^nNXeB)8Y_Kn`Lw+K@#vcUw@bpaidLM} zRf%~g^yAW<pxi|w>-+TOc5i9<w{fSFl7YDEnyx-ana3ZVuNR$f@kj1H%i;r1cg$>i z@#sVNX1+)r!H`=AVz#;&%+ys~7xdlb@x(QUtbS^%ZC+jSY5mH(r_V1wXzljt+@V9W zWL~)k^Ur#w!l=<;=2WWbyrLx6wv<hy>ym_}R{EUfw*#+k2@&Y>*`~i`!^8wmj({`a zJL*E0ACI2)y6?waQ{P6Xtv7=dSfr|^E%D3S_qJQZ>HEx5r&`~N>&^<!jc4c1-Pr!E z=f|h?-Jc^PpH%U$&y5d%&oJ{<%GEocW0ZezD6%Q%M2Tieb_QR(Ri;y!aNy-(=fi3_ z_9}&9Ycel9Kk>}-+wX%J+7IjfXD&1THuvep+qd&Rmg?-Y-?rFr*P^vYuLqvyTfeh5 zF18~0^sL*5y$^kw$#ZP>t)o_q+gCl2^RQgtGI?63oX0C;&&MwODvM`rGkWku&O@w) zQ!4M$N`?Hd8{64zvVJm5unh<ojGT1qYxXzs$DixY&M&zhYCT(N-L4I*XWskWxjMf% zJf!xE$gy@F+f>GHw=$QMx|eOZ-dgl&cff=zAN-Wxum5teTRtvE&wIySuPY&m{)?QR zr|PtYS?edyc_*kfrA%?*rq#MX+=XsA<(N%zcW><5=Cm|%0`vaK8cP>TAGfHPq`G72 z3U0=wM;^vMsAfE`+^l1)(3aI}=D$JomaM|^n?k?VaM_>#HHB-Lo34Dow7n}k<1FI% zST40?@k&2z2u|HBu~U6lnQig%{2SLdowI+`^|MWB@4jQd?#}&ia-DL%?)v*d#m|f6 zZyWtNc37Kd{XeDe+g>^L``hn}d|UqZoBpN!bz1-H_gww%t8SgJ=KWosBDRV-<*Sk$ z-uiak{Zf$p(Pquu4X=((T9>4D{(<<_#FI;>X`k25<mdG5IF{b!EKyXL_>nz-$?<z1 z78p<awQ#!9)W9cC0)6r}b|*1i%$oE?Eb2JZ2I1Wd4}QMh_43rgoV;G?@b}j?xZaje ztAAECDcrp7>w~%3-_HDA_k3Gx?d^(rEwL-TYrMI=?KJO3eP3@afAM#eO?F>S+^y?> zo))}0sm^fajl4zK>~|JxuAJF(QvBoWjJ=PhOKjB8n0jzg8vD|isWEF$Tx`DeGRrkb zv*Bu&UISO*qSB;mSF^odyxI9>#k8X`=8Fz9YU^kl%@j5}_U_2}^w~l#xtlH>*<-oz zq9p6iK0_y2f&3P?#~ZG*^9tWIiQBsT%<7FkT_<Pkf4nOC#_y}Uv)Phn-<IF^nKAtB zpK7zO>m_g9+4sEUxbDH*(|`Y8W%}c~`A^Tw&)W3AyovsEwYn`fwe+y`_AB)ZtKTo0 zIQ91ISM4Y7y|ZRs`}*~+_iJ{AuJh+-S|7gZO~TTDeVyXUZ90q8f6AUK*mcS|DOYjL z=Lr_s7QrtQPnP_@^y)x7qoM|9*U>FT(M6ip@4p;1&pfk5B35k8v2B;m=tcLa|LJCE z6H#O+e9$r9`eX6C%xRl%$(-wyi4&Z6Fd$nr^wF{Z{)ajh_@#Ef(aTU4tbX;}>`-^U z{@Jawuly^!-}!kZ-=XMW^|vZPGpe?}%aL9AR{q`rzGZ$UIlEWBjQ+YLvF3H#!+%%0 zmrR?t_{@!5-p7d<ybJD3b<<lZc=hG#FN)_joJ>~FI4ob$AhY+<!SzqR#YJkq_Idb< z?OjV&$ISC4P3k)5xEHP0pT?$YJuhxIXZF%5Y;K)@I4bJD_-wj#Dr4K9%7U`FVU~LZ zr!+a-R*SOXTIA~U`NN9^5+;l-+(%YSnW?JJ`}fo5l!n->s##C0nYUC<$uRFedNF%e z&e?t+VaW%9Y-^>S{z$Xy71d7P-OBrrJ#XFn74Prfh_<h2PgoUac;ilS%FF4se@jhs zy??X)dS$+5)8twA*5>Zj-?Qz@y2e)?xv}rt3Vf6QZO^`yA0-m8EhW>v{`IWmf6mQV z{_*tNgXfOvHn#0@-IwYuwR_(cqYc&(dsn>Fo_o;m+xLglmU{2`wk`GQTHeyQ-_Iw^ zdy@E1!F<`RqfZRXCPW9eJGyi}K7M46z`iAuPiB4CbhT+p_gxc~S>eZ$=B`;2;Cjup za>vqR^4TjnT~7Xre#XA2V(F#pTU=Ku>zZCYrS0K-`0Dpi*)3xCPV1zXoto&&+H+Cs z`I7cH_365&4#)g6IvinS&>zQUu=f6pcYJA6b~h*5Z&>jr%`J0_@aI1oVdf7P-qx7M zzjd`u<4*4<pBHvdyZCwGBb&>{Rm)WB!%Ag0nIy3B%(I;3a(bcR<?f3yTfV$pyuj_6 zS+T1}>fze;6aE~Y9e4BYwf{x0wzr$_{d4#BHQisA4w~M+Z+}Pnc0s|}zWXxoZ10(E z*}gS%>2JOCE8;Km`0m{l%;VKtd;8X|$Ny8bzfGD{d|0-B-^SGVSJ%_s?Y`ewnXBE; zYnpHI@nXlPT`TSPEnRr;`rEQrtNoX5l=ojR^)Eep|73Ma!`Y{weoo$!mSwIyt2rof z+1gn_@=LdDJgqg+C~c}oZ@iV#?C*E9zBDaS`kcD4Vv6UJCzlSbc*CXX<h^9lsy#lv zAu-EMgK}dtrtwGYG7?q#^`g{!$py2EYFS&$`*rxuZf{w)|EATF%dGF?Z*2YLaO3ss zkF1}bTkqYjqx1a6Jm+TLtD$QjmzTGT=T$DqJo)E^dY%7^^}jOz%cpg`ezeUf>(~K< zX&f5`yWJ`?%O~AhcBR$%?(WOtPkuN)%JtnlrOM7NY3Aw9eg1D$52Qc*()qdMxO$xW z_y3PpvNKKT`7HCV>G(RoSw7+F{VV%-|5muYGyjk7rsjWV)h4AZp1<&TQ1G(jLg(Kk zmlyP}e6%56E5WUMM!AHc{){ark131zoSR(kmmzmfMWk(J2;0F^I$Ub$C+~l3b14tl zXy&qJZ`$vKM4yN{aj_+=AI|CTpWSUZdqK_H^Cl0S8za|noZ;6K3tAnb*>NxM$Mr{x zF1l#!;n2BgBeS!`+$2Bn){is1m(SJY&0dprRBOW2O2w8Np+7Tzi_d&?w9Zn>CfV99 zl{;#R$^_m&p1#j2-tD{f@Az(M_G&S`m-RKSkEhK$(Iq=udjFls*n0)(Jn`2{Y{atH zabElKOHBN?_TS>UdG_DyuHWa~dgTkx_A=Q!mxT5u?<l_f&$U+h?8eZu|03?2>rFU5 z&4tPL(7m<M@!xm8RW%87?EARBz&^ax_e0Slv7m=b%NA`AOqM_1<$3Dh{!P`}_xSr4 z#lDGN<#;Q8QL7;D!6mNGf-ka6&Zw1Q)0_C?fu~qnRsE%ZLah--3lAwVuRLK?E4Qks zNa|I}hSJiUujb8bvlp-4&Ufvo4R`IeqlW%x(x1+L{p<E>_g}AnSvM(5E3aMpd0MDT z)ZK@vTmCc6$bZw=W-6>L%Hl1sitXr}4NHQOD=g2gej#V@>Q7{@&s46oEuYvTUuHNL zHVfA0K45tM!ntrU<9*4EXXfy0@*X@?q~6|nEaS#S#k(@O|Le*s>|c7x-kWdbP*o5w z`)pfL-dE0L0@m>&Y^tjr-^H}P*$^CmN{L-o_T{tCZB9`cK^D%RwRmb`F7NW<o$+FW zLBW#!YMWL(O7ky&J8fHI?n&n*M-Jw`&6U2lW0lpO4Yw|fXa701ceWq@>EC}1w)cHL zuqQ3~`xKcinN^k3FHN|qBXxO_jD@%TwPF=pqfVAPMShjXZuq$}oM)F&bh~t#ca4q3 zWf|dLZep8Lj$TvZ+nIE7(#ZgylJ%$JoSr>6{_yvl+>5`?ovVwEbuV=^c@q6Df6e`x z%dhfFO0QjIx4w3LUEKunsMX1(8)q%6=H8pQTmMbL-RIxeL|)vr@W@T${oB$zpYz2i z&p!SB;kl)+t7m4us#Xt?Vk|iM?BBcVD?k5{dvsVRzAeUfzEoh+zwjw_3~aM5O%R@w z<Chn<W4}N`^ur~O)Rw+6OgwS+;;+lSe7%lK4UB}}gio6L=Ln<MnS}qBk5(*m3$pL( z(+c<Sj(@pg(c-CnW-<p^&*~X&yyO)jy4JLE+QTnl(F<cr{Cb~U{^9uRuS;DtcaWOo zrLU8D_AI|?H%oM`8vBE*1#&?Rkqx?g`}2NJpFXK7_s#6nhjPVUAG*?!wRR3$#hj_@ zW|UvO9~bsD;FZZ$-QDZUJ~w~qS<?{v^u<iWGqVLQx@=DLGF&oAbK;rF{Et7(4B4mA zvuToJfS5wUA)m#4%VJ+hJPgo%?J?uczR$mxn|)Df*5>0en^>><uXyF<n4{mWyS-YM z!*_4v-&1*4Z_nTHaSz{WRr`lx4Pq-7N%_B9{z+4c#qV0??@iHXH{4eHKCM#k>IpI9 zS3c`q+%7InyQO0kelK)OxRSd2`Aik|;;M-oHrbn;-@5j*`|s_hRoRR7I`gh%{xvIW zdH9X}$95P<WX_I1wD@2A$=uZYf$}L|8Y~R{uH#Sl(|nS^tQ~TtV)dPD*MRV)Oqq{W z*Z$fRc%{dvkT+LnLaB!o@3AC4!AY%abUs|w<*;g-XJfNsSHb#Q5f2PvE8E{r&OPB~ zHhnKc1b?oFa!|;o20zW94ROb+MEo|%wcfnuye{d-lxxY!clX|&mVYC3`?uM>e|OJ| z68LED9`osh<?nBIxBobpXqA_nbNHEr?^=UXpLv+ox|bP7wiF0<w}qV0PfW7E^Ld%} zS0PQm_`QBfOYEjqy-awO^ZJPDj;m*?!}V9hg?(i@+uJj@P|#dhf5}b9XbYL}$1^2; zEoMH~2x*?2pviRK%KzK;wci3X-kor^er)hEV<mSW_tM3gFByzoPELI&6_%s8GiUOx zO#jo)q8|jhlle}rS`wfqu)uZOP0_6@V&AkzC<nA8KjSG`Bys;(;+d{PYFn&!`ZefW z%>0tpeKjuR&75U-<sQ6t3U->SZXw`%^GsoI9;fU5KAT%99-R*sD<rNz)5Wn+GrCv( z5$|=u{%3nRAKvocEj;-#ljVn`_u*XZdv@=!uRJYxvG0Sm+LCwvcW*TO2#?j7to7%T z_WGL47v}Dn@zXCKn9kpzFZ1E(Y|E(+T(5;l9D7tXZCZ><Y-^94#bc%=OD+X}`fT*G z*Wq8}ikVaXc7CmAb@*o#8C83I(tU;}=1f0}C;qXVvE!KVJ(p94rxc8@J47GtWL=it zG4HH)S*SwosWU-K#a9MDoEmK)I_nXuYifp1>?ZAeW~IWJYt3!hEPOdlO&l#hz1y<l zK;M!_{Aq&u2~{%~itciL+0F1}HgA>TsRs2UN5mCA{t=vzEhRav(Aj85fg@jlfeiCa zzEhiQ?YTDXHR#y1cY{=lwTRcJ%`dk9;Mpheyd|T0ccvnnS#GpKd7WEi{4CAyK`K>^ z3fG!k+*u4wW^uSXDIEG-*b=X@h&$_HF3)k!&bXHR#|CMhTehqallbDJVPh|K_%x?u z*n!?H2RLu2S(GboQcmg$KOgC%TA6sE#m=(Tj<dn8d*bBD8_uUY*iL(C=J>pK;RWMQ z&u-YK7H>Eyow(%VdcW<d65n1;y`u2jW_@axg#G377arf)W$072OEg<!e)NLYicPme z^~|L%U(hQyndN%kAR}SD`i~gnZ)}sc9CbL#w4HxtMBbvMIxm^;+Xc@#xX4OjM%uk3 zyCmaPYOT5_RL-7vw|XCGc+u|7vRBrBq+juu+ZWD}(csZp*P)}!qqDN(N@+6t#(DqJ zf{$PD+SwejwSL9FYkU6~mB+65v5fWIuB=(b51z<{ypr9*9?CfH_{@#mQ%x_oo?2G2 za8g9on{QUND|T!+YwWDAb$ESyzt2neqqX@y^Mv!ypIQ0N_^jr+s29qb>&&&iRo2W( z469wPzqHOiHR_FV@~J&Lyie_UbA9e~W#jdW&g}WL)_j(@hQ%wB^9I|GZM@7c^Cr;V z;_a7hxyhIQJZXNV{z7K&4dt{p%PvvJl?NIkds-GRaC&__tT3Tr<)QFp?}C@jOW^K) zs<h+vS=-5F-07F{jMpr_`}3<>yop4KtCpGN{%cSA&+$%i(O$mpmCOH*+pqUYAHOtp zgU&89$Gz?A&Yt`+WBvI(yA~~Y!RyWXXU2;*)3bbCX$8S7ua-?Y!T#fDk>it$Pi_lN zO2-(Q6)qJtYASUooO;gVa<}RUyY1iG-pp3~V#O@UWPbgJnCbN&i&J8Yd-dDGgTFgR z?%1mqaW_ynBu=uG@6K;2<E72BISu&F`ml!^L@G)b*IQ}1X1_m^exWP*&my0`i&js{ z`4kgN3f$_=LN{ow*KwYj-k@a`-YS1}R`RtcVI`CHGo4-`bMfW&yCFQ*@n&4c0UD1w zx3Wd;581|XoOg50KG(YS`esu-w*R~>Hm$UTEid*(-tN=VF;Z(*9Q$$N>SLb8c8=!@ zqG!eyiRZtWZnlzhX5fjV--4EHNV(G2*%lDA^z7LZ)y=HNdpY9v?&x>B%=0B?b7Pt6 zVI|X(J?Ww9-&GGE3ZC3J@4C?0gt(3FGaXm1^PA87E#<3bar6Wqu_b}Z+o#?Rvio;@ z_KD7}kYx4fD7$m_r~JCMe-hs#=`i!W*l8~l+`^W9+m!Zgc6MB>@8i=e-ImtJN>s0U zaC7&Pe5I^@-Xli}3?i3x9N6<k&^zZ!Amg9u@@t)LAD*>g!YZAfx8HpptyvM#+N)n1 z@@sDD2GO*is|%u^{BkhOkevJYvdRA0k51oRA$?DJa?Re?Uyn&|_xZ~Fbf2p3g4M+h zzs=v+sk3bE<NljoI$wFgndM~*ylq|I&O7AtwQu8p|1+XG{aLSK^iLiOn7R5DgM?$6 zQLe7}y!^Tkw+@^Bm)sJn^VH-^?97dmB0symKB4*fp7ZA{xn~bwpO?A4bNAsOxfv6b zc3zEpCwXS`!<EfWXJS)J@BZc%Q=2Ms$n4UK;wweP_dQq7Ik>=Q^DEuUl9RVgkX$Yy zc*@y~!RE-H{NpCEueMw+St)#Vq0i~&H*Tdu$1gm~F4FN`dh*NmM^AJM?7m)nF1n?i zY5p|DzR-8|x0mnv|HWKgX7A1uvo_`DPE?i3d+XtB<=XIc>-^>4&+QabyjcC*uRQ;7 zshFOSO`i6qv<9AEFOGatUn27Cqk~w@Y?aAxQYU!!JQPn{KQTM4`MJWIM4LYvQBE(n z6--_}?ZV}#`lCs&TQ{~i*l*wpwmO#jUGz!XG`$&b4}5u%5*7KXrS_}P+viVHzG;<R zV~BQFH&;6NJoQFtvgfrKr!W7T>KWFi!nbqQq6a-o1l3k)UOM~sz@=L&m!55oO<B%= z(c$nZsShtX-DEz7OjbVMcl>$blX<C@&4%aS6{Oj3^Vzid)JD~vR(6-KUWs)vs`V{A zTzac4|BQ+G-XGsruIJ_F&A0fc`zHUE+naA!@^7ro-uh;f&+_21Y%K+IYu~T=KBuR8 z@!z=3bfe_>6u+WH;dP6`JT(GyK4-l&tT2psTOKTZ=I8%6Y{j0FCdV(5nIj%+ymi)Q zpXTf7S@z!_@-)=$T2`{^@Z>=2Qx<On*?;@iUAy6XxoqWZ)7a@&@xNv!R<0`gX_z>F zVc=ZW+Vii?R_|u=ddbH7ddK}f-|cPJ&hKkeS+nra>J3XjZPsmFaJcI3(g|BvJk8r8 zAtw6Z$<`m~5vS+8ye4!a%KNEKs_wn>C#G$gTz&WJo)sFW{WmH__MghGYFek+RaJ6o z){%~w=onG2Gaua&{<l8xwS2R`^|G$%w5?Yx6_@h5hJG+M^PZD8J+}VgdB5G)^IX{8 zn$GSEf3dOslJbcoGkz~$?4h9Hc6gF_j<>{%4H~ogo^JSev%u2YStv)|N?!Ka&H`I= zjkD}pS08OZmHD#a^tYMjFMR%eD&_oQzg%jWbl~%Snr7Vw$}VSRA4xMX8i>huzUc6E zH?cBuvRV20?~<O1U%}5`PWYuNsc=>0#{6IDM%(R6wZ6L9uk_p7xN(|y`2679@Z5B+ z#$$|cZo8dt2-W&q@w7I?Ra^V5gVF9k6C@lzu6X;y#UzPY|8%~WNJjU|PP2nLPcM8+ zoBAa%-0apV4aXi=#y@Mt>ar(9e+hF-c@&jtxYSo|L%8#&T(7--t_!!Ae^39)!g;Gc z=i|qH!CP56e?9vUc<9Ndzw<(SJubB!+wc18*|Yt2pLCX{eBLy_Y`%0?a8ljt$g<?u zMrG+|ofJ~D?rN!Ie@@DJpE2M5f^yigM)mj0Uw;WN`RiAIbpF=M@k;9V)27RZ7d5BV zzo_%Q|KYv7!`t&$zWRUN)a1YU`nUQ&*VpKBW@|6eR6f{p{7L>E7X$9gdK0%UGM$mx z`=^qX-G9wSmfdFl+ug2zy&mx^^4f|+3WDF1Ol;>)j?d87ny4x_zw=k-G_SSCzR2wL z-zauH+K_ib(WzPA56n6}L#yW5%PXPDrwaWdiW;KU@GQ07>8HrZHfQRz1#(S0jZU^- zoD!gP{`th+I};d7%}RgdyxJgKQdswkZ<=vs%jL<bw?jfL7vH&W!@F*|t$?H5rvqI+ z*I5n!SH%i&{|nxw@MyDjXt0%HU3l5cb-C>)WE~Gqdo28Sm6}_^8%Y_x6q{8k^E!Y1 zcrZ`J(t7Wb<xga8@~+&J70ET_*==E7@qhDvsW(k{z_P~a<l@DhePxb$a`V$S`CBNc z{W{^>b=dUbOKbl5-}hhqd!)Ae{f~e8?eqG-$#~9__;<@c#CN}5zWl#OVQ*~zm|1Rp z&baft!NR@Iq(aU&hl)?Vdi2niWwD=D96vH^!IEQNPdu|>>+awb*{SKxow(ofmQDN? z#q(MZcNuv^2VYIo^806Yc~)1?q5b0GOy^HHJ(27S$ze7WxE&-OmOgV{n0R&C`LzdU z6!>w>{_r%N&wj_Eq+ZQ=$=acPlk}fmQt_~VCBdDgG<jafoVp{@;ug7ivNvwu{&3Y= zY3<&%`*uB3-N(8&Iyy>z?R(BUlDQEN*XKvR%72|1T@<{b)KlTR%KKL}C5JC<I`-AP zJpWbR{P&&Lj?CI6ZeF{#`rn;bck}Aq_vXJmbmG#rpSr7eg_~aA%9gj&yzHpQSEjd_ zE36z}7w<i@(EsYyf@?gnytVat;fI%JhC8p1+5Fq&o9UVre@<ITCrv&rU2b0U?#cn- z>n{sV#2#3*Av^QS_y4vgUO`f+lTZAfK5+%dp2yOYU)Wqb9^3Br=Cjw!JEkR{n#KN_ zl*}?_p379PH+SB`l0}tL3$7S@tUMLD`F~PS<OQz#Gh%Az%SisrYyWmqI>=|zrp#@V zFX^26^CI{H&wRdkxoOWNjtNb)R5aMRsd)Og=gTG;eVab<QuJikQ#Y@uvy>liSUTUs z`<KRX|DBr4KXT>!Tq^rMU7BfQ!U5S2xkbD>{5p%KUswK+Exj-9QR&xj|9vxCck|ac z%{;bSqxYhE&CkmLl~(eB3v;LSccdRZpeVu{!MgCm?r-N8mhZfDF=?CTx+2j_Hj^3W z*G+%-@z-;~8nzoH$&1#{s>*s+)wSu_EoRdz;?rOL(_3n7_w>_Yf9LP75{#7EJ+qs= z)ch;O(!_p#^qetc+g$hgEt+EOlZv14KVw)qQS_zXl7l9})BMu7^u@v@(;swA2{t(> ze3Ivk!1I|KHeGXATea?G<dZJ{x+Tv{=1j~|{_y_U6nA^o{<Kqk_h)$9m+S8`y-~N` z`kGWm{O*gdzq)>WUe&|JerxeOQQ3prW~94rH@_3YYahbzdceM-Io$Xvk6rrv8FzNO z@w6>9;&oUZ5TmfgboY|WeVwPBPaf5q&%jV*xMH3}t&mh$g;}6pD?@lIi<CzYU)VL~ z!(Az6cX;NvO?e)0%*X#Zmt(B2$k%RehX&VRt8~VFE6r8cri$7{#e}9z^U})vv683y zLC6_SU6&n84?h=rCU!Nrq}5-g=gf5J{F9|&+e%p2q!*`!idJs646xKsQW2f0w{oI& ze@||>ecbQ2%VwRM|K%I+ZRvjtgEME%GU2};zxm#MG3%1|zv{ny-E-mo{~yu1-C5gA zv$pEbN!fkUF=xT8Uq^1gmfvT5pjwulS=66pQSRKev0lbk=dx$WU#*U|dM{xq5Pj#0 z(7T=w-{)@)KcySGu{~#1;7i_^-deGZ)*CM6D_vHQ*zUG+lcLkj%A5~}1O6HI%Z7cr z@$u5BtPrJQn}WIVD%T4{rXHH@bzf#x>>iD+yAEZ3Ik_dbb-Bu>^|#Y^qz8#rA6s|$ zv2t+mjW0U)Sl<~u=nzU1GiE=pVI2@1aY?pR+cep8`o)ElvduHI4|KXOtx&Ui_2}`o z-kv-AP9;}`rEau}*>|%z!{@S$`HeqQG{oB9%uOzi)fQNG$uzh4uB6p#rE_zx#D+&( zITznO+hMv{`pvex_FH%B{XT9o%}MHyg>!S`e_fLaJlpoqVd7A>mu3AHs8OjbG-1AW zL(wLgGe<pcf6WZAW#)Cdd})E#GDo2&34RS)pZ3q-6H%_SimJF|@$vFR=8H=HFF#5> zkXUluCXI9R?_VO0sv9L5lpJQTG9*q*o6Nr1*ztm#qh(jHu$Qp5TF=6L(`wva9S({& zTX|};mDbZ3h6}4p4kmf&D^Gj*-?BQ5E#%WnjpuXOX5J}?zUtfT|K#3otEw;$V@-KK zwW5#4CU?)KJW(&bsrs^rL2tFp0ikn_ClBcDHgDuwz*{!;Ip>4F^F!bL|M~yP@6+y{ zFYf9lHkIoie%ro1+|T;t_xg@|_U%7kXTF<n{rNAi`L6nyrKdaHHa~MPXFvB?)Aft` zvPs`s3+(h8YfhUou3q-Kt;W~4!Dw$bH{*-N>od19XxoRW?p9H#KK1hDS%rxfcaJYW zCH?f_6yqm4m$@po2Y=;r-TnEpf64XB?2}iU+%UC|tq;?)pD<@)Q$njMyYW@F@T$;z zU0O{a6{A~yTg}Rg^fZ;EUtZgFF!`@<{70$kp!{E*`;uJGo_aP>>e1)rc6mE0e{Qd{ zyR_@?yB8<-&D*s#_iEJlQ^%H-uAQ24_Eq@&U8@(q`#QJz^|k8h)or!f$?>t<%bvDZ zmo3$scWYC^)pgaox8L3J)Fb}v^H<^dlb^QmH}_|yH?{2cOAqI%vN$y3zCX*UG)DJ1 zUdsyK#b5fc_1FFl53}bymhI^H<TJ^bVZB>%P;h|NY5%Wtmo>;e-Vt~C`b(QTFQpH@ zn|*Ed+<mq>`|Bq;dw=J8E6!aluAQiT$-ia)vgDknC9=tTy^h~l;u!jDA$#B!wT*v_ zzw{klTeJ7yMtkQ4#>M=R@6KL{{=fFK`+=gpKl=k`7=32Cp={(Za}S&RWxKahY5v>U z>c2_t`6Tt|sp!;;FVdsgudciveY!StM&aV84P47!KP*n1|F}vi;-N*V?T*Q(4_(T+ z@z8Yh^Q@PZT2-^s50;$nNz*M3i->&o#<JM{veEL}LD!>;&VPBh=(WIun<sa7FRwXj zr&2Vva>~p3eM0{hNN{?KCUmbd-e{is_eNKZSj57}DI!Us9c9Pni!ZYKxW-6F+Q5SQ z#ZQTbIYFgQj4vj$MVH#nx?|6qw(A^UslTJQ%;n=9ceMW~cjc~2o1!kPu~y^5o(Zkf zt(`t?$(|dR;8nRlgLmQGsn!7^DYGMkua(M|fB&&scjAe)+uf9OUxsfhzQ6Cv%~{W$ z&GHBq_F1`drP`$$<Eyo2uA2Xlx_9!%3*qozQ)AM0`c*!d5UhQC>drHqx$}!QNo;m( z-LiS|R6GCU>0VE=yH8DFKl(EBb<?MsKemUWYGkS>89%Z7<0aT+C%!XSI8biy!Y{>6 zYKi*l(kthLG#H4u_PvSz`*hmGS@+cAcYfb^_51!+ivLC4W&O$u*9f_L^Uu|FJ7@jb z|MqrY&x_l4cC1Z*{f@t{=3}4llO6k;=45BcTTc14;@h@~&a$F%lIt(kZP9w89dPE) zM>pBbx%GMOw<i5>>)TS;y*J`rxq$iO&%f+~)1$65UoKy++MLk6EH`lVuHIiWCTITo z{XhO<$h)V$no)luHM#T-^N8H-zg8GE>C@Crv1gWLY8JnAGb#PQ(?s{T{*p|a<6iUS z+a|rzn5t@;s8_U0!{Cok%Tlvywnt$a&wg2b@%`;()LYKjdwS+hmFK@gj-|7Qv@T7$ zaDB7WONWysD%+DUgw>U;cdB){UiW307E4vxIem@u6@o?wr~Z#RIn77!=f&Knm&Roq z=AAq}yHRrAO1I*weKw}1I}V(xot(%oVz}<5mHPBFEA`#~&zw8C!+rg2+nF^z(O<1> zr(8W+B;!!GtofBdGONnJY`40a`O1HP>@)gV$ak&a*G3B?t?g1TCv$Fk<r;J9^PfGF z`;R|v{`=0u-YvFnTD+Ys_lu0h$*i^O;twu){_E-GX@^9&EcBdoT7N_6lKD5M>|8d< zam^;14a->8Pm1Q>!QeUd;xXo?Kf8^p{2a5F@fSQ=R(<3C6nDFvIbXKy&z%2r0q14* ze`kMOVP7+K%F_h#6OGe3jhnA~F?~~8&*!aoW9B~rUVf4J6Hm2lY+1J^!aLBU_MY0F z6VFALYBjd;ElG+@Sz;ucp}u%EQ|Tog;cbE|CRy*U7Ym$~m>d(or)~MW{@0wh=V{u0 ze^Gg^|BCIY%I9q}{flR1s!x2`pCo?gL&3)CWz0Lv)Vpf~*4x(q{x;9{=FXpbOW!?~ zxAXnB$)-c^;{R<zGrO|o|NeZwv~}b3+q{#zoo^_-smlDu|MXs>k-UA_x%U72-|XeC z2);g5zb>w7f8V`HsW+#kMovrpoxqvgQpnR{(H3;QG<JHG&6EJA6U_o%oT(CR5B()) zEu12B%jCU~-qRvu&Emc#OZM{k&fS(d`{a_DH8Us7KJ8v@y*Klf+2l-TwcH?`cX8G8 zi%Y(I=q|Z5^XI>xb}2VEs=nP?SN(qL_o&z3yH`cYUfo?(tFrv*YW6mcc-}PogRyCP zXS!G|W6bpnAH-eCP}_M`?9QHZDc=**?8PkYETXqp&r<n!sq7552`^jB?j7rV&S!m> zvn&0}TRZb%>pZQqKj&VLQ!nZJax|%Sv1`nnLpxq9nm3bM?~>ELsVQ48e!4mD*q3{* z4Ggzq=kVCYF-?EBx{>=zKzb}=gpi8#lAk4CU;4PMmCnlDU-e|itle9~<~l1jzS!{Q zQhCf}^EY?1<1Kbny54``^YZ0A=}Wcpk~`IE53}F8&8dGhwzckCX)J$~ee#w0r{;F+ ze0cp}l^c7MbnfJzv!Zx5N-^&=aSFI3{QF?)M7cZ#8Ahd5o}Oy#fn7`HOgh@C<8pn` zdu5|0g^UlHBDa3bxE{-;)wF2s>&aWcUi^0C*pmn9kG<Ee_Mftt%V5gAtD?P?+gY>i z4HVYIUVg2AP~>8?Zcmc$0*kF3zpSSA2D*d`nNOPPq|vG%BA_C!qkC7v^3z|ZjuQ)< zUzKm{nVKK->S*b#1JgAVc9by0u(0YmO!9lK6XrCnPqLy>%68h3@AD#K6<Ynd4O6zQ zIn3N{sL6UtJ4B`VcigFoL7B#`3pdSDx**5#X#UMT%94GiYL8}5Vty@jeNC4{_a_JU zQ(M~Er@!Cx#w#aYuJf0@WR}d1xF0{*r&aN-NOC+LR<b(ki1md%HjUR5cLc_)d9gvO zRz9q|YViw|K(D|E(X}hwPKnI%b~eBA^xU<>XLFADdK!PpE6!WGT%xGTf1$-jxwWcS zLmOvbIWM!jDm0-(EIo|P&Uu~f@{?CK&!1N8mhgD@hF;;zH+F>n-E(sFc0;|Y`Df34 zv0NIRB^LZxsv_xi`^L48FW=bZ`u9!e_mu2OobxW;%lw*E<~Diq=Xpurjeod(njHE@ zPmOg)&yim9qo)K)+|F$mF!Vc<#+a_^bK%CLGqcz1O5lwXT7S%SmO<gQmmgkk^|ofW zzjoWwV)6WaH;gas-cha*JV(5}RDHtwNmrg}?GqAi5_x)sDX4M}Z^oXpDSHa8UvDsV zy(pw+_W0v3=88SxFT-+IRk>Z?$Mb2ig0t1$e0|ZQ9-aB}zrW85&Wu>Ydol9)mGu`| zc3J;EEuQ}6>eFU+)7RIJeoypU>KS6R`QiH=)mJM1hu{AzfBDwj>KA7uC+%*G>wJ9T zSz5^_4(3B=jJ&&!n#@d<P)dE)dOlvg<J{*-ewSD3YDX}?Z4|#Ox1d*4TV~N;Q}>Hv z>o;wDwSZZPW!FTpooAJOSJ&Ps+{%4h_jej=ZkY7O`&Ok1_qT0kU&wu1uiEAM;%^D* zp3G*4Pt+YST$wk2pWJJ1wH4vd7TmjMwYtjs2;YH;lN3U7PTJ3#wmYNHYvU0a)4LOG zdEdme+`aksuzPmioWOf?Eq&^<;~!SDy#8Om-~Q$I_Rr_nU;L@=v-P4(Yrc$Y{;V^# z0snIZRpv^*UKDNfvgDrI492(TL{1#)u8GnNU+sKj^<!1}rWxV7;gd~c**K0Q*{u7~ z%3yZPTkgAc`tPv)d)aTFy{P!{Tlt#{Te3IppKLr^=G_v#^hSM4Ynw&?Cl^;$w0M5` zzolfFnsMOmrPF8nrgh&vXl*Oy8rKvMFFR*v?zI4x@72|FBNxx-sNeGA!GkC3!z^dM zV~#a6nR=P8YL@Vo12?7%>TSRJ>hQfo{eMc*zc_v2KIpt(hxNs(U;SLQ<xVVn-cOHg zc$Rzn{G6RP|NOq|T9N1W;m+TNY17kWpIzLUELJA|L}d2c`@O%GTL<;ddZw{6J+LBk zUg*2<g!dI8+r!os{@EP4>gI*E`&P~?7tipS8ftB)82)P|>-^js_2IGG+Stsu3vEsP z@hs)qsePxpzE@2Q*I4uAt?%po3l>>Tf7)EodZ^mR^P-oS#Oun4!-*@`{Vz`_)!OO1 z^3l`c(7d3KUCSp)iyZy#ztEJWW`9dnhS+_5v6Q+%kKM~JFkM>A>Nx3&{p4Tuxlf-5 z@ybo|Te(lv_omtO5aydrD?S&-H?NC~SaV4E>%0enb*4t<D{@xvk(;@7#>ZcmyoFfp z(+&1tjz4?q9m^HJ2rt%yM_rSiK9FxXe=^ne^rC}{E-_?!Y)e~G@N566hYLEURee=i zaD`$1gzUKYbGJScJr%oAA$hB*lKPCrZX)L&1Tybj=`io-Mw!K2Q(01ezDlg^-(}!Y zaCvfySjy5%_AU=!-+Azn`KyYdwbm42R^PQ6Uy8E><_Ix<v!B_!oJC+q%;B(8;nz4; zva7BZ|I5tK)ZT5H@qGD#n0vQ;mWha!ZF{tCt&r@Y0JTXx*Uca8-p1QGZ>p*5j3wcG zSG3G?<|a3L$1dqlnqqtQrC``P#-poQRWl;Je%K2JeTx0Y$}mgsM&Pe48H_<Eq7J#l zoOb4%ylIBcWrZb2HOo?uM1`AO<GbpUbnNGj+sm_Kwrp9lp^nkXeVy5*rqgfl`o%=+ zF{fu<?>Vs2#Mg4#s>kU$x3?Zlsa28dzduDrqQ6x4(b>AsH*BR`LYXHS>`F`J-5I~T z&Osvb=F5Z#-Yx$Y7u*;1_k0?C-tcS7l01ti2`<<A!>`CS&8@#6*JS2+*ZS6fg}o}D zB+LE04_7^1V_ogfY593lb({M{{)N`!uF(@eRkziwFk5t3U0k!}QMtvo72CD5oZqc9 zukVzNx|}H9ENrEj<7!xOm&L07%E7%xR#UHts>V1k(0spS!F`U9dk-|s|N6FC-;zx{ zs1fp!>BH?UKaa?5e0}f7va8WW)xQ@v@4lXP%{Bawp4a@_TYtST-yd5syUwYY^TyBO zv#m#C%}d?0UoQQ*vc1~Q<@ip0%@~RBdpc_#yb@HC(rA3O?4P}sbj$8<vr4WxPnNC_ z@$sC)$$r|m;rY=8N3~olVlH*8{qWXXIz+ogZHZXRvmY!|d5=aHymaENbm|ilWcN!5 zoHSK=QO8NE4Xj@j**pEXyfYZ4RDaex`_}43t?BO7Wy-hBQ~3Du>_uK);kPl__WjDO z<ooxwRE0My&aBmo)Uet7@6D6;urD=<FWDC@c6z^U>r26(`!;^KW4Q4Bfpwd;+lwE? z=BJoDDz#O=JfwAPN9N(L&R_aOXExsLH;C8XU#+s^rIT?z-;PE<Q>D*Sa$mM+Y+cIh zx-x)spGS2xd+!`Wp$%o{<zs^;3#aEDnPL2TwW@1!c=z^856bj5B)<`T_)dr6%3Dp| zCQ+Grhb&_FY^NJP7I+){)3xisv>A?pAGlbjC$W5vJ~1is($?_)Aj79;ic7C8^Q)0n zRu<cFyH}&-*y;Jtvkao;WY6>OR@Yke#B$+`+)Hk!xcbgN(EBjC_)y_)2H6KY8W)Oe zTdPv=ZjaZEXEiU@b`-2gxw=>U$+SC%&oge@p8ft&y3^`l&O@Se<{hwjyYOFG*qk&L z&9j1P)0Aw)6;|sig}tuj{}A)w45Q7#vhEnm$;W5>Im{F)z4$!;lKsI+UoDe@JFhn$ zt`hyeB9G-e@6*)}gjTW7>UiY#lrQ#BhOB<#mU-qTj~UJ`yQZ@4>idFcHCrbNnB_0w zOcZ*te!bN4qTd@%HQBcJ-nH9jck_bro^{oC-%Z`Tp!8MTW`!1M9pyh=*+$td3d<wo z&nMma7Wh2v=vyVl`=Kf_8m)R4KZRtn+*2+wX1KegFztm`chiYO+*QWmj7cR)A08jE z*^yFb@h|kddRct7%eH<U**Np<84thD<mY0{lc^Ed*!Mv@)h}XyO`L`H_a4cfX<K4; zPE0MS`eJi_*260bvn~l`t43Xx>q&RIvP4(k<kBWTJ^oL*lkUYWxmES;lJb&E0ctYN z^)r)od!$Py7s;$MH$ABQ=T45IOX!@FYh*$ee&p72>hU|tX70=ue(l`u5UXS}rkQNz zEv4BRz1xl6-L8w-QBwH*inMk8A|V<7zsAAe-(5cQ<BI3Z7ZTskZOngB?|e0&H|zbJ z=Jkx$4?cOxADSBzA$e4Jy<_qkP05|@Y?f&Tp63!jN~AhzGnSi}Of@^6x$99yT#3KN zkrLAr3Z@AH^UhmVnj3X+%RPMV_@h$HHfxhvj#_se_q?4(S01mqD_OGBdde&BAL~Ng z^v=J`l9u9ZoG-HOxY7N{#r+xfKObC4IT#xy^N=ZdwfXtTDJ%BR?Td?$Hs_lsp`SZ* zx9i5wD-XT6t9?xC){`%8H=kt-e3LsIwXg2hnp<~x&DvE>SDVj#xKo~MN#<_;f{Y2R z0=?5hw5ERFp}{QZ{y`z6D!A*@hBKi$kNI6XDz|z?r5f<9`Z<^Ri0b*+U(!V^&x%c0 z6P`Q}+#7K2!8PIe5|zT9pCe?_JmL>1f1KL+XBl^$@$<mC``q^De@^-Tx_$oU(`!uH zmq~nDaQyY>Y}FT2{jO)oPd0n-r$zBpl85^)<?Om2;`{c#6~8UWqo?+HU;dvD$9FHQ z+xt54*wh)nOn)EK{nah57xUvvs`!Fgy!#s}ZwM@lcP-3TuHBmxTfac?)R~J#r-W^0 zU+$VQO;Pm~OW^uPyC+`R#N?f#!7AoDU(PGGa5dkuWZ_;-(d*~qe&ug^>vEUnmvx|h z;kQ|b^Yhdt_&;QP+}gZrX1-H+-hH=}`)(U%Ny<G`OJcv)yy?Jpm;X8}pPqc+*e}yK zKmFq3G^Gfm$S=_!*0A}qbn8p3<UA>yIJ5OxNmaAt{|$?Es;_Va3GvKk4AeiFb^1W; z#3PG26@SfL#Cf*M%1bwCds^2zLl>Enujej(i?6#_ZBnJ^*3ZhdJUON8&N}n=dp68H z)3^6d<LtBP=W@==#eOU_GCpSz`{~RL-OuOPzkCnY5nZw^WYgN;tS1v@i@aSq=jsFZ zdj&U7WW@yc3fY;+s_r?$YTUwWpKeh7muqwVthCje^Wt^()c)VH$l__wttIh)#djU9 z;JK~6`*3X2iKP>_3NBis7Z7@!`B3tVb-lJGvC_M3gtnEaT+oVJd-(fJ?(;RZv+C}h zUiax;?4iT|h5uUJ`EDQblG{(rXU=XBhK+muoDaxPJX_ry^vGvZ-jO!-jeZ*%rPgj) z_-yZUU)u$BOa{WgSQ4h~ZwZmu#uO%{mi%Ayn!<;m`7331d!LwnA}FWm;L*mDX<l8s zMD+fy6JfY;IQ{f%k5}&M4p-G>>i=HNInr=$-N~i5Iy5aOlwCLy=e^@ovTfRbdGW6F z?@HxI?k_YIIQDV+)Up!pO>S}=#kVj0_<Wkp^Z~!Goz}1YmCTiC6H;fIO#2qTdCR;* zOI3uD84hJ`Pb!?IX`R^o)jp&!@7NXAb(2_xYE|Q3qzh&2|KeQV#AuV~^Vnr#ZqU7- zPpVQhI1Epm-Fq-d`F0{h)r${;zAp+Enlnxmvw8IO0+;-)ZYS;KOPIwy_-4L4^WaR7 zmAYDCQsGwJPd=HBFJ~Q@^wg2jI{mHs<gX7is&l-P&i*>2{o|DUp2>IETen3!mC7%e zp`FgP*vHyxb<?Gj%_7UxH2U0nID$HYOP_bY>ie|d2t$e4)rrBYl!}VpT{`~E+(BLE zcSVWDA|BT?nRUDO)P+?qknc;McJ+&b{W@vyYwn&q-&pJ|-4ZU*Qr{Zhdhx1v%!8oB z>i!t{)&EOA#&8zr#?-TYf72Hle4~LcF7kPp@m7cLQjDTe6@OhmZ9A32bX2%`t%h}w z;*yI|XI?Ml4Doq6@ke9b#9HRsb+1=#=qtFaZ@Vi~(<Y+9I)W+d*!_K<q_)eiHCzz( z-E-#uxsz|6yco#*o}=jd)J=>v-!IJ<R9F5krRE~6VGta_v|Xd6`}USic{_QIaNJcF z@y$5-@gYz7+>KI~(mpTzklXzDc9z`!AG&o9wpCw$|3^(qv@`MZ?_X{2ZXK7~Wn)uz zf17A@N%NDUS(<yIC6f28uy+3#(y(h|NBr(P=3*>YeQf?`U77r%ck|)P84c4I<bOU{ zGq;3Ia?XnzoR9YHo5ZglzFzF!UcG%Ab|3$Jsx|zFt8@7pPyWl=Q?;M`J>I-{@tsHa z>+`?f`?w`KKF7yphW46A_l`xK-+D#3Xx@p8ss6P>i=6|L)+$VA(d6A)v{KUHeA`0z zmKcY3W(zXsO=VnRvvI-xlN-Y_<ToEk7PFl;C-H)ZZUSqC%B^_<GYazjbyJG}@|-&x zAjG<6f!u;Q%ja4|GP{d>Iq%{gdFI8!y*n6k-WwUMzOS|8#kcVI|7Sg-iai_o8q{Z$ z2Ct8=Ypwk7_E5ybkfTdkZkbQ0W!aM7P+PZREB}(kUCRQ`wTQA6Eq{`%sAd@UbV_Sc zvTgCpxFj9RH*>ddOmLl?vsHtOX|v}Xb!OeNRI$rbBYMi*BiWBsMRgy{e8;I=`|j<b zwg0O=Zd`6H9MwE`*Pgj`D?dD3x%`Ft{{OqRz8%VDRbR06ke95Uqp<GcPPQP0%Do%1 zu5+gtugKCdJ!U+8Urp$-gf%m6b|{IsryXJpmMQveEPl+?Ipw~FO7~%{S9ZM%O+DRb zHfXkd*?8h-@S99y9_A^_6i#iPa+PD1)yFq1+JQMA?>QOG==v_Az~6Rseq3tJMyHMm zt^e!RuSqx-a5y|J+4)!b!x$bz?h+pFG~=jmiUrfkt0sDSy449Cjfqrd6`UccWT33S z@r80_kkIm*zn<RFYyZYOac0B0_`594dlu<fC1|I+J!&XqWW8AN(a<_|+4py?GhW<f zj@{M0i#O%7^Zfc7|6X(F7X@xUd+ukoaCUnp*Rev6h*O>W-#?%GOXcuflW4cn|0>1v z#KSfwXY9SW(BjQ`?YCWK|MtYi<y;Zq;pr4@_f7dWgQZe#s(atnw|PvvqYWcjSRI%4 zo=*wk5785U(4)CAWu}AON*3$lryCDxvHdzFqfu5Fv5$S7A+z8lC7yR;F8)&O`hO}F ze3&x*^R=WO91L#UpgA*{d5>WF+QbCLGiy{T--u4io%4e2n##q)-EmKhr-y%&JpFiE z(2LKVDJuQ9JyW=pHb_XE$vAf1V&jDJn=0kuh0i+DPVi5++?w>|Oji;6>EdVcCHhMD zXI-7uJjpWoVnxWM$vJytm5b~bOP{UE=zYxNa!*9#_Lpailp{5i!tP9Ou}XYnc5eAf z_O_oQ*RL=BDY9T+kmdZQ&1cnT_yll2bewPFU{`te&vLP-z9kLp?ekxK5sF;?gfnH? z>@<UIU6tR|cs3=?D>O_!a76z8l;^kBPW^Wx`cA>j+1pQaUEEjn{>H|nFL%^t%BD^0 zyR4I!!x^~l(X94nr~Eb5kp?%#U&l4Z9+BzMdA%n7Zm-;7=2i1|UD(6qyTIL~u8ZTR z!oM|L$7iK|k=U_Pj9>Bi)kC&Ad^1`1s2qFt+`RwI_9zae=7~4Ok4@SbzT=&Blyb<9 z36h$I9JNn%Z*)(P&%JOtCseC4;)7De!M>Hn2_bxyA@+Mp%)g0nD~TCsTz2skITo?d zYp)NF*xx&B_U9M5pM7^KWz&oQhmB*~P8nJ)=8a!&+c$6Knr)9{rEWF*3M9V%n7EQZ zaaylrNrdS&DeKx7kNAEC1V0R3olv;7_hR&UUSog1r~As^y*w0~{&IOoTuZ@I(`RB& zzDK>1_nf-xiGhFGSAmR^eC`iJ1zN-Zq+IJ-ow-&|*pC0y<lx?AA%^^7c`}`>M+BrQ zR-8I;@qG5f=aFA5?jHD9P<VWuRmD?lp<2PIB}NBj3!1(>%(4pf_t3j@L*cH*Ev5xO zx;$Pwy%2oV{w?Olm#J;+=7n<iG#00v_~y9m@9gF?-&P*FA)Fk{+QPrTogu|wW0T#2 zS3hJAeLT2ayX4O)y@RLM?Oq?Wfj@rj!Mw+_{WkdbWv=4-a&fswPjKi2{wBFYu_qRM z4w=Bky#M@`JFPn!e!cSKdVSx0l2hl?g4KE@4L4&go6SXzb-L(x`d&0-`+v;Grget! z7A<|nxe6u=Ln}G@HKX_i%2P|y<|H57=(Y1%a>$A5CmU9Kc1vyf_WZR+K~VUSfH$iQ zo*b9>bfslc!$K?dS&55Isz$D{FmkqDB(iF<`IjuC38{rqp$%(wIB%~yxTe70Rfav? z<{PhHzrpkcZ;d~us<qVg=BQrkW%c0x<S=tu{-Ll_hQ5g+=Py3_)hm`#)8%V?*zl*_ zAwkQfj9HN?yPfkKoUXCQ?e+*}lS(&GiQVjYDM-vR+&w+yasMlcwL;<9*R}>+EnU0q z)-JI+|JPC%jg6CSH)meknq-;%b?e$#-K@23)<F-wu5Gv4v(MEbKC$iV+K+qJ<X^Nu z^h@okiwM`XfE|hZyypb@M$3BapR_uCb+bo#-;^^-zyGl$K7YQeT0{J*TkOID^Hj4- zH`u<lYE8=Fy|JD3Z0Z8T%=QzW?+%{aWF`_Au!d3g)EzUinVWgJ+a4NB+OqrP75O9` z)z*m@l^>=B9B=)zLcw*yMe9?&_l|XYuDvK-Y1q~y_wXp2N8htWy@n}Y)GE#_dM>rt zTye3v%jBZj(sP@iue!K*Ll~3tB9TlMyGLSop0TCxH<+?0Mf1$GjwZgA1eqkANy&lC zwrhXZZ>r=@ekUanbMNwf%U>%~OKL;SH!Q!+uYay2)$Z3ve%|_b+Z^vdExszd=<1?a z_3Vp%VZq;Yp5CA77-p{KJ=^T~bM0KN8Yg3|(tlD#d7Cqf)e42@98%mJ_UxeS+G8eN z7X-GRb!(r^tQG0BQOoq`Ggpl+HWT5>7m9bznlabE>Q9whAXIx-@0I?lpXt*MJy^uC zI!1ygc7E6IT^GX>o==fsxOz)M;PUnDD%MY@Zp)o_>rm<!2jkN`?OLmA(}e@Bh5gp5 zvupi3hfTNH%YOB?#tE7;!@Pc{v`@d~QfMF0Xv!GeeO8)v*|b>_CSmQ-R;d~)x1TY$ ze$u)-Gof(Zrs7;SubVEJ=cTT_yn6FX`_r9sT5Nt)2PRJwI$3!>c}vN{dSmN<ci#ky zyL?>v-*&a!=k*urjmizS$A4d9Ghg_M`?K?0e=X9s<%MM|eBAl-lGEk_OWVos<*NR@ zdGBZczkL7fnPOIv6`cPjR@AGzzFheIZtJ<gdd*^%TNk!H_ZKXey!hEcD}U3c3*O0- z_(KH3GNbOr@A<;B&;3Jr$1%Q(=e^CoTNi8=QqX;`Hd`<^KCB`|zWp{sy~E}Ed{q%b zPxY?N7K?6H;+=B)@#}?m6B_2up1)}A@*8hAt~~vBi-a~$uhG97PwRE}g#B1PzxMUU zd++mZmVJAWb?leQ-UqGLPs$W;d0Btz->lzX^Hu!QtTpdlK2~#Yl{nh>qU17<V6t;m zmhs{bHm*UY)3$68@V%9~vgX)jp5$`}q-u5LikU3U4my`s+)G{_WtrjHzAAm`-aOS$ zCFxAO%Oj^Z%7z&&I;s6_*QaR-xz28SON!eMzRf**%52W!ti_xio5j;E$UL|1-D~uo zU6b`Hmt3Y)&z3HCEw`>&?tfputIm3SZt=yb{`WSNU1wh$`1y+PuV42rw#IH(ZLd0_ z8!gwt_vi4n;QP)mPTsM)V`+A)_O-{X${xFeh0Ko+yK~lUyT9-0<)?q$cbDbd{`~lT z=7*BzTi$Lv%=sSw$>9xU*HZhTcJW!rrWVs>CvDyzdYfW%Moj70>n)Fk(&bk&hpJZ0 z-&^9eQed(A1^o_FVat1w%&L7KPCU!F7rJ;#)vq}jH#gjJ-Wt(-{lS!+8z=PUg*05V zaAkfOG-at3?>h}?U9M@nPR6p-X8ipqdwRFIjKr=Vzsl=2{QR)Ezmxsj+<T7il%(3f zt%)r^|IP9I6>lE<ui4L5>c78h;PhK`pZbcqyBUj*RWFq0o$orQ=-cfnY7cjvwbHyl zPwU~XVCi+%rb`vi$5+j1Y0G%<heh?1tjRBTr%d&0#s^y0OzJ&!e}=KDqw&h?ZWpBr z9xZmbnfk`k?%w2xr(UgWd|%)Fk=e=h<J~UXb<5ARt+ig(r)|!lGw1)#!x^>>rR%0v zZ93GxR;_0LE2Y%eHOUued#*L#t9p0Z*-iPkmwnFF{;^H;=QcsPgWG%8cIEF4*z=By zr7+%gt?;Q8vtuXSopo?#-izByV+w9_X`VgCQCRWXgirr;UIt6{=^FV9G9KFnWI`Mk zJnCxrEtAmn;dW<hXb#(2Q@)hr)hBmpxm}7>f1v1*6|!_g=w#+Y?3N{`CIs6|oRabE zY1e}}mwV1hR)%Ntujdl1@mX+$jb&onq@4aIM#_hGY%J4VpH_9~+?w0L&RL;eZv_{f z{%E|!@NgfOOz51GFY~7?SXJYjG3W3sfwkMzO!iJUU1+yx4JYsCNZ|<HO8={+jlt(X zhE8W|3)(p)A@@e}^|l9RvYpTNWIMm$-))w`cPX_lcCFkZ({oqm%&ipR-uk+K;S0Y7 z*MwaiW7;1d<J&r6pVse6S3jAq4YMkAel(psyd>++gPJDe-Puw?JKA@hoch`Q7Hf@Y zz~O}+or~Vu)eGNa|D6%(wKH;o^$R`SnIbDXuU}@_Q#5U+{k`H(lV|g<i><AA`)%rO zzcshN9&SARvQ}9-PgdS$)5ErZwLf*)>s|MAY5!`yd-!$!Z<qTXzca4?wQldrd3kqJ zS^P8S=-=Tr9ujA33Xk8Yy*)kmI`6^Q&r`Pt^!)dHvcGJVa8~(=im#I+#Vzz!%s;ZJ zcH8G5-A|!wZQ`EjUwE^+^}(@82ePj|o^w+)=Y<0ExnC`QZ<Z>se`?=ywq4pI#_wYE z8k?q*k(SS_j;-&RDZmi*z5Ly-vV_kscJ<z#o@28i?eJmS-H%^a{W^YV?%s*H+rQtb z$_csgqcic><_&M=?@K*en!T%aYV6(lvhhD(CMNDEci&Teby0!0&ZAd9-~4zrSNZM3 zbByPf7wi+Sox98|?CaM<S^M5is@09W_2I^T$31uFsVzSLTUnMn=>6UMJ7lu`?A}l1 z-tz2K*_|Mr-*uATYQ>+dTK%Ig(DZ)!>3!#;gk)#-^proTUFdymcfMnmV&bu?^Z$;g z#uguG@YMS{i=Rh@vmoHb^IN6L9PE3qFdyOjX=3?NJAfhax>=?EZZ-$SZA%%%EfslO z{&$}|wv5qJzT@gm$M?opy;CezyrpVm-<+Dg^T;8+O?ld9{`l&h>^EN3Y4$~Z<+`Ik zV&;_Xnzz8BMXqY!hm`^Q=5Y7D(-Ax{hkFJWbLbWW!F61JbEJ;4zYUQ;!hU1k5>MY& zu`jIUBEPS3oG6;R)hy+VYF5rtg*?kSwjZ)K3)~XAaB?SiZS12{Gk3b)-J~kW(5b4Z ztFCG_K~}s>pV69acY;`vnS5=j!5V{ScRuXcb!1L4bE;xk=7me8uO@$vUw&fVmNP2( zUQSVWr``K)q{=Q-9JMTOa&y;C1@HL>1=%7OfBWYixA=)ia$k1Hewn&6ynMUtO!X{# zudQJJcvID5?ZQorGlJR9N<C$ow?xFFS3|L!mv5)%UW+5)lR~FOOkonRdFdPWv}upX z-Gc2>iHqM|R{ilb=}mcZ>*4irHCqc7$t?bLW@qvK`^Vq5p06xkIKOi4?jE~zc8$Zw zP3H@rV_js;o4E1D#8bbr9~fPIZ>+jeY|^*I+)X#C;&P5_vKdY}weewCa**UHrm68U z3X-kg_~za)Jm{(T-`YyVlzDfBb%@io69<iMbCm|=ZQ_t#pmv2z>FGU-Z}odJcviCg z5}p;cdRFU{Vh7<__ZBSt*>c8d`|oE#(WZCoznooXzBoVs(&g@7PH*?QyqWgz@a~>F zzEih7zGs=a@NKL4|7{7~uDf?ver~S$!9Dx6@z*cwH{AdHqUWQ+vz6rzyvyWtmQFq| zE@G`&*cQSy{qXDa%?e#nKmUDM`uB&$!sA;XTE#t4i}-Td==kz`oPU-o6slTBTM9l2 zHNUTNJ}ghaP%k+&`JZlv-@TRVmuFr4`QA|Lb*p8j`NZ8$3lvP1*sm|!WTk8oaa@tz z_(k{!MS}u4s}~D`uT5!6i##Fa?jaeu<<5G=C)cB%gbV+;%28+9dSLyrC?hUzgPO}d zYbuYvj8X7cbBl>=p0}m&)>A&V#lb~vMp>+<Oze(`rbRC+m93S(GHYY)<z3x<lU5nG zRsA@XZMFMf-6{922Yu(bhi+$FZuz4mDo1pQRK{D6r?0Z3Qa!Eey&iI!ELuCkSWC#< zO)hKJgB@$su0NTVxHNd$bJyoAQtO1*F!#IE9`op^l{t4@cit=yp80MS({FU>9FBZ) zNY`9&-o?{jEiO!UKDaAxY4V%I-9Nj<-xuE9_k9|>P<-vviSrKa|NB7QezAGT+t$VY z+wO0g@Uva>`-=nncFR>yTf6(u`PS)N|Gy=_OMm*e&_(!#f#?FOjK?}%4uv{Pr8fFL zyQNg9tn*=Vl1c0I?$wi%qdvG#Og^<UyK|E93&X4KCyb69d^wHDcY);7hE+dOr8E`t zuRh!ND$C(z(ON&&!><L}vR9lBJ-Q)&0#iY)%q+>xTR$IM<NUnjsgB&4O5X1$56(Ih zbD>LY<Es}n43}nIZVX(0{HG6VbN0r0x0Xg4NE|W#Zr`~kiZ78*ywqauj>7Av@n1Dl zZe%{#%4D?W>P3@f1ua56vQ83N3+2{!EmTvKS32mpg43)!V6SGU_#v0lfS*@aC9e<; zSGZ;+-|<uMh{JNthNn|y*5#~Nr)jJ{WvW{IYUX#pMJ=yqUi|*os4kGTeYpT%bmn0l ziyXmEUsXOzF;xaX?b;=!;QVCYEx&Uin-6S$`!`nT;kvLQChhLss?E#ytd3LEaZ8xX zI6EZrUb)nqy!9SG!`R<m_nNd<=is`7ts8FpEN$RjVpWyeIEU3~Uszx4<;%+3HKt$g z+qYW%{#Eh9Jq7zLrs-(RntID|!tRw}&54<eEqng`I>VEpxAL4?&3To*VX`;&cYWj8 z#((eP4iUNSTUCU-Cx3J~zvaO`W6Lc|3RAZHZT41jp5McLx;5hYRw>>C^A&rx2XMdq zp`(!>mKS?u%7pckb?=x?7Fpo)hi|2iD{nx<Hc6orCp*USiy;r{F8*H6IV0eO$ftEy zPS>M^*gRI6X?XCQlM(QFeJu0Y;e{tI@pBzEcb{P1o_|-aU)|`#`d@P@7Svh@%SsEj zRV_+>{PBx}`mg2Zc>gBKNM8y3z4|P#Dx+0y#07)<8yHwO{!3Wl$H$X(xR{&AW3Nl8 zN4@X5$urC%_I7ZqaHN&Lns?-*<KY~^L-lT@0inmuMCR>(rM2$P47Ob5qKn5$9xd?N z$>wVt^Wyr=Qrj0tO3ar=CP}k)eA4D~OVZ&rJImh5x&B*+NXwDLWNpETn|{3d_#j(a zaK)>{7m?nvI>EKPTQ|39?TVHyk-XHzEd8B7|Mmo)>*iaIo2#;4cfYjvYx<^8f$iVx z-$}3Re($CI<Ur@bt9$=F_<zV&@iq72m<hGavI}!R@k%7{U0SEwow`=xXHFJlkm;YR zi@#p<%?rP)C1t9!vbbR`AI~X&hw78!1=?q85;)FRI=kOYn&FT=S2`j+yRp?wJm*lU z%akX|DQ9NfvT9hlR#z`Z-9lGu`Sh<^N1rd7d(uilhApqj<-LPTTQ;lLY1KV^N>>(H z_%6}-n<;YLY=N!MH9djaPjh)zxIg$Hdh0~R3*+V;)0PFqoSvX@K=E?W5`{d~qlc@Q z({5JYNm-ezaEq5Oe4pBt8$RdSO!h4*YMGLvE~Wm&diTpMx0US|D(e`riDX{pdOBU= zXXf6ES!UbTdtaJ+f7`3xj}I-*?lJiq^>F%}iN<Zem0IQZL@Z&HzExEB`dWBi;*pgL z!{ZM6->aQfx%B@Pc6NEGIbEyoBxr28?)&Oo;@$bt9{bgM<~F^KFqX4kDZE(lQAX*3 zh8+TLc8e9Yv!^ES(6yW-=zMO@&V_>EoRNPr7F?|0p4T42QYHH|aQEfB`S-j}UA$}8 zuf*ErcK1%J_hn_TO)p+(`?2+|vo`wa(~;Qou;lLlpY2Zd4`ao<>mq*t5$(FC|Ge{t z`LZ}!i%nHuCo-yq)Rf(H{h#yT#)AhN8=YoM>3bk^F|+GYpTc}=4f_?_wY^M5t~{RY zIe+5cJt>EuUQ+7y46ImWa$bCP|J7+aCR1gEKg<r>q7f;(LF1tE#kN-MYB`>S>8urZ zqP_<2STotS=2v?54~6_Jc`>~|r>_)C>*sx0`A$bh-p0hDB87MFyHDG>+<uk6S$w2k zs`tLe)-6Ggw|l0}>^Ld4e-fknw9mmmkItJB*;U%_bjD!z4gCow8#evzSNz?q_4cr+ zT*JB0Et)%adTz99&0hKQ^CIQetxan*FY?K)d?!0WsLAN8TTt%WQjz7QBEcmS&-R6@ zeR=d^wOsf+iS&Yq46BW|xY#$X-X-K6Uao5VC3p31A=?jYE=`}KZ+oZJuP?UgkLV|r z_e#HW9DbMtnyqqP=VG{_$mN(*=Hl1}-$|2rL=sDm<yKV*Onk$}D#7eq_3>-sw!ByD zhGms!pI)Ew_T!=AfPjLAy*1wsr24%()&9L&*7B*wp}>>BB|TMK7MM)`?)>Z{%Z!VM ze0$H#Ja8rR*VK%MsVAPiPu%x;d-d{P=QOrPpZalb!S~NW*TW^}zYtTAcF($S=J{uv zhmDLUWAF9cn||`lA4d~EP4fe;ts-uQO>Gix8xM2-*%=nP@$i}X-bRKqch+w*3XWYU z@-6IWj8%BxqO~l-=Q0f#m5y%y>2Z!{%Is8^bNnm9ESEfC-{AZ1@Qnh$=3dMF`qH|` zkJlEl`N|e=EL$#n^rhRPk1l_m-f44bF!^&bM%F~lvlodso4hMtwc*chZ|5$KhJA<m zv=~Ykyjb#Fb?)!EMfdhu*`=>Iyr;Hw#`gESr`tJK{Qkhd_QytExy>&Eh2<j~*Y%%@ zTvM8B<S4Id{N<$mMWHV{XEPeO#i%hfuC|^sv#rfvkVF3}`}CJT7Ja$p@G#JxqqY9Y zgT2}Pwbh?z$p-5E<h;PSzc{yQ$NuLRgl5ioziqiu_NL|hd#CQNJliF^rQS8|>b%R3 zrSlZ59`bCJpUZ4{w`$eAtkz$WYnEP3nc4D&ZS{PSvrSJ@u0A>$w&lmRNi1vor+9m< zHQ?IjsHd>W+S!*==KU74iP1d90x~yheoRri_0+;<Q^rD@c@>ds|0wN{a1X3V*?;}$ zyR>h2cE7uE>1(sT?2U<cFBbpat|x!*(~G&M=dFv~`}I~MbF@2iaQ2Injk>3QPWap@ z9=?3Pje%Xom!EsnxzGQbZ@ZemuKIC!-n(--KR;Q#JGt-Ei>W-@qqg(8R;ypU$>Mf1 zhpD$%WBs;Q>Z-*SQ=48F#5`f2<j>-?_htRd@XWp(;h-a*`y#rTGMMKZOXW0hSBNOr z=*g^fy>E6v+50Kawp$!-hs}B1R<AX?BcOTF=kctmb0s7y)>`a+Uw&w+8vl1rZYy4{ zt-)LR{mPR)G*pgrD79%k^pT2v_>yP+J%u-Rf|f$Q-)g=;d=jzf{{2w#y~~XA{QsGJ znyufuPWryBO3(ez8}9!6+5Tepdt=#u@A#SjJq{~hQ*Kdtz0;}W$-C%vAD!mf9y(}N z+qBAg^WU(@wTl8@c4oBxVwtpXrTgq$TeTWC!IyJxN}FpvG+2_fq{8;Z$15+4BDREY zYPw>Wrr7LsBP`?dr=S@J+>LgaycMeRxO!}Np|!Y5_UdhZ52kf0oA>5yn8#K3?%ckq zq1Nh8`a0tt7x>pMTAlvzhvWTM;(Q_5^A7xI-`ClE=XJ#$bM41rRccYbM+<LvKi;PO z_?h={-Gdtvudtb45D%5#y8DKwBEQtJ)#g5z!y0dEn)R=V%(qW9e}89t*<WV+9Xl7T zZ@O}L`|S2<ZqnlIyALg9ciui{<)s+L^e@`$UsnEAxav_m?UY%@`x=+_Q&Xb~A2*9t z{hYJz+Agg*$N9EwxTU`2)~xa)A6U3vcDzVB_wIoIlTiNq#byEzIq&yOw~LxQfqTKE z$3OZO`X+Szb?-kR?(lSZ!C!adixK9V4&GRJ;fm=GzK%KjC(gfrB~T+tFW_cWhqZI& zp_0XS{w~<KOjNILm3qEN!ZYV555ym-iuZONQj$8h?<U`UMGcO&d&07tZrt&|-@jP6 zytn4hy9E!et9utN{=*`7Ff=qt)~e^>F<x;U^(iTh)jtdFeqql$dn7o&WsCY-d&wIK z)=%$OzZSmvN<HUufWOMMyIWIg^4~u7El_Q#{<Q8+>!WEJ>na<vrtb?9JFsV7$F~=} zOIFOV*57EOr!XyI$MvL?V-~kMmJ3|;&=++H?~?5>_;vnt>xI8rA3yK*pU$yhb9}1+ z`|D{%o+9@vHfWvAyriodbvaTzL8&3EK}hjS)#fVA$E@#^<2GINoH;jWZ_Ua0R|<XW zj(&QsSWvQ7sh-b7y5w5ZO|u1`4z^8eS1(!TP#es%gvDj`XU@qN-(}=w9{rup;Pv#) zf~!IOte$7raWQ^*<<#$W(?n3|t}N@#;<cw9KM$GvdA*jGT||e7#I@L`MoZpgceU{s ze26ftU)3tL@<GWG*KE^E5w}a0Y*bRe{Pk79j3o<S>t5Ruue0YbXD|QL6H`9S-`DYn zZT{oOp%F4`FK@QEwM==!(fMpA4wbNZFY{1cePzCV^~0H8vyT2uoi4Oy+PArCD-W)I zt&)>D^|y!c=QqkBY6p61Tk^G5o!VU5tF<fig8r}QJKPN0otr<uS2}aMq<5p(B^M2| z^ULKUwte^EZK+?(rR#tH)6Yd!(=?u~d%d9i!`~AHPjuz%m$@>wy}f0bx};Nj^>TB$ zNq5a_nP&a)J!w6EF;fWh*K75A-?%ZK%zF~Eu)sD>{`tgv6ADdztCE{}R<3%<d$*lq zhK1#Ho3;&CIyRq-Up>n=Pv8h^=E`GTeV&>R7G=&dUD$J4`LM+Xk++&FWu>}<EZwW` zM3~M$lPP#YWTUtnxBI!|PP2(TPjVJqj`7&B`{Kgj&wouEVkY{Ptn)a2`E*T>-G|4b zu^ZQAU;fy7`B72j?^)+sHY}UGE&uj6<DZuA_8+sjn(uCrd+6rl4>~s=yIqK#nl;h& zc2JVf3G?%+jcZ(98!wg&nAK42!g%xN-}AE9n@@SIu?!BoX?$F1QxN~OjJbZyU*6Rz zUfgLkSD>w_MDfSw*H(`YZJqn^+^fvJ%CXE&d$LPs`Q_aXs|f$M%z|Go^!dS)k<SnQ zZuzI<RPVNSNyfP|#Zn8Bx1BS1ZL&kY(QfY^?Ro#sdFPA#yLxN8#=N#p!`CK1em;3} zUvsm=Oy=cRECuEqm-(^2sm3tuNbR+&cZ}}ODP8%R=U?T6|2xzF|C3G2`|$tnY5n~x z8up9)UVBAp#q4!`e_L68%btk7yE)0;bHjbj<o(8)$@L%iY}8kqdvn>du!?IhCpGL( zoEP0F)BWSQ9sj!89H0M7kJtTtWLrFs>&s`2l%KmFO$#uSzqR6M$>%qp69s4Tb5CeB zuAlMq0^euF-Z%T6^jpYpdiTss^-|~d13Lq}wlDrabH}TbfoGR*_MITz-y_X`=l7o@ zjh62O&%eJHJ4Y?_TgT=92fuL`zB^*wa)U2z{&$&~=l}e;p#MGf`uXI%j5N2Wc7eb5 zy%+v?rGD+&MR%$<pKX~dT;2EOe5qK*vjg>NXOk-%XG}JEwE9%(p`1yZi{w7q?|rth zNYl_>^YG$NGmG-N=GX_lyHO_gYv=Y-<&d6Ni_8L9wB}CpG*t13yS?O4=(V1-5@UW_ z4x`6xcMg?g>^K!;@I=7icZtPkzE}lElhVD4DH9pEc;{3aKV9#ALdWiv?&P^E!}zYB z*`Zx*P;hrk(f{&qIkzXQS=;|$)eh-J+||zZI|6h?nWy`)->?1XlKy+0-cplwwJ8g3 z%PyInu}nqraKPWzz;C90{ka<^DoyvByNpYEf$HjYGnJMo2h6ylGut6gy40~wmxZk& z<~fH;`nCq8iE(!sWJ{*DocRzdZG3wB-R)(cc~AcGFxGVHF4z4iQ@h10ZrSf=>vL{= zKJ&Ny$fVt@p>ON9*ynz>sScYxNAZqmYtNnI_n1Sch}IrT^5585o0%&7dr_C#x4501 zw&}i0s~;q3^~_ci+qo%C&+%5)>aq>qFI_MAR$k3Lni^wP{8H~<G4JftbE2+K56hC= z6B?oVeeL%k_f=n{m^mHXC$cP9l382mdbw);oh|dW>byBMfyJBY*MC*x=`)ul$2J}N z|NYj)n6y1RP1WwNFuX4leN}ksr>z&(M@6*$p29n2{;uL#b)gsapY(2$W%hc$>V?<B z2nRg@5#6RJ6Z2&C)vo%*y{{LBoOQf(sK`HC(mH?R)~z2z&t^>hcdh(!=<&@fH*kG7 zw!ZN4k#vX|+l&>)zG-_+)OJl|QtOzp=^n$B$|~DsDt=6vEBkM;ZhX3DhL5MBf|uXZ z8v)&`$`*#rUg5j`B;VW{W(PeTGpcwUE@vBXnjdX6+c|S5YnCJLg5#=fb1vM?D)Y?q znI{>XIpNiuB;^;Co)g7#^*_g0%{0&SarVD|Jmy^Ak-fIT(#EdMZX$n$ezP5Qezr75 z@zhE!mz~cR3YgB;3Rx-@GLu8(iO#FQ4K+-!PaORD(S6D6$S;b=Uv=(jxUy{inctH7 z+02tx?}<;_?ejF5_k*$1-L9ILYB}SmhZWZstW=(KRn#TE{l+!Mt!)l6H;#Gh{Cf1b zxToJWaGkuI<NeKw7uxpqJ~*!SN21xiZ05|w+J6qtOEj;At(vH1IN|%lMn#=#3}1~L z<gU4KELd>g(y2&|FSWFH$6qd95fNTNzZEL6?|(l^{<3d*y(-V$Tc>k=p5FT1cK_xJ zwi9aKJvs8v_P@YV=Eg(Wi`D&XYJSF5olY~hu6vU4{_J7zx5qv-=34*%J<VkA)18Oo zrS?BQvpl2ldYiC8enFqe+NBeeZ4H<6WL`FrymaGgnn$sPbJyj?mLC24w%>X2#`2<M z(ZUp6&-lvTz2Y~Qu(@i?pLA7Ls%LVf^^F4wGtQWAw6kssnS5%_>XniYE|fi*a<bTY zN5QEkeuK*9o9_<m?Aq~T%A{FR9$%+0u3COZ;Z1sbZ1l=`TGRY8i!xO<^uM^AIB)00 zJ;}k>uYKt{`1rM-ZS`Si|NMyE*}h*m)7SV**b8cZiGI0p-rUaQ??<xx)vV&{K7P>O z_f6f~OfE(&`ex++pUzC{{vR&1mQp|Rwz%V#_=>>l=k*OMYU?iknzN{6h2qT<Ei=ta z^@AOMNqJ3M(Yi|F#_J}Fm%LXpKFA85cRPML#B1fW?YDw8l@_nP=vTbrh}?~o`udlS zn;HXTl`b<r?Q*<p{UK?~ySbaM|9QOhe<$y$@{VhK6Q8TH|C*m6wDV!TUFl1{7;m8` z#W@ocXPq-^zdH9xQQ410YZApmJ7+5g-BGQVYOp`M=y=wwJCR?iUT|+c<9CrKyZpmB zhYMN3EW4)uzu<XKa>LY5tD5arx75k+ywZO8wW3vQX#R}@d4Ilr{5B(Q$KP2Oud3xe zS?IX8?(2bHTYYBO{@$#wHm#5UH>-c*9J@#BOMC8wL^Kvu^=MtVe>L`i>C?qiGK8P( zx}d{u^5V3`VolE0k9iSuvlbe}3En@X+hTWS5*LryBu=~e)*bJCa#OsyCh2xwJ)tu# zULz+mWBv2ThMy<4_gCcYwY=oK{-v**c>Ls^vda%|e|`2Y@7d3lH`;8=^1Sz`PxMF; z;_5RiwqG#kO8g;pv9p;Mc-p$6X2zXgcj5I@%}<G%jPKGIwDTmj&&O7U9PE<)IfZ$P zg`h%3kC>YKMVqwk`U~$Je)3hM%DAHIJ-e2ssQJ75=~vYAUUahVT2r^%V3LI6{BMoX zyTWe0yJUR#H20EuldO)m>`Z(&d&+dF#V-0*9ZNooxJzD8zY-nXm8bW@{lM|%8xt%e z;-;NcO%;#3!?uFmOkB9DN@hp$5$+`oYRfMfCV4n-@38Mx<+-s=gX#3j-!eUQU!Ch^ zAADK;-Y%-*>6~c$f)AYUX1504|H)_TCbv9q$>sYt(G_yn>%>+tWxLKdby%wT<=~W4 ziB_#!H~DZaSJg{3n9Z@a>&VY1-j1a&6Q`bUR2E)#S?<wpHm5&xzi+kPv32=-?Hap1 zUw&OY`jz{|1KFy_Te+oXUT&Ry|G%BB-PRSKAD>Q6OWH1e)53Vo?e?6j4vo>7IVMtB zGbZkpn765c^QFp6Rkm+OFYEK$cl=9xbN0~QQ}>sb?$!{uQamKIX!8Giz5nM$SY$K( z)!;JeNt9i5;u?qGB1hJD-E$Y;o_3rw@*jKH7oH90`Q`WIUZ_w0{qUV??97Q<Kg8K5 zh8xvJG&Ag-?tNl*_xn)aJcr8lT-*K``TZ;URGTw>`A)-MqIXwoJn$3Ted6lfqrq*m zuZ|>Gvhqw^$08-1d@!@|16R3z(?#32Qaj>ae9QTF`S6_^64&ob`mcX_ZSB1c{QJ)* z-?50&k5hi19C&q-rQ&(9`|OdI7F5cgi`gUZce<Q~t@d-WyWMlS2-T9^X7x_Tb8na* zi=E!IJ&OOmv;5P(jrXt2bxvQQ(&L_T`9ani|F*ANKkN8QUX-5kfH%V{&noa%-iyUW z>Ako1vaJ89{AJeu(753K0w0$nE2ey!Wpy^YsOpYUV_fjQLyPKF?t7hN^)V@JyX_!< zeQ%%Aiw#Y#+%*n-?u9)4t@)e+H;rxYOStd<cfHm6>Cf|j8)hD;x+lnG{_uv{!}))X zGo<`bdGh|DK{?kBwG9&HKYmGkR*gBl^c>^vU;92RSNrPUsPH56g_>p-!$pw`jQ?YP zR&P6X|8`e?@0-d$t+L-=pL=M(Y<-XaUO(Qrn})AvL~gk?UuOUFSu3x<+|6bE@%N?w zC+?pA$5Q;#Jh;G0g{fajIl)wXOO^47wJhd&f0Um7Vf*5*HG{{?bz|nTZtHV#>#ZFl zSBQC;EZi(=&iVfd)9yWT-{+l(S2*PMe$n0j8G1|SFWJ)H@=w?Nl-#AiBJU?>f3SP0 zHs7w}nt<fbh<>(1!VaSSFLOV;8OhyHTo~-N>7{|@is-d3XYH$=`!DyZUFqC?S>9Hk zUY~9aT-M$6+0A;5`6Sj4Pmao;@(9aNxN|hBYzFhu*7v+muIjE$$vxrt<LR@df48#x zsU4ozVLfq&q2-6=3ekJhR;C|+J8{KXp6LZQmjB+tZn^rM!L8#Lst;Z9_jbFTaxQmE z^M!f2K_;tb&ul&Zd-i;Zy<FY=d)I5l^Ox^wnbp2feMj<))$?7AcZ#j&o3qI(;cVsN zhUErvd<E%dwu;{qlpm~q^TTB8^o@(QzDYgh`*z`lpR;eAZr;jrb4rd;V7#9CiO3Bl zwlgkASJ@u!%xPcox`E5jmP@tdMY-aX1k1T`yf0Ez9W5E1Z)!)a-o5w6zv{1d{vMZq zR<Zf&q4F!=bQ8aQF0^00|Ie<QC!=>*e_fWEqPJX9d-LS#wyxl4jTP@7hJ@@&3E6f) zcW&F7+YJFXJpyJ1NaUO~ERsFGv*2XJV((9hTta%wT#77jJ<C2)UZ__i{(Rm`y>spB zA0^l=J)XSS>G`C0skVndK27HS{oZ5U%Kr}TMte8a9&PV?_wN4rH?qB@TpI&68CvaH zQ@g@?(~g&I1wkFxwzDr<tZkkX&z5Ym=*LvYkL+>g6SnKVv}xWRba95(w?M-Jg)4&1 ziy{`!^ZTASH@>mYDnohhjoL-F>*6i-#O~dwx0!3QZr@bS%hE5-yt{2KqccaVruzMI zv-_?0v>O#RiLUS6dU;*%r(H8Htm(d@5H<Pmsr$a0)lR?um~gYI=BewKv%4$eyUuU9 zp83r(?B4TR+S@I^RNa3nm%{dOj?bA~zn~dfdy?$FolCV^^!>N#t<z^J^tt`_Pd`|_ zptk4wn`FIrb!tuDn~z0)WBzjdsg(M}$Zbqtep&B){3W(RKVw#@{sNDZMQ@m`wYM`q zJ9YYwr`k&ErnvL`f-Rl`dowE>Uu-<O-n&KY>mQXZCn6uRoc2GoV|iw+@0yoh-`2d$ zI)5SBZo>*&=JO@b)-8N@?wx7u+)v>W$D8kj{ZhSq{=&V>jPF++iOHJMzLWo=%<~U2 z?&%E1>rSdo7IB|YD0AO-#-8WKCrxKhi!j#yU2@y*DDU^B*GpV`U;l{Mvu|S33LbMW zd-eB)%%AT+UiCizUFP@gXZCC}|MFA9<oLX4*Z(?PEsf{fmT)$GmCnx-(`>4GdyK9x z>t{6mIDgWiC*FtcTiRt`Y~B3ndFEn<?Y~N%a=-G_Sl<4$Q}NJ_7tC&nZ1Pn}Kh~+w zldxM-9rTpp=E=27%NNg>)V||F-=ZwbeMLzbkq*golth-L+}E(2@@7x+`tA8kFAI9= z3%BUK`}wh2*!iH(CgW>cOIWMk?!J&M9~L+J_;bOhTX}cn$8VCnkiB{4so;)#1>y1g znfHF+TDbT1x4m~V>-j5h>V1(*xIXy}-?3wR`_8fYN?3+`G&%6-1M@n=-X%w;PFnx? z@m)LS1)rZ>P<y>nVQx%y!JJxG`%Na7w(Lkxtjbvs>wj(YIj6R$!lmi!K1W#JohQH7 zP2x|)dV`3HHR(&1@BXgrt+}iqKT+4TGWF=5=O0US-?Ub*kDhemOZud{Uvimey72$e zp7Z+83#B^?^y*z7FSuZFZ2g`7XW_a_&-Q(gO5_ld$_y3_*YLGk6tqp~x#+Kzr5f*w zn`%u&HtFg9UVEq}x~6vOwXGlWI7_ot9kqYGIe188tMKt@ota6ePwkkrRw#U*+4dcq zKI9}eR6RY#Ar-tjE&s$TS%I#XXB|{0t-7In>O6OA_?u_3RSUPjSDv@`n@Nt4ytd6& zySwH#muAQ9XFJEuy0KtN)i<w_YkRpf7`T&W=(TXUzu!0eNL=)~J;&yz#4m5UBF-Vb z@rD0nIkCx^Lb)3v=Zdq)svdK>wT0>V#Z3x7O@sLDca%un_hhRuv{3w2dC{CP_Ikw5 zpf6=NT+g@gRjqxyNG`};?nV6Nm$q^70hjkb<3F)|zun}bdG8l1Pq-Bn{883tyY!{T z=vVtr+!M9layV!G_v;deXS&=ExRh}>uHxkr?f<=REmJ2h+o!tZ?D4hRo*dZadWK!! z{_HmgUB2X0Ta9BaHpc?r{AJ)$dd2FQ9$X~0phrUCR7cURL+d=FefFxxZ;QM*K}R^~ z1Z(Vp3!i<DOg4?=mRhd+$*O(U_7k&u%3?N&FvQ%Px}=pa*WlTip3H8$SuyGFU+gXX zUwSBO|Hgm%d~Zx=w)pEt?*8dwH7{a%#&;dA<Mtbtbf#XLd&~C1O+$;)#}!p4=jrq4 zL{F(Sm-MZz(0*erees87iQk7sKc}`&4d!AhT+0wB+S`=(^IG7(oo$DNeqP!YS^8Q0 z#E;Aui{?L2achrxHM`-7`0Hea^Q`@mUm}W%eQf!{kM2`@nl)q6d~wqlOIdjptzDA@ zr^~Ta9$F!GFqF$ph<(Z(aqZrZcU5~oK6zxZQ*x%;)@u#vfw?ulYHdEI(+-rMV1M*- zul4o$x9;k1sef?NB}C%pE$a<yYA5zgG~Fe>p?BW0hL4OnR}_*}+6*5ln|*q?$@1qv z?kT3aTfB1au8BMUk9XsYrOsPQ8N4@%`n1*U4EyePE+*U2jQeo1m~B>0nwyz%^n&D= zZIRb{<|lREtZmS_C(9BTbn)2{Ng<&%4X*;4yR?Hj*Ih77N=vBh{r2SW{aKumPLB?> zp3c@<(E4VZ?A-hFT#8q--F(Z(_130Ry>sUqF5MM3B6{|9$i6+&SLT$Ks#d&KQe5>A z!`yie9%0uvCx*tSH^hkDo-4$f(%GxH=GdyWcNxDLp4ECA)_QE4{{G7UTldQQ{;qj; zNcY#qg*QHVq(ASQcQ@Y7^?HF%wf}W7GsC+7xz|;G9k;sOe&_LPr+H@|zOXe(=8tM^ zG_*Mu_o{SHorB(+^_m;~Y?nHH<6fwu=^;0J5)1P*Cx@m<?7x3Tzg2lE`TVHZmXa&` zm9H&W>U^@^cRJ_eS0_$h?UH1g^}sL6C#g`g-}@80@loZRt#c#{ojTW7hpU<CMEz9% z7nS_{+0x|MRe5*HZ6kyD+V=n3Ij{Nn<<27!F%EJ5YoacB@ZS;2`#+igo{ayyUA1qH ztgDNNJl0>gbgtodUEeLr-?^Q)PqIx>o)w<BWn08b{U8$+V~y0~ZFfQp)!BlV*%T_O z?_4uWW%{I^O^aHOa&dRF%58qJ@zkNDji)BNB<ZUDRNFi$HEAPL(Uj5)8MQYumpG?$ z?YI2-Vfi<g1k)K+Oh?!JkGbJ*{_kd{%`{)18Mk}>%voU1RxX&td+v0{wh*(lhFt5g zbgyTc+n3v2Wcjmg?X42uMLMyQ1Fm2GCG_$m!`w4fwf{o2mOf#OT{&kqzr@BA`I`5F zDRt(dzPmGwE==9j&FL^{mY&G#%8i9gd$&or+5cJY{okYR`r+<>oELdNop@1s?)69I z>|YN8SDx9hVE-A@E9OocnQYQ77WYn7mdu(tv#jzkudZGFlEBH2PA`@}X@9_Nefoz= zUa>;vm?IS%!Zu0!#{2xu>2Tb2GG<bq(yqn~Q+>hrS8eWYsn<_`wde1wtEbn_e0#ko zE?>6pMf046`|Fm}zGaqw;*)*o1*gigYn-QlU7pLFytuQqRr<x@c`J%D5_fH2vRz%? zr}L^sMlo)2oO4}iz}FCam+zBqw`p^IymfEE91i9uE)ojrP6ZAuYdsqutu!!syfR>| zz@2;LpAWv?Ci`;t*Y&@)%T;C+mKT+l+g7F=mX_Q1cb5LU!~N{P+7|>QCj`v%=DF%8 z9m!YgccXb;`-;Gu%XyF5u8>%MqWE;&ovmk=R$u7Xo2$8uW41@vh1(zaGIm_%ec#}B z-Q0j{PtCc<xlARXT~OB-9B6+o)pcWvug&X&{#S3ZJ@qa<H|Jm@>xT<@PXf3$D@Qcl zWnedYQ(1qL@7;paJ95vxP4$^O`-$wH+TQyazH2@&xgd7Wds{(@T%p0vfSU*V_c-jI z(NW5muUu_mC9h<^{z9(X^2xpvCZD<ebgsv<ZdLKFA0e~Zu6J))m49H?q#1lN-qIS? zm9j5#7pztH-n`YK!I(*84WrK!$G&R^ZZ+SGD7aebDR?dRpKt7MY5$-8-woe*)%Pw| z+oQFsFyj2z!kKg30`Eju9D8NH-thId*|PIvo@Rc#IJbiLR{JA?6QOJ?*K3=y70mRW zbS-l4!HzJ#ptJh%kDMI$H;1j_D)PJMxGITJTyM_w(n-8#AyH?R?0jRoYWm(()8A(v z7kpnG;Gg03`LE>61g9exrIy}f)NZ?Q<^Fr)BIV=lU+y^kX`U<p|5fAOIfi?;=9lmm zUz^W!L7n^dpVGdEA>x0ZT<Oiw>u=<J=eT;a<jn&tKcgm3QWpK1an>~Z(kX%RiQ2Bh z1+FvZuw))B`Dn}U`sSDaoVo=Ck7nO7=T@Iz*(NuCm*8HzHSGNhE5p2Xmrm&Xn3XUw zym>>KDFaKuq}^>91`%^2Pd#aVof@0DcjCgCA=k1W^}n6z8!z!PGTeUN3&FN&E^T7R zjZC>;Z`Zm1E%loHp9|}*I+fHuKg553ikuYBM``Di`V;n+m`7dUdtKN2>_4-}gqX@p zLg~$U;vCDSn5^*M%(J3s&MN=JRj&gY-nC{-o_}HL<d}s!-+lS?BAVZ3Q%K*Xk8y{z zofb#jc^Me%Yx2Ia`0P2szlw{6*<%&0ZXFl#X5)~(`0lpb-p6I<)AL@&&)arvPc!51 zeGmTKzEF`>J|jH;-|81;i<5sJxVQ4Z_WhsjGcVuRfA`0_nHi@$)-W6nty!adQ_MTG z%W%7w;k2?#zq$AGUef>2YQH?#QEkt(fA{WvJY-s}(H9k1(Q<q7>xFlw$REw)d}XKg zx-D35)<4F_Dl5}{CDbqWac_P4)1z71!&Ax1sW6~AZqse`qY@&_uYP!zn%kAXOy*h{ z!E{`o@xQf0sPAI^9l!J&SN|7MQ1iLi*yiCB{NlQRLi&M@;7txw)0^(JH=jz*?3AB# zJ#*=a_0ifatHgf1{cR!g!?ySQmvWoxSJCtDeqX$6^7420_r8ydJwN^Z+uKIBvdvrn zC7u4Z{_dT~iYM=OOP+pL`*^$EhTqE$_6O-)?aMj*+D~x}>q@bbM~Xh#5pk9|^N!4! z6m*7XJHw>=ZJO6-D5+~1ao;MEy7*=D2iI5s)b-aMZ(CSd;<jb+eTT+%5zS0Hr8u5g z{JFu@ANgg)%_Iw%i%%ogwYeOr^s0=yle)>uuE*H=+#ExJo`-YQeEPa}q>05#FG%P& zogy#%@X|cJyXh}pv@$O6leYXZb>n&)*A<u79Zj=gWXYN@`TAc${rTs{yMkNU=bu_* zIotl%@6FrSMQ&u4{&-GwCjXoNw|S$@lbK8}ERH=Y>n>re?CrKfHsqR)@|mPrXN-6R zFMpi%q10L6-7_iHi{*Cl-TJ>3=00@^W2tcU?moZ}7ssRD{abd=-QD*Si$!uju8Q~+ zHAkyTN@IEZ#o~)QY|g2y-RsJ7<3q^=zk7dD9<B{$|CVcAU2t{h@wWGYdg7(Ft=rcH z_>09=Bu1A#`H>xe>iK<N?d!b<rZyj|U`SSV(p^v&^W<&IO%@GB(FF^FeBC<3f-iPG zxYYSxQTpe}IqL<>bSkg(zGAdmB)33yb#0K>NwXjA-v8&$nW-c2vP-w-+#M$MXDl{p z7n5IhT4v{YPS|Ypugfu*`))u$Fz<3V*$$gq4hE+VCcijxVq#<#Gp9$F`jwc}<7s<Z zPgKt^+xlo-P|z;hMeE=057@CnWa_>p5!dXl?0>X=+SIV=>)us%-TU!Q;>vU}rcE<v z#!nBKwW;E*(vD4wC98r3!})mEHL2|>jLdyfcdlAaSu><_iGtfCW<|{vN+$(FCbAet zTTY7D#Bef0%k{$lW0RjQ=IS%~aIpA@r-6&$8ylr$_G>dgr{3VyzLBY=XKGZ|QRTsF z-#KkU=7UR7ta`k{Nz6^&%m-9K=_P_s{LC@;)A5EeSqi%!eoo%;r1V{a#P{4AF_jHI z4LasVX|tYnNg6zm*<jSvTbYu!z{gi{_rG9EH;t~{CqHPUI;u-=Ka`|9Gomv4@r{#v z`UG-cM#QYjR%T_&x);AP+nwW~fs+r1qKq2{mv*t0aQm8!7WW&cEaqMexpT@Of=6)L zpXRq(ZXu^4waiKr8|oCpJbH~{Hy*Ox$`c;_Lrp;KMODhf>bskd_wBW{?ELm(YIt07 z{N?$JUI|#;y6|dK^s@)W(kUq>(rTZ-ev=B=wSIdd*M%?%*2t)Y=53!hlpT7=9%Pci zIq{9iPJwQ#=`&06;(couZLMY87g+Q(=ifHIH-6SK&oo{b=B`^`HFt^N=JyF*;$An_ z-pxFG>MMUe|MXDzGr{~)(qVZgN^*U9zR$a9^lfQ$Rovq9g>8)=KMMaf<q3_h_;hoB zeY;)N5Ao&4PJMkf{mwUoSbvpQFHgJoUph8DUM=16lKrl}uAsuK`!T=VkE%6(G2F5u zcS+~>&AlQsQ~h+8*fU!$kNoAnGhfzv*|)xRN5AJ~zPgYT`r;9j<Et%#s=hlV_P*v1 z=+QH?{P<M5ZOZdivpgo|J`10;k9QT%vykcM_Aq(*@*GjL+P{wdIm>=k_hPois=BXd zq)X0~i#oEm>B$4N&ub*7v0j`qE#mc(6HBK|QSA5?8S>BUVpsp!l*?|6^CzB|+s!7| z^+aXw-V<H_-Yj)LaKJUngS+duPC!SW-xL|Uz*!Fj>+;&>Z`QbHJag)1wtd@*D~yc< zWuzNRugE6eUFvw|=-Qs&+vLUdV(-{~J$A12=!?`>^JnfVpPzPYxu4j%m4)2RNq0iu zNN2oXxo}qI{2XEScxJPMAJ_6HvYnk}<=314IOX!j$G+|xom5)c=JN|0x3KKo6<?Cf z>k@Ri|8`piqqpIf6}vBaCQbUAzfP&$c%JxOVXpQWLK3T4e=d=euai6CShQhTmZaSh z4f*u9=N1H2`al0zKC8lV$(1{w6T&7O6O#1{s@DIh@zvn?)b=w=%?qM#JD=ENmM3Fl zxUYQm!9Cv(<?XG^zrJo^bJ|t*<y?!)*Gt^qZ@tULu(Tmk{Oy<b(Y7|GF^~F1Teljy z9Twp9X}>rj==app)(2(Bo*FZLb{4&GEtFaJ!V%~6*4n5G*Zwm)zUE3bSh(+cIODxf zUGs|=UTaU<t?E(dIQxa__vY5EM)PjJ=*#?YN9&35k&20725~BFJ>q_v4Ef?mK2+}L z+xGZ%#zwZ!FNFJC8fs%N_H90}=W#z@@g)16EvIs-eIq!}z35JT)?U2qjPK>d+6|Xt zFE{QxQp(f!^uF7U?LjsfnU6KjW=sv#H?(T0oUL#(ce2;a9?@&}lzNw~p5hi<X;eLp z<+-cLO+js!oo3Z-6Y`Y~pHQt#yXo{|erMk%Htsji7_P^<rG1TN6~FuM)$9F|oX!in z6snpc&A<M78a{*lzFv>x9{uFcf_@G+S`6(L$SR9XQ9T^&VDVUC{>~D8$tUG{Z+|fJ zOj2o9iM?sy8N_kU;=w!ho-aGMb8r9m`snd_@9uQESHAjG_G{^(_T}>y&HwZ7{RxGS za;N(g?H7qN*Rk2Sh4pQ_c;LaIdq*^DZBm$zMzgPcBlxxH)?Vf6NikCo_;Okw^b%Pe z8Sc~fs47TFfg!JQ>c^wY>Z0!auiO7Ur*L8Fx)_}`Ns~^9i>;CiF*{^Y=5kR;)7D8o z_{n9jd(J;|_Pl6ZdVniPx*)qp(|hj9HOIMDcc^DH-4CoZRDSxs@2X|_m$01|IUX%D zxYe()rOB-_Ucz=`npgJRJKTk$8{6+FNEf7thO+HEjIu4gTbg^Z__U%&?|)Y=w>w#& zes)^m)3`QS=Z~BDR$Jw)e59-NiXracOVRnSOysQ3`tT%+UGctlb8cF3_S|c>y^s5x zSz=!37Rt+X)P0}*XfF4+hwpjx-W=BWdcq{Gg{jqJW5?51b0lZ)Hr~93^RsNloFI!y znpP!c?oK>5YmM#u58r)hyDGl3DP~XKsn6$Ge!Ucx3ysMPi{Uh9-Mnkvk;GM#uT4J6 zmnIhZ=)xW;eVeA|qTNYv&TGxO`OI_Y8!r=%MH5$W6h3#Y<(hqe%Bd(zgI!lM4@nj_ z`%IVCG2gY!b6()>$0sF^%%0f8W?+}BpOsWB88pEs-0+)c&C(BLKc_e{FRYI=j6SeV z^6upm>lC&8^rt`Onrt~GtXxC+*21Kwkn<~#dp~gG5cK-u_BH4{Pwtd&k9G!c+%;$0 zu`kcl)&KpwuXotLRH>OS`A*A|%lnn9)J#ek(-sA$9a<73?7u&@dpjdrE;A4N&DX#0 z*)-QDJu4P7zLwB%e6#TX*Z2J%%>Vsk&h_Vx(X7AzJ_?)YYTvB?!r$wN^@>!rX`3td z?2}r(cE+Q)w55{MjHmsN*&E9<aZbSE;7dD=KbdKLoN-&eQPXAlT@#kZ>l^L{PV0-x z@QI8on^pOH+K!J5d*7}-v{d}xsTg6t+h5hW`R|uhU&`Ry`Mox}c-POAg$~ANoHg|B z=;!SG8@BMnp(~1M?7C}yAKkUm_UNI2O8K~@{RLHL7MBZuOqILzJ=eGH&?MguX_?HG ztghV}1~Dog+y~Z6E}f-#NVPaO>fM`dk4o!VY<-s>;h3MV9_Risg=O{SE>q1FMrVJ< zD1Mn<_ocdyvAab_vsd_SlC-{>x<g#5I-9$){xLO&%bOXe^VQ8b!)Bjwv@b@pYT-Hq z@ekJ(+}R%r{&m&6CDFXd7`&sn-7Iy}i}Ht&0x_?7O<X1)oV6_C;@0~L_S*keL|8Dr z-59h)R>LCdf^og_tdeW2-3doOTdJ~OTb-krx=88mnN4#-Cl)JjOqG4SUMeYTURHU_ zxAaYEj~~2zc&4CyZ=sLOz0GGcZdDg<zxX5l<K5=+*dIL?w`gyyKI<42Ykt#w--aUR z9iML<d2y_3LGdnQao3k;ei=`ZeyiM`y04`B%<Vj{?!+y73%vwep19=|Ki*&;@BF8` z@1WYuaL;?6_iug?Z@(z9a&p9Z>kKjHU&qp>OCNZeeq){7j<m&+DF>yNr)+o>7JuQi zV$1uy$arn9%@u7^-cDbC;g{oL(-*hD20dImoqPJl&l~E+|F$SSTk?A6pWTQ2&Ej{> zjr{-a@|t;lxijxrmF{=D)%oG*V&lu4S{_F;w(r??Q`T|MHqFhBpBAkY5M5&6ZXw<E zSz*Ooc1I(Ag|_0Q2UIL~-^^9{wMFBLa`{Bd{d*6_narP%uduf2<EKo4Cr1yoJiGFw z!ArK)>iogy746)PcR2eazr-*XrnjBC{iETsYIx|O&sr9FD;Q;}FB)4<NoiT!5U1bS zELinXKXXGg<1MZwe73vxeQ|N&*N#<_m?1jh%9nW$Y>)L6Z>+bGIg~2rr1)5Y_qkYh znw8A1=M9HtkBaV+;?cgI`i*ysp0Z5P{<+G06IB_C9ep<GGjnR+KlwpKI?d(r?=H(N z5=p;OdrX_l=S38s?=r1EDP?in_Hv+PcHIf}DamJ*gHN(<i3q+Rx<{*Ir>2ree$lhc z?(5I>y`rWldRs<@yH1&UWKQVCk}VbIrWJ}TyEli^-Ly%hDe&6f_OCvBHLL%J=^pSu z_h2or@UeZC&K%O)tV*^uM=o#dmAPH)a{BNGjccDef<0gPuUb*LLUWp=tL?mk7qgOd zJ5@9j&zT*MF1%nTpUH1I(`@sW<IzX=+{$?+=Q%02xv=S;=yLnkueM1cO;W2DePHZ5 z8+bdW#ct7Amlw*{MY@IWZns=rdm?ko%qw>LB7ElguK#}UPlVs>gEQ?9%esBO*ZIuN zxYWx|@z$JEmdhfaO?;yExkmO}chXk#qL=Sk;u4i!izsO4HXPZ*c6RQ+&C~rv{7qh5 zKl-dw=6#Oag!RqtX6~O$&z|~Q(C|g@pyENk#{R|=jaOSg+-<+%^JDLVFYamcOWbc} zoD6z#?b=_NsQQ}YpWgAZx9RQsH&;F<Zt0qKZTVUsn+@-`tXp1~asF26_Z;~zK6{UR z2;Lv|T|V#Z^zV5Rjh|opUzD5Tn9Y7?|9$7wwHx%>E=NksaO`=xMmks}YN|Bb&#Kts zl>*16bCu1>XAVlU)xW9Zsqwu1%<4^HHuWzHH-)uSW=s;yw$Avn{)?T*rgp`LhaZ1q z-4R~!!A{02d%d96&dgU+9oJW?y*BzLBmdrWP0>;(=Ju-cRniQ5XV*U7{rcOEc}CLP z-p#P`duV0Q!u{7uQhe=|$HmTUOl?<^f{*g2vv}OT%B1r8K+s942`Rapo06`4{LIef zy={8rfko}oD{cxn>sy!g6#QVyV=K)z%u~AZF>)ev=FKYUm8G-T8y0<L4LEo3x}fQd z$^;Ivd6ETJqKZUA+0^cQ=Y4%9uyXFlpwcVOq8Y24ZxlY<bjjwu_B!LQQ4&{A9LSu( zXHm*9$7;o?Hg|?T|C5)z{k&FgTvzyPO<BKqSYl=6$DJHmuU0KO78Dd7(K+Slk7qAl zzPu(P(ptcMqNwTG<gXfHjbB?_%Wimwm@@J{Ic7h1D}&aYu%~rA@f%+W$arWxy81d` z%|XTN0wxcwRoB<7`n`A03&(fg6~0%ed}mfxI4#k0<E5Vfr_qCFRzJ1Q#J+p;xWeLm z=sK|i(QloXTALPDY%$;VdcMQ%dh@S8v+nGUZBi*{S$wNbE~4DjWp|RW{xSu#eC2|C z;ZK@HUrs0RRZr^6Dqgi^_qsW|mo4PBnO>Bp+}m_UnOk{x)wS5S3v>0R?EbP}v;E~x zfp@RwY0Ir`%>I5VJ4b5n+S@C6N;gPd&)cq0+O&6?hRg1N4>uacF0>wT<F4GuS)A)s z7j~d$w=LJwcGX7CHL1&Dryts~`@+nxrDc!5ezYxmljUn_-W2=m^{LA8yf3@%Oz(bv zUuk`@`G<q&S)+3s)S47^7aF$(OAA;<vq;(rIdBQ2x=m=3H?>Svd;a~veH(w3+Sth8 z=SS|?#MsDWTh2DVGXH$j;=a#Z6*&zu2d*4aiZ^!iXW!JTdhsT2TSNro0<}dBzv4J& zJ?E9%dZVoG%9+|MJO9JS-z>AUm6bRC@V}ttzq?xUwU0~04tcyu75P-QNul!jp;I~6 z537_s(iWQ98)=-yEBcv#>cW*aXZEU=%SWgDdm6Q>^_R42ev;C2UX5haMSnMiy*>KS z=cEp^bB@>&Honz{llRHQyh!wVsG%gU>YS<jJdUsQMZkpvp3DBb-`jm)duVLs;`I6L zann+5b53v5IlW2ebXU%N5A{uJH2P$Z7s{BMu6w;J)8lf2lLwRH62&E%YWsciX6-T& zW@-)MFqvHR`RVB=$KB6QbkUIH%3IE}l;?24%$C!s5^X_kuQgMDc(f}X40{(>Ex$MC z=fn#$*ME+^CG)!WT;%Kh*W$9@er>pS+UmvLHRT7sZCE$!-n7YLvz<-Zqi-`bd`ReC zq_cT#lIl&FX<aLBRh1u8JH0dP*fz=8I`?OAMwgtq5%cqMt>wn<+d=k9d)j_Zix1db z_f@FWvGPoItl+cKDo4{pHdULR2HCVOW!oHM;<i1&;?LYKZsK2eX&C1#XD9nl>#gt= z`8UyM!l$)1UzHD;zt~(hr8AuA{+b#2RW1xGBn<CoITzaA488K&;68`R<?!ciQd~Dh zl^9ze1*BCZw1w-PSsis|b<%^Wf)$}}nBpX}HP?G7Fa};=$X_!xWpSWc)RaxHN}3By zr0Y+ed|O-j?A!GpWj`NpF4>bNIWy5@xoP{yyVs4kuPj_r6#A~qD{;c2>F-QtCGrb( zG)UNbS{>TfV<i%8*5;9E+*y#ZC2+>)xmUzPuRCp>6O-f{V)^RD1-lzgUD;kTFLhb@ ztQPCI3aZ@ny2^f{H<111(J0$VZ{%+N-R7Nc@?zF?_J9wOi`||}e^LDQ=SlU-`iG@^ z&fR?IXWQSi->$%|!<R2-_lDZvucIR?iynNvezN)W`Hkzp&-qpJpZ~Xd?X1I(f7HEC zl}L=KnB~Hjx6E>R!G4|<iOf6WrKY&dn6FVhIiUF&!^Du;Y(FlAM&`Z9lQX|^%`s*J z$02#SOONLiI@`8aEjBwDwoY@gqfvC_%2?j%52bTCCI_sMzQ6zZz3aL<`xbUo|6yf6 z{c29oS^K}ftJF(xo_Z+0I)2}w1=r(mmiGKk_;mN);@VpG>PYu*7h6R4UapR>|6jXT zbNQ`zulnb17xbJVp8tK`e_NH%^9N%dUM#dyHkrPE`yciX;%r~1M5LTI{UBjKclL43 z3>!1^$ycwX%sKV=w?Y5x8D=%#FYn|LTo>lK^11QiBhS(*4}~WkpVxic$E&#Z*+&=S zN=Ku~XZ?<zb^7I}D{0JH>)2qW>M(cJYF4IAXD@6>w|h`gA9`c|5`CGDMbW<x{gben z70o+i$w7n6UyJ{#{@dR*d$ELh!ou3+3`GhqLK8*wmn9pxyxHPp;AJA@bakd@%SOTf z8)p|UoSLEdUf(F#c^%&oFZPz4BVjRLx31`ud|_^W#cla^v)S!sGq3&WN%b@4sSo*V z@zV2K`psA3Y~Pf4gfe~4UcPok?b0DHJ+sNWa;=8J$8YlJPyBZB>6IsiX|p!ToO=^6 zrRU)Hp5&e+9YyVoPN@j<X6>WdC)ms~v(L=95+v`lS!&8M$>)VnF1`9<z549bwA#-L zejIzR7Juu<vt#a?qt~qz{@echcmF!K*Xnh%E-m!0h@a<QVPkse_D25~2{i)F?R!FQ zdcB)`_?nZSP-mZnUclZtzDkO`vR|z(z2Hn+J7dAr#W`&<`@L@QG2c#GG2_?or)66; zi@%v=OujltS~BwC$I`nm%WeO;EkAeSwawmnr=P3WtLE)Uz5iS*eDk|4*3+eI1H1C1 z@}AdCezaRY_U7-yaV8&M&TekMrmuC`X3pFB<&wV(ly8_d_iQ@9GEiQ3`ME8RcNCf~ z?P0Ov5ucP+<$vMbt(*fpo?7aDj9wnPxytD3nw{6z6&9IJK3}~vHB|WhM(f(iyDu+$ zqL}yS&O*+AG3WS{tDn}salU)Hc0zrwm6d$ogn#^1xl2Xg6uf$7_3dNV$;&TF&!;TA zmn;AKv;6z{Zz^ok?faVTg6D)6x83;Ped)91v*(Nl9IW54EMdRp`<Yp!f2K-3bAd~7 znbY0$@9Zi2RS$BjaqB!?WV&u^)}r}mJwKc~ov3jkxKQkR<KO3*Z^btHz1#Ik?*F<C zjO(lJhhE>K*6Ekf6131Q@ZyV?dxY04QQW!wBu}EpQWg)%Qz~Vv-zxiLc}!aJ_5o{; z&!$G@i~3uA#a>7HuDtkerMmI`kDvI3MH6?hK5;jFB)VaVQ|y~*MJmo}(n%juqb+_a zdGOvWJ-IadT~*opS?y)~62bcNb{F@(UAR84zUn9A{cCmg@keT}dn$8T{r|GM`f;iH z&bzZ8vxl=^lijQN^>;zd^$&lym+|q|s^5v;y<`8*=hkQMyIp(uaQ+eXd2JHkVk7MC zh1X`N7cce__q!{)>|AkBu-BrkQo48lT!;;@O<Q5ud{cJL%$!awHHi?HU)MfQV-Y&F z>cKV3DBXUqk88u5o+xZTd-&<~4L9!W6MNEpG}HXI(4{+{&xfu&KlgWCR7Kh1#L3HA zuCrcmZN2gI`Gt8`GTi!hxX0c3b13(A{m#g>$CnmIE--raJXme>75}+s7KwR<e%RtF z=<KyvC^c`ziO|(icPcMOH3cu<YBDKP*KWqOOEczOV-gM4h;!ju?l3{7BGWHIJL}ce zdm&B?laFVd^~+tk{O$QE3_6}ZoZGruq)wli9Q{md=h^v>K82~V7~Zy+KJ!#Aqx_E# z`=%ZJ(J=R-<`0jolFS5$QZLiD;R(Lq#Z{$c|FAZ+zX>|-6>@=>cj=t)-5LrJ*SZ#W zZJkxIDY9k(kJ_>=)@K_zjM5esrhndhpXbYc8B>?t)0QM2+7((-V1H|=WS8ga=+|Ff z`}Ep{+pav=YH4@KdddH}NB&gFO|IEc6tH~B$*)P5R^NNN=*~+!36+y>uVfi)9&EcT zx+_V_<6*Y!@6RfdzaQte1^HTLEIeG-b7Rdl!EAw56{6y2Qj;IZUg~!h4}BGFkSYD# zl#}D><SM!5MkdR%>FG0tj@TM))z{^}A+%~sT9fXH+YxrkyE<+KP7D!K+SPWL!E3|P zr=eFSF453xk<(MUxp4U=bEVAm2EWtR_O?YyYv1Xa6g}Jc`SOOt^J+hzwXNp+_ig)z zbgmgcdylyo2p@=g_GQmAd)+yS|AIe6H5N=`Qgn#coX47a>B5c&n|&KMJr&5xJNCZz z?U!%Oe|IrwJe}OX*OvS7&2%-jcl&<7yZ^WE$z+D}KNtVcv}w<{5Mz^Hm-FHPkB$5G z)QWw7>+|O^FI?C3{NUx+d}mG;Z!vFwUcdZpVCB1HzO#F}b{tKSy}Ca1rCsL{?NbjJ zei>C}KHpKYyxQStq(kfB*y-FnH*-BBPM`9WKWnu*C{g|Qp^rh)yoP(y9C-tqX5E}V zo2Sm~2VaiWj++8g4jC`Z_{m$7UvYQ(*}rc4j|Vz`Ud0gHpVb!Xb9BMG;&)e<d-|BA zr_T{{5?9ddny<S=JNLJ|Om@+gUo8i(Uy;dET{3Uq4U@#}nt|_QCC<%MvesvbdwXg! z<KqqA53IeHnytF_%BGCGfO`guUiPw7yDU#U@aD6{T`fEN^|s3%1*dE~*W<tEpY`Qn zA>q<<X*pVEt15T}C!W_@vw-WYx`9b{r}zZdw8gDUG|#Xda_as4yy21Vxwoh9Bwmb{ z{FYmE@7}|Sv;Iys{O+^jOWvJ#U##};Dy-gme5YCS$%bbOx=ublbN@X1WJAH~z>}^m z9G&M}4SfVB2B|b@Ub1Z#iYZ)s;El<O6FEZGnikgGAth~MN2i@*I3>ZhH0XVAoT!qq zOvc$w4#xdc3s0{;U;p_-)!l`<>(+Yj2|5s-$UiHuEVsK-)xJ(=R@%`Q+3Vll?Y2?g zZjmL+X#el=I<6m`d`IhUy*F(SwLg3Mj@9<%*9@AMKMS_qx?`D$iQ>1b=bF|(`&6-V zcbn`#t4Ej5UrzN_F5|ntHvP|^yXx1o-_5+)ntZ;mzrSzQFTonihnZKWcN^%(^qOBc zlh4<yT6^z~@Po6uJpuK4dMr(WNiD*vl2KQFwU@qHkiykbEqd;5hm}oAoS)oppQ=L~ zSDU4B?JqV5#O_Q_vwa~l`RSH9`|faVT=_}MHpP2#llN=Zj4NENU$*JI_%LhjjWs6A zjzrHB__C}hUH52o)7p~iXPaK+%#12o5Y9g9;xzrez3+RDU5m&om%F>Y`0~u<a=#09 z8UH9)v)Ovn!wU=NZNGo+)m~ng_pLKEK7XqDGEYTKJixa7>6%C{_V1yg*Bc6-Eq3|v zbfI3EZr6Iow*QgZ3!37;MQ+e$_ub7h{mQJ(Hu@bd+}itpuGq6uSF&MWvGy)`@z;6R zj#lm7mv%ob%7kHYR9@|uFRM3OHoi6YuysCsH)Yc4$2S%#&3LT$G$HSOJ;O7R5b3jv z&P{fWy?b@xIkU~?6Z?1NE}wqa(D>Da_qlDFExW`2?I>Jsvd!)CiSB2L>)-OX+uYtG zGx6n#?7EVp=YA^j+kUydCBA86x!ch=<CG6^s^3!P&)D`q>oTv~ggZvE{RYai&PI{` zZ;K55rORHev?}@Sv1Z4;RU1<7Wm%bo-R}5*?L7N}&xJ9c7XDiC{lVG$w^nhp9p21v zZFA#$&h^pBihMoV?7N?bzR`2PW10}2CpuYhYT8}n#TAlu+h(|35j!su82zz5Xmz^d zTDM!%gKE?{_oW+XNsA?H+v5H-tb0>M=9gO+<{jUVeemz~y}$GAHn=LY9jRRW|BTz4 zzCNDY?LKk+o2$D1KR$e?rXtPqfK1M!q6;dGGA6o5iY`brah9e|*?e`OOXy5->DaAV zCKB2&!UFU5Fs!}bxcJ|iroIRJ>v-~VCJC|rRhiao)W6+xk(SlTu#oFr#jjqx><i*N zCEP8^;uwD+Hfp}Q+~w9sy)oNY22T}8oAqBL+3tMItbU(0LX+oCSu}Tb!=kx&XDsq| znsKRU?-C*Fi`P^VyMAf7y82xF7gHG7bU@a3Tkx-K&tLw1z0TEOn#0CPqEc1cqn}8; z{I0R1CU<p6ySM+6MV?u2_mu6;*M1U{xbNb`OD<MX&kU#k`@v&(t=D|x#&_%1Ps=s) zTD`rbq}DLPXm-V(x$pB`n{4+cB^1m&zdgs`ZFTLWk9%EK2+q3ueG>CagRnh%3_feK z5BRKIDA?5FKW&BKOM~#(DY=$>QZ9U11`mX1DS2zE8P5FgIK4}y?8+;q5F3$e)uM5; zbi+Sx*-&heea*JULhAMAx5n*Z_bv#^#)MdHzJ2U(Wx-D_LyId9zn1Z&*KQA9^?qAV zW%|E;v+pRXMQfgMUL<q$neX+UeK8!1V-_8m{K;VdpIJ86Cmc3iYc^gk;yuAn_=Q5> z+^3uk)!AD%#G6Y$O8@q1**fO%hj&k2ex`ix^!a901#6dyUveIWudWr`AGyFeYnO7; zwm>aS9<#WB-*SGrS3b4Bm^v#y#%^i+t0%K>?kd_Eon<z&DS6k%o_WtqeRwxFM6y`s z{=6IH9JT3SeEWM1huO>66hzJEyqh-bKv2iQr)OEbkL0|*64o(&N5<Jj*C(x5mCbYE zN&AwuF&SJ--9O!Ml(_8sF;Rv8O8_tHvy0BA{&AQ8hNQn;T&3sR{j9|Ks^skze)nci zyZ$`GK6KV|PTQjJ?8r0q?4M7_$QGTxbZmW&$mF9p8z)Yk*~oD2JRjT97*5f1vy_+x zO_Y0Pn!A4%JoNN<$MWVU^FMuS2%VA9CvxL=>%U#gTgyG_@0xA+lm2#{w9sUsr49DE zhbFB#;k35wY1oE<*_w%B&$ryo-C82$ar-XY|0V&$LYuIiW?JUU4;ruiy6(~OE|0u< z_1yPtKAl-F{Ql{kzqfZ*ecZHs*}F$+8<tqMZG4jUuY^x$=Z2_*EV}%vUfwag8iGQ3 z?miIET>I~E_7o<=FHCc1T(|hY<hs15Yxt4fw|}0!=TMSZ?7Kzr_LQGrzBT8~|E*?m zEiYu_=f;ATgmld(LT9_?c4+)o%{VYSLa66~b)HsRoFm8jl2&We@@J)4b(74p#KbS# zojsXU9ne*?&Fw5}hmrk?8(imj=k0F%{BzI2Lrd(pKe#^2Fm8eH(P=jYnNOdqKaw<g z^UYWWq2Hg3nJ#%$m`vt8a6#_wA8sk(g9n}Vys9ZKQ+c9e9vpEms^ckll*Z}#8r#@s z&1!CW9z1>e>fDQS_dfqwXftj5NqhCh^)v6iT5fxz|Nq1f5@y@e9~+)!IPuu<=1>36 z6)*NH^go=pe$w%j;QBh7wzajV9&g`b+j9J!PkiT0lls!M*CxsS6IeFh;y&rMYv%v< z2!<(H8THvZhPN9w`E@64O;Fx@M#@|?{8G(nCWgeCorN=QE-2b%zW27hsDW(FJH2`~ z>&3GYMXl!s2-?5)5)_%NI92a-+6G;ov{cPHv1Qj>ujkBobtO2URqQy|dU3CS14};X zbLgMDxoW=to^?mBbco*BIA8tIvbVQ`|E#?%r~Koy@%J;0_VZ_K3I21nMd)goyxI4w zA(MlQwip<ncwv07UnE_kJKagj+`c>IzKr#+pBGNwKe>FfvfU+_kizTSu|eraW0z~N zFHM=!HY?1<+A#G+-M&36!D&}{xYp{|FLDW#sy*m>T9aYE%8zcHmvb2F=1SCYefhG( z>y7BW>GS1T{uaMId%pMBA?q(MXS%O8ZSVAdoAj^0vg+#AopD=#^FQ#2?47Ys^kU?m z*CwjzpEtQ1-~JlBH+SvioXelDJQtf6R{KuXz&$4}uKah+o_9+t<I08hyfY}>JzpiS z{PiQ%E1!?46)w?@DtNi4?7j8gw{=tFcBt?DYL}lc^Vewaf4@H(-vqv$v|Mw(%)irc z(*<r@+np27`|;_iZh5kyq-aU{jx+5G4(A_odbV!WXRFhnq|X<1n0PBbKHQc0I_BPz zH1!GhaxUL_V;(HO-N$pi-h<H9wW>Gw-dNvO{bTZ+YKP7DncsTPc~JCwL*W+w*-JBS z)&BYOXztD536_`M@4MlmFk!FY>?6KACq5IuU$Id4_}!;=Gd6HpFRR+}W@>-%=}7y| z-l-1u#h0!wcj*#mmiGx-#yh3bOML#MIeK=gS>o~x8#86vX8NW(EXzE9#q8n?)|re# zt2sXgr(f<Z_gJNMIJQ!KYgewAoa*%#4L-eRLKodxeMWc5?9WNvCyriPxFERe)hCU- zrpo!-PGySoHMbTYJvnn<r=3s5ZG$?7|DR@YB(kN<N)(daCH?wBf2-o9e7}@DjVrn9 zB139!&f?vAJI3~!4EKw>x+lKPYxelnR8_OJjN@upw8+8It+vmL-lc!rSA6#6?zxL! z-*GA3#>sO0OM>h#x%G;+J7z81*HkjMc=_&gKaF{JoY-cx@4l3d+BK<w*;(7yN^Oew zin?%cTahcTSo<R*_LW=n4wS!XxBj*}J<Hx)*JJL^ubR3q-g(`>ACRZNOH=lRn!ML* zbGzl@vLB{?5lrEXSDnEg(Xrn6TG$GobF0?|tm@X7eE7$@=A{8Lfl2=2?oU2gZ2yy3 z7Uyr6m7Z>XYyM(^=UFB{b~Ejo)I6{GPIW}MQ>yQTn~^IXCn)T_&vp5ct(LD7>n;9M zN*=k)S0@XF{Eci>I+}XU%7208e%6IS*IP6%8H8&e(tI*wt+Ha*6F0&1Jg*bA=~aIw ze3>Eg?&>T~Gll*Cx>+w6y51>fm6_$O=H2qE%`HnnrN;Mck{#Q#%h5*5y;8!C?Vl+v zHLLq$j#+|Bwa>r(Qo;|n%X|M8=Pt0(eHJ{+yKCoJ)!LcQCh>Bw+q5&~n_7DE^NhF~ z>C@yUrx#^gbI6;{@9p;&urpg}>r{L8(bex9XIK82Auq4^$5`L)(gJ~}kI&h&*&Xsd z*WItO#aLYa@>i*re(kNcTJnp}{B7N`Rb|=SBXd@@9A&MT-6656bcxbIm(LfLapWAC zbc9J;ch;h<svLe-e!qyjt<=4VA*#|e@-gqd){Co|oa+3p{85;=_T>zDgJoeA0X=gr z@vN5Ubc%ai@^+tt58EdVbJyjs&rDF7oU<^>HjKeKoza?cYDFaLeuj?l=b00Wx(%Kk zxb$c1-;9G6=jMEvC3f)SH*vdVNx70gcrI_ernoGdE6TakHHp3La*}BE!jiTFBCVTZ zj^3OcvQQ^#PMGG}i8WIf>4+6&F+Xcx*|b&ivs2i^hI4-$%$6oJC!JYjxgse?^2@9_ zeH&M3=ufz^BPl6Uqbt*WX((TMhPkV!Zg}H26~<dl&s0US{S(&c^0+T|(B*ov`tzCS zbkV+hXV|vK79Y(?bH2y(RpiR~3o>DUdpN#W&ANFxWA^RK9joTK-HBuR#ra#xpJQD@ zMqtaaLn$wB-R(1Z`s`($%>uT(XRq5<Jd`;g{6p!`<yHDZY5VMEn_se8ZY~tKccMy# zvhEdGPp-N^r9zpxruz&ey5d$BPvX09=CtQdUD;_f`!^q&=jomz@oGDVwSiyO3^6s9 z%`KiStMz&(u_j#fXc5s{QDi>()hweuuOv??9P-(%tl9mc+fLjpe@kf7jsRcDPU*EO zw^uAV;}m^GZ^hvfjpP?BscTKy)ypoN+{cmmjxVc<?YnDkZ{3$?3k4sqJoWz0&5N-& zN?*4Bi_o&WRoZMg-CiboOWu|}@25Jqe&shgrSy->-s@4VL-*Uvs3jLSI?P|%s_D%g zJWK3ZO_WNp=fbUmK{L1~ADY(M=Eb>d+4%)o24(^Wk3L&?RoZ8{PupGgYdIA^e(GK} zIqiMHqPuC)O@j?bg0Da0v2J&ljh5G6;qCEzP3DXn-y{tuviPuE)lpjfm7jwn`WD+f zZh`#2zYfe?-EcVnxbeT&^_(_0HmsT<F6Xy@)9V{G4-f41s#+<ilM(6EymSM*6)$(i z*MRR~DS<wEA#eBg#nk95oY^C4GI^syl!A6jCwI)RRl8UpISG9Ts}aiO40US^W-##D z!h21oqpmaJp@{dz)z`HyH!Bru&6xOd<HVl~*-<l8dN-Db{F<lJurc!G>~`x)&LbWg z3qKo1bnM#1GWXC_Bl%?;*9x#aH8W~f=3-`T+!w}rqT2L;PD=6l*1#t-#Ik0xM{pmB zy;Su^Vqva%alGQ2vQDoR64DbFx~N=P%B}JC2j`Rd>t_V-{rW_&^5VBMleSlUQ}yrM zlB|3xAgJc5!`8DYQ_i<uOJ=>ie;w1dU79}=MK-&K?2^-Nxmgw{rm7lbGw(&$mgHSQ zO6f1Gx_7-f894o+Un#dwcDI0#aO+AD{XVfH+1A%s8m@G>-d(tlOEjus$LFT(@P~6Y z{#>`y|Jl;Mi+>q=BJCHxO*&zwvm}42K*WlTF+GRQCC!+%;-REK_tp(UVh3lhT;!{@ zm5FE0gwtz`Gq0~^d2wZJ%g%<E^EWLv;MaMUqc>qMYu%Lk`ESnarF~nuCCl^ihS2%< z=K5aNVu;?<I7jzp!^|U-G&z>)a5RR*@i;AArOMS6Bp9W+a7)Uo<m}U-Yp)gOIEpmf z$e3kx`0{rpuEkkxy_}oUD`k>TsT`S6w2W_y!b^_ukR{*rbqu{z=H!S@IO%+%W$tX2 z^@mfG-X3|oVTHxjxJNf%Zv6V{+)OLyyHl)frzu`e4lHY1bAVYld*iR-rv8W!uWu>c z9{KJIVzp<cMlHK0;30F`M^oP-&*;wQXUx}bf6K4E@&Eby{~FVNZGV2h>UsX<5GVE7 z+x3$Er(H6;Q~hAw@wg{hYISq1=KtDWKj+W)J#|l{gJf$|zcU6OyrO*Mi0+2P8Pgs; zm8?3TpnEWc>F|r!E=#2}9;u34Ojf+yDzwMWcZ!!nSGSOBewa^3&v~yI-aZm8VzW-C z2wpD83dk&dwfKHe)JKEPY3<iu@7h@G9lz^`xTW#&1dhFJJPWTMGVJTOe7waZQ0-)9 z*H)|2Ibt^FdM+~=sdt@Pz3^T5#vLaP@hM+gJL8t?v@dT2?m4ZHTNq-lI75NEpKEGq z&V`rX_iuDx{(Exo_x^u}KNrr;`}(r<cX`S!yM3=;e%n~BUjKx1nta8KzaLw^W_&-E zzdY>87gPJb>j}c!<WJ9Jd$#{<gYDK0A=|o7a$Vi?QIug(-!V0rtn5cRBGT*Gy1p{S zZSMAZE4n1Qn60%-*81h9<TMk%jj3ErlVT?%i=SihdN}>E`Dp{QkF%mW-yYyvCV2H+ zr*G+MpLHUWL$!|nX>FXv?5EDCe%EQT^pPc#?TTi-?E7JIMem2d%i5rjzKNL|RdT0> zmM&?!o1?nnsct|G`;K0%sd8tOp66VcduYj_7q0S8B4)4(>U_9-*0U?MSMvAKQi;=x zefF4%pDyY&QO?Sh*gAE}vfu?;)3+r2>eaj&Iz8pNgs^$2HD|4l>XSyR6oIC@u3NX% zdaBAM8*YAgCbsd?iK#6%JKjm%V0nG^V0Hhh4W`a}Ql#Qc<GZT%2<|zz#`evO7_SYd z_j^Wlt*-dX@%xzEv33)mJyIWDP4H-c!4voKuXFLoW0DgieUIMsJu0b|b5nEXpU*9F zlDca}oFC54<cU(g@2lo`zV)cO!M{}@2HO-W(pFu1#>2X-qvZ0Gu31%ot|#_d@3q@7 zZH?H{EsWFFE6oUcux4iD!e=*pA{%b0OzA%Ly4t<V|K|7mMP|(BgatOwZ1OtnaOQ1q zi}?E6@wOW|8BUpBh&Wpx>*G~+e$5OQ`(IxhjXyUo`EdR5|NV!O_bi+DV1mM?Mx`LV zy=gXHX6N5j-1&WKU2^fkz#V+efk&0%Uca6p@cBxKPMUep#<?@sgkRTPX<#RQNsLo; zi>nh~lz1$2l=vjm{nvu;UzxN0nfdiqopGCv3+ZcrUupN##^lwRZ3j%AM%mBy4dA$7 ze2ZN^@%Mql9vMG#e$3N7yF%dE=ifUgt^0E|gk{yyEe0mfIGum=yGu+meVMkAZv&4= zw(`v5-Ig)DY0MtZA(@%S`n}hdS+RO)X7`*6w@BNjw(Rst9k-(;l{3%ovuJy|y!Yp6 zrcal(w0Ms`E-Ka#%*Z$@!}CaeUcjz^Vl&bGKcrgR8m5WNTamL_r8`SH>Q=|H?a#8R zmYOQtGfFH`HNU`j{PV;GOdqG+yxv^Ox;WyqQPjPY-SJCPUvf-as=;+m%Udxch*7k+ z(<7K8_*%Q>y-AWKg`wUaZ|e76InsUSYsq`Fz{kqccO!Cy&arMeb~~$c`nC%-OJrU) zY8ES46-^G+)SbQkiAcixH;;nD4EoHL%c?v*e%@mZ^XUNlX$!?(d=5(B4U#&rUYz?x z5Brq)_QEeuOq}0(UCDmIa;aGxm_AiIBwuw~f5~l@;XlJrvw!O)A1kmfS?J*NM7gn1 zhcU$N_^wH_r`hoSHn?Co*W6&X49oxPryUoac+2eUu(FNM-PGV5hrZmVt5t8yuJ{;E z&UC0RZM$&NB;&bD;EXdiGY|W4CO6MLq4_z*qxWD>bBa+Z>t`w1;2xclZ>P>ECvW&@ zmmAX4enxt>nd-BBAMgA$@Hgf=c2sAcm3*5B=f#5t0g6-PSc^*^$8S)zetkpyi`KT3 z^qD^v#ZH_jSY{>qw4ci`sM5gd{7u`Z4E0vAu4dg?m5pZ@lpC1CP4}?Ry!4gb_>)5Z zp%W%?M>el@S!R@?G;^kYXQj~7w|Cf6(#}6yY2!I1tjf3Xyumj0b0N;NLtotJRgiVN zc<!L%`#tPGwk&<0FILvJx!9!hO~U>qEXnU(6zf(wnk39|HJy?DT;fcN<Sd<~mEG@F zKU}+6Vz<(sb2%%Q_}&X;(|)Fvv{OuATa9vw)O!D?S9N_S?|<)KtafSB558yB3{{T) zv#(Cc35cG%RC|_SoLR9z!_9eXmVUoCr<uWCtRd^o<Vn9T6<(MwR2;K1Z-ayMgveC$ z|8nW+b^d(|ZErIyKh2t(v&y|cQKy3Y?9)#ZKHe<~)d)=d{9x)@HhaT%kM$2{US0h@ zt5y1RM~sj9voksmSbbJxo>@P8;pXEZ5(P!`IOiNZAlTEW@cCz^M1;brtCNEI-^OjM zYwQcVXx8G9+O}$$>eP>2(|9sYZ>SD46W_7)X6UzVO<@mnV!l6@Z0UIE=xKI{&sgU0 zffpC%MSbaFSCy}wGV}4?xRSo=Id6}@zbSbrJyGVL;*2Q01r1igTer`8UA(yX`~CAv z_HWL$yMJ+a(SGGU#{KU(erMZVE{}U!vqt4j;+lwOj^{aT7PB7QHgT7wt!G^SYe{E? zgD<+jGA^C+@7$uLIwF&@jJtkbeej_#b>G?B5zafl7sqald-wF<#pvH}%}wPyb@<%d zuN~NV@6oQCd=D9`^j6O>NjZNsw&C8i0=;z-=Z<D>etyVf;pfd)SUlfGe=+%cI?49n z!}aAw%V+m*aXoxdzxL^_gYWO$is$=Y`n2d3>lQJ~b)RBxWj??3Wd7@`nadAJF<qWe z-FD%^=^Dlr8r3SU=MQrjm$p1BacbJf;=X9szQEjO^HtejQ|75PpUqeyb^eXQ^UJra z)xTbRXnDiXV5)V2{0#d$>pALA)P7hLqo>JMBkxxw-^#(B9cOv<_XoF1-93!4NiS<9 z4&2mSr~2KnciX+47Tsp&&b{mn-pOeEGcMu2V$J{l9qeyy-X(G+T{y9Z<CcZ&?lU{J zU+)lau?Rk*!(usY>!hX~g^|KR>Nd=?4y0<et#0OA#2I!$^x~xUj)qvF_1C(?yNctU zblO;UFwMIn{rvnt|95XDt7d3?jW{`3b^gDG`%UK`hnx>ScE|l(^1<hZ2X?7(FUpxB z!pqM5Ai+g}hplDln#GSFhwYlO@xfe8wZp1AC8`s3<@d4aYwIkZY-#-M?y)ICe^rl$ ztU2r_^_k`L$D_+8ZFxWSH_tS?D*mpmJkqRECstjTT9jh4_kn}cuevUQy_)H=pIX;> z?|tQX?}RY(lY2|*uDtQxt2g(p{X~<+Pgm^Lsa>49a(S@5sd}%bB=3XYvMyz2XLf#& zx_`*Q)$CfSmED4Wp4UxZpXrg?@A2P((b!nkdUxW5-H(oaEB*aoN1gsGj(o`}-|oxY z>*<g9Y*+Nu_U!KyemPzfC4-Dl&OJMc<$0sm0;7Blm$=aQ0NZqnWJ_Ly0|n=~eywTh zdE{+2DgA-6@q_YbalPf!()&ZY-rn;_PhD_W`ejo6gzs+--btT*XRc#-Jd6C?y%Qzn zn)@yo?OwNM`F3vQC3OdmADMC9F#d4eb8jCTC##q^eNQiTGp;<Ild2M?KQ4L&?sE;A z^>ML&%L49M4f2(SEArIMeSK56Hn2u1gj`6|@BML8=vPi><jZ5{oxVh#ShMEXd9w@Y z(q~Sk{mGdjHP`yet?4eE0sN&-Uf+fO9JwvScscmy9!BTazw{eIgDxd*w7V%0b!l%^ z#o@F|8CxXlCuo|6_`l=`Hc;j9tTK76-V%BLuBhD3>fD?q*TwgJd@<{WuXatpn^n{5 z+pBJWFbq0d{M=ogNyp!=<S|!##gloaAHKV6aekA(dYOA!>gyANf6DsTm$Lk4`&X@W zOY@uioNns}CwO!I+^o$$dho8c+21$+wm!PB?%%_+r?<(!JA6FXT`i2OTCabR->-?* z)n<R+?0YR<XZT*3dGns>+a%dqnR(7%X}ag3RGKTw;T>rl+%j{aVnnHe=jpvwzqTH9 z|4@FdZc3HG-nf09`_`wg>U<`s^3}a#l5vMu;J4e8bpHxZFRp9<CowHE&Hk5ddB;VA zr#zFkKH;)3PCgL6AlO$f#og@f0^zOSm)*18$~V`#v*z#0=RxO>Jcv{I^Y?S`zVpxP z?3;FU_;#y=R95|6z3xh}{z8dYT}$U#&#aQIx8M5fRP~$8MCKb^O#cG1OdrOpUYN0F z<@w_6Ma{F)JNA4rDzt7nyFgH3D$AwA^=yU;xqleXbp;r$l_)W5u$7myEUMKzQ0KDX z=@R#U8zXmeU*9vabkTmHdk4OU9QwnV;k9OB=6&{-o8Ff@Jdby&IIovZZdlwuA@Z5x zqsIJ1#?bjkn5$kslC-LunmIA@()HHWds%$-0^X{c9aNZhn&r`gwXB?+0sq9Ge#^gE z@#2T$KHCSG(NZ5=BGi9>c;b7<D*nv-@9uvM4$rkda@0g!k~ul8&QT{}E#vFEN{?1+ z?Gbz(yNu(Oka5+X7q6W@Dj6KN>W=u+b9l$*j!plVzT9Cj%?;K6o3A%-k@h^fN$o6a z=6^gi{XwZrr|Bc*FG~$y`2JWa*!O&z-4{U~FI_K@!<Q}W(v&Cil!<;6s+jh8E1R;- z88(H|s+#*c4@(4PcX@B{b~~A6D>(m3qfOM!9=X4(dCSAze3JcY`#UPtrF=sC-nP^r z(e3vC|GfSE|EXcy4gTeZ&wd%mzM3J*!+YhL)Ao}kVpC(Zw5BD^y4wDJ`ZHfgF41qE zid?4_2(h#L)7I&l>GCc2=FT+%o1bmoxiwGsN6yRAXJ2y99rO!dvNOwd_V&ZVyG8#l zRsQO<!6-%gruy2OH#h#wyLU&vXDWNry>IWjPN}}QF#oUl;>7!F?^?6X-rx4KY~G0z zmwP5hG8p=p#}uX-zKn4_tXDKqOP5he*Hk3i)a1Q)?>3Xf%$4nO0<P1%GCGx}M~OJH zKl$P~Q#9D?Q-^|BC`)h9g8GeSv*)i|dO58)&ui+cu&>L`f4}$f!GnVfOV9N^Grg}> zzMen-mZZ#`T^44S9@j6?mywClsbqWg<1+hv`PhAFlQ&m=nXtR^eA_%(=Cj=UH>@td z{NPsTLsdKZ<^bbkFZ|9(D{p<fA-^YowM3rxwRVT{q~Mm6w2cf*i>;L6o_$!V^k&aY zi?z$IN;#h8GYi;Mc7N6iTe+GydA>*IuZ=B!wo%=!u5A(jMX9NVK9?Dmt>nIJa;9c_ zqbFZh(TpkYTo;RNUTHYHWuKT)0`r#5CAxFn0vtVK6Q}7aT-!23Qd(z%C|eNI);vas zbqvNwrFHx*Y}M>F_fOT%xDoRyVvWB+m3QlY)y+G~7Kn-XMQcgrMy4?pv^}xwUAyJZ zJt@T_^2P1DZTBqSxidfc_OrjQr?H5!vzM2=+4X$lyM&w!gI&*`rC#EQdc&{xd^&5@ zbhfir;rlgsb=U4Kz5D8I-rU#S-iNcT_f~K7j<vn`V$!R!C*sy`Y_*TNc6XlJF*W;K zQoo0{>9Ki=lWT8iXoZPZ9}V7^em-eEn^p4StWDGBJm3w}J*%-|Sz{J6XW1@Kn>81k zco(mU+3I%X=Y^eCvAMH-52~+T@p(;fp!nSzkKZ4xuqj!>o3MSAsl|c6kDl?o%9GC! zV}JkRV8olW+J`gFrypWCQkB?LJJ)tyZ12`8-pOX=U%&9_2y9EtD0I5@^vZ*5P4<&B zKGfu0f3VG&ebt=mze@W{U&q`1`@y@mf9brMq8Br-UYaG|dG2O!{cfZ0+cz#wJ@Ic_ z<Kl_ce{Qc0GrAwy`{u1($$`MXzW<%hzlv?1^V0B2dD)BQ^Rr_=Kl+wyU-{=FZ^-<I zUpxMG)HkklsQPnz>dRD)$NGVWsggk-PYFG@>YMu_Kx4|jzD17$G!l(&WIVI3S;OMZ zRJ-2m>bL#7et1+ZG&)&k%<moATEJ-^GNIt*olE<7|CqAtqPqCj6RK%PTkh)^X@^yO z78n0N<&EpiGn|W8o)CK=eDni*y-uRu#z(A&n2uZ2>8HECFfroT?VMKaI`Lvs?#ZA0 znq`Z3Sxnh5qsAul!%|&u{oW|g(C`iSQ<^zeF84c~YqMqkb?@!vyx(8`Tqyr7`^UX| zyx9qBWAw|`NpCTqzWmz4#ot~{S~xp6_C|c2X=zJr|2?H|p8S)|ZrM*RT{QQqRpz{_ zRuj|A{RE1uUy1yZt>Rn%vH3`mNy6#C&@|VVPo?$FuQ2-ZUjLtL>WY1?6L^#NEV>+H zbn=#=+B(&}j|H{~hM0@66lt>8zRBG_{ipS<Bdh-M&%f7Q5^b_<lh)}Yx8HCyuTu$L zek1LRS}^04RRU9se02A&n9&#|F;mLuznklnq{|N6%eWT!@3ab!%kRwYnXr|sbInl| zon2GB_18$&?b^Ef?Cx_p{O;2#!Yi+BeJ_2(be2tP)~cZ8W;`-Cc4}(q@>RJd*_P+s zto?T&QRux_l3mx2U1A2xJS%kOy)wx9eZovo%1>B!+1?3X0_rBciAxV_p1D;;!Jk>K zkgf88R=3WDRkzbZPt8r~S;1o!<1H#4Q>JoU??g<U+x+$W&RPn*m6E%c_g;c)nyd3a z(Z+e}Y_-knv(FZ|Pq)~zw)V5Fe)8!B%3|;C20fgt^*3nh>un9`uW$X6H9hxr?c3MZ zw(*O9xA-UTTCY;`|NfC}m;JWB-L?E?+4rY2%cdMZJcF(DOc9%x@sIN<S2Le)dKGp) z_3B=m&4KO}-^?!R=1<yMD$QKYQF=6>D)`2#;=qtyFXr5qS<T0lw=BA}w{&wv>8;2$ zyEe&eK4;3mS}*9rGHJ7wZnD=r1AET?ouPj{;quK*X0aycmpEUHncTPgllhEkf<CA1 zt*ZU1zka*3=;y8C<LfWYQLcK#A$>M!oz-H_|A*IF=FPhn^WA36&MUi%Ba1hPy;9R( zZ2V^1&bOA;`)rq=-uk>u)ZqDsb(S6Vw`c#pZG5vhW}oeL{p0hzJ6qpaPP=(b>gN0p z=Z!;sY>Taxr+1&6<+I+r&+by1p|93jhxs!z&I$B;sD`qxov-vcTV!3wlBX(L*@7)~ z@2_0FaAijnhq}Z9@oguS#8+~Ly}P!DRr~tg?j61v(JL8k4}35GeQR%0g?rBP*wcBI zH!l8DUHNFi4Y_?wZN5rRdw%1<hTN1Lmv)_ex$pOhUCG;ZKbEfl+HITNc6REK|F?>d z9{rwKaqP5-arXspp16ifwwI)R9&?s6pGcG4t66h9@7Ib(HGvDhiZg<j9z4J0%gk#$ zfrc}_CNIjpn#h^GzT$uRm3=F-CvMd(nj2ZTTmN9X={xV|x88n<y?IkfIyyz&?7@fG zZhxFVEPMOcymMz%x*tcWl=K-fuNQZsq^JB-;qluLv-)i3qb%jPe>qPgy!!Yo4y9+E zNdK@s>*V$i?;W;3a#%D`=I_h<IiCNYIsK?nn(^<NQiW~b{z;QpUX_^oH=^79@elQf zmEIw7B1gMy`_8kT7k7KAFl~Q^OgxK?ey@|JG+SkQ>w=4~cwCPqMXy|ZD>C@?y3Z!R zqQ%(6x1RYR|H_2hin(Ubva+`RNk^ksFFae?t<$ws$?LB2>mZiJPN(1Ah+5-VmfOs) z>$*WTyvb%F+x%<E*^U!~tc?n{6<KF-EU<mux4$U;c|iJ-!lM@&ZoIZhTkpA7aOcj- z&$FKVI``1e@Pf6C&7NnW@<t`emGU3EJU)3zeF+oNt*O59;}W;j<=Np9*Jph=)=-|* ztM<(P#(u9KPfts|u0C<+AOG_2JcZ6vcc0%g?bai+qUUQDNJq3ioa@B1-s67wZ^P{c zk3SYoD|7ey6t!%Rg~IP8D(lacbE@9``edt;=34FUjdw*vQctt))L3%GDff9(0LOZj zB4!mU37-YwqH*e;44D$%t*pG>(mpPevvmt=i@8rqUH!DgbnT;(<jtFo1i9Y6=$`PH zM_BM!N$G+%*H^z5uDj{?;z10bJHNoywW+e!{Zsab&D2Sa{8#c+aoclg_52%E_ZPjd zTo-L))D;%C<lY5^eUFlh&kKpguCo=XtNE?#=6<Gh^|>b+_o~v)Z<@HzddZE$$7Rah z#3al3WnNvF&m60gP(A74+NSnGgFKzp+%v?!lxOWNs9dUYlFu+QYdyz<rG8$UwoIRL z^yZ88+uKw8d}hUNy>QUaE9*scmGegS{i4?k5~{Pd{Bnp1Z}Gh>a8i5iE``sECuCYx zmm4Xc6-|jqP@DRtvENT%;##I?k$RtXvexEhzt!)n=}${uzopJ6Q%H|fMf=mCqyO9Y z#HCD&KDHs@^wK2{{MKh5Qo7c(bO&q7S`qI;O^<amWpoRsygtiWUAvQaol0O}WVd|C zOyNGQzI{(ywx8?G{r4pN$ep!~%bgCf)(gpfGOd}#W^s1s#%R016YVu0LOe{C`M+zQ ztS&ae`@np@1FsAJEL^kW_{aB6PkZX`Uw28})O9&gYnE=s(p3c(*)dz^{bGw>T<^GG zW$Ls49dp9M5-T<)Y;Rbjwk37R9nm9On~!pA_WWR<RQR}F=I4A}rOq3l)b!?adkX6Q z>sa_E<LURD?|D@lpWl=AzhATDkKXTxmkyi%^S$0I?RUSVtlw?-xsaW!qJAr_|JjvU zJM~<%os8KVDWe4ExsCO&%X2+uUTpu6-+X23U)3w~cAd1|@Ve%esLG^L#fFb+iF>9R zU%k=izhds9)2c5f@Xa$fi<rRaJ!NynoC?!`f;9)%b1y6rEwh}qyJ&Mz^U<?2!t?je zFY_}$eMsV8LyUQwyt)9h=SCZukKLV{K3V;_;@5Ze$%_`{?<$X4jjFe9)@xtlWho($ z6S8jO3BDO$bf-^v_R4I*GHGdZzcoy@YI+S8(vg<R?_49UvikLh)s|Zp@$~e$l!fN5 zzhhBVboSLm=813lcLwWQ1bmowHaF(HqpZ}Ib@z-@Y&SiNKHR%9sO<eS>HeG;_vGn@ zK8s}!sr^|oEi=(>kx9_qni<o>^&QkEEjnKB<#IITc-?}TzZ$0ny<wj=!||7w))z*l zvOla5vEmnQR!)_aw$Lq*efs~J8%O%_O{vm{>yE14w3=pM=5%10M4!_kmw6EnG;W{m z4BE|m$fEb!oK|jqN6+MqSFf#Dr(5-gDQeBOpz6mWQw}MV?%jDLFxY>u;Z63(Uk^mB z>^jA*W8^<Y`ODhnzcw%@?s8LE8`89_cS_EMYcp>|sQ%77`sD5E?{}`>z8nA8VEMiE z4ymF3R&pEa?LP{f_x`=R>}~zFTF-*q9lAAh|99Iq#_qmwWZUumH)X%b%kTR9;9xYb zuzTB4RsJ~<wl`#4QkgYA?94TJ_iXPcx%<u6CorTOF<n+&DUry#@uBIF(7PE&Ub9Y` zq<2b6ZHmr%mGvKks*0rEJU8tudeC&H&7;2ml|b3YCt4AX6@R9PPu1#4Iw4;2F{^An z_wKSy)0gyZ3S85kDYfwIqA4>xZ){=Sdg#)|DW}(o-zYuWCM~m4Fz<TBtBCpAABpuA zCO=JkKkxl%^EVbc^9t6*?D||NICs6r)yxtdskI)m7vJ2xRo7i{`tkXB)y?ktcamOo z=3aeoQ(o}&?cwM}cRyB_@3gwJyZ`U^vX2jxJAT@}73MO!)0%ptHN1yGIHhj6*G6xq zl0$Lb;@*Y_HaYV8Pf2v-OUS>jwA6jJ)-ItxQ2`-54|-dQZqHAMI<ap;P}j*IFXLAo z4fe$!vojg5_cHP}uWESR(Qr7hLAg#l@G;k;<y)V;P(998#4{mTSZ3!rr5W=Bf?wxy zn6Q4Hy7E!e!U=2KxOZ*2x#-2hD_c!$V;E1{&kkcOyTIUK9m@Y;tE_yqz%@4hy5nY9 z|F@-@^vKlKf7)7hxID)?Vs2V@Zh!UVf7QQ#o4x7glmE2*o`$pG+-bglSMf}ZHs{^4 zQJ&}ZKD#yUQt8Kgwet#GSDAguc~!RD=FPWMZ*vPJQ}ZqE8gAE<tZ%o!&5^$*JfZUK zfmOoGvf3_voin55<-69bJEtcbuGTK{vZ$~87?<U7UD$coy)_kUu1we#XSMyyo1+|i zv`_G@QC)S6W$CeslPbH9C9D;Bb@0O1gvU3Vd2hMM$~-L9-y?VYxQuC|ZuB2Jn@fqa zuQHfrPhEX3`2E?9-t$FDLi?n`=bHN$X4qUv*?5an=VH_ft#cBK5}Ge@&VIQ|(ErHU zmCrPGm)-6BT>a<%ciy)j<`%4r+Vrm7dUsh~{=YqYAMd}uIJ)eJoW#ff3LhS5ewo(u z=YPqKU!P7t)73WoX0C2;Rr4q(R+UR#eLnYk!#!WRxD_AmZ_F1Ku{&lKY-?n^MZ8fm zyUok!O^A>A@fB>D=GvlHHnWKzoA>%c%C7i5HHMy=@s1ktiD7U2yeid~{kd^8x^sF^ zBWLWwg<KKo>`v1U1bWOkIl0K<P`lPc=b7tOV?LM!av!&-n{&7;>JaZA<;=Vnjnb;$ zxWaSg^u5kJoqBWnCOyV4$Bd>=ev@-EqtkfXtDM)%bo^^%EZC$@aje<?)=YSN`rnh+ zzgO`8VB7vnepCD2^WO29cRn4E{LlD*<Nk`p<xh)Oe_zYHXnS2#)P1XrA1{l)-L5h> z+a9fUr>*1vgV<^Ddmp8&`;+!Q)BO9a%HxmU3rJeDe4WVtdU4bVbET<P0xg&NPfMMs z^L};da$SP@{Uz;{W;095wrg;Ui&%#lmqsw(X6-TDd(`nvnb6`@N`_iWS1S~m8v6uf zSD)H@_HgDan|7OM_xYvEu1&w+TyglIF8iK0>U~$*&nngLNSgon%Jula;y2%HTTuQ) zHagFgN2m9FS^leCpAY=cnD>Wa@99Hd*YE$NXRa7x<o7IJvL$rIn!OY9m}C47GVf$r z_eaps=2(~Ky0(rwRx#Jp5*DjtOcNZL-ETI%P2kQrnp9+RSkUfqOZnp;Gn!fXvRWSf zP%hD&{#9X)Ok1<u>_uD3w0SxFCjXb>{gCCE;J<OY^NLF$Nhc!aMQyOLTpxDfQT?5u zb<9&|3%uXFw*1eLk5eAUyq69%dE+s6or81Vm6;C@R_8|^vpX&KPvPsMnR8!!Wv*RZ z%l_-awky)*vOBWBtYg0K`!!RnUq&u(n*F~z^V3ee&F@ZC-!VQEZz#8{b7yy_wS$=V z&cd7eT2{Pqk+Tvn%t$(TWy^$b{wI}YS>KqHZ?;VM*Q>YFpDZ&}J6QDfio$strSC5f z|BF4eWb<T?qKT|xEK9FA9(#A9&U?{`xYrA3?}=cZ_;lx*DS}&mHm55|m~%9_ZOD0T zc7Malq8Hnk@7~@&(Q9elV&lxa-LI{-ndrZ?HN8|?z2E<Fht<XJeSd$RI?#JHBfmoP z^qb!M_rBe=esV>&{_Xq7{Y$i-N%7X-wBM0_;El=R;>9O66hGhheqv<6dv50&Wg8z( zO%%L*ZqD-Byvb8bY)nng20dQ>k#)l3che`meUfRUGgU|9SpAFHK@vTlnSzqv`<^U) z$!jQlSD@Kut7}PQWJ+7wj#msJJ7-3`5HMm6y}mH$w|xEiiKcrl>ij<b!Tia$jV)VN z$R0N4ao2k|{m|Q&t`@sEf^KTD@^faiE-l%!`>v3=$@L{ueY5x8@(VwFSwl=fdeN^5 zZv3{6cTJ9nHU!>K5tDYfyWO_m%m01dzk7{u>*xM@`|@u6-@UK%VvByCTwA`kzREf0 z_{p{H|DS$o3xDr^ESA4CNAm6MSMg<kpPilmI`({(yrXHpjKr^lr+@b?ulxJ!puXLY zQ!kDk|Ni}L#jnTBukK$FE30{|+g!c=^WHYQ|630hh+ONg`zD&Wd;|M!FWEEaB_&i> zv&pVHvcxykWp026<L*GUOI2<clOA2Yoc{HQN>kngi5;DN)6!xUZo1sh5}GXgC9qr4 zDak;A@5NpoZR54VO7&Y!TCz8XPdupL8_?;awLfuR^=ennN%IQ#+)wf~@_l%X??=GY zrI#CgzWr)Fxb3L72fO`j)5v>woNo1|Z+mN~dNk)w^j7DOpI$r7{IES?@`mV6ab~{T z-bWtmIQ~^WCt6q7dAo9M^~UYhxjX)@-e-Dlg*VSHt+3z9`<|M+{K`u<{VkWj?PXZ4 z_P+Pk3qyC6v;8XBrf|J>Zo1=wa}SNoqr>$x-}UcOeIJ!RH{#_A^IvakHy&`<ZT=|f z`~3PJ4?j<4xBF?ZmA$v_2j_+Vj%6_tqGrZXdy@Y1Z*o4Ey|KG<L-$Jk#$IC=vvVx9 z3hORLIxQ5aOS*nJ^7t%n&&Hq#1MOdDW~^#CykL3pv<JF#XY`$y%J5yjYqr7CUA)iU zXB=O!XtMm{52h=aPb`dTNnRXybiwk8W~*H_^_EXG+jFa7ejk^>r-NEy;a{H|`|TER zeg2;vH&?y3mbhP@zrp|e?8eZl><RVNB_dieLAzdxH2(PJ&ZF$oqS$lttk0gNH8Up# z^@+QSbct`=vQ_S5jET62{Iz*@#ySpNH+^bF=eO-TrgvI6)%EFAZl*1!f#=fJ2W@3= zUVm=Vg&DDSP161@T+DGsO4&)?8|FUn%V(IKQFAZkcc;aMTAs}M4YvF8Bai#u&q%f} zSzdDP;9+z3ck;59o7boBxGi}7s9w)Jw^04JZ!9O=+4%qcxti!JNBfVxtAF!T_V~Hj z|BLIbO0K`Y>)!Z%arnK<EUj@l(k(NrSCmfBS-fiP8mSv`VJpM0Dwg_8l1ttiAajBz zR<YJ%l4{y9R=E<6BDn<RlL={ASJk%hsu~2W<~bvu@if|zOT_k=kK^Z{miN=wJNi9Y zciAbSeOHE%#+qMZPjsi=S-2r}V!u_9T8P=M$KoFUo7pG46Sua%yU5vf*1~dr*?$>7 zrunYiKV9CZ_EWd)i3QL3B)!|~_x`_NeR!7Aw}XqPpU=Hr_U=<)x1MR%7D=<5+uKv$ z|NX&wGsC4?%lrDhJ-Kra=C#~7^i%si=llsZzQV$({~Dj^GQZC~`nZreq*~PT<f&C1 z3oZ7Bsr)Vd;PWxLP>|=@t&Kguj4pQlf5iRLVBSP2ovc-xxXW(LGBW1*bXl+~dO_XH z@Sa)TO))0N47)Z;Y!dA93DN2~n$jMix4q;Q?}{axR;@eeU$tuY8ZK?7R_$B?KT~Jz z!W+}Y7oG_EXy%%zs^*;c#=|MbYBA&4^3(rpJQMEDpUm*__D=JUp8K@xjb>{a9z3&i z?Ri6GiP@<$#6^8fHw*o~@KN+Yx0h$(<tO{yywXfhCoSZtb-tRyy_4(mK6CZ^PTK<I z*9XVeHGb>Xd>j5WE$PA02Pd_buP=PK=meKS`sUEQ{!?=W9xj^MRG99oK4Htnruzz$ z<~W?alw`G$*-ZIMm}ztKvu=?ScP}I#s($YMe&V4{Ie#Iu1=pV~vwf{ULD=XgPr;KX zHAUJi&wNAGcp}uIHiVQopIO_vaFc_&#t~BmsVL2tZ?Y~WTwL&VKG!9I$^?zYJX<Da zt8u#La?ccbSy$2;!Njcd!bx$~!g!x;Q~P7MWrD>&^98Ow+PH4L@v@H`6@~|km@{o= z>c}l+>GCrTOf_7Qkl~})uA4sBS1~!dTKvO>^iZ1#F>6X%6JGhbu3f)2Huh?$=fj5T z@ck?QriCR5nY7<Gf4}AE;mCtOOJoh+{Rz#h;r5ZArYigFA=8<Ib<ecVxIGJ2+b2~a zF=0~kly=t}7ks5w1U;4x7f)PzOuS$Hw)=yHS^rk8bV@mJ!q+&3+mVI!*Qq%7pSQ~9 zcKqBmZPPoe&7V~NT=V*MaBA94;eFpte?7bIGQt1BYc-w8*$Z92FEU8GI9(_Gb~wM; z+MlmDHe@UfjlAa*WW#3IedNQZsoDFu)_<N>5&b-B!dbyh-2HD8*0MXQ&sSnT8Pg=7 zxJ2{mtc+rh`EPH{xNE*W;#5e3{yA}$oFcu%xqpsrbzn|TjyTHprRjCzz5{EL?Ghi| zZQ$*n@@Dak4Gm|5yDkQtE|2c=JXT?}M@(+jyns!IJmxL6F03<EKg+T0X|3csb+L6V z?+!Ijd9Ho-)bo$gvR|5I({}PQd`$iIZ2Hj@Y1SiE2CHN)+-I1T$gg*#f0hBqlk?H% z+IIhb#lCNgn8Jm`(4@Eqw_N$Qw)K|R3_qxfN^#$2W0cC~G&v-ev)V23ypv|3%X+n` zf29}=ZNk@GIhoz){P4-D>|+OwBhK&dFHA@|bH+)nZQ}=VpFOQ%yH-1|eQ_j?&G`P+ zyG;hWW3_gNAF?Yj@{o)X-SWbtR_ud;N4x1y&E~&pJNYE`^z7T|6Eaz5N?e9%eCy4q zJoU9Z&d-Vx+bLFF!u<QsjRM7+g?Dc}tqsawx$5(4v1aWsgFvtPT%9U4{ry^{Jz6gx z?3w!IvL$Eae71F+tUO6I;rE`%KdJ4RS7@|JtUBq!Qy1NeLwbTKvKNKs8*EZ8pDCSL zyQaAKRp7e(M><jaC4D6#zQ4ONv*Ohmy-(E_we>%+|J3-mH;S!}!(>}qTg3-|EvX-_ zVu9&gmwmf+<hZ*w<uSj$<yzNPy6NiV{WqJg`P-aa>t$>8Rw`4&u)23im~dI-L#ewO zO{XUC|J-r!%Kx3MrGEQ1v(}2v?OXit?&N$)wfpy4+qh$uz2}_zV#=k{bMWG7KKV@^ zVl}Vly~s1^sZYQD<Tl%vchjzT<~=<UoN;&B$@>>%7JZmncu#lDL91NB&!%c|%!TXS zm^TWs-nDSC@_x7~^H?wYEQ^_<%q<qaj|DUWc;w!E<eqj(>ekQvL}i!ol8CP&&OBEV z)M6ic>26ZBo^$-3RjRDvQ`Z<J69)Nr_rCwQHnF<t+{CvBXTREit2pOJ`hE_ccl-P$ zU;cZxYn%AnM!xzV#~x1g`@Z&idCse^ikW{m^VjCyJ@C)^o2^hmpO<(2??>Ot<Nuy4 zXOC*zU$}X<a)@x`_VwGdFHhp#o$2?~TIHJb;Y%@1*Q;jTT=?+VW1VTyCoU_AuI^%+ z(Na;vt#h{OlgotL%f9Zi^w@5oxc2hFKBc?NQ-$AeKCL7*IZS;WxBQd(Pnquz7UyJq z=H8zB|7qH;{Ym?h1a`4lFHYTe+`%Stf=G(Y^vE2!7aX};XKafyYLYaP-TLy<hA+?L z(xv)~Z7gQVtmb!MX}nQvzk5gXt>P0p#>q{KHpV{MXjz{3l3QF}X(5wPpNI%!-1Fl% zSPp-TnkAy2Vf6D>gwq7}|Hg~M@|3=A&sRGA#6L*BZjI)?lE8>sOU}A~8@1W$boc#B zTJiH}gx;fLoi`4$6iw!MmZ_#LzAbcv_xa$~#Yd~ylJ2Hfg*>~Kw<=+G(E8BA-Fqf~ zSN8QfJnv(@%_+MBdH>D@?>d>THviIJ)n!*Xtk2k<|5vx|A9rH;O^$M5>zY45=4@^5 zusrwb!seLhyuF(`&rjo>U3{wTsy*xLsr}Ed{_T4<?Tb>{^Qm!(z0Wj)j~JM(Kda~Z zp|!%|t>2cUt&aK|<Lgr%y>0(KFCpIEz_RGeiVv^U{R^e74)(uuUwY{Ep7|e*9GA`A z+4<y9yP?4!#TmvAuJxQY3^dG4*z72lusPhMZ~5WnFT*aUE#+P8c6R#v15P)uHH4QQ z40)(F_ql{>7-Qm2rP&83hELC)e#!XAiNA>s#g?2kDm@A*Z}waH))$<;x9^*;^Ig8! z|1+(ByXW_~<;%qGeSgO)_UWcZX{Ej8Je}(1U%uZ{Z2PYFI{tLszV9c(ujT&z#ryaB zCiP$Zxg8bBd+(jS&vn11<m`vP+x2elKEAoAb9?FG#=d=P&DXxUU({TF`Q6^^>+g55 zCcoWz<?@}dvkKcb$t6Ci;xVfEy(coUrSN7SYp^w6Z29HfQtQ5&BJ18gug?@+oDmdU z=2^Dlru78#<c7sD$$lZ%Efjp2`wIVrom<zc*flql-DXvvk^ieNZAvF<PUnUC)VfZc zRkG++5C>n%<|Q9rdF|SGWLEFHPX`&N?_IQK)1H!#yYl<Ln6dQy>uOX~-;<)>TU%Pv ztUagd<N3;eKa{Qizy0*|?(9eGzkK>X{poBktE>5WzdYYh=Ec<{S=*k8UwDprND3#g z&8W~Vvln`H%PZL7WAdbgmzN*f-?;zagS^i=sYaJO3j2;}$herBv?&?9&raAEvs2%p zs@6Gvj?pbYr(CJz^CrCyx%QaJ{N5~j@in{MbNQ%WUvE5|_u^LL)qe}W&1H>uJ-$6| z{|e_@d#hf54O+fs_SR>%sz#QF-aMK2{JgQ*nbZ~bniCz4JbfgvWtPSy5k~uq?F-&Z zm4q)=$}evBWOJW6`>^(|Yr>L_VwP7A-jdt(|HkH(^;0jNSF3NAUnFbq()f7gm5*0` z$}dxxn_(-q<@ry?J$YiuQpb3ge4nSbdPm39fH0qb{TtFE&*ysfF0*rE+mik$aZT#B zxvr0HGBfXL{OiATo^@f<n%M?EPh9`Zmig<uscylZ`%^yXFDx+rY0s2v`qAK4d&x@w zAoiWQ>V6Au1pof%FK02k>Z#5$ckzE0ueUf?*hVc)bL0>@v%_EfX-3Bp?vP_!XYT!0 zeQ70+hA_XIjiW{k<C4D%^+H;|P5Xa8T;kz{d8hZY-?DE%U)nL}wf4>8jY=sCR%9No z$!IhFclBugnF=@8hO3jFb}%+=jX%;m&-qQZXh!_2*n>Nse~Pmx|2(z&B723b;0(n! zkzMKMIycxVPrRJAYH_jOZ{MP*O{XrJ_6AGz&70=>W6K@~KkkiIp0|5smItl8uC<-} z{=S+*{?6e2bx-5UtS#R^H=g?G%O0I23a4yrP0JNe`Y-+X{lrSk&1d=?ja?b%&l0_4 za?R}n=fv~>q>}uW-@CidU1Q%L-yP?DHI7Z&G~LiH>eAM~Y<u=xu-`B#mHW-*(r>RW zr4>e-Ej%8`V>>&_EtlQ?^11IH|Ngi&(?eqZ+B4^8Rcu=l`=EFJzqkcuF%2&tg@0cC zF}-Bf)|HJd5_>tWMfE9eHt?uF^xBQ_+KS|E^?ONoSJuCMRC#v!^q;?Pl-2CZ?U^k9 z$b8c0$Peik&E{37AA0#D-0xqM{ZD_B?=tmiGiu!2*96+`RODSME79?!N9QTmU(wle zbuaF69^bpB^i%Vf^@?J%<w{@Gdi}85{b0|A1IqpL%l-fP&&wBY@wZp|uJN$?jmQ1P zZfgZR?<+UmP&vF(%=F)`dAtwgcdYRKD;I4hW_RrK{JKML=l+qr?fCN5vF{5OfA17+ zNcp&9XL-fE-0Pc7=i9ZOpI&QU+<%M5?txtA{Dt?F|FYU{njk+j=Jd3c_D8CM^EYWf zs9AdE_Zzi!{ZAe{-pbx}pLzbf?+eZ@ayUOt$=+mPx~zxK-bq!g_1O(O`@0MKC+&^s zyvY&TmX#wbw1DZ4#h1TgMb<&j-*3>;eO7qm!Rea;yoXo!rqo|i7Km09IC7q6sp%OW zU7JtaUEf;9va%(a_kR0+f2*O`?TYaF|1W$u*8Y2Xoqg%nyS%)2vzI>jdiwA0-!6q$ zwF2KH%VziGMeV7$e9<&}-}aSjb1#3tR&wXc>#yJP-n_YS<MHROId3|?eREs9SDW)1 zUwq~K>c9y1oYJ-}ydMk7W~X%ju;4G3D4pwkcjfZ)cS~>U-92|Z@Ak^uN9U!~8{M?N zdHP?9QmJI7nqKp@Q~}Sfn)%i8!A5h=wW`RRsGXxcD@tot<T93x8Hf0NrUcEju6kPg z&@rc+t0ML1qF>!6&5{NuvpTjf?_w=*bl#pE%FuXvS?Kot72P@sw_clWv6;Gc!X>la zs*koMq#u4{_e=KQfph-xOp>~yGpy~l_V#_)zI44~vD4;WLnFOsr(c<hT+S|7c|E{; zU1M2xlbEmCti21ig@yPW{UX(+!<DY0y5fVAU`%V12fN}9zFE`Ot4?2>=oP@sy;Q4g z<<!mtS6}Yhe|PWZ*AF(u&fj<DGyf918$Wmb-L+Kxh~DNrW368YkMI^;tzGQ>t?m1_ znqAc;%HKVWzAmj_Z`0`I-u~@h+5gusu2`O#|6!{5PV*LJALVZ@3wQ2vn35W^f_=OD zh1V}d#AG!Km1i$mxZ@n_`<D{7nia(tn#_e|*DbP0I5cHtlhuNT+=cT}E~H2Ozo8q% zo4)?xrq6q8#YA5`eDGmi-u+LH^0RdOF5dn-bsN{oows7Pyx+EsxBXXbt>JmI%vk@$ zk;jjF&0SZOUhua!diuBf>N}g7ANHo(2)|#mH+ycxt7xxl^R}<wqgKLEEvbDh{z%s3 zsEt1*HfBpOGg<ADyZh=g|Nc6`m;AMV171z;EH~ftP9iPYd1dF7<LMXAW{4KOzq8x) z>-v?&EA!{Cui^R0aeuqf<2QwRP8+_nZaVZt!T-ma6Wu8jwwLNxWqH3kf8o@X;Kwhn zZ(nw#Hr_FSd49^`H@6Q-?wWTlb@`vGN3AbkeZaI$y5dcBoX~-igbjiG`!cSj6*inb zq?)>A{hzJuH#N2=pI^dP@?8B#jr)n8`%H5G`sME_{?+sJP<(*(N}s)KyP7UvwJDd~ z?s{j=@o$`FVNZhjxenS2yWjMGu&3q~Ye`S<qtATLZfh6%DcrNT#NHtue<82(-J^q& zZ^fc&&Ur?~*?n!kt`)3bu-*UFcZRr>nseqSE%#fzjZ5DU6u0Y##8QKH%`-_{pZR<e z88yy)ba?n?Zjs=L`|=z1|NDFShfDR1`uRKBzx+>ZnS99DhvDW5vCiL8%#&0u9`x82 z)Xy@L@7KqQ=6XjBmt8?GzdTOK4_kTRvTmIfBVXITgGrAUzdWJ!u{>D5H|;9>nN6i{ z?p&(2`xR!@y*!8K+qzfBT2}7-##nqvtfA(kTk)bT8_%#+$8h%Z8@-c$z_I@K$=5$7 zb3d3YGg)9wYN<)>osNowS=zd*KR<XqFX+_*mMeSyxN%R}^J|TlpzcBT(?>Z>yREu| zo+yNxO<3){D0J2I@TNNx|2$tJap>7IHh=jNd7aYJ$CIRwhJNc<{+fGQP)YRC*Bj+s z@;Sat+jgy_=3dOt;PaQ4-?x~%>$}MH!c7^6H_o>{)h~UDt<C&y;hX27-{hsd*xUC1 zeB3#|P*&K!S%UEyZ@tXtV}4eg@j*Y6*B7Mx431p-$zAXK2e#jbTWsUD9yM?l5>c$& zBE+_3_A%kURbH_UD-Y<0b#yTwTQ~D*R)<ykZ~o_H#U7i_``!FrtQB}UBJH@&=4ekn z&BS)4h=sAT4_zv!{Sv+K(t+K&o6mdCk|`A{LZ|*P6~8%CW1;E3O{azQm3sTQix^kD zJ63S+Ex%pGtA^hJJ6~^PU##3{mwn{wz5JCG$BfH_-d23<70)?r@Rk2R^Qq*b@Z0j| zCj4&ZT%FKco9Vfv)_~2b?8B+*Kguod7*hgjZK|1<?X;hJnE%N1T**V$3)W^IdUGN1 z`W_W+5v{A*2Bxc>yw*z2(m0l_?NEEA>g$qaHyC3TidfRrx>jq>UQ)R`CU@H0<l;&4 z-p*4em+{Ow#k5<CL39S=uAq)9*P<RDQ?lQ%Na~W{>q|dZiv})jQRkUCk@ueKl81Gg zC58FD8J>+td)8DO`0`L%{-d1p#?I~Ae_!YEdwwjjkW;_@R`RwCCY}0A0VY1V>tbi9 z7oIhop?mPo=?iwhp1yoJ_t>J3OBUbK6=6?VzQlrO!aW6dm(n#Zi%yCMx-Y$!p5_yA z=CS2s<$tZydbZAZa>~%L&?&F#ti<AwYYuGbsiM4$7vsA7ig-e~n>AC{ggt&Y)8^2p z95GAZn<1A^*p~V%l-s-8%)Xna|J~%n{J+e;=6b(*|MAQFSmD_BFMl0ro_Fu^_tksl zm)p6ebNSCSo$GY4eqZ+SU9oSqw;!*sJ$@n9+}-AChG)^IiZ@nI9``@}uKH|U&6HP< zVs9K<mFkkl>Qk_Sg(KYaW6+Bm!VOdEH_cR%c3nD8y4~ZklV_&3oWD+fbk|Dt#8<k< zuDlj}I*GeWIyir+*WPsfzLXWuC4!}Lr>ESP5H9~A<@qmLwASHs{9RR*AfIS0hZ8&I zt$4sN#Vs&dS2*sq!@N0OABuL198`FGd9s~hrsh&^-WjI7F7Cg}<;vJi_u9wo{(oiG z?|FBxY+oKG-LYT9V`<!tg1kSw*4?=4ZTDPK>~{H@iMzPJJJr3k+xYmxyyCmfoIls` zKbjq;f7|rn{Q6|k<+n{X6*0Vh)%ES&UqR{f@{=2{e>fg|_(kYD<~7!Q28Fs8BHXhs zdmTt#tKb%7c9V1cqX{c`t7cC4^s+mC*`@WSr=>blPgV6e@p@ipP+qujqN1QpWOg9S ziqqFFHrAz>Y!Z#@GyY%|Aav@Q?W>N~PbDGi6EBFrUDK5~cSl|Bfu}1!|2AW-y1w+D zX!~!mXh-ob>*T!tzi#fbN49U&6OmZMee}yO<?f(6?3cn<hcAz~@n%(Lz|}iVzAS%~ zGA#D_$OnWk`I5se_}clRk57sEzSjwf%8pB{^eY3GtoAWJ7AidLl-6%mh8re()syzB zH{Ht?yj*pDp_sE&$D`FnCZ_%y8C*gc^%Oo7M_n!L2&|BoJr|tRXzG!!I@`W=4MP;y z%$deX;TxqGy&1IkH;XR#V`j2^s(h5;hmhCq^ZLy*56$gU+kL<KbeD2<&+MS{bAwD1 zs(!jJyW(!|Ct7VgvE$~4j+>R=pS=kB61{=l<D4q{=d|tvuXUK@URd7nTI4n1`7u#H zaV6ipg<EwOzP;HUxJ&km((9-NYbVQfFF&`YV4HVL(^C&_`Kxwc5`JHB{^Y8<_T=}! z&-;ExOn%RPUiSOk$MfvV^OUOk-prqveL?2f^#G&ep%?aUIbS3?C*}K-*pu!1?F!Ut zO=lf`{POk7-{*JD>ri<Td!BK|`x*Nb9tM`SDeqL%->G(6=DN$`JM*8;3SbdF`TXSb zh*w)belDLMvwo-g_gil6m#=SQT))`0M><X9OhvAMYlGeFrwd&&JGu24CR|B5GCf9J zYu@>aldU0T_nz*LC^&oi&Y72gcD{TvZ(8QN!{1Yme>+&7zI(M%V43%gC6d!+6)(*@ zUE#Pf>F^n^GbT&f)@R>ay~p}!mdau_1y8nb(NCnbzisl&F?heOSm)}UPMM$O{~oT| zQ12OUA>g|GTkBuLiYbhHJf(QL4=&uW;@{bXv&$p>KkP5tX3f4dz~*1OAal9h{(t+w z?PFcF_O;LVIg7UoI0?OPXNa7Z>e`X4*rLO7f}<z3M|4pJ$8>=n(G4G)6MSO&Pp9sP zIri9-vrxwWlFC=#nDsIG@%q!;g}NqN<<0WBwQJ>Z^T{VI;&NwYUiLYD+V}p+vtBlR zHQ)DtpE#k#;E>|nGT%MZCLVb9;{N~d@9XP-f2}va!V@p+{QS|y#T#u3*^)mUSS!eA z@!^I>we=b$;R%OsA7rSuzj>|I#`aER`nNm5`QMJ*iGKFs>iV_$+s}VZyf43!f3Z#b zjb07I>#^>Czi+&te}C5L@^-$XPsK0Popbnns5APvSygYuv7*(@KZ2Yd-d^AuBT#-= zA=h2|f!Rh8i5R(Sw>|iJSq@HYVdFi<x$20N>0GDDf`wPz^5*=0e3Wl{|CWG$-#1J9 zR`~gCk)8Nq&I%E!<;uD@{uO0Sdh8>)gQ<4H#1K{Ug$=8hFG*xRn(rLzYH@XQ(n{YG zO_S?Q_E|5~Qus0<h^_d8lv~Z@EuB6BJGSaB%=9n+CUrISsoGt?=H=HD^7T5lU9d>J z`l^V%+uMBS+1PnjqGwL#n6LlT_pvoY#W3jkj%bCS(<VrLxYW76b;<$0rH`@`8y$Jm zl?pc+8JWg4u6V%Z)KL87dfMk=m!y~ohvxIE-A&K#h};<b;iBjvfr~X3{Qiasz1i0` zL^WKO{1kTB#d*T^TLNE?b3G_8@;G@uU2Capmh8Pp0xK^1bAMFr_KEqy^N&ALWLshT zouu^1NkS<Xiv|6n{BCbMS7V^M?6&Q?jl8<D>%ZC=FTP`ZnnU({rS9FcZQ8k|*XEYK zY3;U`{qsvqI6nT;-J~n_xtr|&%{l$~X14RT-6reSHU8SQ_1fw`dw2LTf1Cfn=9|3t zUxiryb&*Z%XXoE<))(Lp+fZ;RU<ucZH;px^3yLiN%;cRobDqEd{+;h%n*2F+zvbw$ zj{NkbeS1Hszq-A7PQK;!O*ghKds>idnCodCbDtsgjY-Yv=*FWPg&$vY`s=-G-`cpQ z{I&D%Z-1>ar`T8Q(Y*ybPx0~bg{@P3DsdyVsKiX*gUQ^tyX&ex8P5M9o%!2ZqUY%6 z-A$QqKD)j8{_>~HwOv{|2Vb4Z-hA#=l*^;YFPo)~M8<eGEXtHzm@rpHB=jpw*Q+Qd zSKg*W0Su|Z+za=G25?!a&D{8Eino`R<}&fjrpZ;B8nP>H9BEasJNA0c1A}9y-An`J zmvzpV%4-tUq%&)Qg@E7Lj~0%xN3~4CS4Qy|Mc6e(GaY0znHyQZ`$MQh;{_kniL0i* zdLY)I#c}m`lV!o5gBLU6-Oh;3kXhOpoj&{Oi;T^)-h6qmOlq?1y`{{zg0Gd$zIiRp zw0M1Sa*?`u-jbQOKdju{+QuKz`0tT>`kLLdCa+hC%-xybxW&+yqs{w;N1&D8dy68K zSI-+BsC+B7{kq!Z@0*03ze^gu%o4U1uqQ3%Tdz|7bjRz$?j@$r-~QSs^tJn@&sIJg zxrC`1Mj~$|CR|u0bNYsE$m$$1#klw_4;C-YOe$2;e%!EO)4`W#Wv7Q%v&Ee2D{1)o zEUf!;UVL-vYqiOpS2C4qAJ+CvY`*27ec9#Yxwg41OTXsaIOA)5*K?&#)!(IghD*|7 ze;mL1q~`ds^OMgxahTnByUN=s_gYT*q1<Z=y1%TBW|D|`-%?#J`b{-$#}DPFA1_H{ zHdXlrZ=d<~-31F9wfE};_uflr-~W=~cj@Ho>)w9a_?9m>eEYpeW{dY5`h9Gc=>PrP zURsVl>y^Wl)dr;zn{A8*_Z*z^F6YUKWZ6f{=kNVje`(glIhMk6C%c#xeNGjA#4>&I zpWMFB<|5XYKTf>8wm2`o`)*uk&E7>qUH8|i1)Z4Mos{6;>uB2ExOLXy1+x+Ya(k0D z%qo%GEPJ1UM^WU1T<1&+>x@?ILm`1R{E>H_epIe4n<e~u`l8dis+ngtD6`%P;wjGf z7h^r^blr3_Y3}P2e8LX4`NpWN_U`)Mu=mxq6rNKphm)fJzAbBGVmV@!xkWl6TOqXb zl4q!>sn-hy@0XmOvkqpKaqLp^v$dET=Xf?)@YrMC|Ir0M`JO9Fe=XZ3nfX@8Xwu() zgUvjfu6|2B>2>E>-?=o;>FvC6mZl~z1^q8b$IYnJU+ej-SGwQk(~0%<XMgVh>HYuw zcl+MBX|L)(uYA|J<*$Fg+u!~1HxB;X&slco@~NP!I_1Z0G7s%Ip=0RISUT?klcmb? zuk*DnRh1^K=Lucccu1>al|<U=wO@HFSigzw)CyQTYpp@yQI$OAMYp}84Yyd82=6ZK zjTM`?bdy!>m2JOT^JedC4fVb)TD3OnaN)E0-0GG*<`*S1lWrVgTc!KZDv14d?DZCg z%@Zdck91|fHSNMdGks_F$wwco*|yVDo_pr%s5dRT;p<lB9*R<0B@q35i@woAPLqj2 zEZdv2-Z({_y_3{ua5tpleYE&KtE<X(I~M1p&pnrPMf}O^r?*eD$y#+Y?oEH1`LO2c zsTUe+zrNSf(>Ig4(7o(L#(`wf0?RXV8&6xVoUcFe?AqP2X4ijI-iVRdxO1ytkVU1~ z51DssR|Vw89u{|fdnsD}Z`qVbqPmF-OYE+8M;kr;_2@o#^-j|^w-u*~t5@@^yB(LB z5w$L~&D0>C^@Nm1)7-U17SiIUSI$pg%jmUX+0Bdd&WhxVTi;oy`?LAetFnmv8?}$F zL}#wE-15U}*2h_gXY$*5G~RTt-#3Hxy2%6A;JimI4&2HYuGKDFk-GeR$g{<1RvYV5 zR<5|{Un_9^x?b^)+(o6^+oKmK?kbyN^5U$s!3M$eyAJ6U&APOd<H=#pZxXW_#ZEt$ z6TJMgrQ)sz`#Qc8YrA_|4xZAQ5_kPJGw&&d5c8ig4$1qJW2ElR<o_9W_s6$RS*L3! z^dx^=uC3XA_5Q^7lV5LnC8X8)+a$2wQGB^1bNR+Z^PSO;_i^|2?YgaU%%NDctJlGG z%Z77rc4e`@TBFk`D*ebs_T$5gJqqhqaIIGt+*EhbuI~KXHkaZ%Mvtme7jP;m^(ZyP zx;rtIeq{R|d-~?l&B28WbZ#9AZG4htzC@g%U(ccS-TQQzv+I5rv8PPiChK?o?z1%| z&px~s&J;{Kly~h#?v>ZldqbuuPc*H2;31v)ags$)0<(0ULc#Sz%OqqoVka11UG(OG z!VPP&qji^`CkAZZAjcMaFR+{6>EKHHO<ila%yJ@HoR@OfWvOl5a<}1UPnPFxCe0n8 zm)IDaKfFEgdS=*>`umHW(hgkdGdSCx?PZt{zDePjkl2;klTYOHzS?EF<U^#O=Ob6c zH<L2+90D}?uj~~%!#v?rJm(e7wAZgK=DZT{OLUB@i>-ZAQ_gEX^`f@(%ndb}{30ux zE=}F>r9NWiI)l(jKfO1^2)F8lgsf}-pAkOkQ0CW&e>sJ}PS0Jjs?$2?Xl!i6n<p0z zg!jCX@!fXtLVn5p^cDHK{-0GQCN2qFe0Itq#=pF8>Tick-)#FcL-6SCO4Unet}Eue zxuW(e&SLIV?ut9gJH)ga%#S)n+~K*Fe(3JU2Xh&`%=gU+@Lm#^CF<zfW_Y7bVbXyO zyJnRvGIPDq{y<Ch|H=@-2<F>o^uFwm$tmD%dTYmWKa2Cq=Bc?1`P(#^!>SJ~jZ!~( zHB<XluWtE0=6UhXUh}hGFSP4T`8tdD!(r>Gijiu5YmTmpbj_TtzpOvwaA|$^3GSVI ziv%+le?9d@f~jV%d89%3elPv!sp>DDOMN+4ws_Z_w+XLfe$RV#$$ZMi+SGKBQ>E4O zUY4yprJsM(_QMAM+dngQEdQ7PZQH#2&$r)yZ`Si==H1q?<d3e~Cx5*%ZTq#&Z@+Ew zRy%Li?KR`Q*^OUYk`Bj}KcDRU)##?@*3D}^Z*1J9;~Ls|a)zeyjaz5tPM&*A=Jho8 zJH3_1wnpuCRSP<?g>Bl;C2J4wcxZR+a$-sHTRFRfyl1r;x9?v0d*%D06S<zfcWfJC z;<=vGc%Jwva`0WW()IZ*bNnT@Y`bY#X2iGq?7iLZZ#q4gt@~li<Ul>a!_`8DUrP0b z+b%|`<p11YbJo}3_%!igN6nc{b>AMdZm>Q1^`zsgX4mS}1aawalMOet^L|-u_@VJj zRVM!-t0<F_jds>kHl6>rBJFi_$&P{-Vo%o;{+%1(ChzLJL+QKRe?1}AgH3h6>x0bw z<anm9kDmREck<~w7iY2yvt7!Fne*ULlJ(ceM;|Ym&zsjc`8>0?@2$=Mg5;H4@3vT# zF8-kOKIq8NzA1$l*K)mnwN-b=kInHvYZ^Byi9i4He~v*%y4PuOrpa^pHZNa%?@eUc zljQ9^&kO92KisE1x8_0m;pm+&Kfe32pnc7K{}-YElV&CqFdj*NUCQ#I?&;^K<fC(U zGE@}wazBjSaMgZ;vhR=Pe=$dv?JB>qe}V%;XWS?4MP5}ulM*j%OWopm=Wh0uE0xvL ztmVvZnr~+Plc#xlm8sGEMU{5!JH!hc!Y?P}*PcFj@0WN|{w9g)*Y}F-PySul6u1Ac zz4mYS{%jrjGpctw`%>Lzgm?MZyBNMbGUJ|SZlmx^iObc&$yMf6naRzw8E@Saxv)*$ z@%B27vU85FS9-O+yQWfd`?<tClT#nw?JIYzsw-F8^mgv)R-F!0J^8h}8Q2At|D>vw z-cxqBv!3bkV$lr0WS{Lphc^~h8<;Np`(kM~@0Q4>eP^;aN7uwADW7{O8(NZ(&(-tS zQ{uPi!MWSt>{FIGu$kk5nUS6P_xr!MedBkN+_QbLw(FyJ{w+867w=5)E7Yl$y!q#{ zW`ExL_-6(N$K*f%dlTg3a6v?=xJU3~wOr`=yT2brE_%vaSZcW9ne>B)N&6ky7}YvF zH@$6k<&%?Ldp~2L@0M?KPx!N{uP>kYOZ>&nJxPjJL`4GEex9f2S5?&z-)iqL=@GNX zU6;lV?duthXTunOTA1HSZ#yrdwR88GAH`n}8GYHA^lD$_d~MH*T054rNqu&?&GG8# zS#!rT$HUWhX5FYUT=$8I_1-33CAp2Q>%PiqzG6@QQTOY%@Wl7$ZYCeKJGboD^EZK; z5;^r=OK;Utzh`9N-p2jsoRN{;t1^>cmS>a1pDx?v&!)On_0)=Pm6Ag*ea|^$*2E?l zOtBP-m!7e+(rT07ac8kjrR<_X0Xs5yLf$`Sv7eIT;F|MvFYnZ!8~D6MI~+78G;)dE z)0`L{%6;=>aKWVYTpt#5gy%k<*pznhvp~SsJ<J!U7qxFce$DunO;>OK9F}u|^BxB8 zkb0Awqd31#Q7qg1{=+wI)<<hYJlM+8BNrT!=;vR0kh#cvOVy?cXXIMC9K=+VXUd2R zoOIH6Vii&3I5qL*sgPyd53i~Ahv@e2U)s&evM76cT+*A$Jl#ohPkWvuO4|#r+|YaT zibt0A$JBHQr{YWIX61^>&NiJ)my*OpO#Ks0V!Hi|_AvFkc3$IF?~`$~d)HMn`Lw9g zDd*N7BGcLrhOT#9JBydYbNjR7S}oiQc06;cjna7Fa-d+LzS6?tAYb<`<$OW$y3ZSr zztFu=ZE{p;LU~e+|KwFW7&}!}TB1~A9780#_H1t!lBgGPl<V!Dc-+gYASoq~*(hMb zIisKpw$nAzScU4g6^8M|KYT9v;j_RmsqoU78{04J7d8yfnkLv`Y_ZVgovdDw(!`?H zq?Su7_{7ATwlsDXo2{NNRh@qO`sse#f0GN3eOc5l`BUdo>9*I#qQ+gX%@-d0DG_e| z`qQ6Pk%g_Zxo$d4ObrW^(7qEgDP#v{_;Ibi&~sgPr^l`EyS(pwuw?c+9pP~K>~(sa z;Vqg0D`HkCajxrV4T#^tCC1nClXd#DV-oMruHMtp;QH6oduPYJWP|t`UN1+E1wX!> zs&ITDB)~Y~aS`XiNiq_F9)hMT-nn`vd##(ZBk4|61@l@ZX1lW$e~;g<Iq-YC?X-K3 z|CgWmzJ2dBZ`rxJlk42wmscNpzu^2HzwQ6378U+~DZAc%-`CZhrN8}4{c3XG2<g_Q zJo@lMS}^AF4-un3I~3%5{p_?<nj*xU^tn1V+R5|mX5tP%DEeJ4Gw7<4U|6%*q)+>p z3>le1<Q0BxSS6Ud`NFL?!CC(UuNO~zZNKx(bwABjU#_qJxV7N=Z!Ir3^@-=ZR(y?F zx`9bf@Mcqi*0EpZH(wNcFH(xyAn(D-y<^f(AyxG@(SQ|9Gk<I=JL@&)fN+bD#6-7{ z2n*-aaWB4B$^MouE8k!7zxcUr|NkF~zm{ts>;Lyj{@=dUwF~OrE;(NQt}{11zAE{T z%#Ck)hd!&OM6+tx++p1IajC`ARHe9Cr`ftyT^@++bZd7AbqvyR-4=Fe0(1Eu6YV!K zYnKVQCi~4;dBmRQ$*QKGOLw$L&(d6D_<C`bW5>0lEX|L;G(Fqmx`jWwucXIr;a9mg z*Lm#g-k)0cZsC5JH~+T%|MGp`w=3rkUOV|=-N$nMx25;ZxAo?3o+@i@QYI0-dpG}X z8TIAI4y}p!AL0LgGIO?j;huFa`~Ii5?45FIVcc>jp{|f<C(96(tr1O<kFp*2ty#t8 z74tbj;7QXXzIEHD9A`bKE&onwZ^R-FjW|JvgR1wmH`f??MQv6xoPKGE5bLinw)pd= zbN(In)#;woS+8+Ce)EHDj=w5;Cr`dzU|>6Y<%IOYs&6*?JhZy&<d@fIKU^}wQjk^W z;lhU#S2bDjCY{}&sS&j@t?$B>&F81d=l@F#ej>Z;sAlv^f!DXcZ2A6r&nfBfbfxr+ z_dL0!zFRHaRtbLl-?!m^_><Y8SIV@u81em9YN?fzKJ)Bh)~^Q>jh+auTTxg0!u)^Z zZr8G<GN~qx2KwKFD;55WYOOfcF4KD{^k0mo2}e(4SJ<?NnoV|bQXG6qO=bf6j+qNG zX32iPy>0tO=e=3iQZAOvNsznj>N9s1@3Cte^RkbBx%pdNFZRyuqWOuR13o|So2aC} zyY=S(wI^0{wQfval>Gl^^Si$s-y3I#|11)@uC2knwfC}KWb3TZlWd<o5^EY&%KTd| z>lrSZq36Qedg!>D?url3rluXPSsoxM;&69D!c(mmbEn9fFbgU%TI#iFH>`Fl+^G}w zP&e+2M%_B*yJ0hoH$1&^wf#+W)LYBTQu7yAmdsW^UU|mQ_Vum*XLaXZt~H%rRuZv? z&)2;@bJ5I&>3SDt*BM8qt<%4qzOuOX>(9MseT|n_{r?xR`}G0O`!|wJ_c5-nKk@Li z`NEoVx!zo^men%7k5nEt8Zpd>RM{hXy@^XhTkRp+1r}C?g;NAGv%6kM-L91F*R}j} zE2aHe?d1bcUOLvD-!3<=E2j64PSMYZhHaN_%1^8oUaQe}&w1Z9rFiR=`xiN-KFGB# zDz=rL!o6tr&IP8~j$fiSO;Re~`cC1{=B+LZ9`WfINN6<i1S=l@uG)P<Eq_Cl)2ino z8uRrppFV50Mm(CuXmiMhxb-2n{+^q<&uohbeYNwYdP`_bR;TmANsgNXC+KyhT?*S) zn?85%w!#-3*MDA>JAUx)IoY+z=S#Qx@UQ>>Z(m+;yZ8G1mm90f=ia;+ynpNFv&K%= zQQyAr;6Czg|ECg}SB9_6`YMi{w@^8De0#a#51xCS59bMPy_=nU``XP@I`PS$c9+fc z6~6m+@9lt^RTIzen=Udx=6!Ul%<)YJWfVKluZgG$J92cn8TYD6hpM#!=RT!c3fcHR zpPr;9GQn}>y#rdI4o&<sQ$-I&yk6q@eDl$(XS$^;GB>%#2A?hU`})vGXj<jh^A^kI zm%ptq%YOcF->kI)TfgV7SzJ2T!YFXcFPT}3f9v!e+xWrb^DkrdYNqyEv%k%MQ*Zl; z$t8#RbN2rLXZL@v{%lkZyYF|U%slIN_MZYTKE=2x&MBNpGEQE1yPRD%_f#J~d|&>% z+?!QJ{;?9@eamLv-?93z>6_%e`<~g_O{;rk5c}<4$=?sg{|-<5ey@H>;*a`XnVJ-f z4~u2lmw#ueKXUeF<<~#SQ+i%06n88LVVauOVEIAk$quFy`_%g+7?%mL@iLw%U3znV z(yTduHT$_dHayzyVio@4c+%yRY{PB`&$~+&7ti}M_16FL-t&JS*oU>u=wJTi>M!X^ z#YHQ*V;*rnv0n6ybDPM=b*(BJCbisbk=ooD^JGKNlMOKm!bepfY*=Jzc5w33dy{-8 z#Pqy8q8TOe?%lhxH|ynHN)~-yc<<G=<M*sQ>X*pQ-%;?&V|M!T&1`~P#n&^kkDK?+ zzgfz6`^T}fX7@5v7IUWEH^}CcQoVj+Q+Vf-D2w1Uos%YP#)^g^NogCkPU$4fNL+j- zsnx76a?PU|tbYV%xH?K!=?1cKi6@C2nsVik%~`uA(zQXaXTH&tuG$lP|8C}A@8jp* z75|$VK7Yoi_gQl-Hs?Ny{oJuTJxl!c#;La1Iqy<#?>f8e@VZ~Y!NSj19cg=+`!Bh< zY=-llKQGec^;;e>?Kmo$)fe2sv794Na>th~5lt3Op&HFi?~NqB$gbBCz5L@}JHPJ4 zOq=iR^Xo7AIOi|c{XC;>O-rTTr#ppjH=h-st(<@9p4!eZO|vbp;%l0o@BH}p@<hp7 z<+I)u*u7D+dF(5~KYhadk^{yCHW{AFw0j;)uHInZ5cSG(Ug0D2{}WCa7hQTFxpeyj zNz+1;W>=HPb<y*We>o85WbBtX>*D22J4<CEj&*<c|FgJq$IjyqDi>5%tdEFW5plle z?NSei<X2WVcK(05|7JnMnf8C$pL;f&|NfE65pGfzyxr6A+^dSSNB#d4taARGzbrO5 z-L2yN-Y*|Yp4>e#^~BQ0iB+<(HO+HEe@#lh!*+Z@UR6LH*W(*KX^(=Ybbf4F@nu^_ zn~8f%XWNw3XLox^3Mh6he5B!~r(W&a_OMlh?K!Wd@!F48eE(*Y+6LeMH1*u7XBUHO z=k|Y#tWK{pO?{uac4>FD)tUOujfrelIk9@O^+$rfU)+7JblJP+*nj!HKLw7y*ezoD z_oK5$#7zIPKC2q3<z;U=_GZucW&A|q@`)FoSEe5ciS9D(y0TjM_OmecCn=RpTpSL2 z{bepIDrXC8RQiiEFZ}V<f8SYa)|yB5zbcj|)jT?2^tsdJ;5!Sm!bit^rf=_67JmCU zHs|%1qlLdd9ZGrRt@lxN`j1K8f5IOK9S{6d-?X!Zb9H&Ag`VSHS%EOtr!sRV1mB4h zo3>(N!#{y#f>M1UGUmK8vn2n$Y3fT4l&}3e!N2&8&V-KF)$vsoTAwbTczWXK<M^UZ z{hddIb{_dTTf9~8pvYCHzpP({wYD&^%@5K&b*?=1QL!lBmr1TuR6Z$4MO~CO_P)mY zfp<v(@6GLN56*U((_+11TlkrkYYVscN@dmSADx-SdMadg;Id247W!=cH1$B*(KYFx zxu*18yuP!<r!_3^n}ZbJ`U{iFW4^7uu^?pcgsI_L2G(=*-aOM`FDh=fy)nz(h2dRL z+tLtMU&SNOxI!1y_$^Y3`&yc}vSWqzlcSn@E*kQ3`*DRFzniMC^2wjY*E24EJZxWe z<*k(6tK5<iY(~de^yY-^y=#!u#JWoLA$#`P^fZ8SMV`sb9+V-<R7~9C}}KChD2x z)}IHY{eR6!+U@z=>_$<9DbM_#4@`Hz-S)gck-K_%ea)7$n=fAcbz{l*n}+`J?oS-b z>)*b6eA}wO*W_)b?Wgv1w{tQpu1~SgxKz~_SGPTP^3{)>fytlq*yoi_+TJhsxOyc| zmT9X;=nVD6UJj>u_dkgB?Yf|&c=Oy5ul>cdcc|YDYnJ@?>E4!YkzcokaaX0u8~fU~ z%v<TOILP5(+tN7`77Gba^7*15%Jt7ja2{h|MA+4~yQgf!uRQ<e`O|9k?VL@ra_Q?t zcfU<*Uc2t-zV}lYEdn$?v3$L7cH+_-GW$Qi>AWTL)A`J^+0}N|&bEE?X0AKCCuO#L z?{-Ti-z_s2cIC&V`YpQ8^6zcmr}sXG_8Tw$Bh7M?%VTP%&?Vsor(9OuJ*2_yA12fD z{K3(%|6lg<?T^mi`@dlM;`+V+W@pcRW;T0P&C;*6>*d}i?Tyd8`R&!k>g#v*p1*8( z!NTNf*FHW!;j_oZCq4{|lYEqL@5kIl4OfIF8=PiHV>}*qAVBhZ>i?&Q>kq|>73#j! zj>wK^nPDLnAlTlW{>bLck@z#F7S}hqKE7{Zdg@0x$J3pzr=;H-*0r4E{qpm7h1n_w zo3Mtf*+wVr6f4#U%%})Cxl?0T=!|}DtLLIRJ3?o895XDD5{%#Y{>y}`Vaso?c)LzM z`+m7b%_KeDSGn^gZl-O!GHYv{`|0qqH~Vc2Tc2~73rzbxF}D1GXaCiTrBXLlQx8i% z>F_e+p8Ee~gJ5<-7Uwc9i>b@ht{swC&=8>Y{F1HG!>A2L&Yg84C&E}iFK9~<6fExy z{1CcQvZANqvwXnz+p)5;&OiO;TV9V#jmXa_l)Yi_;rd)zKk?VnYve0RPBnj;fB4nC zzy;eyq;y<U`6aem@3uL-^wqpszvh+R(iK>pVUWz1d`I-k>CfLdc7_Q_&2!l^^<qH- z&$>s49?IL>NIt&zsdeXenc{rQg7?e+6|_CRS9E6k(?U+UudY+>ofn#<>#ughk?s3L ziKAtgT9UfAnC(64nJswfOXu~f{XrZ2>m&Zp)owNW_@vdZtxM$1&Vt1AKlIa+e%LkN z+RyZD`RT<!PTeSAJZRo-t+@E;T3xjn>sTT~`!v%<Cl?7ix~{XGX~@l)*!O%Y!<_Qi znP)?`)U7?Yvh>Zec&)xYd3tM3ed~|3a-YN8&yZ8;*1m4v&IKF#?0$UsKh5)anK^&8 zuY^AHIbAcaUZtWAF43l=QYjnf@oIM-m5iBY_(&(%OKDRGqg$~h`|&5If>P?*HU;$M z|57}p!<PQaw7@2DotY=w3n!*Tv7<o&A?K^@BA;=6>*RUIKL3l~uU%LDf}h7f&#YQ= z+wIJ~xm)?_yB|iZzWQeE){NWX7jB*8Zl7hfeWf>_?3EdOU$*gVpMCAl*7JMM-rjmK zYWelWb4(hgY8VrhnPV^Ah?Bcn$WWxSlBqDlFl&NL-!;L+ElZx7S^6(o8+cQ#OENj^ zdc<;D`;>W=EtbCu!k@pK`TXztOW&5Ckc#H}^xEQ6w&bVPQ>$hiGA}qB^(cs2dRnpP z2Da+0GQSJMg81It@OURURl8|*M$KF?nYaZU8j9R&6#wsFJLp{1#jB<*u$O6}Y{mW0 zS!?eEbe?7sUBP5|qOMzPb4qICLZh%Z>=mu1RVVc7l;n!{#Bs39++9C&@kX=kpHY)n zZq0vtprU;4#%ph6%idLgiP(Je;pbcYIr&?Dyo_qz`Et+2y9r?(r)}08y&kY{_wHN| zWxd_I58m49SDtW!Y5IrPUavBlU!Tdpc_8fiq@7aoKeLkb*t{QYTGVEdV;a6y{%As4 z5zn*pM-wvD3X%duVmRkSxLO$QZ^?P$`O$42o0@IoRWFmKbGc8hs=R;PsBiI5Td1W* z@7I>QF<)-}j^feP(Bt=8-}>QpL~>qvUO(&od1b<{Yd5gArWh~YZuO<gvddXQ{C57Y z7xo|Y0wO~+MQyLBE9y2(ZWrp<>a*r)kA4J)<hv%<-DQ{U-ak0lsq}S4<KLs_rk|U0 zGs;-F@*(T})49{mb*I?BR;v1z@Mm-Ka+!~tm)aOTj7}E2y5dp4P87eN$n=`48{BSh zJHNZWEzkD#?{CXyo$GdP)}Lp2xqDvq-)HYvn6LEiFfOcqAQRhFKYy0h%f~Aw8+gsV zwdf3IPTj|4GpfXGtz+M*cs=ubSMjbyXQI`@8?zEbY-S$l-x<uUVOf9iOy;9$XF9Lf zc|UWxytJqBXWN0^W9R*}R8kf#7rFe@_fNx;poSU3_8M$2!v#4ecWs;}={|n~_e+iH zMc&U}2-j=%*)6pAs%(8v@Qc#FmOWty>gv8tnLEq&XYeNVV;dOioys(4luwMEVV}C- zW^#m-x8MZhX*2Cpm!F>hr~9+I+8&L@q!n{dy#LStxc{f{;R&Cwt^6Upy+_mWkLRD| zC+2U;_573h+~(hrKY9}#5^E}JuGF2GKSkm0q~-wKbm7d9Uw<^K4gWof@3Bw3A*K+( zQ!4R%dYnxeZ_tYDKPNXXKm2lodfaWLH=G-Go|33gYw7J-waCdN!TGLO<*r!{^L{)R zJ}KP)OY7C+{SJ1jcV1?PIGp{LX|VjwQsd?8mz|z7BVK2smE*bqgYf4`>s$UV-nc9$ zx@t{ky40FZ$%rXt2me{v9xLIh+isD6%I}G9`r}Gr|9MRo7pKgWTYSH({+rVtP3wu~ zGapw7%g%D2^I>!KOs8ANYHD_8r|b>9bmYzKXl3oCXG?^up5?BeIQ3YuT9sAh-jhd9 z%+UPDx=QBg)%xWD60NLDVy<NA9No7ofa&y=n6~a^X1tvGy-FH=OSd^FzN%o{%ergP zoNhDTaIIwllIKFirmt&xrxwN<b~s~B%y#x<&efNGwK$qb?MS~GvsXO)@rR9iZ8!5W z%xBB~-(2{?(Qtq19KqLR(RcUy&)j0QeOpRN6X(vquf2Y5(s^kXHFtaT+V}Me%U3BB zWh_2-%W}naNt4Sp=GW|&9o-}I?{$dY)=5_0j7v3Ck_FB^vAT1|=F$P1nu)EGXSA+q zcE9_+?uR{x<mok2*spZ-oMf4Qidk|!i;?K&Pd=tnIo=PlIrjG7=GEC4d_H|a;Z_%4 zwy-L*=IZ|T8$JR~=k&H5?mQCdIBk(k`Q<}7s$!pY!=2JaS2QKPlyO(p+IMTkmi4-c zo|W;n|DRNCGmVe=7XG|nI$Pz<y<6uRg~j$RJf3iBW#DV`tLvT^+N!(Xedcw(_nUct zbk=dX!u6{+#+zrYekavrV|(a{fj;-TAlHuQ*DGre2roW7Zw{~c<nmb=UkYx$NVNPo zCx&tNgNvfo%uf`bw2HHwn$z@Xs+Da^Yl!5jGqJ7jlQk@-n(h?pZ+G-HT*oHre@t+; z$T3m2Q`ZWZ6{ft9&b(uKGvvScvpq7IDa$up?slu%oSJ|4#dZHns!rGPZeK0fQadC4 zU0qdq^TMU4bF#uq^EJ;&24v4)F!K@9wY#qMA7YKxx0}UxZLNI5ol$IH{QdK`8)<^N zw;sJq_p5n7P4`;;_uVV>dltkL{5!8L-lG$*_dv17{^7~M->X-+z4CjN9<snFY?0i? zNok+*gr(0to0c!y7!xBl@w2<N^o0Gqrow@f({=SMl{7^jDvC&Nn^0cl>cFypvFiO@ zA_}`0Rd+qv;Szp;;eUp@-<HjZ%qLCD56UgzSa;HMp-RDpRwd0N>(?lnZatSaeRcR% z^L(a$sSrn7KFw0z7#p!n-W^K0n~hY?YHXi8X=c%NH|vwqrk~fzK3C?OKfS+w@r$L& zRdScFgkP%gpIVT6LjRZFZl&#B>o3l{#rEpVvHQ<>wO%|H*2-<O$uGVAQ1;wE&gJVC zpZzo8^hLW32bW$D&3?;ned^4vIenW<cg6hTbgyo7IkxKSxtfJli*Me$pB3^>fAx*> zDd(rJn)*s9v#)yY;>FusR;~Rm@l~ujOgZI<Q)}zLqh?!A23}ikc2jfD{3Xlcg&VqV z-4!X<wm74_PbEC#Fwe*IFL@tU%fD0HIeQh0tcRE26HdF<;^SK$1hbvhmxy~)a9FC? zaMr^wwa<T)OPIdD(<}C+a^kny;WH(VoU9O0U7-7-`rcD#^Pbiw=Ii{4b_&9C7PPkn zzqrr6lA)jXQb1_ijMf*Md-^#UPDN~*??30*q|-0T-B{IUJbUpz;N*T~#r?^fIov*$ zCQWc%mcOsHZaL52K91hR4Rr@LPly*5=GV{={AGIR9BTy2Jdp;oLZ@SM8VqYcH$AXi z=KaG&ikr7W<q6~AHM3lU-3^m|y^!Yewf+3T+4zL>$A8!MtbYD&iqK)tONUmho$^3w zvEa7_+g54jRZi2nc<h$;vH1&KE^|&ec=Xfu7vI0E*c){vPIb=wGbx8_CN2FjGeTOn z?^nY@tv>=%<+^WP?3m;>wdW(l{jBmWY5kh3%yLR^?Y(MwNVE8I)wMUpuS(AG^&Fj& z&{oIx`pvo}J9e-CFg>~G&eZUCs-35OT~!O7FUg-dd%w_}G?_WmHVMv?II;Bs_twbJ zCp%eN6tzAqjg*{oFet|R)|8&`52t48XUuUrF=H7Y_p+DVN^FJqyv}&<3>BF&b<t@b zE}QHJkMB9MYVHs}^?XHr%){@83$-?XzM3kzDz;$CKCPgI=QWqzk&x627CYBF@rRIx z#uKMQ!5R-9gqFxE`!gP9uyf?_QTOP4e8ZQkaDLg^!^xlCL<X|Qw}(sfl)CLbs8}L# zJ3IV`mCx*K)3@JW-*gL0&r`}iA0%SFo^$!fy$@pU1pnBvoP{OyLZruep~jdECSP7z zHy&7RFE-}~!(T>uqZj427wyzsHtXBH<Xh6uxx?<5_@n4$JED_sCbk7jJril0IlDc; zZ^yBl2~BGR1cao2gnpbG)*&w;a_DMtoBujF=bwpRz8@&xHNWER(|5;PFW)ek(!S0; zYK0uv-}nu_l6x8Zs~Kk9EvN|<n|<@b9n~`K?Tb{qV)F0jZsC{Bx)}X-@8h!*g@aZ{ zt__#Duem-o_pRyDnkmvtUKqDsOn>5#7qHP$^2_BrFRt)-)j!IV)R8$EGGm$3okfXv zCTVp4-ncNa_NJhJ|Hd^w$(QoYtE!akjmo#0KZ!W*z*4?rLyGXe=DLpmGJmBXa_no4 z^RX<**L2zITE?6AQQb>#a-`@NNsHH0*oAdI%+@LX$67JP^U;3$3x}l6oE2lf9p~ZB zbw57;+GgLhy))|%ze@XhEsQ%?My@aB`M!g5COFpaaKEyZrz}<d)>Kjb&NDl7*fyVD zw0+I#<QCTduQt6}<11FXH6SC)So(&Uv97#a-TZ3*qkl?$D~z_rZr{MBXQw^IVD*W| zYF9u0Yjk@0bLF4Xmyh`EQ=jd8Jy|>aUYBKe`RC9ltHmy6o>TiBl%sS~A=|F$gi@o% zzv?IA-it%?f3~0A-}xu(*_w;d2g(io|Nh>Zt$)_C>&HvBZ^34vZ547imZ+IMRi1t7 zaqg*ydduAZPHBFo5qUG_Xz<jex{|`Vc1w@{;xF&!xBGcaoBcWaP3gspKmWPb_xIcJ zjfT$-FPo|N@c!99pVq2B+c~k0`RRH~cOm<IGTqyMsUC|qFh1R<>^JYwzAOK3|37u( z;WUwb-JfNiTmPCIai+Gg>}XBdbA5HEy_$bS<;yhQ%RiG()#H4s@j5*~s&A=d<W!zb zMlKJ(NG?j$wdh;aXmPP%&ntod86iO&wx4?*u=wi)ovB`yb1}W@{{L@ZKI(mR-tzy; znbd=w<@aq15`@@<lhV^S&3$BHee}u9OD*Y59p?-7Sn+QZUQ*sM_e=y>M!Y8NjNj#+ z{H7b8_5z!Wy>2wlo9RC_Ama*;_l_go9wB)pR~A2#n|>m-EqLYSg0S<G=RLgjVbcm$ z<MyZ<(LCB5+dF@!xb$xRsLuSDN9)0bWdavxHbh7!Wke=D7V<iCeAdm?^KY10DwsyE ziAkQl?bF?B@2W-QW;#a4biI*yEWgxV%umVsl)~a?hke=4O}Q!LYB#IcjbGf=*wv!F zfHTH@zWTFMGwygXrxghnivPQK<&<uqy`_u4^6x7N@r7?TOkR~0HZid0&FRN~+TLg% z{gx{HdsBXD{GB&SuhzuATIkk0)l?+v>+LJmbE3LW2E4dXP<Qz&@5<6wzkjuPZF!}) zLHkVotUBKt-4;Q5p}il4g{&pa6gDQjk+6woQ9G4vz__f5C#P)Hhi5{Qoem$K88pXv zfmhJIhV%bfAJxit+H}l%80mfN&KlLnVVlL`-WX@TGZy9laQ&w2+*7u%4ks($_N&i+ zR({C2uk`G;d(G_8_p1B7^0Ixca(O?6e#^)%4%#MmX}<B&6|PR%jvJe{eAT*sZI#Jw zuVu?s-l}bpw6olJwt2afe9zXI*N$)hY4q!e(W?5m*%#dliv{m!CarBRWi*}DI6?HD z#yiHXpDGilY3<&?an0}3g9A2&d>r#uPC2+|(G)$e7njaOpKw&!r4#vD@zwszC+d%0 z>0|xdexrPg{>hsKVTb;7{V;KuTzpyU(k`c{l~wcRE1o}fwz+KOlpk&lb7ZpTJ^$8n zO@*nz$$aPE_2pe>(_YK)+={E~-nu)uQ#e%eB&%Wz=aW@6Cg~r77-gmP6yIuGbhP$5 z6===1>O(H8iQEL4Y0BrEESrw!u2`h7vzb?9Pwy;gJ(a>Bj_jpBzx`O+9^GkPaVacS zV9ws9PnZs}KHnDO<$c%l;HiAUO#g{&w}L~uZcPpsJ(0Hfo4dIGj#?j?FWNU9?%m#? z%HDhO{9*3>E3XFz1V0kg^qcv<N@#*$T*vw9*A@i{|FWL^&fK}7=h0--MFwZzDsvX> z`Os-uqZKuKxkReeJi%2*j%ppbIAy|p&)=-i1vYCnS{CH^$?ta-zdf~kYPaYy@ye(1 zv%{xO?a92}BAjtXqvcM|qbRpOTBlj}pAxyVvR%pK#>4ZB(W*%|PKv1ViFe*`KW^wO zpPXNIckb@sw7j?O5y#y&+}}{ve)2_O##TOl^D@z{c}J3KOxH9VeRINZgK~bM^`pja zzKFKFf7oU}mOJWk)A{l5s-2CmlB0XqE=&I(f9Q@-mP@SI295SijcHO({OX@~t!MSg zi8#M}(+4M$mEx^eFDy(yTq-qHX$RBS&(<Ei+pI+j0@%ys-YHnUIB4w<qwGCl^|9L? zYAZy17WT-8yneVKIB-?>tksiVd)`d?{oulqdCB%So=UzqDYyUo>)hk#ao@_e^nAaz zZSnelw>~;8j?G^CHfQ6t!q8=Ne*3>a6uQi=N_XM0DcjE+Tot|M>+RVm>rTh~?$(Tb z^Tm2g{OPS#qRZZE?O3&fV_NZc|F18$#;`86+|1?WarJDBg`ARZNU`<Lm9xT<ng5Dg zRcUi<eeref5?A{hrGM@$^_6=a=KSRQtx*4qGiOcBoqaYs$aLA+qc{Hkcl-Zp^Yz{L zZ<-h0u)W@wu~y&s&i3xRi&AfHXnY{C_IIdg{d_UA*V-H%qQ%>@bzf{vQgt)f&$GS% z?DKP7ET?%I5<II^4+<&nNv++`%z7+p?bSYqm^~p8GCd!2!-IeAl;&CS)@t3+)sLh1 zG-WHl>0f)|poG}eM`o`+8MYlw)imsR=cdy5!v3GX^Ag{Dn*&=<?m8>+bLPF0NqSc$ zFP86JIs5XfB(op(3)a_uOL~8v-$y3z;Lm@a|5*1dW6Ca#(kg4HcqnSMVq14wII}BH zs8Hq4NBs6r<1LC>#Nu~49qZ?A>aMU&(LC?G*|c$Q%fsm|aV@NT5lsIjuJix>-+$-s zu8Ld92`LE)2~R9Hznb&sc}3mq^*o<scoYgAK6+;&@%Q}m_f~#|-$HrL@W}A^@Hoga zESkgD%)r0^)ffMDdv9Z-@zeR|=gZG|#G}b`h{vPBlAB>cE!$Iuid$R5>piB1OVsWA zJooogmA00gwG(qM7AcBz?(8_i5i{j=yXpTOJQD>3GbbHRT@;z!(WADp(`E6t4BjYH zLBWaLEgrYCws!qJq2%JCGRI`{wf?QDuWo*x_d9m?o!IHkZx0<VKKJw7&wa)BzE|G= ze9uAb)4};!&3`R*16SPDD6=+re9w8>Z-(>LyeqCcM=YC`>}Hy<{#O33J8vZ(Z#LR` zC+5M8D!bERZ=c2Xi3&P?Z<Oq2%6!uPMApTA<HU%p=f%3WZ$GsaoBHBwRlu6-Gtz4L ze(sugf3M#;hkezvYecs;s-6hH`6k}1|4Zg4hEL4XJ6c@?N_X9Se%_*<^-_u0F6NaM z>zplKK3x#J-c0bj*tr)|(}LbMhrNCAq|&PLn((^?nU@vQeZ&_#O#i^+8?pSpOQUsL z=_)DLs_vcZ<J|)^ozDAYJv^%MNlNfabm!HG_1$MDtO-w!*?-g~<ayvy^MzOT_SiON zXOvp|NPn-pv(}_M#P*uS_Y0@r&wujs@V>XkH~&ouIHIH!{cMM@jrR#lnTqaeNyoLj z&)?eFvrWH1`$>&o`!AvUw>K)z31qfO_RzhOUtr&U!K=EPx9Unu@Va#i+g=y%IV$n> z-XUK77K87`sc+}8#I3f>uAM0O)s^Q_d&P_69LN7m;CQ!MQ^17(sQAYX`+hWK?_c!y z$UDymOBKUw6ze+LzdFl&i4r;YOOY{2+~|n-M}hc`^E#(1pU&<)vpHJ#%+W;`W9J<I z{MsP$%c;M%Q&*<1UTGPzMX!qcNy6r<b8kedCSP7V<z>fLRkJmAlJbiJ8;^8mn4Vf@ zyYGEgVpgf@rla*qhh4s1OS*APG<W8Sdx2LfuWm6;_A8N3y=-|qUB*l2%*n_ruPgWH zZq)ji^myvNnfl%_w{I+(mXq`IqpsmMbFu1Yi#jb=o_%NE|NO+W>QyV*@837HJ~yv; z-tQS-XYbd0S5vf(>-FU05o-4f+$Sg(U)7yrz4X}x<F=yjdVVXN)7m!PdY^oQ^I_9w z#<xB1!yd8wEOvhSaLVQ5AMNHG*rNIHhkwskfuH=xe)twC7oO8R`g_jo#j_?H`m(P} zgT=@GqwYuP-`yQn+wv#%3sx4%3S`Qx?zM9^E}T^BcK(c@(Qf0(PsC4zclhn)51lmm zip8m`$)BFDNc?YlwYlioMXr<Pugsdxam=#3w}S7naA=Rz^10<F!)`ei*?wNztNiSC zq+iG6n-w1{m*vM_cIJ#x`rh>9*-jJN*UMMLxeM(u>GWG`ck=y&`Q0z|CMH|;WS+~i zntp$d_WnQNHuv`!vmbvt+5L?A_Gew+D+}-0SQz&Gv8a(ce!MbhAEQo!uW<5L!`HLo zJ9%ZQ9e(~h_pSYjmfhrAOAp@TXU#KzKP!B3$5Hw0DW2Dy{vO%ztM9Ge9Mx&7+(dL= z95$>xZ~XMipCaq!@kLq_n@^lc`?+jacX!X>BGWTg&E=b<j_{g3VX1VVuWU7!)5r4h zir~d_im!iJ%^9*<@!4m_q#IwN<V=+3%s&2cwTu4sB^HmDdCIzqe&2h1y=V~U%Intz z*8g~$^#3ROwsTspU03+eIJP#X7piQyeCNAX!2#_=-hh51{T{`9b~B;GeBoau@<yFD zcV8DvDBg9B%}KTKkzN^i>dBmK+io;Uy;l`k<-Khg_ixj=Yu`qsKVAKIhXdcHYmy80 zYFEUsQ`+<;@7UxAp8r!Bvlo|qXV~^q)#61T^F6OE7xZ=CnS9@Hx#z>VRZo8J`gzYj zSN6D+pL@jOw@R}DRlerv<e#{^g8jwx{2TwoFUS@B*WdB@*)w~`%$0_@wUQ;dx3>s3 z+jWJqZOUA(H1}*VZ}9i)k=gO7Yo|AfK8erSd-wRRi|e<q-8cWrQ+v1UqR*S-r@Q~D z6q0AHx$pk&r^@Gw`$wKtvR{0C<+I$X=YK=<cXecC{dIk{y<KYVqP*ol<Z>$oR<F44 zrZo4$mG@?^zH?po5weZBeqxtN^Z8Q}%BeBonUw;%GSbRY9bW6Y4Z^}c&tB@%))f%G z_+PDZhrsfQnjhU_^A@v+3042KexLLup3kVW`OSUB&5zp7c=z6`e%4UGeW}~+jfS5~ zg`P!Sp4f8#^Um24zK3E1-NYVRzC7dla?{!uR{#G`{<^v$+5ODX{S5L~A7_B-ld02c zBhEjUJAVKBUKz#9IxQ1U9)4kwCTBFWy;NuF5_QG)${7Mi8{KYO9lo~hOpYYqv&77e zHqyO2l4O%ymj+JrObR^Fvg?_}^R4Z#t?K96`(6LKukQZ)+IqYB-+zDpcjx|ZuU~KT zU;THOnexkHn^O_TB&if{-not%C#J~QPm}t1PebyGXK!cj9?ld`-z0`?zc;46Q|GB{ zi`?==hP7+yGrvoh`xKmu8c(-ch+m7|aP5*~R;bEOH?Otop1BqIo8z;%^P{)y*mzwp zHp@S!`iIqo`-<VOJpLH3Yk2PWq4J35+{o9DSUcW#^{xAIg}3(nqV?7r?{>b7)Bd`^ zt>5e9W!?*`(<gmN&-%XPTKt8(+OAc6y?Y-oeZKN;yH&05k~+bl`l4TpYZ+wp1CkYf z-?O~5!2MG9?xhEx@G9nO?B)B+ux7u@I{r$#HT?0+pH%N>Wx8CEU*KQ=i&sLam!&a- zD@MOpNv-4W#V-OpP9GFn<eXOsUgO;${*LKGwoik|MeYl)Bht+Kb`(D8QO~o9QeG+V zd3L|y_RfmWTstSfOgEAVo>s)tF}v;idZX1ZkGSmgHeO-AIAm6*{pOk_86~cZYt3Rd ze@x)}`s`6C&+}wC+kMA=)qF}i8SU_fX-@=4oO`g$pZp(Q-4Ej4XdXTMS?zNj_q**E zr#Bpbe_&%v)aeV~^zQ9DzDCG0{QcvH?MKuv1`Ab9`@CD`uKdL9O@F4IDO0Vob3DKN zjJ{-FXy>K$ip{h3n0{DubaCmCwds1&GyXrX*gP?6_KcHhRX3Xa>ZTlu()ty2@w4h? z-^I&wf9&Ixy*=}C_?*clHMbk%tv{xUS60vXEcfZ#rv3b~@t^A&qS!wgGVAYiJgxYw zYDUz|9|bID-8;`e`YUn%_{r1Xrv2;OCj8=*;(L+O{fF1be0lzf_sPR_xqI^yzolQC z?|+x6i0g*7%DxS5R>yy8D?PKh^W1W>_=@;5HeDZAvGD6ZI?tb>cl5dUiyssJoc<Bo zwoUtr?(xN3-_}hmo?97qD7KT|{KHSRud80HmFkQBQY_v7{y;4A{n(;<wRdvHt6N{& z8P_<RJ8ZI&@5<!Q+_U5^9^QZ9i^RL*{V5_0r&4sn&kN5p;=5_YTXx!{WJ=+eNts8g zh0P_^lV&|TZSq?Av5d-Rk@si4Q|IYTDvZ>>tQ4{=RcFP7%%jDtvm~#(%)E9bS62P< zvY=(UKl4nD-d5zr>s)U9-sjA))ylHj)JRTlf!{LYJ+T)q_I^!QPN~{)s>1Emmy(GO z>kQ6Up8gVds?@VCK7M9h!T0v#+&m{HR5spYdv=OPsV-pGnFRKkidQ7M<|VG#J4NlW z^WOctm>;zrKDaj_PVL=Oi3Yp)tlw(PRZ@<3I3BrQc+K(c&x(ia)8%b{9DeKX&-jLY z$%&qxNt{QnJCv|odaqF<E6V>trQ=`I1=*JT#hsFS<JBbgH$CKQQ)fBv{D4PMf6Cv0 zABP@rEq-pW<IqKszHbFd#}`;L^{7s>KIUR|(&s_B)7mpG*VGrj7JcRK_FUx0a)b3N z*Z4X=H~CX5dVg`pe8+odSY}54km&t)^Tqtbzhg>{88lZOIp?0NvrBBz%dc@pg&AF^ zr&KC?rwMNCzS*6wJ5TQZqW3K_Gxs;E&Y8M2L2~2!OOLBFe2?t^e(@`#TusNhryuH% zNJclBYhTzm>AwGohjNA|J&jgB_|qd7W<1+;f76Vu8UNXTzP_-n@z42-`vl*cEld=i zWj=W`>pA@oI;{NL56$KhFYmm0O!7uw|Lv8N&sE-YeCL<-_RxIW4{w(KueEuf{+7Xt zZ_;GPcZ&Nu53iARd>vS{`9funT>s_k+yA6B3xAmJlHAvSMzdt@vHO<`irZ({oI5D_ z%d-18>lKZZw=$bG9_5G{o`3%{?wtRmoeb%Qd#4<z7QA2oV9j))`p#X`J9hh=HA-3+ zuv+Ha>WsAwkEPQ8sVD6)KEu0j_Ut*2wMy<gJ<m-mX@9?f?QePKe)l@vy><)UIlsF4 zFw(a8H|sk0FP~?8{`8(Ja<Xc6c8ct^6J{L~{!V6IF)cSj<@JfW#YQ)eP2J@C>A!!# z;gf<D%@Pxsx>9HVYPh?}e;4B`bMMKeeQY0Wr|RC`Gh65X@jq>1ehLf=*0S!@jcvRx zzo1S#YuB>V+xn*DKIUF=dzyv$t1ZRsA2;1`-sZe$jrG?%<|oU1Ce)^_%vo-?NiO5V zgT2O5yHuEKUU0>4kK1&2<<;gp^R7I#+q5?;wR-XM$}L}>Zogl3^WTT6k9G|=8o#`p zt7+YFFaFE~**VJACLv`JE7$PvIehc8>vZ|Ae@=XK-fwUDPyRI90{sPkWh#}8at(V9 zL@@l<NRNCcVlB1z;1_{2RR&v~KPa`>?Rb`(A(P;ic%;Sfut5!{vf7+~haPhHGyM?x z=TXM<Uhs(P1K#p(S!osPz8!^M%;j<)pX@$z-=k_4!+Vx3ekyfBKPR{U>C>z*6Wy2j zV(vMc<&%Y3^F?gWE|@;^hf(+U$RCovvj3)UEVg0%T|D!%jrh&$7Q&w&#yjk7J#y5r z+4ak=iv4e9pLvvfE|JOR{enc!zdDbn{}0bm`d8P$?m1`j(>Z5F=PaC>@qfy$)hl++ z`nvVWy2Z<RKjgHO8_VS;+PB_V`yto0Tx;*LN#9j#mp(jbwqyIl%VlYQMQi^2PrUrG zo;}8T=5f8O_sjZipS)G9*Wdfb`F!1<hxLNLP32@3TyK7oa^bMKjl9$0#H{p5(>uSr zuP7Dqb+3GuxAFLe(w^s!12^3-nzw0XX_D50f1b~(g>=<FYOu@u308Ogy?o}E^#t$v zl~+zBzvr=?llorg?~}t*`=_(cnacD^<Wj!ktaBe@SoXEQw)s2fxlP=G{-i%T2Nw%H z3p*6K_r%W!cAJ*I*wMmnf9ZW{L2Fg`gQxWp)vUfxUudT9oipp{nfF>7!ym4FuzU4_ zYo=df7aud-6082r>iqSY2mQZ<oUGAWS<HM-`osMr)3x@k)T&wk$a=-H_N;v~vwrP# zy{Efp-`SjZ4{pjPWz7iXy?-|L)g9IU=~;IduaEkcUH|v&Fa39mKiX}sWRRN_>^`?@ z%eBQ@_r0@sUK#m-fq{X6k%56Zo1ut-9mHW^Vqj!oVh{rfGhP6RRNT57bvsWvQq<P7 zN}{UGji>42fx|1Vc&O-FzVv(X>=K8H|D%%j!bd)De2n}1Vz+hc?e1AU$EVF)?jiFJ zp^8@bgnbR`A216D{a&;8{8>F~zY7^GojLEVO7(tk`u22=*3v7#vz50ld(pq|-Xr;6 zQNj6_MK8a0sgHiaTN>}`bU!#gxc>^9;P;oG%3saAko~Ij*X9eauRNdcl)u9GtNz0G zE9bA5<^J3D>+P-gt^c~JHvMyWVSY9KTD{tr@T-@<)^pd!@7=yp`^)XD{Kp<I*zf<o zd@R4^->#~inZIhB_wKLM{bKF%-|@x%RpsXYHNM=xGWqQJ)_=Q$X1AR`e>J*IZQ=f{ zU)wHZzq-5jJ;z?ZFUbqdub6Moa=IV<K6h`@FL~)#yQ3pF&)72g--3=ySy4wO2k!1z zyiNJ{*@{VD9_5u>@wxr8q2v4`&t>02mmPZ*<r}i-SJnb9qXTj)E2i6tdcPM84UK(O zy)bFfY!jvB`!-5l%3soV#iR7ayOw8{?&scly-K#n`=!0o=NY0!F-N~h2jBO8d2`9c z;9c)daOKVl{%*5$8;@?)))tEs8T<6sMh48E5@mJdA>YTJJ$Cj>zw%vSU*$H%e(}uy z^xJxKdyktL{MvTMh0$K#dDEO1J;z)b>zA9DMO}EzS;ezrZG)Zr64~N>_rDzF?ORS| zORfF=WrZoLc(se|;pgfzo^IRJ{z+}ZR^Rzd*WM(#%zknG%Cw8S$`3cst89s6mnioO z@7#O6g^gQ5ndyA&SBb~U9@Y)#l+M^J-OU=Xy88W{&e_3>mK}J;IN?`N+EoeN74M6q z{%+iL=s(|<1KMvAwkh7#&RA-=wPs_S$jY_RAHHyC$2qQV7V_`DqBvn`rOiUgwg;)k z4hNpCwK4xS-~BwZm;0~Fi{j4gy&NbkBfcb1w{dd6t!-PnA$#zeldC1<W~=zlt&=`* zQe(zWxibNg0-|N!Ke@xrZAu#syZpF#%Xj5duHwyZb4r7Lopp%4q`vUAS+9rTY-fLI zneeOb3%C!(n=~Jt6Lxi$470rT1G}a1Yk%6^&A;$t*VKgH-aoHvTYJw5s<Cg3;r*3+ zP{{qs;ayuj?{~iuxaf0hdVR-6!^~_av+FB%h{@MG8U8vwHK^Y2q<ePC=Hyc;rHgoq zwxs@65xjk`Vv*ykvm93oJJ$Z>$VkZ7Xi$2)pY!K?5eqFAS1D$z!x=WE7nkkVXPusW zL@utg@}+{Zp-}I0^%wFNYY$(QsC*NC<rd>JEjjVvU8e&Ve@H1#wtg_{dFt(BCEL}N z=Y-w5a@j?1E%S4G%|!w8!@OKx^%dB){E?Y#vFS(MaT%lc)5GL*3zk=Q?cFzXt1Exh zg{q|7ecJ**aBW<`tZ(`$^Iz$by<+dLOG$Pt-Q~z55#{&igq7R<ri^3%8S361XBPKN zf2@}LLcs1?n`r5ileXGt+<oTfU*j*fohm2lcx}pyBindZF5ma=rbqgdB+Hw6!XXyH zv*mlH1!pYR4K!)iJ!@KA^>$%3OQ-UYQz469ZGCIWGGBAc3}xYMX#&S3JSJQWns|7P z#UY<LhC(ih?PbZia`zqc7tiHBX|nQa$FnC);jy>3`G_Z$m2CQ1IDhBq=bPd?9;|z@ zh*x)J;N+dNl2tU$d6!skt=JLasr<C6OhZHZe3cBtWSK^_d1<`rYwmOANHGh4o_Y7g zi|ZoG_)IP;yX-o@e%|lv9kRj^XOHZkcO&VZvRaVs#`bg9B%WSvShqIfy4xnRM@d>Y z&NBT;H7R@b@ln!}iFVsp=z4vbS1IbxwCfI&UYtxonAMUw)lT!pYNbx>`E~BF>eTDb z7v20H^-nzVVM%KF&L!<uEn5xp1Mhb)zVz$w(u&r&?CxW>QIWsd+GQh)m8#55H+(!8 zV>GSrA)B(Nz~R3;1iQ_5S>5)Gn7Cp>hkU!~%=eND*T%|~Y^&UHsV{M&F3+l(`tuK^ z=g#bS>%D$`^?}*(*5zJnCf(M$f8xNlk3aKIbg;xMDgJuL*TN{2<GT1Vzl0Fo+u{Yh z25$W~y1gt-;^jKuH#x^&d%QDd$E-D{H=hs4l0O_TJ@e?%2A+=BUE!id%af8Dx4mu+ zac5m(n!G*Gx&3OJ<kMHPe7-5(x$S!AUeDBLTWzB+>$y7}^}6B6C+&HEU+)R$7e`$! z-{oqZxw&EokF48!!5@2_uE{C(`x%^iaC3W}=q~Amt)V(Ioo`J%o40YQ#<tu!`+o<8 z^W|1E?%@yEU*-}WeqsK{(?9oqiKsYfbK142$h80Kh0|iMvyR_Bc|}7?Hn=S#>HoC@ z``-TkAmS^3=4pR$fl15uoqwg>L!ViRNpE6vI~1$B;_%tLmh9*I-kfu;ZQt~IbC1)e zEvrAo@XU67mh|$jS8%mnLe_)qm5~*G>spihox|DNN<V$Q)OF$h(gNGrdTTc=cX<6K zw*1?K`$18CVrll~-IM3JJm$HonLSPL+SIvWZD)SpS(GNe^B2q2j`+oQ-z-)>SRqj; z)XC7f=H%A*AvH^M_(F3`X7@YnIpkYtEzaFmy|aM-P)%m_SDX1ao4=IDmzUl?`^kL2 z{?DXu3R9)a6b;MXHy`-z<CDbywR~yKwSt`+9zEc)nmFt9+h?a&+lRk?ZnSuRG5718 zdKF&{vsNu~x^}betwf~ELi?$Ao8o`+23&k8cspok`QFWY8n?_?^YD4p^5%^hB|JCJ za-It?IVrg$=bPdu`|YAdvnDc3j$M<sCi9xH(2Sf@Kb{Di>`#i{V}IUd^FynJ^LAeH zU-E9B%lXxpy0W#VuKPS+-s8)Oun*IA|2P%$!#p``<+i_n*|Rm;r_4|CpT1z5-kzG+ z6E81Tc$)EizP~2!$Dg_1KPF4(-V`$rUHLGs?Rmm~{?{)j+ICBJ%M^N=p6igQ(lERw zd2_jVPv1t{atYlPmOWel?tKxQaqZ1{cVj93x4U228FCx-#UGt|em9SKP1A8pOPl2d z&(;3jd?Zkt6#c(+W1e2=S(jCnc8r<{i*IyqHCNoHwBxd1{+rZnS@pQ){o0-X|1v!N zY^r$v`~8<U`;T>-+H!8{s`o22=P$ZZDVC64In_Ac&@esqYDnr+TcPtdt?iOAI;VEL z5$~MS7PG!$-ox<ryrlx2-C=uP-g)!?|D2quv3{rD75Q--Otator}94Qs;6h>ZS48* zMD=S<sb{&c<?Z*ncU;eh*>4X0`X^I2z2?7;|NC>_Lg!Z4D`{@gIrH1w#=F@6=Bx_4 z3qk8wJePbY`!JT{@19kTh0i#iH?dz?RKCx5=YIi?n%24ZykC{~?X2iC{&lUmUg^A? zQq1es{0q-A_pDtRf692HT3W7vY~%G{o1d#a?QNY-7xK;YyTYCI+u@q^!oX*q4-G34 z{i3hD3*+5sb*QV&_}Uq}lLyLIn|v31cKJ{E0!`of5qA8om$gckq~|@fd}>)z+jgz^ zm+jKJKX*29&765#_(Xxn_sD5d775-4?!PO<esNaqQP>yt;E{;LlX;>Z6>Z;>zEtde z)t-@hPAciC@fE|gX|fkpKQH|He`D-U&Y!O<yix>=&bzaCU*Gsja!r8n-SDR~m#vq* zw%0j<HNPa};Ct@u=E%CUISYAD86<>NFluI9aF^XX+hXC3<36R<as4*V)u(4qzIb-p z`f95?(=T_=`qdG(ma}Npg#ZoK-;K}idmgM>ck27TUb%g}{zuw=Ut7eRkQt}F{z0MX zmsN-4d{?(RSG?R<Q1|ZPi5nkd0&Z-W)B4NwUed3%LW&i7o69l|GTS^|$KCF`x_9>T zr!Pu>f3J~Ke*P`6|82sb2`iqy@6xRgej|Erag6Wj_f=an>};>=r-TbXoZB4xtKM(E z{N?Y#TRv2~o}VCWnPmQSu5`Hh(u)4}^B>&G(y!~~zHPqEY2>D}$Lynxo%_BEy7L#h zi=~)NUKtqqhyBw3|2Yg5w{oYmR!F;x9lu}w*yGreGiP2z?Y?wNE8DR%*gSLcj?5sB z@Px?DHKk!ebC#SrQ}9&#@zj|!f1WziQ-1y1t$SPd-kqzS`8s=_{;&V#>CgV&+ar7a z924W8f6d?bGdO=x|9^z(J$vJXfQAOK84Q9QPTE@>txFu#OAflsU^#tY(*_wGe(eKY z8-&*ItUj=6gVY+n>;tnlh^^s$ePGuHxi$RK2ii6W=J3ouuxx{54qx<vX%~2-9r=$q zFp55!z`$Fzkblw!(;Vj8hsrkCzG1L-;wmvXz`}jWKysOby-(}h1ctJ<Oas}n#@Ix* zGcAz@9J>$Z+>m{CAm#@1x0byL`7_vmH}vWj7|O7<AGR%Et6_6Lz*(R(hdum|ss&?T zqxpjX3sGf>*2fz~`<mJx$mTSEeyH_>abLUqL!}*T^BRsnh&tgQ=GP=+!&+G(Gq2_O zgUkxHd9CO7a_!?df0(;KR^)-Tg=Adg^arUDZTb(hEu@|~3yK}!n6iLJyn&fJQ6y%C z1MjL09LFATNAP$ja=zjIeYmc`I);P&5MzOW3{U()^8)p4$?RoG;(kXwKWP7HJN;nO z4jDcE{mKuxb||fD>Ck?xwL@!N+v>+sJJi;-W<R#tp|_6R{^0o?c6klbkKA?`<~7ZJ zl(xe%uQ58wJg?PO!kM+MF+A|7g<8PjxHpGY@_KJS*tSD9uiyFr`v=8$9hz4zItc6f zJWiR@^w&bP{1D>~xx52&3#I&y#}<UoX*4br<9n26Azj|y{~&ozb8#X69pUeX_7=*$ zYc@+W=(arbSU{{mqT51VJc0AwAwiwR&5J*9)^u@SJjxZev8}s+NBpr+OxN#6bvx|k z8rUB>Rv5@NwLeO%u#jtXe-v0@BG-KUQDKG6yax40o)t#(nwCGxtgxEbSbxy?qmGUA z`GdtDZEWP@n!kTsU%?pHA^z~_2emz{`G>1NSncVa{$Oc^WL#hPgQ*pwalQ42vp+=b z;ah)P`h(jZ&irH1AHw$V<{!8I;J1hS{jur?GJC||AO8K3u|`1tQ2R&08WH)!$3Jq` z2+cpV{G()z*!;uKKeGO@-q)f3@bnL^eO>DxzW%|suQUJQ?H_#my5B$i{e!WtL;m6M zADnev^B+F{!CKcD|M2<`-n#Dl5A8q9|Dpd!uKs}h$NN8o|Ml#DQ2$~75AA<#`zQZT z_flEWsus|)=!#eF6+hW4p0Oqq)h-%s(b083eVJ>E(pneo%UWBs*1D~}EVV^#t!wsW zt1WtK-Ctj3+oG83B7IqHi)OCd?8{<XR7)?1U2!%H@>pu2>ajTP)nb)g-`f|qZIR9O zx4zIfMQJXN(aA+7zRNVP_y=dIOD&k2DdoF7HY0qNqj9Df@1;DG*=5TuO{RZaV4JCb zYxc8?b}7Mao2D$b;SFqTTj}vRlW}TB%c%n8J1%^8xV9fWTwr{MssDiD2L&0<@XH!D zUfd^Js~_6!n5`AER7!V|VU&+|hUQ!E-xvRtFvxnaUp!dCA?wwC@nH#ztf%|MizPg= z-p4O~EMc1Kp?>jX3D;b&<riO;u>Ea4w`B7J3#-}Z78bv>v6}zSOZ-A>iD0bH^b1Q1 z)MDAv4@Z8`jr9vZu(W_{4)^rKodr^J{K7AVmYDwSUAHj%rPZ!^c?+aps_mMYw=nvp z*^cJC<<>9!c6Gm7R{bJwSO2@^>@OU5$jdEgf00<#BDeJTi^8g=c}teR$gFCcxAggo z%BseHe)^ZZzZmUxT7N0~i`8Do{7cba%=S9Jzf}FjuGT^RlKU6KTBrG!(!W^NI>uiL z|6*F}eE(AU7ye)Bf4lcBmw(~@%lxm4{bl_x^1t-|dhNgX{@%B~rWOI+q^6FJ6&a$r zi(*SU{4T1hb$KR9Zd?=Lr=uSxpxrg~$f+dJjjJMj*XUgn$nM&D<W`dG#&r??YxK<o zq`P{L97_`3xblWij@~wb=&rntQ(p)gF60P3;_8&KDEv$3k{eMu%G*S5cfLK!m*hTC zXqQ2Yrp`pM$wx&l>M!e>d!*q;q>u3Bqk2i<hR$b1HXm7V!}pBX?rzJZbvK;fXnqr_ z?ygLdPwehF(KY8pw_>2c;YAwHx>*;gxVc1HB!%dRtXt8sYDK53?qxQ1wi7c1*G}!W zwOuI}wt1`7vy$+v#Z$k%+A#Y(d)T&@ongz*m<K7BT`N5m7@eguweWNICqe588K*QW zY{gx2SIW9=dy$r{?7Z~PqrRNW+odg+XQglcS+v#m_69-Y?B9yTK|cEXVtb=_&KO^q zbf8AzZJ2SuzQo01%O_5k+L&^rMnQJ6v!|$&r*GadEtBM*q8*xCt8W>qnpEw08NDne zXM5_6-<@B=yO+k;1@WldI{#BVGF7JeYR|Xgb*_3huLS)0>8t;HwN!Tg^QNZn6Hck_ zo}-<n%v`oD?5w+2V}bbGs~tQiUQTDql>G4QTF|FDrOQuN6lH|i99-qP>||hS<d#jg zuR>O>Gq#%3@ArJA#Y4@by4Omse|Z?SGhz4EiIZYimsvhseS+s?iSrp2f31tsGZkm9 zn=*4#zUqX&nF|kv91~YN_{Ak^)iHjbVCBsz8&*wm{8^Co=^@Xx^aI`50eb7A6olFC zChas>`0Rff@4rO9tsg>5CdeoD%0GM)uq;{8Uj4~*liHMZbDm#vxb@s@`ol|wr#Gx` zpPD{1M9oLO?9L|^^&hf4b=m*c=a~D1t?N7Z*rzY~Sj5h#Wv8UlpI%M)By3b2`8#6r z8qKh{;$?y}bxy}}xZK;iW4da!=0>|~D%o9AZ-;sYKQhu*6-<8mFG|NqCdX^y&!8C1 z<e+IL<p!?L6|LH@@rHGWin$qDs5bwWo-^s-V;<$8Nf)()#LN}5{Q0wcLK8zHAFq+h z*3XvDo@9D-)n=(RMxLg}3X^4~zh0_Uv(~^pvG0&ft7X@mEvt?xZJXoj=H=IQ=cO{M zCijvakBRvmCss^ZHD%Tm*Pu;7ZA)}=MKsb*c2?gyowZ@s8nNuCte)S;ckI7(SSq=9 zvsy&(nq47NZ-?fETh2T6@rvCw7481;%9@zO&`8U;IggLR3Dt_4rsL`sbxn`eEB<lL zt8aQf|H02}oA}=6s|#&<A7|RcJ^m=wfBn+Lo2=KrnQb!E-29ZySj^-0n;66Q&$N$v z-Hy0>var@>U;j_fXR0%&KdDsP8Q=BUyRc64-TX)YG}nc9y`K80YN>@Egx+DNxz4}q z`SeFWm%fTQ=bygsT+Q5{R-a3sy*_h&=6d6Jbb<Q``wrGL|782j`%L<b`HXx6Oo5br zCu=7ERQv4vZ1x%RnfXTdF$9wK9j)p9DfU_SS@fChGx81ZqYK!d{Zpc2<gWKcwedsj zvgI@9rB%&(nYnB^^R7$E+w=XC*Kn;qC6(^GA#2UvHMMKLR%os??33=^$}h@oYCeCn z_TidtXU)u&TFRkrYL{}oKkL2UdDP)n+niaa*X{7gySjGjq8k3K;d_$3BX8AgG|>6} zd|S~(|M$Y~x!0|YpS7nPUh?2lZb{FHg{5iB4jr#Me<Hux=ksla%O_MWpHK-tuX6be z7@bi0eB8(AvC+v8tDmm&PcBa__42Dca(ZdjZto~B*Xz@sdS*_%SaWpu?McO_TE$jB zv)bhN+<ir{ZRxtr=lb3LEz~yr$@VqG?$C^ygB7c`KGhC=e<beg^FLA{?cI6n&aQS$ z(8|5HHX-QnTt~|#>q~y5Cft`iGhaXDLW=*Dve@)BW~Z)uMHkF1KGwuMY0-zSpo+*3 z2R#Cl*;b#-+IT8;@`rB^S4D5(ma$a)Ztrh;E$-$#?ay0#CQtZ1eYs)SJN@s<suQQh z^oDN`oBY?rciQ^tr>|?@FYa1;B{a2nv)Yjhdlc_4Ut6+E`Ny)J@4wiUUv53H{iAq5 z`MKAzqJQs}W!Har{$}=rvsZJ=znb@-{rC2P$o<^%FW2K!?v_c{7nI(f`?vS;=JMJ6 z2QK}r&Of~LkK>tbt#6NReI2v=+}8gGw!V(BKC<=oov@#VcXF%G-~L^av0<&1p=h?n z)`vp8*KZe`Y`ZLdE@#KFm@jTNdj<XTk6iv+QI=d6XBXRQe`eW%mt|uA*2i_d+RmQ- zqsroFb7`yGZ1GJ`O0^1?MtR?{epH`y?ePk?+8wuM%)K>Z?yBF9wN&%t-)xI++fz`) zEv0+itw~qI;GftN>3dBz+S?Ug{?XNV@jTzr(S9c@YgnG6<M9M;u9yQWu1Q|CT6`-d zM7k%dIdHA<Dqpv)Cs&wBTxC1F(s+*5;Y_1BY=<)qAS|`RnFclDTUXzW+&$^N#M#}h z?(-hr-hA#vhs_=H{PbDdjrW{<eyZ<`jzL}8zK3UOw2dd9JFoNNdAit_$un8Q(!@%5 zj6TO^O#ZHac=n$9*z-CP`o`SH*k@J>7dM|_dYt}D`rMiAM#eAyoN217OLMfJ8JUop z=6GDe_<pO=XZ^!7e_sE3rs<=R@%=K(ygUv2Af7`vCbn+cSGhCNL;pWl)AY=My68H$ zo1Zpc%$wd_b7Jde**|Ar*zOMewsAtZQylNliWAw2_oYA8D$eKm8FJ#aVtz}_u9s5- zd{kvNpFf`*bfQ1IyY*Jm<6Auevklj+Rlg#(u3M;UWzYKHj5(jwA5U7i?a2-^(<@@@ zHi|vUd|VOLvAp+jrs6!azU8eIQFE_{t>1q~ZLj{fy!_6dTQ_SqxLBQ@`OH-#Uw2CR z1~#RG^L_k7yjn}QOx+q3Z@sYc=<CnF<d08iNnohBWqQt<?~s82OMtbX%yZ{Qhjb@t zuISmppxZg&l7d$BqDKNH98z8ur)O~$GWLmvZ7BKd7JO!MfA|A)vxZy0PW-ez5@%)4 zEX!tK%`@GA_2svDjT>Y+wzpj=<6kKJ-L=hw*HLMcu%i13W=F+OybB#xh%R&y@pfv} z5O0wRj6B2=c)tF@g$q-!mFZub<34SN#xG?vsq(kK&odmWWr#6w&|qK;S;O^=fdK&C C0mG31 literal 0 HcmV?d00001 diff --git a/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro.css b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro.css new file mode 100644 index 0000000..99e4fb7 --- /dev/null +++ b/public/site_libs/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro.css @@ -0,0 +1,39 @@ +@font-face { + font-family: 'Source Sans Pro'; + src: url('./source-sans-pro-regular.eot'); + src: url('./source-sans-pro-regular.eot?#iefix') format('embedded-opentype'), + url('./source-sans-pro-regular.woff') format('woff'), + url('./source-sans-pro-regular.ttf') format('truetype'); + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: 'Source Sans Pro'; + src: url('./source-sans-pro-italic.eot'); + src: url('./source-sans-pro-italic.eot?#iefix') format('embedded-opentype'), + url('./source-sans-pro-italic.woff') format('woff'), + url('./source-sans-pro-italic.ttf') format('truetype'); + font-weight: normal; + font-style: italic; +} + +@font-face { + font-family: 'Source Sans Pro'; + src: url('./source-sans-pro-semibold.eot'); + src: url('./source-sans-pro-semibold.eot?#iefix') format('embedded-opentype'), + url('./source-sans-pro-semibold.woff') format('woff'), + url('./source-sans-pro-semibold.ttf') format('truetype'); + font-weight: 600; + font-style: normal; +} + +@font-face { + font-family: 'Source Sans Pro'; + src: url('./source-sans-pro-semibolditalic.eot'); + src: url('./source-sans-pro-semibolditalic.eot?#iefix') format('embedded-opentype'), + url('./source-sans-pro-semibolditalic.woff') format('woff'), + url('./source-sans-pro-semibolditalic.ttf') format('truetype'); + font-weight: 600; + font-style: italic; +} diff --git a/public/site_libs/revealjs/dist/theme/quarto.css b/public/site_libs/revealjs/dist/theme/quarto.css new file mode 100644 index 0000000..6cfe7e4 --- /dev/null +++ b/public/site_libs/revealjs/dist/theme/quarto.css @@ -0,0 +1,5 @@ +@import"./fonts/source-sans-pro/source-sans-pro.css";:root{--r-background-color: white;--r-main-font: Source Sans Pro, Helvetica, sans-serif;--r-main-font-size: 40px;--r-main-color: #1a162d;--r-block-margin: 12px;--r-heading-margin: 0 0 12px 0;--r-heading-font: Source Sans Pro, Helvetica, sans-serif;--r-heading-color: #1a162d;--r-heading-line-height: 1.2;--r-heading-letter-spacing: normal;--r-heading-text-transform: none;--r-heading-text-shadow: none;--r-heading-font-weight: 600;--r-heading1-text-shadow: none;--r-heading1-size: 2.5em;--r-heading2-size: 1.6em;--r-heading3-size: 1.3em;--r-heading4-size: 1em;--r-code-font: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--r-link-color: #CA225E;--r-link-color-dark: #891740;--r-link-color-hover: #df4079;--r-selection-background-color: #ea82a7;--r-selection-color: white}.reveal-viewport{background:#fff;background-color:var(--r-background-color)}.reveal{font-family:var(--r-main-font);font-size:var(--r-main-font-size);font-weight:normal;color:var(--r-main-color)}.reveal ::selection{color:var(--r-selection-color);background:var(--r-selection-background-color);text-shadow:none}.reveal ::-moz-selection{color:var(--r-selection-color);background:var(--r-selection-background-color);text-shadow:none}.reveal .slides section,.reveal .slides section>section{line-height:1.3;font-weight:inherit}.reveal h1,.reveal h2,.reveal h3,.reveal h4,.reveal h5,.reveal h6{margin:var(--r-heading-margin);color:var(--r-heading-color);font-family:var(--r-heading-font);font-weight:var(--r-heading-font-weight);line-height:var(--r-heading-line-height);letter-spacing:var(--r-heading-letter-spacing);text-transform:var(--r-heading-text-transform);text-shadow:var(--r-heading-text-shadow);word-wrap:break-word}.reveal h1{font-size:var(--r-heading1-size)}.reveal h2{font-size:var(--r-heading2-size)}.reveal h3{font-size:var(--r-heading3-size)}.reveal h4{font-size:var(--r-heading4-size)}.reveal h1{text-shadow:var(--r-heading1-text-shadow)}.reveal p{margin:var(--r-block-margin) 0;line-height:1.3}.reveal h1:last-child,.reveal h2:last-child,.reveal h3:last-child,.reveal h4:last-child,.reveal h5:last-child,.reveal h6:last-child{margin-bottom:0}.reveal img,.reveal video,.reveal iframe{max-width:95%;max-height:95%}.reveal strong,.reveal b{font-weight:bold}.reveal em{font-style:italic}.reveal ol,.reveal dl,.reveal ul{display:inline-block;text-align:left;margin:0 0 0 1em}.reveal ol{list-style-type:decimal}.reveal ul{list-style-type:disc}.reveal ul ul{list-style-type:square}.reveal ul ul ul{list-style-type:circle}.reveal ul ul,.reveal ul ol,.reveal ol ol,.reveal ol ul{display:block;margin-left:40px}.reveal dt{font-weight:bold}.reveal dd{margin-left:40px}.reveal blockquote{display:block;position:relative;width:70%;margin:var(--r-block-margin) auto;padding:5px;font-style:italic;background:rgba(255,255,255,.05);box-shadow:0px 0px 2px rgba(0,0,0,.2)}.reveal blockquote p:first-child,.reveal blockquote p:last-child{display:inline-block}.reveal q{font-style:italic}.reveal pre{display:block;position:relative;width:90%;margin:var(--r-block-margin) auto;text-align:left;font-size:.55em;font-family:var(--r-code-font);line-height:1.2em;word-wrap:break-word;box-shadow:0px 5px 15px rgba(0,0,0,.15)}.reveal code{font-family:var(--r-code-font);text-transform:none;tab-size:2}.reveal pre code{display:block;padding:5px;overflow:auto;max-height:400px;word-wrap:normal}.reveal .code-wrapper{white-space:normal}.reveal .code-wrapper code{white-space:pre}.reveal table{margin:auto;border-collapse:collapse;border-spacing:0}.reveal table th{font-weight:bold}.reveal table th,.reveal table td{text-align:left;padding:.2em .5em .2em .5em;border-bottom:1px solid}.reveal table th[align=center],.reveal table td[align=center]{text-align:center}.reveal table th[align=right],.reveal table td[align=right]{text-align:right}.reveal table tbody tr:last-child th,.reveal table tbody tr:last-child td{border-bottom:none}.reveal sup{vertical-align:super;font-size:smaller}.reveal sub{vertical-align:sub;font-size:smaller}.reveal small{display:inline-block;font-size:.6em;line-height:1.2em;vertical-align:top}.reveal small *{vertical-align:top}.reveal img{margin:var(--r-block-margin) 0}.reveal a{color:var(--r-link-color);text-decoration:none;transition:color .15s ease}.reveal a:hover{color:var(--r-link-color-hover);text-shadow:none;border:none}.reveal .roll span:after{color:#fff;background:var(--r-link-color-dark)}.reveal .r-frame{border:4px solid var(--r-main-color);box-shadow:0 0 10px rgba(0,0,0,.15)}.reveal a .r-frame{transition:all .15s linear}.reveal a:hover .r-frame{border-color:var(--r-link-color);box-shadow:0 0 20px rgba(0,0,0,.55)}.reveal .controls{color:var(--r-link-color)}.reveal .progress{background:rgba(0,0,0,.2);color:var(--r-link-color)}@media print{.backgrounds{background-color:var(--r-background-color)}}.top-right{position:absolute;top:1em;right:1em}.hidden{display:none !important}.quarto-layout-panel{margin-bottom:1em}.quarto-layout-panel>figure{width:100%}.quarto-layout-panel>figure>figcaption,.quarto-layout-panel>.panel-caption{margin-top:10pt}.quarto-layout-panel>.table-caption{margin-top:0px}.table-caption p{margin-bottom:.5em}.quarto-layout-row{display:flex;flex-direction:row;align-items:flex-start}.quarto-layout-valign-top{align-items:flex-start}.quarto-layout-valign-bottom{align-items:flex-end}.quarto-layout-valign-center{align-items:center}.quarto-layout-cell{position:relative;margin-right:20px}.quarto-layout-cell:last-child{margin-right:0}.quarto-layout-cell figure,.quarto-layout-cell>p{margin:.2em}.quarto-layout-cell img{max-width:100%}.quarto-layout-cell .html-widget{width:100% !important}.quarto-layout-cell div figure p{margin:0}.quarto-layout-cell figure{display:inline-block;margin-inline-start:0;margin-inline-end:0}.quarto-layout-cell table{display:inline-table}.quarto-layout-cell-subref figcaption,figure .quarto-layout-row figure figcaption{text-align:center;font-style:italic}.quarto-figure{position:relative;margin-bottom:1em}.quarto-figure>figure{width:100%;margin-bottom:0}.quarto-figure-left>figure>p{text-align:left}.quarto-figure-center>figure>p{text-align:center}.quarto-figure-right>figure>p{text-align:right}figure>p:empty{display:none}figure>p:first-child{margin-top:0;margin-bottom:0}figure>figcaption{margin-top:.5em}div[id^=tbl-]{position:relative}.quarto-figure>.anchorjs-link,div[id^=tbl-]>.anchorjs-link{position:absolute;top:0;right:0}.quarto-figure:hover>.anchorjs-link,div[id^=tbl-]:hover>.anchorjs-link,h2:hover>.anchorjs-link,h3:hover>.anchorjs-link,h4:hover>.anchorjs-link,h5:hover>.anchorjs-link,h6:hover>.anchorjs-link,.reveal-anchorjs-link>.anchorjs-link{opacity:1}#title-block-header{margin-block-end:1rem;position:relative;margin-top:-1px}#title-block-header .abstract{margin-block-start:1rem}#title-block-header .abstract .abstract-title{font-weight:600}#title-block-header a{text-decoration:none}#title-block-header .author,#title-block-header .date,#title-block-header .doi{margin-block-end:.2rem}#title-block-header .quarto-title-block>div{display:flex}#title-block-header .quarto-title-block>div>h1{flex-grow:1}#title-block-header .quarto-title-block>div>button{flex-shrink:0;height:2.25rem;margin-top:0}tr.header>th>p:last-of-type{margin-bottom:0px}table,.table{caption-side:top;margin-bottom:1.5rem}caption,.table-caption{padding-top:.5rem;padding-bottom:.5rem;text-align:center}.utterances{max-width:none;margin-left:-8px}iframe{margin-bottom:1em}details{margin-bottom:1em}details[show]{margin-bottom:0}details>summary{color:#554894}details>summary>p:only-child{display:inline}pre.sourceCode,code.sourceCode{position:relative}code{white-space:pre}@media print{code{white-space:pre-wrap}}pre>code{display:block}pre>code.sourceCode{white-space:pre}pre>code.sourceCode>span>a:first-child::before{text-decoration:none}pre.code-overflow-wrap>code.sourceCode{white-space:pre-wrap}pre.code-overflow-scroll>code.sourceCode{white-space:pre}code a:any-link{color:inherit;text-decoration:none}code a:hover{color:inherit;text-decoration:underline}ul.task-list{padding-left:1em}[data-tippy-root]{display:inline-block}.tippy-content .footnote-back{display:none}.quarto-embedded-source-code{display:none}.quarto-unresolved-ref{font-weight:600}.quarto-cover-image{max-width:35%;float:right;margin-left:30px}.cell-output-display .widget-subarea{margin-bottom:1em}.cell-output-display:not(.no-overflow-x){overflow-x:auto}.panel-input{margin-bottom:1em}.panel-input>div,.panel-input>div>div{display:inline-block;vertical-align:top;padding-right:12px}.panel-input>p:last-child{margin-bottom:0}.layout-sidebar{margin-bottom:1em}.layout-sidebar .tab-content{border:none}.tab-content>.page-columns.active{display:grid}div.sourceCode>iframe{width:100%;height:300px;margin-bottom:-0.5em}div.ansi-escaped-output{font-family:monospace;display:block}/*! +* +* ansi colors from IPython notebook's +* +*/.ansi-black-fg{color:#3e424d}.ansi-black-bg{background-color:#3e424d}.ansi-black-intense-fg{color:#282c36}.ansi-black-intense-bg{background-color:#282c36}.ansi-red-fg{color:#e75c58}.ansi-red-bg{background-color:#e75c58}.ansi-red-intense-fg{color:#b22b31}.ansi-red-intense-bg{background-color:#b22b31}.ansi-green-fg{color:#00a250}.ansi-green-bg{background-color:#00a250}.ansi-green-intense-fg{color:#007427}.ansi-green-intense-bg{background-color:#007427}.ansi-yellow-fg{color:#ddb62b}.ansi-yellow-bg{background-color:#ddb62b}.ansi-yellow-intense-fg{color:#b27d12}.ansi-yellow-intense-bg{background-color:#b27d12}.ansi-blue-fg{color:#208ffb}.ansi-blue-bg{background-color:#208ffb}.ansi-blue-intense-fg{color:#0065ca}.ansi-blue-intense-bg{background-color:#0065ca}.ansi-magenta-fg{color:#d160c4}.ansi-magenta-bg{background-color:#d160c4}.ansi-magenta-intense-fg{color:#a03196}.ansi-magenta-intense-bg{background-color:#a03196}.ansi-cyan-fg{color:#60c6c8}.ansi-cyan-bg{background-color:#60c6c8}.ansi-cyan-intense-fg{color:#258f8f}.ansi-cyan-intense-bg{background-color:#258f8f}.ansi-white-fg{color:#c5c1b4}.ansi-white-bg{background-color:#c5c1b4}.ansi-white-intense-fg{color:#a1a6b2}.ansi-white-intense-bg{background-color:#a1a6b2}.ansi-default-inverse-fg{color:#fff}.ansi-default-inverse-bg{background-color:#000}.ansi-bold{font-weight:bold}.ansi-underline{text-decoration:underline}:root{--quarto-body-bg: white;--quarto-body-color: #1a162d;--quarto-text-muted: #554894;--quarto-border-color: #aba3d2;--quarto-border-width: 1px;--quarto-border-radius: 4px}table.gt_table{color:var(--quarto-body-color);font-size:1em;width:100%;background-color:transparent;border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_col_heading{color:var(--quarto-body-color);font-weight:bold;background-color:transparent}table.gt_table thead.gt_col_headings{border-bottom:1px solid currentColor;border-top-width:inherit;border-top-color:var(--quarto-border-color)}table.gt_table thead.gt_col_headings:not(:first-child){border-top-width:1px;border-top-color:var(--quarto-border-color)}table.gt_table td.gt_row{border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-width:0px}table.gt_table tbody.gt_table_body{border-top-width:1px;border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-color:currentColor}div.columns{display:initial;gap:initial}div.column{display:inline-block;overflow-x:initial;vertical-align:top;width:50%}@media print{:root{font-size:11pt}#quarto-sidebar,#TOC,.nav-page{display:none}.page-columns .content{grid-column-start:page-start}.fixed-top{position:relative}.panel-caption,.figure-caption,figcaption{color:#666}}.code-copy-button{position:absolute;top:0;right:0;border:0;margin-top:5px;margin-right:5px;background-color:transparent}.code-copy-button:focus{outline:none}pre.sourceCode:hover>.code-copy-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(85, 72, 148)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>');background-repeat:no-repeat;background-size:1rem 1rem}pre.sourceCode:hover>.code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(85, 72, 148)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}pre.sourceCode:hover>.code-copy-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(202, 34, 94)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>')}pre.sourceCode:hover>.code-copy-button-checked:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(202, 34, 94)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}.panel-tabset [role=tablist]{border-bottom:1px solid #aba3d2;list-style:none;margin:0;padding:0;width:100%}.panel-tabset [role=tablist] *{-webkit-box-sizing:border-box;box-sizing:border-box}@media(min-width: 30em){.panel-tabset [role=tablist] li{display:inline-block}}.panel-tabset [role=tab]{border:1px solid transparent;border-top-color:#aba3d2;display:block;padding:.5em 1em;text-decoration:none}@media(min-width: 30em){.panel-tabset [role=tab]{border-top-color:transparent;display:inline-block;margin-bottom:-1px}}.panel-tabset [role=tab][aria-selected=true]{background-color:#aba3d2}@media(min-width: 30em){.panel-tabset [role=tab][aria-selected=true]{background-color:transparent;border:1px solid #aba3d2;border-bottom-color:#fff}}@media(min-width: 30em){.panel-tabset [role=tab]:hover:not([aria-selected=true]){border:1px solid #aba3d2}}.code-with-filename .code-with-filename-file{margin-bottom:0;padding-bottom:2px;padding-top:2px;padding-left:.7em;border:var(--quarto-border-width) solid var(--quarto-border-color);border-radius:var(--quarto-border-radius);border-bottom:0;border-bottom-left-radius:0%;border-bottom-right-radius:0%}.code-with-filename div.sourceCode,.reveal .code-with-filename div.sourceCode{margin-top:0;border-top-left-radius:0%;border-top-right-radius:0%}.code-with-filename .code-with-filename-file pre{margin-bottom:0}.code-with-filename .code-with-filename-file,.code-with-filename .code-with-filename-file pre{background-color:rgba(219,219,219,.8)}.quarto-dark .code-with-filename .code-with-filename-file,.quarto-dark .code-with-filename .code-with-filename-file pre{background-color:#555}.code-with-filename .code-with-filename-file strong{font-weight:400}section.has-light-background,section.has-light-background h1,section.has-light-background h2,section.has-light-background h3,section.has-light-background h4,section.has-light-background h5,section.has-light-background h6{color:#222}section.has-light-background a,section.has-light-background a:hover{color:#2a76dd}section.has-light-background code{color:#4758ab}section.has-dark-background,section.has-dark-background h1,section.has-dark-background h2,section.has-dark-background h3,section.has-dark-background h4,section.has-dark-background h5,section.has-dark-background h6{color:#fff}section.has-dark-background a,section.has-dark-background a:hover{color:#42affa}section.has-dark-background code{color:#ffa07a}#title-slide{text-align:center}#title-slide .subtitle{margin-bottom:2.5rem}.reveal .slides{text-align:left}.reveal .title-slide h1{font-size:1.6em}.reveal[data-navigation-mode=linear] .title-slide h1{font-size:2.5em}.reveal div.sourceCode{border:1px solid #aba3d2;border-radius:4px}.reveal pre{width:100%;box-shadow:none;background-color:#fff;border:none;margin:0;font-size:.55em}.reveal code{color:var(--quarto-hl-fu-color);background-color:transparent;white-space:pre-wrap}.reveal pre.sourceCode code{background-color:#fff;padding:6px 9px;max-height:500px;white-space:pre}.reveal pre code{background-color:#fff;color:#1a162d}.reveal .column-output-location{display:flex;align-items:stretch}.reveal .column-output-location .column:first-of-type div.sourceCode{height:100%;background-color:#fff}.reveal blockquote{display:block;position:relative;color:#554894;width:unset;margin:var(--r-block-margin) auto;padding:.625rem 1.75rem;border-left:.25rem solid #554894;font-style:normal;background:none;box-shadow:none}.reveal blockquote p:first-child,.reveal blockquote p:last-child{display:block}.reveal .slide aside,.reveal .slide div.aside{position:absolute;bottom:20px;font-size:0.7em;color:#554894}.reveal .slide sup{font-size:0.7em}.reveal .slide.scrollable aside,.reveal .slide.scrollable div.aside{position:relative;margin-top:1em}.reveal .slide aside .aside-footnotes{margin-bottom:0}.reveal .slide aside .aside-footnotes li:first-of-type{margin-top:0}.reveal .layout-sidebar{display:flex;width:100%;margin-top:.8em}.reveal .layout-sidebar .panel-sidebar{width:270px}.reveal .layout-sidebar-left .panel-sidebar{margin-right:calc(0.5em * 2)}.reveal .layout-sidebar-right .panel-sidebar{margin-left:calc(0.5em * 2)}.reveal .layout-sidebar .panel-fill,.reveal .layout-sidebar .panel-center,.reveal .layout-sidebar .panel-tabset{flex:1}.reveal .panel-input,.reveal .panel-sidebar{font-size:.5em;padding:.5em;border-style:solid;border-color:#aba3d2;border-width:1px;border-radius:4px;background-color:#f8f9fa}.reveal .panel-sidebar :first-child,.reveal .panel-fill :first-child{margin-top:0}.reveal .panel-sidebar :last-child,.reveal .panel-fill :last-child{margin-bottom:0}.panel-input>div,.panel-input>div>div{vertical-align:middle;padding-right:1em}.reveal p,.reveal .slides section,.reveal .slides section>section{line-height:1.3}.reveal.smaller .slides section,.reveal .slides section.smaller,.reveal .slides section .callout{font-size:0.7em}.reveal.smaller .slides h1,.reveal .slides section.smaller h1{font-size:calc(2.5em / 0.7)}.reveal.smaller .slides h2,.reveal .slides section.smaller h2{font-size:calc(1.6em / 0.7)}.reveal.smaller .slides h3,.reveal .slides section.smaller h3{font-size:calc(1.3em / 0.7)}.reveal .columns>.column>:not(ul,ol){margin-left:.25em;margin-right:.25em}.reveal .columns>.column:first-child>:not(ul,ol){margin-right:.5em;margin-left:0}.reveal .columns>.column:last-child>:not(ul,ol){margin-right:0;margin-left:.5em}.reveal .slide-number{color:#ca225e;background-color:#fff}.reveal .footer{color:#554894}.reveal .footer a{color:#df4079}.reveal .slide-number{color:#554894}.reveal .slide figure>figcaption,.reveal .slide img.stretch+p.caption,.reveal .slide img.r-stretch+p.caption{font-size:0.7em}@media screen and (min-width: 500px){.reveal .controls[data-controls-layout=edges] .navigate-left{left:.2em}.reveal .controls[data-controls-layout=edges] .navigate-right{right:.2em}.reveal .controls[data-controls-layout=edges] .navigate-up{top:.4em}.reveal .controls[data-controls-layout=edges] .navigate-down{bottom:2.3em}}.tippy-box[data-theme~=quarto-reveal]{background-color:#fff;color:#1a162d;border-radius:4px;border:solid 1px #554894;font-size:.6em}.tippy-box[data-theme~=quarto-reveal] .tippy-arrow{color:#554894}.tippy-box[data-placement^=bottom]>.tippy-content{padding:7px 10px;z-index:1}.reveal .callout.callout-style-simple .callout-body,.reveal .callout.callout-style-default .callout-body,.reveal .callout.callout-style-simple div.callout-caption,.reveal .callout.callout-style-default div.callout-caption{font-size:inherit}.reveal .callout.callout-style-default .callout-icon::before,.reveal .callout.callout-style-simple .callout-icon::before{height:2rem;width:2rem;background-size:2rem 2rem}.reveal .callout.callout-captioned .callout-caption p{margin-top:.5em}.reveal .callout.callout-captioned .callout-icon::before{margin-top:1rem}.reveal .callout.callout-captioned .callout-body>.callout-content>:last-child{margin-bottom:1rem}.reveal .panel-tabset [role=tab]{padding:.25em .7em}.reveal .slide-menu-button .fa-bars::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(202, 34, 94)" class="bi bi-list" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5z"/></svg>')}.reveal .slide-chalkboard-buttons .fa-easel2::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(202, 34, 94)" class="bi bi-easel2" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 0a.5.5 0 0 1 .447.276L8.81 1h4.69A1.5 1.5 0 0 1 15 2.5V11h.5a.5.5 0 0 1 0 1h-2.86l.845 3.379a.5.5 0 0 1-.97.242L12.11 14H3.89l-.405 1.621a.5.5 0 0 1-.97-.242L3.36 12H.5a.5.5 0 0 1 0-1H1V2.5A1.5 1.5 0 0 1 2.5 1h4.691l.362-.724A.5.5 0 0 1 8 0ZM2 11h12V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5V11Zm9.61 1H4.39l-.25 1h7.72l-.25-1Z"/></svg>')}.reveal .slide-chalkboard-buttons .fa-brush::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(202, 34, 94)" class="bi bi-brush" viewBox="0 0 16 16"><path d="M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.118 8.118 0 0 1-3.078.132 3.659 3.659 0 0 1-.562-.135 1.382 1.382 0 0 1-.466-.247.714.714 0 0 1-.204-.288.622.622 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.925 1.746-.896.126.007.243.025.348.048.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.176-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04zM4.705 11.912a1.23 1.23 0 0 0-.419-.1c-.246-.013-.573.05-.879.479-.197.275-.355.532-.5.777l-.105.177c-.106.181-.213.362-.32.528a3.39 3.39 0 0 1-.76.861c.69.112 1.736.111 2.657-.12.559-.139.843-.569.993-1.06a3.122 3.122 0 0 0 .126-.75l-.793-.792zm1.44.026c.12-.04.277-.1.458-.183a5.068 5.068 0 0 0 1.535-1.1c1.9-1.996 4.412-5.57 6.052-8.631-2.59 1.927-5.566 4.66-7.302 6.792-.442.543-.795 1.243-1.042 1.826-.121.288-.214.54-.275.72v.001l.575.575zm-4.973 3.04.007-.005a.031.031 0 0 1-.007.004zm3.582-3.043.002.001h-.002z"/></svg>')}/*! light */.reveal ol[type=a]{list-style-type:lower-alpha}.reveal ol[type=a s]{list-style-type:lower-alpha}.reveal ol[type=A s]{list-style-type:upper-alpha}.reveal ol[type=i]{list-style-type:lower-roman}.reveal ol[type=i s]{list-style-type:lower-roman}.reveal ol[type=I s]{list-style-type:upper-roman}.reveal ol[type="1"]{list-style-type:decimal}/*# sourceMappingURL=f95d2bded9c28492b788fe14c3e9f347.css.map */ diff --git a/public/site_libs/revealjs/plugin/highlight/highlight.esm.js b/public/site_libs/revealjs/plugin/highlight/highlight.esm.js new file mode 100644 index 0000000..20f35d7 --- /dev/null +++ b/public/site_libs/revealjs/plugin/highlight/highlight.esm.js @@ -0,0 +1,5 @@ +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 n(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function a(e,t,a){return t&&n(e.prototype,t),a&&n(e,a),e}function r(e){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,a=r(e);if(t){var i=r(this).constructor;n=Reflect.construct(a,arguments,i)}else n=a.apply(this,arguments);return o(this,n)}}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==n)return;var a,r,i=[],o=!0,s=!1;try{for(n=n.call(e);!(o=(a=n.next()).done)&&(i.push(a.value),!t||i.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{o||null==n.return||n.return()}finally{if(s)throw r}}return i}(e,t)||_(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},m=function(e){return e&&e.Math==Math&&e},p=m("object"==typeof globalThis&&globalThis)||m("object"==typeof window&&window)||m("object"==typeof self&&self)||m("object"==typeof u&&u)||function(){return this}()||Function("return this")(),g={exports:{}},E=function(e){try{return!!e()}catch(e){return!0}},S=!E((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),b={},T=function(e){return"object"==typeof e?null!==e:"function"==typeof e},f=T,C=p.document,N=f(C)&&f(C.createElement),R=function(e){return N?C.createElement(e):{}},v=R,O=!S&&!E((function(){return 7!=Object.defineProperty(v("div"),"a",{get:function(){return 7}}).a})),h=T,y=function(e){if(!h(e))throw TypeError(String(e)+" is not an object");return e},I=T,A=function(e,t){if(!I(e))return e;var n,a;if(t&&"function"==typeof(n=e.toString)&&!I(a=n.call(e)))return a;if("function"==typeof(n=e.valueOf)&&!I(a=n.call(e)))return a;if(!t&&"function"==typeof(n=e.toString)&&!I(a=n.call(e)))return a;throw TypeError("Can't convert object to primitive value")},D=S,M=O,L=y,w=A,x=Object.defineProperty;b.f=D?x:function(e,t,n){if(L(e),t=w(t,!0),L(n),M)try{return x(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var P=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},k=b,U=P,F=S?function(e,t,n){return k.f(e,t,U(1,n))}:function(e,t,n){return e[t]=n,e},B=p,G=F,Y=function(e,t){try{G(B,e,t)}catch(n){B[e]=t}return t},H=Y,V=p["__core-js_shared__"]||H("__core-js_shared__",{}),q=V;(g.exports=function(e,t){return q[e]||(q[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var z,W,$=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},Q=$,K=function(e){return Object(Q(e))},j=K,X={}.hasOwnProperty,Z=function(e,t){return X.call(j(e),t)},J=0,ee=Math.random(),te=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++J+ee).toString(36)},ne=p,ae=ne,re=p,ie=function(e){return"function"==typeof e?e:void 0},oe=function(e,t){return arguments.length<2?ie(ae[e])||ie(re[e]):ae[e]&&ae[e][t]||re[e]&&re[e][t]},se=oe("navigator","userAgent")||"",le=p.process,ce=le&&le.versions,_e=ce&&ce.v8;_e?W=(z=_e.split("."))[0]<4?1:z[0]+z[1]:se&&(!(z=se.match(/Edge\/(\d+)/))||z[1]>=74)&&(z=se.match(/Chrome\/(\d+)/))&&(W=z[1]);var de=W&&+W,ue=de,me=E,pe=!!Object.getOwnPropertySymbols&&!me((function(){return!String(Symbol())||!Symbol.sham&&ue&&ue<41})),ge=pe&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Ee=p,Se=g.exports,be=Z,Te=te,fe=pe,Ce=ge,Ne=Se("wks"),Re=Ee.Symbol,ve=Ce?Re:Re&&Re.withoutSetter||Te,Oe=function(e){return be(Ne,e)&&(fe||"string"==typeof Ne[e])||(fe&&be(Re,e)?Ne[e]=Re[e]:Ne[e]=ve("Symbol."+e)),Ne[e]},he={};he[Oe("toStringTag")]="z";var ye="[object z]"===String(he),Ie={exports:{}},Ae=V,De=Function.toString;"function"!=typeof Ae.inspectSource&&(Ae.inspectSource=function(e){return De.call(e)});var Me,Le,we,xe=Ae.inspectSource,Pe=xe,ke=p.WeakMap,Ue="function"==typeof ke&&/native code/.test(Pe(ke)),Fe=g.exports,Be=te,Ge=Fe("keys"),Ye=function(e){return Ge[e]||(Ge[e]=Be(e))},He={},Ve=Ue,qe=T,ze=F,We=Z,$e=V,Qe=Ye,Ke=He,je=p.WeakMap;if(Ve||$e.state){var Xe=$e.state||($e.state=new je),Ze=Xe.get,Je=Xe.has,et=Xe.set;Me=function(e,t){if(Je.call(Xe,e))throw new TypeError("Object already initialized");return t.facade=e,et.call(Xe,e,t),t},Le=function(e){return Ze.call(Xe,e)||{}},we=function(e){return Je.call(Xe,e)}}else{var tt=Qe("state");Ke[tt]=!0,Me=function(e,t){if(We(e,tt))throw new TypeError("Object already initialized");return t.facade=e,ze(e,tt,t),t},Le=function(e){return We(e,tt)?e[tt]:{}},we=function(e){return We(e,tt)}}var nt={set:Me,get:Le,has:we,enforce:function(e){return we(e)?Le(e):Me(e,{})},getterFor:function(e){return function(t){var n;if(!qe(t)||(n=Le(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},at=p,rt=F,it=Z,ot=Y,st=xe,lt=nt.get,ct=nt.enforce,_t=String(String).split("String");(Ie.exports=function(e,t,n,a){var r,i=!!a&&!!a.unsafe,o=!!a&&!!a.enumerable,s=!!a&&!!a.noTargetGet;"function"==typeof n&&("string"!=typeof t||it(n,"name")||rt(n,"name",t),(r=ct(n)).source||(r.source=_t.join("string"==typeof t?t:""))),e!==at?(i?!s&&e[t]&&(o=!0):delete e[t],o?e[t]=n:rt(e,t,n)):o?e[t]=n:ot(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&<(this).source||st(this)}));var dt={}.toString,ut=function(e){return dt.call(e).slice(8,-1)},mt=ye,pt=ut,gt=Oe("toStringTag"),Et="Arguments"==pt(function(){return arguments}()),St=mt?pt:function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),gt))?n:Et?pt(t):"Object"==(a=pt(t))&&"function"==typeof t.callee?"Arguments":a},bt=St,Tt=ye?{}.toString:function(){return"[object "+bt(this)+"]"},ft=ye,Ct=Ie.exports,Nt=Tt;ft||Ct(Object.prototype,"toString",Nt,{unsafe:!0});var Rt=y,vt=function(){var e=Rt(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},Ot=Ie.exports,ht=y,yt=E,It=vt,At=RegExp.prototype,Dt=At.toString,Mt=yt((function(){return"/a/b"!=Dt.call({source:"a",flags:"b"})})),Lt="toString"!=Dt.name;(Mt||Lt)&&Ot(RegExp.prototype,"toString",(function(){var e=ht(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in At)?It.call(e):n)}),{unsafe:!0});var wt={},xt={},Pt={}.propertyIsEnumerable,kt=Object.getOwnPropertyDescriptor,Ut=kt&&!Pt.call({1:2},1);xt.f=Ut?function(e){var t=kt(this,e);return!!t&&t.enumerable}:Pt;var Ft=ut,Bt="".split,Gt=E((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==Ft(e)?Bt.call(e,""):Object(e)}:Object,Yt=Gt,Ht=$,Vt=function(e){return Yt(Ht(e))},qt=S,zt=xt,Wt=P,$t=Vt,Qt=A,Kt=Z,jt=O,Xt=Object.getOwnPropertyDescriptor;wt.f=qt?Xt:function(e,t){if(e=$t(e),t=Qt(t,!0),jt)try{return Xt(e,t)}catch(e){}if(Kt(e,t))return Wt(!zt.f.call(e,t),e[t])};var Zt={},Jt=Math.ceil,en=Math.floor,tn=function(e){return isNaN(e=+e)?0:(e>0?en:Jt)(e)},nn=tn,an=Math.min,rn=function(e){return e>0?an(nn(e),9007199254740991):0},on=tn,sn=Math.max,ln=Math.min,cn=function(e,t){var n=on(e);return n<0?sn(n+t,0):ln(n,t)},_n=Vt,dn=rn,un=cn,mn=function(e){return function(t,n,a){var r,i=_n(t),o=dn(i.length),s=un(a,o);if(e&&n!=n){for(;o>s;)if((r=i[s++])!=r)return!0}else for(;o>s;s++)if((e||s in i)&&i[s]===n)return e||s||0;return!e&&-1}},pn={includes:mn(!0),indexOf:mn(!1)},gn=Z,En=Vt,Sn=pn.indexOf,bn=He,Tn=function(e,t){var n,a=En(e),r=0,i=[];for(n in a)!gn(bn,n)&&gn(a,n)&&i.push(n);for(;t.length>r;)gn(a,n=t[r++])&&(~Sn(i,n)||i.push(n));return i},fn=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Cn=Tn,Nn=fn.concat("length","prototype");Zt.f=Object.getOwnPropertyNames||function(e){return Cn(e,Nn)};var Rn={};Rn.f=Object.getOwnPropertySymbols;var vn=Zt,On=Rn,hn=y,yn=oe("Reflect","ownKeys")||function(e){var t=vn.f(hn(e)),n=On.f;return n?t.concat(n(e)):t},In=Z,An=yn,Dn=wt,Mn=b,Ln=function(e,t){for(var n=An(t),a=Mn.f,r=Dn.f,i=0;i<n.length;i++){var o=n[i];In(e,o)||a(e,o,r(t,o))}},wn=E,xn=/#|\.prototype\./,Pn=function(e,t){var n=Un[kn(e)];return n==Bn||n!=Fn&&("function"==typeof t?wn(t):!!t)},kn=Pn.normalize=function(e){return String(e).replace(xn,".").toLowerCase()},Un=Pn.data={},Fn=Pn.NATIVE="N",Bn=Pn.POLYFILL="P",Gn=Pn,Yn=p,Hn=wt.f,Vn=F,qn=Ie.exports,zn=Y,Wn=Ln,$n=Gn,Qn=function(e,t){var n,a,r,i,o,s=e.target,l=e.global,c=e.stat;if(n=l?Yn:c?Yn[s]||zn(s,{}):(Yn[s]||{}).prototype)for(a in t){if(i=t[a],r=e.noTargetGet?(o=Hn(n,a))&&o.value:n[a],!$n(l?a:s+(c?".":"#")+a,e.forced)&&void 0!==r){if(typeof i==typeof r)continue;Wn(i,r)}(e.sham||r&&r.sham)&&Vn(i,"sham",!0),qn(n,a,i,e)}},Kn=ut,jn=Array.isArray||function(e){return"Array"==Kn(e)},Xn=A,Zn=b,Jn=P,ea=function(e,t,n){var a=Xn(t);a in e?Zn.f(e,a,Jn(0,n)):e[a]=n},ta=E,na=de,aa=Oe("species"),ra=function(e){return na>=51||!ta((function(){var t=[];return(t.constructor={})[aa]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},ia=Qn,oa=T,sa=jn,la=cn,ca=rn,_a=Vt,da=ea,ua=Oe,ma=ra("slice"),pa=ua("species"),ga=[].slice,Ea=Math.max;ia({target:"Array",proto:!0,forced:!ma},{slice:function(e,t){var n,a,r,i=_a(this),o=ca(i.length),s=la(e,o),l=la(void 0===t?o:t,o);if(sa(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!sa(n.prototype)?oa(n)&&null===(n=n[pa])&&(n=void 0):n=void 0,n===Array||void 0===n))return ga.call(i,s,l);for(a=new(void 0===n?Array:n)(Ea(l-s,0)),r=0;s<l;s++,r++)s in i&&da(a,r,i[s]);return a.length=r,a}});var Sa,ba=T,Ta=y,fa=function(e){if(!ba(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},Ca=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,a){return Ta(n),fa(a),t?e.call(n,a):n.__proto__=a,n}}():void 0),Na=T,Ra=Ca,va=function(e,t,n){var a,r;return Ra&&"function"==typeof(a=t.constructor)&&a!==n&&Na(r=a.prototype)&&r!==n.prototype&&Ra(e,r),e},Oa=Tn,ha=fn,ya=Object.keys||function(e){return Oa(e,ha)},Ia=b,Aa=y,Da=ya,Ma=S?Object.defineProperties:function(e,t){Aa(e);for(var n,a=Da(t),r=a.length,i=0;r>i;)Ia.f(e,n=a[i++],t[n]);return e},La=oe("document","documentElement"),wa=y,xa=Ma,Pa=fn,ka=He,Ua=La,Fa=R,Ba=Ye("IE_PROTO"),Ga=function(){},Ya=function(e){return"<script>"+e+"<\/script>"},Ha=function(){try{Sa=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;Ha=Sa?function(e){e.write(Ya("")),e.close();var t=e.parentWindow.Object;return e=null,t}(Sa):((t=Fa("iframe")).style.display="none",Ua.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(Ya("document.F=Object")),e.close(),e.F);for(var n=Pa.length;n--;)delete Ha.prototype[Pa[n]];return Ha()};ka[Ba]=!0;var Va=Object.create||function(e,t){var n;return null!==e?(Ga.prototype=wa(e),n=new Ga,Ga.prototype=null,n[Ba]=e):n=Ha(),void 0===t?n:xa(n,t)},qa=$,za="[\t\n\v\f\r \u2028\u2029\ufeff]",Wa=RegExp("^"+za+za+"*"),$a=RegExp(za+za+"*$"),Qa=function(e){return function(t){var n=String(qa(t));return 1&e&&(n=n.replace(Wa,"")),2&e&&(n=n.replace($a,"")),n}},Ka={start:Qa(1),end:Qa(2),trim:Qa(3)},ja=S,Xa=p,Za=Gn,Ja=Ie.exports,er=Z,tr=ut,nr=va,ar=A,rr=E,ir=Va,or=Zt.f,sr=wt.f,lr=b.f,cr=Ka.trim,_r=Xa.Number,dr=_r.prototype,ur="Number"==tr(ir(dr)),mr=function(e){var t,n,a,r,i,o,s,l,c=ar(e,!1);if("string"==typeof c&&c.length>2)if(43===(t=(c=cr(c)).charCodeAt(0))||45===t){if(88===(n=c.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(c.charCodeAt(1)){case 66:case 98:a=2,r=49;break;case 79:case 111:a=8,r=55;break;default:return+c}for(o=(i=c.slice(2)).length,s=0;s<o;s++)if((l=i.charCodeAt(s))<48||l>r)return NaN;return parseInt(i,a)}return+c};if(Za("Number",!_r(" 0o1")||!_r("0b1")||_r("+0x1"))){for(var pr,gr=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof gr&&(ur?rr((function(){dr.valueOf.call(n)})):"Number"!=tr(n))?nr(new _r(mr(t)),n,gr):mr(t)},Er=ja?or(_r):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","),Sr=0;Er.length>Sr;Sr++)er(_r,pr=Er[Sr])&&!er(gr,pr)&&lr(gr,pr,sr(_r,pr));gr.prototype=dr,dr.constructor=gr,Ja(Xa,"Number",gr)}var br={},Tr=E;function fr(e,t){return RegExp(e,t)}br.UNSUPPORTED_Y=Tr((function(){var e=fr("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),br.BROKEN_CARET=Tr((function(){var e=fr("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var Cr=vt,Nr=br,Rr=g.exports,vr=RegExp.prototype.exec,Or=Rr("native-string-replace",String.prototype.replace),hr=vr,yr=function(){var e=/a/,t=/b*/g;return vr.call(e,"a"),vr.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),Ir=Nr.UNSUPPORTED_Y||Nr.BROKEN_CARET,Ar=void 0!==/()??/.exec("")[1];(yr||Ar||Ir)&&(hr=function(e){var t,n,a,r,i=this,o=Ir&&i.sticky,s=Cr.call(i),l=i.source,c=0,_=e;return o&&(-1===(s=s.replace("y","")).indexOf("g")&&(s+="g"),_=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(l="(?: "+l+")",_=" "+_,c++),n=new RegExp("^(?:"+l+")",s)),Ar&&(n=new RegExp("^"+l+"$(?!\\s)",s)),yr&&(t=i.lastIndex),a=vr.call(o?n:i,_),o?a?(a.input=a.input.slice(c),a[0]=a[0].slice(c),a.index=i.lastIndex,i.lastIndex+=a[0].length):i.lastIndex=0:yr&&a&&(i.lastIndex=i.global?a.index+a[0].length:t),Ar&&a&&a.length>1&&Or.call(a[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(a[r]=void 0)})),a});var Dr=hr;Qn({target:"RegExp",proto:!0,forced:/./.exec!==Dr},{exec:Dr});var Mr=Ie.exports,Lr=Dr,wr=E,xr=Oe,Pr=F,kr=xr("species"),Ur=RegExp.prototype,Fr=!wr((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),Br="$0"==="a".replace(/./,"$0"),Gr=xr("replace"),Yr=!!/./[Gr]&&""===/./[Gr]("a","$0"),Hr=!wr((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Vr=function(e,t,n,a){var r=xr(e),i=!wr((function(){var t={};return t[r]=function(){return 7},7!=""[e](t)})),o=i&&!wr((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[kr]=function(){return n},n.flags="",n[r]=/./[r]),n.exec=function(){return t=!0,null},n[r](""),!t}));if(!i||!o||"replace"===e&&(!Fr||!Br||Yr)||"split"===e&&!Hr){var s=/./[r],l=n(r,""[e],(function(e,t,n,a,r){var o=t.exec;return o===Lr||o===Ur.exec?i&&!r?{done:!0,value:s.call(t,n,a)}:{done:!0,value:e.call(n,t,a)}:{done:!1}}),{REPLACE_KEEPS_$0:Br,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Yr}),c=l[0],_=l[1];Mr(String.prototype,e,c),Mr(Ur,r,2==t?function(e,t){return _.call(e,this,t)}:function(e){return _.call(e,this)})}a&&Pr(Ur[r],"sham",!0)},qr=tn,zr=$,Wr=function(e){return function(t,n){var a,r,i=String(zr(t)),o=qr(n),s=i.length;return o<0||o>=s?e?"":void 0:(a=i.charCodeAt(o))<55296||a>56319||o+1===s||(r=i.charCodeAt(o+1))<56320||r>57343?e?i.charAt(o):a:e?i.slice(o,o+2):r-56320+(a-55296<<10)+65536}},$r={codeAt:Wr(!1),charAt:Wr(!0)},Qr=$r.charAt,Kr=function(e,t,n){return t+(n?Qr(e,t).length:1)},jr=ut,Xr=Dr,Zr=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==jr(e))throw TypeError("RegExp#exec called on incompatible receiver");return Xr.call(e,t)},Jr=y,ei=rn,ti=$,ni=Kr,ai=Zr;Vr("match",1,(function(e,t,n){return[function(t){var n=ti(this),a=null==t?void 0:t[e];return void 0!==a?a.call(t,n):new RegExp(t)[e](String(n))},function(e){var a=n(t,e,this);if(a.done)return a.value;var r=Jr(e),i=String(this);if(!r.global)return ai(r,i);var o=r.unicode;r.lastIndex=0;for(var s,l=[],c=0;null!==(s=ai(r,i));){var _=String(s[0]);l[c]=_,""===_&&(r.lastIndex=ni(i,ei(r.lastIndex),o)),c++}return 0===c?null:l}]}));var ri=E,ii="\t\n\v\f\r \u2028\u2029\ufeff",oi=Ka.trim;Qn({target:"String",proto:!0,forced:function(e){return ri((function(){return!!ii[e]()||" "!=" "[e]()||ii[e].name!==e}))}("trim")},{trim:function(){return oi(this)}});var si=T,li=ut,ci=Oe("match"),_i=function(e){var t;return si(e)&&(void 0!==(t=e[ci])?!!t:"RegExp"==li(e))},di=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},ui=y,mi=di,pi=Oe("species"),gi=Vr,Ei=_i,Si=y,bi=$,Ti=function(e,t){var n,a=ui(e).constructor;return void 0===a||null==(n=ui(a)[pi])?t:mi(n)},fi=Kr,Ci=rn,Ni=Zr,Ri=Dr,vi=br.UNSUPPORTED_Y,Oi=[].push,hi=Math.min;gi("split",2,(function(e,t,n){var a;return a="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var a=String(bi(this)),r=void 0===n?4294967295:n>>>0;if(0===r)return[];if(void 0===e)return[a];if(!Ei(e))return t.call(a,e,r);for(var i,o,s,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),_=0,d=new RegExp(e.source,c+"g");(i=Ri.call(d,a))&&!((o=d.lastIndex)>_&&(l.push(a.slice(_,i.index)),i.length>1&&i.index<a.length&&Oi.apply(l,i.slice(1)),s=i[0].length,_=o,l.length>=r));)d.lastIndex===i.index&&d.lastIndex++;return _===a.length?!s&&d.test("")||l.push(""):l.push(a.slice(_)),l.length>r?l.slice(0,r):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=bi(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,r,n):a.call(String(r),t,n)},function(e,r){var i=n(a,e,this,r,a!==t);if(i.done)return i.value;var o=Si(e),s=String(this),l=Ti(o,RegExp),c=o.unicode,_=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(vi?"g":"y"),d=new l(vi?"^(?:"+o.source+")":o,_),u=void 0===r?4294967295:r>>>0;if(0===u)return[];if(0===s.length)return null===Ni(d,s)?[s]:[];for(var m=0,p=0,g=[];p<s.length;){d.lastIndex=vi?0:p;var E,S=Ni(d,vi?s.slice(p):s);if(null===S||(E=hi(Ci(d.lastIndex+(vi?p:0)),s.length))===m)p=fi(s,p,c);else{if(g.push(s.slice(m,p)),g.length===u)return g;for(var b=1;b<=S.length-1;b++)if(g.push(S[b]),g.length===u)return g;p=m=E}}return g.push(s.slice(m)),g}]}),vi);var yi=K,Ii=Math.floor,Ai="".replace,Di=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Mi=/\$([$&'`]|\d{1,2})/g,Li=Vr,wi=y,xi=rn,Pi=tn,ki=$,Ui=Kr,Fi=function(e,t,n,a,r,i){var o=n+e.length,s=a.length,l=Mi;return void 0!==r&&(r=yi(r),l=Di),Ai.call(i,l,(function(i,l){var c;switch(l.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(o);case"<":c=r[l.slice(1,-1)];break;default:var _=+l;if(0===_)return i;if(_>s){var d=Ii(_/10);return 0===d?i:d<=s?void 0===a[d-1]?l.charAt(1):a[d-1]+l.charAt(1):i}c=a[_-1]}return void 0===c?"":c}))},Bi=Zr,Gi=Math.max,Yi=Math.min;Li("replace",2,(function(e,t,n,a){var r=a.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=a.REPLACE_KEEPS_$0,o=r?"$":"$0";return[function(n,a){var r=ki(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,r,a):t.call(String(r),n,a)},function(e,a){if(!r&&i||"string"==typeof a&&-1===a.indexOf(o)){var s=n(t,e,this,a);if(s.done)return s.value}var l=wi(e),c=String(this),_="function"==typeof a;_||(a=String(a));var d=l.global;if(d){var u=l.unicode;l.lastIndex=0}for(var m=[];;){var p=Bi(l,c);if(null===p)break;if(m.push(p),!d)break;""===String(p[0])&&(l.lastIndex=Ui(c,xi(l.lastIndex),u))}for(var g,E="",S=0,b=0;b<m.length;b++){p=m[b];for(var T=String(p[0]),f=Gi(Yi(Pi(p.index),c.length),0),C=[],N=1;N<p.length;N++)C.push(void 0===(g=p[N])?g:String(g));var R=p.groups;if(_){var v=[T].concat(C,f,c);void 0!==R&&v.push(R);var O=String(a.apply(void 0,v))}else O=Fi(T,c,f,C,R,a);f>=S&&(E+=c.slice(S,f)+O,S=f+T.length)}return E+c.slice(S)}]}));var Hi={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Vi=di,qi=function(e,t,n){if(Vi(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,a){return e.call(t,n,a)};case 3:return function(n,a,r){return e.call(t,n,a,r)}}return function(){return e.apply(t,arguments)}},zi=T,Wi=jn,$i=Oe("species"),Qi=function(e,t){var n;return Wi(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!Wi(n.prototype)?zi(n)&&null===(n=n[$i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},Ki=qi,ji=Gt,Xi=K,Zi=rn,Ji=Qi,eo=[].push,to=function(e){var t=1==e,n=2==e,a=3==e,r=4==e,i=6==e,o=7==e,s=5==e||i;return function(l,c,_,d){for(var u,m,p=Xi(l),g=ji(p),E=Ki(c,_,3),S=Zi(g.length),b=0,T=d||Ji,f=t?T(l,S):n||o?T(l,0):void 0;S>b;b++)if((s||b in g)&&(m=E(u=g[b],b,p),e))if(t)f[b]=m;else if(m)switch(e){case 3:return!0;case 5:return u;case 6:return b;case 2:eo.call(f,u)}else switch(e){case 4:return!1;case 7:eo.call(f,u)}return i?-1:a||r?r:f}},no={forEach:to(0),map:to(1),filter:to(2),some:to(3),every:to(4),find:to(5),findIndex:to(6),filterOut:to(7)},ao=E,ro=function(e,t){var n=[][e];return!!n&&ao((function(){n.call(null,t||function(){throw 1},1)}))},io=no.forEach,oo=p,so=Hi,lo=ro("forEach")?[].forEach:function(e){return io(this,e,arguments.length>1?arguments[1]:void 0)},co=F;for(var _o in so){var uo=oo[_o],mo=uo&&uo.prototype;if(mo&&mo.forEach!==lo)try{co(mo,"forEach",lo)}catch(Am){mo.forEach=lo}}var po=y,go=function(e){var t=e.return;if(void 0!==t)return po(t.call(e)).value},Eo=y,So=go,bo={},To=bo,fo=Oe("iterator"),Co=Array.prototype,No=function(e){return void 0!==e&&(To.Array===e||Co[fo]===e)},Ro=St,vo=bo,Oo=Oe("iterator"),ho=function(e){if(null!=e)return e[Oo]||e["@@iterator"]||vo[Ro(e)]},yo=qi,Io=K,Ao=function(e,t,n,a){try{return a?t(Eo(n)[0],n[1]):t(n)}catch(t){throw So(e),t}},Do=No,Mo=rn,Lo=ea,wo=ho,xo=Oe("iterator"),Po=!1;try{var ko=0,Uo={next:function(){return{done:!!ko++}},return:function(){Po=!0}};Uo[xo]=function(){return this},Array.from(Uo,(function(){throw 2}))}catch(Am){}var Fo=function(e,t){if(!t&&!Po)return!1;var n=!1;try{var a={};a[xo]=function(){return{next:function(){return{done:n=!0}}}},e(a)}catch(e){}return n},Bo=function(e){var t,n,a,r,i,o,s=Io(e),l="function"==typeof this?this:Array,c=arguments.length,_=c>1?arguments[1]:void 0,d=void 0!==_,u=wo(s),m=0;if(d&&(_=yo(_,c>2?arguments[2]:void 0,2)),null==u||l==Array&&Do(u))for(n=new l(t=Mo(s.length));t>m;m++)o=d?_(s[m],m):s[m],Lo(n,m,o);else for(i=(r=u.call(s)).next,n=new l;!(a=i.call(r)).done;m++)o=d?Ao(r,_,[a.value,m],!0):a.value,Lo(n,m,o);return n.length=m,n};Qn({target:"Array",stat:!0,forced:!Fo((function(e){Array.from(e)}))},{from:Bo});var Go,Yo,Ho,Vo=!E((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),qo=Z,zo=K,Wo=Vo,$o=Ye("IE_PROTO"),Qo=Object.prototype,Ko=Wo?Object.getPrototypeOf:function(e){return e=zo(e),qo(e,$o)?e[$o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?Qo:null},jo=E,Xo=Ko,Zo=F,Jo=Z,es=Oe("iterator"),ts=!1;[].keys&&("next"in(Ho=[].keys())?(Yo=Xo(Xo(Ho)))!==Object.prototype&&(Go=Yo):ts=!0),(null==Go||jo((function(){var e={};return Go[es].call(e)!==e})))&&(Go={}),Jo(Go,es)||Zo(Go,es,(function(){return this}));var ns={IteratorPrototype:Go,BUGGY_SAFARI_ITERATORS:ts},as=b.f,rs=Z,is=Oe("toStringTag"),os=function(e,t,n){e&&!rs(e=n?e:e.prototype,is)&&as(e,is,{configurable:!0,value:t})},ss=ns.IteratorPrototype,ls=Va,cs=P,_s=os,ds=bo,us=function(){return this},ms=Qn,ps=function(e,t,n){var a=t+" Iterator";return e.prototype=ls(ss,{next:cs(1,n)}),_s(e,a,!1),ds[a]=us,e},gs=Ko,Es=Ca,Ss=os,bs=F,Ts=Ie.exports,fs=bo,Cs=ns.IteratorPrototype,Ns=ns.BUGGY_SAFARI_ITERATORS,Rs=Oe("iterator"),vs=function(){return this},Os=function(e,t,n,a,r,i,o){ps(n,t,a);var s,l,c,_=function(e){if(e===r&&g)return g;if(!Ns&&e in m)return m[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},d=t+" Iterator",u=!1,m=e.prototype,p=m[Rs]||m["@@iterator"]||r&&m[r],g=!Ns&&p||_(r),E="Array"==t&&m.entries||p;if(E&&(s=gs(E.call(new e)),Cs!==Object.prototype&&s.next&&(gs(s)!==Cs&&(Es?Es(s,Cs):"function"!=typeof s[Rs]&&bs(s,Rs,vs)),Ss(s,d,!0))),"values"==r&&p&&"values"!==p.name&&(u=!0,g=function(){return p.call(this)}),m[Rs]!==g&&bs(m,Rs,g),fs[t]=g,r)if(l={values:_("values"),keys:i?g:_("keys"),entries:_("entries")},o)for(c in l)(Ns||u||!(c in m))&&Ts(m,c,l[c]);else ms({target:t,proto:!0,forced:Ns||u},l);return l},hs=$r.charAt,ys=nt,Is=Os,As=ys.set,Ds=ys.getterFor("String Iterator");Is(String,"String",(function(e){As(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=Ds(this),n=t.string,a=t.index;return a>=n.length?{value:void 0,done:!0}:(e=hs(n,a),t.index+=e.length,{value:e,done:!1})}));var Ms=no.map;Qn({target:"Array",proto:!0,forced:!ra("map")},{map:function(e){return Ms(this,e,arguments.length>1?arguments[1]:void 0)}});var Ls=Qn,ws=Vt,xs=[].join,Ps=Gt!=Object,ks=ro("join",",");Ls({target:"Array",proto:!0,forced:Ps||!ks},{join:function(e){return xs.call(ws(this),void 0===e?",":e)}});var Us=Qn,Fs=cn,Bs=tn,Gs=rn,Ys=K,Hs=Qi,Vs=ea,qs=ra("splice"),zs=Math.max,Ws=Math.min;Us({target:"Array",proto:!0,forced:!qs},{splice:function(e,t){var n,a,r,i,o,s,l=Ys(this),c=Gs(l.length),_=Fs(e,c),d=arguments.length;if(0===d?n=a=0:1===d?(n=0,a=c-_):(n=d-2,a=Ws(zs(Bs(t),0),c-_)),c+n-a>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(r=Hs(l,a),i=0;i<a;i++)(o=_+i)in l&&Vs(r,i,l[o]);if(r.length=a,n<a){for(i=_;i<c-a;i++)s=i+n,(o=i+a)in l?l[s]=l[o]:delete l[s];for(i=c;i>c-a+n;i--)delete l[i-1]}else if(n>a)for(i=c-a;i>_;i--)s=i+n-1,(o=i+a-1)in l?l[s]=l[o]:delete l[s];for(i=0;i<n;i++)l[i+_]=arguments[i+2];return l.length=c-a+n,r}});var $s=Va,Qs=b,Ks=Oe("unscopables"),js=Array.prototype;null==js[Ks]&&Qs.f(js,Ks,{configurable:!0,value:$s(null)});var Xs=function(e){js[Ks][e]=!0},Zs=Vt,Js=Xs,el=bo,tl=nt,nl=Os,al=tl.set,rl=tl.getterFor("Array Iterator"),il=nl(Array,"Array",(function(e,t){al(this,{type:"Array Iterator",target:Zs(e),index:0,kind:t})}),(function(){var e=rl(this),t=e.target,n=e.kind,a=e.index++;return!t||a>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:t[a],done:!1}:{value:[a,t[a]],done:!1}}),"values");el.Arguments=el.Array,Js("keys"),Js("values"),Js("entries");var ol={exports:{}},sl=!E((function(){return Object.isExtensible(Object.preventExtensions({}))})),ll=He,cl=T,_l=Z,dl=b.f,ul=sl,ml=te("meta"),pl=0,gl=Object.isExtensible||function(){return!0},El=function(e){dl(e,ml,{value:{objectID:"O"+ ++pl,weakData:{}}})},Sl=ol.exports={REQUIRED:!1,fastKey:function(e,t){if(!cl(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!_l(e,ml)){if(!gl(e))return"F";if(!t)return"E";El(e)}return e[ml].objectID},getWeakData:function(e,t){if(!_l(e,ml)){if(!gl(e))return!0;if(!t)return!1;El(e)}return e[ml].weakData},onFreeze:function(e){return ul&&Sl.REQUIRED&&gl(e)&&!_l(e,ml)&&El(e),e}};ll[ml]=!0;var bl=y,Tl=No,fl=rn,Cl=qi,Nl=ho,Rl=go,vl=function(e,t){this.stopped=e,this.result=t},Ol=function(e,t,n){var a,r,i,o,s,l,c,_=n&&n.that,d=!(!n||!n.AS_ENTRIES),u=!(!n||!n.IS_ITERATOR),m=!(!n||!n.INTERRUPTED),p=Cl(t,_,1+d+m),g=function(e){return a&&Rl(a),new vl(!0,e)},E=function(e){return d?(bl(e),m?p(e[0],e[1],g):p(e[0],e[1])):m?p(e,g):p(e)};if(u)a=e;else{if("function"!=typeof(r=Nl(e)))throw TypeError("Target is not iterable");if(Tl(r)){for(i=0,o=fl(e.length);o>i;i++)if((s=E(e[i]))&&s instanceof vl)return s;return new vl(!1)}a=r.call(e)}for(l=a.next;!(c=l.call(a)).done;){try{s=E(c.value)}catch(e){throw Rl(a),e}if("object"==typeof s&&s&&s instanceof vl)return s}return new vl(!1)},hl=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e},yl=Qn,Il=p,Al=Gn,Dl=Ie.exports,Ml=ol.exports,Ll=Ol,wl=hl,xl=T,Pl=E,kl=Fo,Ul=os,Fl=va,Bl=function(e,t,n){var a=-1!==e.indexOf("Map"),r=-1!==e.indexOf("Weak"),i=a?"set":"add",o=Il[e],s=o&&o.prototype,l=o,c={},_=function(e){var t=s[e];Dl(s,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(r&&!xl(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return r&&!xl(e)?void 0:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(r&&!xl(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(Al(e,"function"!=typeof o||!(r||s.forEach&&!Pl((function(){(new o).entries().next()})))))l=n.getConstructor(t,e,a,i),Ml.REQUIRED=!0;else if(Al(e,!0)){var d=new l,u=d[i](r?{}:-0,1)!=d,m=Pl((function(){d.has(1)})),p=kl((function(e){new o(e)})),g=!r&&Pl((function(){for(var e=new o,t=5;t--;)e[i](t,t);return!e.has(-0)}));p||((l=t((function(t,n){wl(t,l,e);var r=Fl(new o,t,l);return null!=n&&Ll(n,r[i],{that:r,AS_ENTRIES:a}),r}))).prototype=s,s.constructor=l),(m||g)&&(_("delete"),_("has"),a&&_("get")),(g||u)&&_(i),r&&s.clear&&delete s.clear}return c[e]=l,yl({global:!0,forced:l!=o},c),Ul(l,e),r||n.setStrong(l,e,a),l},Gl=Ie.exports,Yl=oe,Hl=b,Vl=S,ql=Oe("species"),zl=function(e){var t=Yl(e),n=Hl.f;Vl&&t&&!t[ql]&&n(t,ql,{configurable:!0,get:function(){return this}})},Wl=b.f,$l=Va,Ql=function(e,t,n){for(var a in t)Gl(e,a,t[a],n);return e},Kl=qi,jl=hl,Xl=Ol,Zl=Os,Jl=zl,ec=S,tc=ol.exports.fastKey,nc=nt.set,ac=nt.getterFor,rc={getConstructor:function(e,t,n,a){var r=e((function(e,i){jl(e,r,t),nc(e,{type:t,index:$l(null),first:void 0,last:void 0,size:0}),ec||(e.size=0),null!=i&&Xl(i,e[a],{that:e,AS_ENTRIES:n})})),i=ac(t),o=function(e,t,n){var a,r,o=i(e),l=s(e,t);return l?l.value=n:(o.last=l={index:r=tc(t,!0),key:t,value:n,previous:a=o.last,next:void 0,removed:!1},o.first||(o.first=l),a&&(a.next=l),ec?o.size++:e.size++,"F"!==r&&(o.index[r]=l)),e},s=function(e,t){var n,a=i(e),r=tc(t);if("F"!==r)return a.index[r];for(n=a.first;n;n=n.next)if(n.key==t)return n};return Ql(r.prototype,{clear:function(){for(var e=i(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete t[n.index],n=n.next;e.first=e.last=void 0,ec?e.size=0:this.size=0},delete:function(e){var t=this,n=i(t),a=s(t,e);if(a){var r=a.next,o=a.previous;delete n.index[a.index],a.removed=!0,o&&(o.next=r),r&&(r.previous=o),n.first==a&&(n.first=r),n.last==a&&(n.last=o),ec?n.size--:t.size--}return!!a},forEach:function(e){for(var t,n=i(this),a=Kl(e,arguments.length>1?arguments[1]:void 0,3);t=t?t.next:n.first;)for(a(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!s(this,e)}}),Ql(r.prototype,n?{get:function(e){var t=s(this,e);return t&&t.value},set:function(e,t){return o(this,0===e?0:e,t)}}:{add:function(e){return o(this,e=0===e?0:e,e)}}),ec&&Wl(r.prototype,"size",{get:function(){return i(this).size}}),r},setStrong:function(e,t,n){var a=t+" Iterator",r=ac(t),i=ac(a);Zl(e,t,(function(e,t){nc(this,{type:a,target:e,state:r(e),kind:t,last:void 0})}),(function(){for(var e=i(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),Jl(t)}};Bl("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),rc);var ic=p,oc=Hi,sc=il,lc=F,cc=Oe,_c=cc("iterator"),dc=cc("toStringTag"),uc=sc.values;for(var mc in oc){var pc=ic[mc],gc=pc&&pc.prototype;if(gc){if(gc[_c]!==uc)try{lc(gc,_c,uc)}catch(Am){gc[_c]=uc}if(gc[dc]||lc(gc,dc,mc),oc[mc])for(var Ec in sc)if(gc[Ec]!==sc[Ec])try{lc(gc,Ec,sc[Ec])}catch(Am){gc[Ec]=sc[Ec]}}}Bl("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),rc);var Sc=Qn,bc=sl,Tc=E,fc=T,Cc=ol.exports.onFreeze,Nc=Object.freeze;Sc({target:"Object",stat:!0,forced:Tc((function(){Nc(1)})),sham:!bc},{freeze:function(e){return Nc&&fc(e)?Nc(Cc(e)):e}});var Rc={},vc=Vt,Oc=Zt.f,hc={}.toString,yc="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];Rc.f=function(e){return yc&&"[object Window]"==hc.call(e)?function(e){try{return Oc(e)}catch(e){return yc.slice()}}(e):Oc(vc(e))};var Ic=Qn,Ac=E,Dc=Rc.f;Ic({target:"Object",stat:!0,forced:Ac((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:Dc});var Mc=Qn,Lc=E,wc=T,xc=Object.isFrozen;Mc({target:"Object",stat:!0,forced:Lc((function(){xc(1)}))},{isFrozen:function(e){return!wc(e)||!!xc&&xc(e)}});var Pc=Qn,kc=E,Uc=jn,Fc=T,Bc=K,Gc=rn,Yc=ea,Hc=Qi,Vc=ra,qc=de,zc=Oe("isConcatSpreadable"),Wc=qc>=51||!kc((function(){var e=[];return e[zc]=!1,e.concat()[0]!==e})),$c=Vc("concat"),Qc=function(e){if(!Fc(e))return!1;var t=e[zc];return void 0!==t?!!t:Uc(e)};Pc({target:"Array",proto:!0,forced:!Wc||!$c},{concat:function(e){var t,n,a,r,i,o=Bc(this),s=Hc(o,0),l=0;for(t=-1,a=arguments.length;t<a;t++)if(Qc(i=-1===t?o:arguments[t])){if(l+(r=Gc(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<r;n++,l++)n in i&&Yc(s,l,i[n])}else{if(l>=9007199254740991)throw TypeError("Maximum allowed index exceeded");Yc(s,l++,i)}return s.length=l,s}});var Kc=S,jc=p,Xc=Gn,Zc=va,Jc=b.f,e_=Zt.f,t_=_i,n_=vt,a_=br,r_=Ie.exports,i_=E,o_=nt.enforce,s_=zl,l_=Oe("match"),c_=jc.RegExp,__=c_.prototype,d_=/a/g,u_=/a/g,m_=new c_(d_)!==d_,p_=a_.UNSUPPORTED_Y;if(Kc&&Xc("RegExp",!m_||p_||i_((function(){return u_[l_]=!1,c_(d_)!=d_||c_(u_)==u_||"/a/i"!=c_(d_,"i")})))){for(var g_=function(e,t){var n,a=this instanceof g_,r=t_(e),i=void 0===t;if(!a&&r&&e.constructor===g_&&i)return e;m_?r&&!i&&(e=e.source):e instanceof g_&&(i&&(t=n_.call(e)),e=e.source),p_&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var o=Zc(m_?new c_(e,t):c_(e,t),a?this:__,g_);p_&&n&&(o_(o).sticky=!0);return o},E_=function(e){e in g_||Jc(g_,e,{configurable:!0,get:function(){return c_[e]},set:function(t){c_[e]=t}})},S_=e_(c_),b_=0;S_.length>b_;)E_(S_[b_++]);__.constructor=g_,g_.prototype=__,r_(jc,"RegExp",g_)}s_("RegExp");var T_=S,f_=E,C_=ya,N_=Rn,R_=xt,v_=K,O_=Gt,h_=Object.assign,y_=Object.defineProperty,I_=!h_||f_((function(){if(T_&&1!==h_({b:1},h_(y_({},"a",{enumerable:!0,get:function(){y_(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),a="abcdefghijklmnopqrst";return e[n]=7,a.split("").forEach((function(e){t[e]=e})),7!=h_({},e)[n]||C_(h_({},t)).join("")!=a}))?function(e,t){for(var n=v_(e),a=arguments.length,r=1,i=N_.f,o=R_.f;a>r;)for(var s,l=O_(arguments[r++]),c=i?C_(l).concat(i(l)):C_(l),_=c.length,d=0;_>d;)s=c[d++],T_&&!o.call(l,s)||(n[s]=l[s]);return n}:h_;Qn({target:"Object",stat:!0,forced:Object.assign!==I_},{assign:I_});var A_=K,D_=ya;Qn({target:"Object",stat:!0,forced:E((function(){D_(1)}))},{keys:function(e){return D_(A_(e))}});var M_=pn.includes,L_=Xs;Qn({target:"Array",proto:!0},{includes:function(e){return M_(this,e,arguments.length>1?arguments[1]:void 0)}}),L_("includes");var w_=Qn,x_=no.findIndex,P_=Xs,k_=!0;"findIndex"in[]&&Array(1).findIndex((function(){k_=!1})),w_({target:"Array",proto:!0,forced:k_},{findIndex:function(e){return x_(this,e,arguments.length>1?arguments[1]:void 0)}}),P_("findIndex");var U_=_i,F_=function(e){if(U_(e))throw TypeError("The method doesn't accept regular expressions");return e},B_=Oe("match"),G_=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[B_]=!1,"/./"[e](t)}catch(e){}}return!1},Y_=F_,H_=$;Qn({target:"String",proto:!0,forced:!G_("includes")},{includes:function(e){return!!~String(H_(this)).indexOf(Y_(e),arguments.length>1?arguments[1]:void 0)}});var V_={},q_=Oe;V_.f=q_;var z_=ne,W_=Z,$_=V_,Q_=b.f,K_=Qn,j_=p,X_=oe,Z_=S,J_=pe,ed=ge,td=E,nd=Z,ad=jn,rd=T,id=y,od=K,sd=Vt,ld=A,cd=P,_d=Va,dd=ya,ud=Zt,md=Rc,pd=Rn,gd=wt,Ed=b,Sd=xt,bd=F,Td=Ie.exports,fd=g.exports,Cd=He,Nd=te,Rd=Oe,vd=V_,Od=function(e){var t=z_.Symbol||(z_.Symbol={});W_(t,e)||Q_(t,e,{value:$_.f(e)})},hd=os,yd=nt,Id=no.forEach,Ad=Ye("hidden"),Dd=Rd("toPrimitive"),Md=yd.set,Ld=yd.getterFor("Symbol"),wd=Object.prototype,xd=j_.Symbol,Pd=X_("JSON","stringify"),kd=gd.f,Ud=Ed.f,Fd=md.f,Bd=Sd.f,Gd=fd("symbols"),Yd=fd("op-symbols"),Hd=fd("string-to-symbol-registry"),Vd=fd("symbol-to-string-registry"),qd=fd("wks"),zd=j_.QObject,Wd=!zd||!zd.prototype||!zd.prototype.findChild,$d=Z_&&td((function(){return 7!=_d(Ud({},"a",{get:function(){return Ud(this,"a",{value:7}).a}})).a}))?function(e,t,n){var a=kd(wd,t);a&&delete wd[t],Ud(e,t,n),a&&e!==wd&&Ud(wd,t,a)}:Ud,Qd=function(e,t){var n=Gd[e]=_d(xd.prototype);return Md(n,{type:"Symbol",tag:e,description:t}),Z_||(n.description=t),n},Kd=ed?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof xd},jd=function(e,t,n){e===wd&&jd(Yd,t,n),id(e);var a=ld(t,!0);return id(n),nd(Gd,a)?(n.enumerable?(nd(e,Ad)&&e[Ad][a]&&(e[Ad][a]=!1),n=_d(n,{enumerable:cd(0,!1)})):(nd(e,Ad)||Ud(e,Ad,cd(1,{})),e[Ad][a]=!0),$d(e,a,n)):Ud(e,a,n)},Xd=function(e,t){id(e);var n=sd(t),a=dd(n).concat(tu(n));return Id(a,(function(t){Z_&&!Zd.call(n,t)||jd(e,t,n[t])})),e},Zd=function(e){var t=ld(e,!0),n=Bd.call(this,t);return!(this===wd&&nd(Gd,t)&&!nd(Yd,t))&&(!(n||!nd(this,t)||!nd(Gd,t)||nd(this,Ad)&&this[Ad][t])||n)},Jd=function(e,t){var n=sd(e),a=ld(t,!0);if(n!==wd||!nd(Gd,a)||nd(Yd,a)){var r=kd(n,a);return!r||!nd(Gd,a)||nd(n,Ad)&&n[Ad][a]||(r.enumerable=!0),r}},eu=function(e){var t=Fd(sd(e)),n=[];return Id(t,(function(e){nd(Gd,e)||nd(Cd,e)||n.push(e)})),n},tu=function(e){var t=e===wd,n=Fd(t?Yd:sd(e)),a=[];return Id(n,(function(e){!nd(Gd,e)||t&&!nd(wd,e)||a.push(Gd[e])})),a};(J_||(Td((xd=function(){if(this instanceof xd)throw TypeError("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,t=Nd(e),n=function(e){this===wd&&n.call(Yd,e),nd(this,Ad)&&nd(this[Ad],t)&&(this[Ad][t]=!1),$d(this,t,cd(1,e))};return Z_&&Wd&&$d(wd,t,{configurable:!0,set:n}),Qd(t,e)}).prototype,"toString",(function(){return Ld(this).tag})),Td(xd,"withoutSetter",(function(e){return Qd(Nd(e),e)})),Sd.f=Zd,Ed.f=jd,gd.f=Jd,ud.f=md.f=eu,pd.f=tu,vd.f=function(e){return Qd(Rd(e),e)},Z_&&(Ud(xd.prototype,"description",{configurable:!0,get:function(){return Ld(this).description}}),Td(wd,"propertyIsEnumerable",Zd,{unsafe:!0}))),K_({global:!0,wrap:!0,forced:!J_,sham:!J_},{Symbol:xd}),Id(dd(qd),(function(e){Od(e)})),K_({target:"Symbol",stat:!0,forced:!J_},{for:function(e){var t=String(e);if(nd(Hd,t))return Hd[t];var n=xd(t);return Hd[t]=n,Vd[n]=t,n},keyFor:function(e){if(!Kd(e))throw TypeError(e+" is not a symbol");if(nd(Vd,e))return Vd[e]},useSetter:function(){Wd=!0},useSimple:function(){Wd=!1}}),K_({target:"Object",stat:!0,forced:!J_,sham:!Z_},{create:function(e,t){return void 0===t?_d(e):Xd(_d(e),t)},defineProperty:jd,defineProperties:Xd,getOwnPropertyDescriptor:Jd}),K_({target:"Object",stat:!0,forced:!J_},{getOwnPropertyNames:eu,getOwnPropertySymbols:tu}),K_({target:"Object",stat:!0,forced:td((function(){pd.f(1)}))},{getOwnPropertySymbols:function(e){return pd.f(od(e))}}),Pd)&&K_({target:"JSON",stat:!0,forced:!J_||td((function(){var e=xd();return"[null]"!=Pd([e])||"{}"!=Pd({a:e})||"{}"!=Pd(Object(e))}))},{stringify:function(e,t,n){for(var a,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(a=t,(rd(t)||void 0!==e)&&!Kd(e))return ad(t)||(t=function(e,t){if("function"==typeof a&&(t=a.call(this,e,t)),!Kd(t))return t}),r[1]=t,Pd.apply(null,r)}});xd.prototype[Dd]||bd(xd.prototype,Dd,xd.prototype.valueOf),hd(xd,"Symbol"),Cd[Ad]=!0;var nu=Qn,au=S,ru=p,iu=Z,ou=T,su=b.f,lu=Ln,cu=ru.Symbol;if(au&&"function"==typeof cu&&(!("description"in cu.prototype)||void 0!==cu().description)){var _u={},du=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),t=this instanceof du?new cu(e):void 0===e?cu():cu(e);return""===e&&(_u[t]=!0),t};lu(du,cu);var uu=du.prototype=cu.prototype;uu.constructor=du;var mu=uu.toString,pu="Symbol(test)"==String(cu("test")),gu=/^Symbol\((.*)\)[^)]+$/;su(uu,"description",{configurable:!0,get:function(){var e=ou(this)?this.valueOf():this,t=mu.call(e);if(iu(_u,e))return"";var n=pu?t.slice(7,-1):t.replace(gu,"$1");return""===n?void 0:n}}),nu({global:!0,forced:!0},{Symbol:du})}var Eu=Qn,Su=no.find,bu=Xs,Tu=!0;"find"in[]&&Array(1).find((function(){Tu=!1})),Eu({target:"Array",proto:!0,forced:Tu},{find:function(e){return Su(this,e,arguments.length>1?arguments[1]:void 0)}}),bu("find");var fu,Cu=Qn,Nu=wt.f,Ru=rn,vu=F_,Ou=$,hu=G_,yu="".startsWith,Iu=Math.min,Au=hu("startsWith");Cu({target:"String",proto:!0,forced:!!(Au||(fu=Nu(String.prototype,"startsWith"),!fu||fu.writable))&&!Au},{startsWith:function(e){var t=String(Ou(this));vu(e);var n=Ru(Iu(arguments.length>1?arguments[1]:void 0,t.length)),a=String(e);return yu?yu.call(t,a,n):t.slice(n,n+a.length)===a}});var Du=no.filter;Qn({target:"Array",proto:!0,forced:!ra("filter")},{filter:function(e){return Du(this,e,arguments.length>1?arguments[1]:void 0)}});var Mu=S,Lu=b.f,wu=Function.prototype,xu=wu.toString,Pu=/^\s*function ([^ (]*)/;function ku(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((function(n){var a=t[n];"object"!=e(a)||Object.isFrozen(a)||ku(a)})),t}Mu&&!("name"in wu)&&Lu(wu,"name",{configurable:!0,get:function(){try{return xu.call(this).match(Pu)[1]}catch(e){return""}}});var Uu=ku,Fu=ku;Uu.default=Fu;var Bu=function(){function e(n){t(this,e),void 0===n.data&&(n.data={}),this.data=n.data,this.isMatchIgnored=!1}return a(e,[{key:"ignoreMatch",value:function(){this.isMatchIgnored=!0}}]),e}();function Gu(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Yu(e){var t=Object.create(null);for(var n in e)t[n]=e[n];for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return r.forEach((function(e){for(var n in e)t[n]=e[n]})),t}var Hu=function(e){return!!e.kind},Vu=function(){function e(n,a){t(this,e),this.buffer="",this.classPrefix=a.classPrefix,n.walk(this)}return a(e,[{key:"addText",value:function(e){this.buffer+=Gu(e)}},{key:"openNode",value:function(e){if(Hu(e)){var t=e.kind;e.sublanguage||(t="".concat(this.classPrefix).concat(t)),this.span(t)}}},{key:"closeNode",value:function(e){Hu(e)&&(this.buffer+="</span>")}},{key:"value",value:function(){return this.buffer}},{key:"span",value:function(e){this.buffer+='<span class="'.concat(e,'">')}}]),e}(),qu=function(){function e(){t(this,e),this.rootNode={children:[]},this.stack=[this.rootNode]}return a(e,[{key:"top",get:function(){return this.stack[this.stack.length-1]}},{key:"root",get:function(){return this.rootNode}},{key:"add",value:function(e){this.top.children.push(e)}},{key:"openNode",value:function(e){var t={kind:e,children:[]};this.add(t),this.stack.push(t)}},{key:"closeNode",value:function(){if(this.stack.length>1)return this.stack.pop()}},{key:"closeAllNodes",value:function(){for(;this.closeNode(););}},{key:"toJSON",value:function(){return JSON.stringify(this.rootNode,null,4)}},{key:"walk",value:function(e){return this.constructor._walk(e,this.rootNode)}}],[{key:"_walk",value:function(e,t){var n=this;return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach((function(t){return n._walk(e,t)})),e.closeNode(t)),e}},{key:"_collapse",value:function(t){"string"!=typeof t&&t.children&&(t.children.every((function(e){return"string"==typeof e}))?t.children=[t.children.join("")]:t.children.forEach((function(t){e._collapse(t)})))}}]),e}(),zu=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(r,qu);var n=s(r);function r(e){var a;return t(this,r),(a=n.call(this)).options=e,a}return a(r,[{key:"addKeyword",value:function(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}},{key:"addText",value:function(e){""!==e&&this.add(e)}},{key:"addSublanguage",value:function(e,t){var n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)}},{key:"toHTML",value:function(){return new Vu(this,this.options).value()}},{key:"finalize",value:function(){return!0}}]),r}();function Wu(e){return e?"string"==typeof e?e:e.source:null}function $u(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Wu(e)})).join("");return a}function Qu(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return Wu(e)})).join("|")+")";return a}var Ku=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;var ju="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Xu={begin:"\\\\[\\s\\S]",relevance:0},Zu={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[Xu]},Ju={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[Xu]},em={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},tm=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=Yu({className:"comment",begin:e,end:t,contains:[]},n);return a.contains.push(em),a.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),a},nm=tm("//","$"),am=tm("/\\*","\\*/"),rm=tm("#","$"),im={className:"number",begin:"\\b\\d+(\\.\\d+)?",relevance:0},om={className:"number",begin:ju,relevance:0},sm={className:"number",begin:"\\b(0b[01]+)",relevance:0},lm={className:"number",begin:"\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},cm={begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[Xu,{begin:/\[/,end:/\]/,relevance:0,contains:[Xu]}]}]},_m={className:"title",begin:"[a-zA-Z]\\w*",relevance:0},dm={className:"title",begin:"[a-zA-Z_]\\w*",relevance:0},um={begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},mm=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:"[a-zA-Z]\\w*",UNDERSCORE_IDENT_RE:"[a-zA-Z_]\\w*",NUMBER_RE:"\\b\\d+(\\.\\d+)?",C_NUMBER_RE:ju,BINARY_NUMBER_RE:"\\b(0b[01]+)",RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=/^#![ ]*\//;return e.binary&&(e.begin=$u(t,/.*\b/,e.binary,/\b.*/)),Yu({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":function(e,t){0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:Xu,APOS_STRING_MODE:Zu,QUOTE_STRING_MODE:Ju,PHRASAL_WORDS_MODE:em,COMMENT:tm,C_LINE_COMMENT_MODE:nm,C_BLOCK_COMMENT_MODE:am,HASH_COMMENT_MODE:rm,NUMBER_MODE:im,C_NUMBER_MODE:om,BINARY_NUMBER_MODE:sm,CSS_NUMBER_MODE:lm,REGEXP_MODE:cm,TITLE_MODE:_m,UNDERSCORE_TITLE_MODE:dm,METHOD_GUARD:um,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":function(e,t){t.data._beginMatch=e[1]},"on:end":function(e,t){t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}});function pm(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function gm(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=pm,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function Em(e,t){Array.isArray(e.illegal)&&(e.illegal=Qu.apply(void 0,c(e.illegal)))}function Sm(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function bm(e,t){void 0===e.relevance&&(e.relevance=1)}var Tm=["of","and","for","in","not","or","if","then","parent","list","value"];function fm(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"keyword",a={};return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((function(n){Object.assign(a,fm(e[n],t,n))})),a;function r(e,n){t&&(n=n.map((function(e){return e.toLowerCase()}))),n.forEach((function(t){var n=t.split("|");a[n[0]]=[e,Cm(n[0],n[1])]}))}}function Cm(e,t){return t?Number(t):function(e){return Tm.includes(e.toLowerCase())}(e)?0:1}function Nm(n,r){function i(e,t){return new RegExp(Wu(e),"m"+(n.case_insensitive?"i":"")+(t?"g":""))}r.plugins;var o=function(){function e(){t(this,e),this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}return a(e,[{key:"addRule",value:function(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=function(e){return new RegExp(e.toString()+"|").exec("").length-1}(e)+1}},{key:"compile",value:function(){0===this.regexes.length&&(this.exec=function(){return null});var e=this.regexes.map((function(e){return e[1]}));this.matcherRe=i(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"|",n=0;return e.map((function(e){for(var t=n+=1,a=Wu(e),r="";a.length>0;){var i=Ku.exec(a);if(!i){r+=a;break}r+=a.substring(0,i.index),a=a.substring(i.index+i[0].length),"\\"===i[0][0]&&i[1]?r+="\\"+String(Number(i[1])+t):(r+=i[0],"("===i[0]&&n++)}return r})).map((function(e){return"(".concat(e,")")})).join(t)}(e),!0),this.lastIndex=0}},{key:"exec",value:function(e){this.matcherRe.lastIndex=this.lastIndex;var t=this.matcherRe.exec(e);if(!t)return null;var n=t.findIndex((function(e,t){return t>0&&void 0!==e})),a=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,a)}}]),e}(),s=function(){function e(){t(this,e),this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}return a(e,[{key:"getMatcher",value:function(e){if(this.multiRegexes[e])return this.multiRegexes[e];var t=new o;return this.rules.slice(e).forEach((function(e){var n=l(e,2),a=n[0],r=n[1];return t.addRule(a,r)})),t.compile(),this.multiRegexes[e]=t,t}},{key:"resumingScanAtSamePosition",value:function(){return 0!==this.regexIndex}},{key:"considerAll",value:function(){this.regexIndex=0}},{key:"addRule",value:function(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}},{key:"exec",value:function(e){var t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;var n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{var a=this.getMatcher(0);a.lastIndex=this.lastIndex+1,n=a.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}]),e}();if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=Yu(n.classNameAliases||{}),function t(a,r){var o,l=a;if(a.isCompiled)return l;[Sm].forEach((function(e){return e(a,r)})),n.compilerExtensions.forEach((function(e){return e(a,r)})),a.__beforeBegin=null,[gm,Em,bm].forEach((function(e){return e(a,r)})),a.isCompiled=!0;var _=null;if("object"===e(a.keywords)&&(_=a.keywords.$pattern,delete a.keywords.$pattern),a.keywords&&(a.keywords=fm(a.keywords,n.case_insensitive)),a.lexemes&&_)throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return _=_||a.lexemes||/\w+/,l.keywordPatternRe=i(_,!0),r&&(a.begin||(a.begin=/\B|\b/),l.beginRe=i(a.begin),a.endSameAsBegin&&(a.end=a.begin),a.end||a.endsWithParent||(a.end=/\B|\b/),a.end&&(l.endRe=i(a.end)),l.terminatorEnd=Wu(a.end)||"",a.endsWithParent&&r.terminatorEnd&&(l.terminatorEnd+=(a.end?"|":"")+r.terminatorEnd)),a.illegal&&(l.illegalRe=i(a.illegal)),a.contains||(a.contains=[]),a.contains=(o=[]).concat.apply(o,c(a.contains.map((function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return Yu(e,{variants:null},t)})));if(e.cachedVariants)return e.cachedVariants;if(Rm(e))return Yu(e,{starts:e.starts?Yu(e.starts):null});if(Object.isFrozen(e))return Yu(e);return e}("self"===e?a:e)})))),a.contains.forEach((function(e){t(e,l)})),a.starts&&t(a.starts,r),l.matcher=function(e){var t=new s;return e.contains.forEach((function(e){return t.addRule(e.begin,{rule:e,type:"begin"})})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(l),l}(n)}function Rm(e){return!!e&&(e.endsWithParent||Rm(e.starts))}function vm(e){var t={props:["language","code","autodetect"],data:function(){return{detectedLanguage:"",unknownLanguage:!1}},computed:{className:function(){return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted:function(){if(!this.autoDetect&&!e.getLanguage(this.language))return console.warn('The language "'.concat(this.language,'" you specified could not be found.')),this.unknownLanguage=!0,Gu(this.code);var t={};return this.autoDetect?(t=e.highlightAuto(this.code),this.detectedLanguage=t.language):(t=e.highlight(this.language,this.code,this.ignoreIllegals),this.detectedLanguage=this.language),t.value},autoDetect:function(){return!this.language||(e=this.autodetect,Boolean(e||""===e));var e},ignoreIllegals:function(){return!0}},render:function(e){return e("pre",{},[e("code",{class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{Component:t,VuePlugin:{install:function(e){e.component("highlightjs",t)}}}}var Om={"after:highlightElement":function(e){var t=e.el,n=e.result,a=e.text,r=ym(t);if(r.length){var i=document.createElement("div");i.innerHTML=n.value,n.value=function(e,t,n){var a=0,r="",i=[];function o(){return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset<t[0].offset?e:t:"start"===t[0].event?e:t:e.length?e:t}function s(e){function t(e){return" "+e.nodeName+'="'+Gu(e.value)+'"'}r+="<"+hm(e)+[].map.call(e.attributes,t).join("")+">"}function l(e){r+="</"+hm(e)+">"}function c(e){("start"===e.event?s:l)(e.node)}for(;e.length||t.length;){var _=o();if(r+=Gu(n.substring(a,_[0].offset)),a=_[0].offset,_===e){i.reverse().forEach(l);do{c(_.splice(0,1)[0]),_=o()}while(_===e&&_.length&&_[0].offset===a);i.reverse().forEach(s)}else"start"===_[0].event?i.push(_[0].node):i.pop(),c(_.splice(0,1)[0])}return r+Gu(n.substr(a))}(r,ym(i),a)}}};function hm(e){return e.nodeName.toLowerCase()}function ym(e){var t=[];return function e(n,a){for(var r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?a+=r.nodeValue.length:1===r.nodeType&&(t.push({event:"start",offset:a,node:r}),a=e(r,a),hm(r).match(/br|hr|img|input/)||t.push({event:"stop",offset:a,node:r}));return a}(e,0),t}var Im={},Am=function(e){console.error(e)},Dm=function(e){for(var t,n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];(t=console).log.apply(t,["WARN: ".concat(e)].concat(a))},Mm=function(e,t){Im["".concat(e,"/").concat(t)]||(console.log("Deprecated as of ".concat(e,". ").concat(t)),Im["".concat(e,"/").concat(t)]=!0)},Lm=Gu,wm=Yu,xm=Symbol("nomatch"),Pm=function(t){var n=Object.create(null),a=Object.create(null),r=[],i=!0,o=/(^(<[^>]+>|\t|)+|\n)/gm,s="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]},_={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:zu};function d(e){return _.noHighlightRe.test(e)}function u(t,n,a,r){var i="",o="";"object"===e(n)?(i=t,a=n.ignoreIllegals,o=n.language,r=void 0):(Mm("10.7.0","highlight(lang, code, ...args) has been deprecated."),Mm("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),o=t,i=n);var s={code:i,language:o};v("before:highlight",s);var l=s.result?s.result:m(s.language,s.code,a,r);return l.code=s.code,v("after:highlight",l),l}function m(e,t,a,o){function c(e,t){var n=N.case_insensitive?t[0].toLowerCase():t[0];return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]}function d(){null!=O.subLanguage?function(){if(""!==I){var e=null;if("string"==typeof O.subLanguage){if(!n[O.subLanguage])return void y.addText(I);e=m(O.subLanguage,I,!0,h[O.subLanguage]),h[O.subLanguage]=e.top}else e=p(I,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(A+=e.relevance),y.addSublanguage(e.emitter,e.language)}}():function(){if(O.keywords){var e=0;O.keywordPatternRe.lastIndex=0;for(var t=O.keywordPatternRe.exec(I),n="";t;){n+=I.substring(e,t.index);var a=c(O,t);if(a){var r=l(a,2),i=r[0],o=r[1];if(y.addText(n),n="",A+=o,i.startsWith("_"))n+=t[0];else{var s=N.classNameAliases[i]||i;y.addKeyword(t[0],s)}}else n+=t[0];e=O.keywordPatternRe.lastIndex,t=O.keywordPatternRe.exec(I)}n+=I.substr(e),y.addText(n)}else y.addText(I)}(),I=""}function u(e){return e.className&&y.openNode(N.classNameAliases[e.className]||e.className),O=Object.create(e,{parent:{value:O}})}function g(e,t,n){var a=function(e,t){var n=e&&e.exec(t);return n&&0===n.index}(e.endRe,n);if(a){if(e["on:end"]){var r=new Bu(e);e["on:end"](t,r),r.isMatchIgnored&&(a=!1)}if(a){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return g(e.parent,t,n)}function E(e){return 0===O.matcher.regexIndex?(I+=e[0],1):(L=!0,0)}function S(e){for(var t=e[0],n=e.rule,a=new Bu(n),r=0,i=[n.__beforeBegin,n["on:begin"]];r<i.length;r++){var o=i[r];if(o&&(o(e,a),a.isMatchIgnored))return E(t)}return n&&n.endSameAsBegin&&(n.endRe=new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")),n.skip?I+=t:(n.excludeBegin&&(I+=t),d(),n.returnBegin||n.excludeBegin||(I=t)),u(n),n.returnBegin?0:t.length}function b(e){var n=e[0],a=t.substr(e.index),r=g(O,e,a);if(!r)return xm;var i=O;i.skip?I+=n:(i.returnEnd||i.excludeEnd||(I+=n),d(),i.excludeEnd&&(I=n));do{O.className&&y.closeNode(),O.skip||O.subLanguage||(A+=O.relevance),O=O.parent}while(O!==r.parent);return r.starts&&(r.endSameAsBegin&&(r.starts.endRe=r.endRe),u(r.starts)),i.returnEnd?0:n.length}var T={};function f(n,r){var o=r&&r[0];if(I+=n,null==o)return d(),0;if("begin"===T.type&&"end"===r.type&&T.index===r.index&&""===o){if(I+=t.slice(r.index,r.index+1),!i){var s=new Error("0 width match regex");throw s.languageName=e,s.badRule=T.rule,s}return 1}if(T=r,"begin"===r.type)return S(r);if("illegal"===r.type&&!a){var l=new Error('Illegal lexeme "'+o+'" for mode "'+(O.className||"<unnamed>")+'"');throw l.mode=O,l}if("end"===r.type){var c=b(r);if(c!==xm)return c}if("illegal"===r.type&&""===o)return 1;if(M>1e5&&M>3*r.index)throw new Error("potential infinite loop, way more iterations than matches");return I+=o,o.length}var N=C(e);if(!N)throw Am(s.replace("{}",e)),new Error('Unknown language: "'+e+'"');var R=Nm(N,{plugins:r}),v="",O=o||R,h={},y=new _.__emitter(_);!function(){for(var e=[],t=O;t!==N;t=t.parent)t.className&&e.unshift(t.className);e.forEach((function(e){return y.openNode(e)}))}();var I="",A=0,D=0,M=0,L=!1;try{for(O.matcher.considerAll();;){M++,L?L=!1:O.matcher.considerAll(),O.matcher.lastIndex=D;var w=O.matcher.exec(t);if(!w)break;var x=f(t.substring(D,w.index),w);D=w.index+x}return f(t.substr(D)),y.closeAllNodes(),y.finalize(),v=y.toHTML(),{relevance:Math.floor(A),value:v,language:e,illegal:!1,emitter:y,top:O}}catch(n){if(n.message&&n.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:n.message,context:t.slice(D-100,D+100),mode:n.mode},sofar:v,relevance:0,value:Lm(t),emitter:y};if(i)return{illegal:!1,relevance:0,value:Lm(t),emitter:y,language:e,top:O,errorRaised:n};throw n}}function p(e,t){t=t||_.languages||Object.keys(n);var a=function(e){var t={relevance:0,emitter:new _.__emitter(_),value:Lm(e),illegal:!1,top:c};return t.emitter.addText(e),t}(e),r=t.filter(C).filter(R).map((function(t){return m(t,e,!1)}));r.unshift(a);var i=l(r.sort((function(e,t){if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(C(e.language).supersetOf===t.language)return 1;if(C(t.language).supersetOf===e.language)return-1}return 0})),2),o=i[0],s=i[1],d=o;return d.second_best=s,d}var g={"before:highlightElement":function(e){var t=e.el;_.useBR&&(t.innerHTML=t.innerHTML.replace(/\n/g,"").replace(/<br[ /]*>/g,"\n"))},"after:highlightElement":function(e){var t=e.result;_.useBR&&(t.value=t.value.replace(/\n/g,"<br>"))}},E=/^(<[^>]+>|\t)+/gm,S={"after:highlightElement":function(e){var t=e.result;_.tabReplace&&(t.value=t.value.replace(E,(function(e){return e.replace(/\t/g,_.tabReplace)})))}};function b(e){var t=function(e){var t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";var n=_.languageDetectRe.exec(t);if(n){var a=C(n[1]);return a||(Dm(s.replace("{}",n[1])),Dm("Falling back to no-highlight mode for this block.",e)),a?n[1]:"no-highlight"}return t.split(/\s+/).find((function(e){return d(e)||C(e)}))}(e);if(!d(t)){v("before:highlightElement",{el:e,language:t});var n=e.textContent,r=t?u(n,{language:t,ignoreIllegals:!0}):p(n);v("after:highlightElement",{el:e,result:r,text:n}),e.innerHTML=r.value,function(e,t,n){var r=t?a[t]:n;e.classList.add("hljs"),r&&e.classList.add(r)}(e,t,r.language),e.result={language:r.language,re:r.relevance,relavance:r.relevance},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.relevance,relavance:r.second_best.relevance})}}var T=!1;function f(){"loading"!==document.readyState?document.querySelectorAll("pre code").forEach(b):T=!0}function C(e){return e=(e||"").toLowerCase(),n[e]||n[a[e]]}function N(e,t){var n=t.languageName;"string"==typeof e&&(e=[e]),e.forEach((function(e){a[e.toLowerCase()]=n}))}function R(e){var t=C(e);return t&&!t.disableAutodetect}function v(e,t){var n=e;r.forEach((function(e){e[n]&&e[n](t)}))}for(var O in"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(function(){T&&f()}),!1),Object.assign(t,{highlight:u,highlightAuto:p,highlightAll:f,fixMarkup:function(e){return Mm("10.2.0","fixMarkup will be removed entirely in v11.0"),Mm("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"),function(e){return _.tabReplace||_.useBR?e.replace(o,(function(e){return"\n"===e?_.useBR?"<br>":e:_.tabReplace?e.replace(/\t/g,_.tabReplace):e})):e}(e)},highlightElement:b,highlightBlock:function(e){return Mm("10.7.0","highlightBlock will be removed entirely in v12.0"),Mm("10.7.0","Please use highlightElement now."),b(e)},configure:function(e){e.useBR&&(Mm("10.3.0","'useBR' will be removed entirely in v11.0"),Mm("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")),_=wm(_,e)},initHighlighting:function e(){e.called||(e.called=!0,Mm("10.6.0","initHighlighting() is deprecated. Use highlightAll() instead."),document.querySelectorAll("pre code").forEach(b))},initHighlightingOnLoad:function(){Mm("10.6.0","initHighlightingOnLoad() is deprecated. Use highlightAll() instead."),T=!0},registerLanguage:function(e,a){var r=null;try{r=a(t)}catch(t){if(Am("Language definition for '{}' could not be registered.".replace("{}",e)),!i)throw t;Am(t),r=c}r.name||(r.name=e),n[e]=r,r.rawDefinition=a.bind(null,t),r.aliases&&N(r.aliases,{languageName:e})},unregisterLanguage:function(e){delete n[e];for(var t=0,r=Object.keys(a);t<r.length;t++){var i=r[t];a[i]===e&&delete a[i]}},listLanguages:function(){return Object.keys(n)},getLanguage:C,registerAliases:N,requireLanguage:function(e){Mm("10.4.0","requireLanguage will be removed entirely in v11."),Mm("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844");var t=C(e);if(t)return t;throw new Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:R,inherit:wm,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=function(t){e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=function(t){e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),r.push(e)},vuePlugin:vm(t).VuePlugin}),t.debugMode=function(){i=!1},t.safeMode=function(){i=!0},t.versionString="10.7.2",mm)"object"===e(mm[O])&&Uu(mm[O]);return Object.assign(t,mm),t.addPlugin(g),t.addPlugin(Om),t.addPlugin(S),t}({});var km=function(e){var t="[A-Za-zА-Яа-яёЁ_][A-Za-zА-Яа-яёЁ_0-9]+",n="далее возврат вызватьисключение выполнить для если и из или иначе иначеесли исключение каждого конецесли конецпопытки конеццикла не новый перейти перем по пока попытка прервать продолжить тогда цикл экспорт ",a="null истина ложь неопределено",r=e.inherit(e.NUMBER_MODE),i={className:"string",begin:'"|\\|',end:'"|$',contains:[{begin:'""'}]},o={begin:"'",end:"'",excludeBegin:!0,excludeEnd:!0,contains:[{className:"number",begin:"\\d{4}([\\.\\\\/:-]?\\d{2}){0,5}"}]},s=e.inherit(e.C_LINE_COMMENT_MODE);return{name:"1C:Enterprise",case_insensitive:!0,keywords:{$pattern:t,keyword:n,built_in:"разделительстраниц разделительстрок символтабуляции ansitooem oemtoansi ввестивидсубконто ввестиперечисление ввестипериод ввестиплансчетов выбранныйплансчетов датагод датамесяц датачисло заголовоксистемы значениевстроку значениеизстроки каталогиб каталогпользователя кодсимв конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лог лог10 максимальноеколичествосубконто названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найтиссылки началопериодаби началостандартногоинтервала начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода обработкаожидания основнойжурналрасчетов основнойплансчетов основнойязык очиститьокносообщений периодстр получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта префиксавтонумерации пропись пустоезначение разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо симв создатьобъект статусвозврата стрколичествострок сформироватьпозициюдокумента счетпокоду текущеевремя типзначения типзначениястр установитьтана установитьтапо фиксшаблон шаблон acos asin atan base64значение base64строка cos exp log log10 pow sin sqrt tan xmlзначение xmlстрока xmlтип xmlтипзнч активноеокно безопасныйрежим безопасныйрежимразделенияданных булево ввестидату ввестизначение ввестистроку ввестичисло возможностьчтенияxml вопрос восстановитьзначение врег выгрузитьжурналрегистрации выполнитьобработкуоповещения выполнитьпроверкуправдоступа вычислить год данныеформывзначение дата день деньгода деньнедели добавитьмесяц заблокироватьданныедляредактирования заблокироватьработупользователя завершитьработусистемы загрузитьвнешнююкомпоненту закрытьсправку записатьjson записатьxml записатьдатуjson записьжурналарегистрации заполнитьзначениясвойств запроситьразрешениепользователя запуститьприложение запуститьсистему зафиксироватьтранзакцию значениевданныеформы значениевстрокувнутр значениевфайл значениезаполнено значениеизстрокивнутр значениеизфайла изxmlтипа импортмоделиxdto имякомпьютера имяпользователя инициализироватьпредопределенныеданные информацияобошибке каталогбиблиотекимобильногоустройства каталогвременныхфайлов каталогдокументов каталогпрограммы кодироватьстроку кодлокализацииинформационнойбазы кодсимвола командасистемы конецгода конецдня конецквартала конецмесяца конецминуты конецнедели конецчаса конфигурациябазыданныхизмененадинамически конфигурацияизменена копироватьданныеформы копироватьфайл краткоепредставлениеошибки лев макс местноевремя месяц мин минута монопольныйрежим найти найтинедопустимыесимволыxml найтиокнопонавигационнойссылке найтипомеченныенаудаление найтипоссылкам найтифайлы началогода началодня началоквартала началомесяца началоминуты началонедели началочаса начатьзапросразрешенияпользователя начатьзапускприложения начатькопированиефайла начатьперемещениефайла начатьподключениевнешнейкомпоненты начатьподключениерасширенияработыскриптографией начатьподключениерасширенияработысфайлами начатьпоискфайлов начатьполучениекаталогавременныхфайлов начатьполучениекаталогадокументов начатьполучениерабочегокаталогаданныхпользователя начатьполучениефайлов начатьпомещениефайла начатьпомещениефайлов начатьсозданиедвоичныхданныхизфайла начатьсозданиекаталога начатьтранзакцию начатьудалениефайлов начатьустановкувнешнейкомпоненты начатьустановкурасширенияработыскриптографией начатьустановкурасширенияработысфайлами неделягода необходимостьзавершениясоединения номерсеансаинформационнойбазы номерсоединенияинформационнойбазы нрег нстр обновитьинтерфейс обновитьнумерациюобъектов обновитьповторноиспользуемыезначения обработкапрерыванияпользователя объединитьфайлы окр описаниеошибки оповестить оповеститьобизменении отключитьобработчикзапросанастроекклиенталицензирования отключитьобработчикожидания отключитьобработчикоповещения открытьзначение открытьиндекссправки открытьсодержаниесправки открытьсправку открытьформу открытьформумодально отменитьтранзакцию очиститьжурналрегистрации очиститьнастройкипользователя очиститьсообщения параметрыдоступа перейтипонавигационнойссылке переместитьфайл подключитьвнешнююкомпоненту подключитьобработчикзапросанастроекклиенталицензирования подключитьобработчикожидания подключитьобработчикоповещения подключитьрасширениеработыскриптографией подключитьрасширениеработысфайлами подробноепредставлениеошибки показатьвводдаты показатьвводзначения показатьвводстроки показатьвводчисла показатьвопрос показатьзначение показатьинформациюобошибке показатьнакарте показатьоповещениепользователя показатьпредупреждение полноеимяпользователя получитьcomобъект получитьxmlтип получитьадреспоместоположению получитьблокировкусеансов получитьвремязавершенияспящегосеанса получитьвремязасыпанияпассивногосеанса получитьвремяожиданияблокировкиданных получитьданныевыбора получитьдополнительныйпараметрклиенталицензирования получитьдопустимыекодылокализации получитьдопустимыечасовыепояса получитьзаголовокклиентскогоприложения получитьзаголовоксистемы получитьзначенияотборажурналарегистрации получитьидентификаторконфигурации получитьизвременногохранилища получитьимявременногофайла получитьимяклиенталицензирования получитьинформациюэкрановклиента получитьиспользованиежурналарегистрации получитьиспользованиесобытияжурналарегистрации получитькраткийзаголовокприложения получитьмакетоформления получитьмаскувсефайлы получитьмаскувсефайлыклиента получитьмаскувсефайлысервера получитьместоположениепоадресу получитьминимальнуюдлинупаролейпользователей получитьнавигационнуюссылку получитьнавигационнуюссылкуинформационнойбазы получитьобновлениеконфигурациибазыданных получитьобновлениепредопределенныхданныхинформационнойбазы получитьобщиймакет получитьобщуюформу получитьокна получитьоперативнуюотметкувремени получитьотключениебезопасногорежима получитьпараметрыфункциональныхопцийинтерфейса получитьполноеимяпредопределенногозначения получитьпредставлениянавигационныхссылок получитьпроверкусложностипаролейпользователей получитьразделительпути получитьразделительпутиклиента получитьразделительпутисервера получитьсеансыинформационнойбазы получитьскоростьклиентскогосоединения получитьсоединенияинформационнойбазы получитьсообщенияпользователю получитьсоответствиеобъектаиформы получитьсоставстандартногоинтерфейсаodata получитьструктурухранениябазыданных получитьтекущийсеансинформационнойбазы получитьфайл получитьфайлы получитьформу получитьфункциональнуюопцию получитьфункциональнуюопциюинтерфейса получитьчасовойпоясинформационнойбазы пользователиос поместитьвовременноехранилище поместитьфайл поместитьфайлы прав праводоступа предопределенноезначение представлениекодалокализации представлениепериода представлениеправа представлениеприложения представлениесобытияжурналарегистрации представлениечасовогопояса предупреждение прекратитьработусистемы привилегированныйрежим продолжитьвызов прочитатьjson прочитатьxml прочитатьдатуjson пустаястрока рабочийкаталогданныхпользователя разблокироватьданныедляредактирования разделитьфайл разорватьсоединениесвнешнимисточникомданных раскодироватьстроку рольдоступна секунда сигнал символ скопироватьжурналрегистрации смещениелетнеговремени смещениестандартноговремени соединитьбуферыдвоичныхданных создатькаталог создатьфабрикуxdto сокрл сокрлп сокрп сообщить состояние сохранитьзначение сохранитьнастройкипользователя сред стрдлина стрзаканчиваетсяна стрзаменить стрнайти стрначинаетсяс строка строкасоединенияинформационнойбазы стрполучитьстроку стрразделить стрсоединить стрсравнить стрчисловхождений стрчислострок стршаблон текущаядата текущаядатасеанса текущаяуниверсальнаядата текущаяуниверсальнаядатавмиллисекундах текущийвариантинтерфейсаклиентскогоприложения текущийвариантосновногошрифтаклиентскогоприложения текущийкодлокализации текущийрежимзапуска текущийязык текущийязыксистемы тип типзнч транзакцияактивна трег удалитьданныеинформационнойбазы удалитьизвременногохранилища удалитьобъекты удалитьфайлы универсальноевремя установитьбезопасныйрежим установитьбезопасныйрежимразделенияданных установитьблокировкусеансов установитьвнешнююкомпоненту установитьвремязавершенияспящегосеанса установитьвремязасыпанияпассивногосеанса установитьвремяожиданияблокировкиданных установитьзаголовокклиентскогоприложения установитьзаголовоксистемы установитьиспользованиежурналарегистрации установитьиспользованиесобытияжурналарегистрации установитькраткийзаголовокприложения установитьминимальнуюдлинупаролейпользователей установитьмонопольныйрежим установитьнастройкиклиенталицензирования установитьобновлениепредопределенныхданныхинформационнойбазы установитьотключениебезопасногорежима установитьпараметрыфункциональныхопцийинтерфейса установитьпривилегированныйрежим установитьпроверкусложностипаролейпользователей установитьрасширениеработыскриптографией установитьрасширениеработысфайлами установитьсоединениесвнешнимисточникомданных установитьсоответствиеобъектаиформы установитьсоставстандартногоинтерфейсаodata установитьчасовойпоясинформационнойбазы установитьчасовойпояссеанса формат цел час часовойпояс часовойпояссеанса число числопрописью этоадресвременногохранилища wsссылки библиотекакартинок библиотекамакетовоформлениякомпоновкиданных библиотекастилей бизнеспроцессы внешниеисточникиданных внешниеобработки внешниеотчеты встроенныепокупки главныйинтерфейс главныйстиль документы доставляемыеуведомления журналыдокументов задачи информацияобинтернетсоединении использованиерабочейдаты историяработыпользователя константы критерииотбора метаданные обработки отображениерекламы отправкадоставляемыхуведомлений отчеты панельзадачос параметрзапуска параметрысеанса перечисления планывидоврасчета планывидовхарактеристик планыобмена планысчетов полнотекстовыйпоиск пользователиинформационнойбазы последовательности проверкавстроенныхпокупок рабочаядата расширенияконфигурации регистрыбухгалтерии регистрынакопления регистрырасчета регистрысведений регламентныезадания сериализаторxdto справочники средствагеопозиционирования средствакриптографии средствамультимедиа средстваотображениярекламы средствапочты средствателефонии фабрикаxdto файловыепотоки фоновыезадания хранилищанастроек хранилищевариантовотчетов хранилищенастроекданныхформ хранилищеобщихнастроек хранилищепользовательскихнастроекдинамическихсписков хранилищепользовательскихнастроекотчетов хранилищесистемныхнастроек ",class:"webцвета windowsцвета windowsшрифты библиотекакартинок рамкистиля символы цветастиля шрифтыстиля автоматическоесохранениеданныхформывнастройках автонумерациявформе автораздвижениесерий анимациядиаграммы вариантвыравниванияэлементовизаголовков вариантуправлениявысотойтаблицы вертикальнаяпрокруткаформы вертикальноеположение вертикальноеположениеэлемента видгруппыформы виддекорацииформы виддополненияэлементаформы видизмененияданных видкнопкиформы видпереключателя видподписейкдиаграмме видполяформы видфлажка влияниеразмеранапузырекдиаграммы горизонтальноеположение горизонтальноеположениеэлемента группировкаколонок группировкаподчиненныхэлементовформы группыиэлементы действиеперетаскивания дополнительныйрежимотображения допустимыедействияперетаскивания интервалмеждуэлементамиформы использованиевывода использованиеполосыпрокрутки используемоезначениеточкибиржевойдиаграммы историявыборапривводе источникзначенийоситочекдиаграммы источникзначенияразмерапузырькадиаграммы категориягруппыкоманд максимумсерий начальноеотображениедерева начальноеотображениесписка обновлениетекстаредактирования ориентациядендрограммы ориентациядиаграммы ориентацияметокдиаграммы ориентацияметоксводнойдиаграммы ориентацияэлементаформы отображениевдиаграмме отображениевлегендедиаграммы отображениегруппыкнопок отображениезаголовкашкалыдиаграммы отображениезначенийсводнойдиаграммы отображениезначенияизмерительнойдиаграммы отображениеинтерваладиаграммыганта отображениекнопки отображениекнопкивыбора отображениеобсужденийформы отображениеобычнойгруппы отображениеотрицательныхзначенийпузырьковойдиаграммы отображениепанелипоиска отображениеподсказки отображениепредупрежденияприредактировании отображениеразметкиполосырегулирования отображениестраницформы отображениетаблицы отображениетекстазначениядиаграммыганта отображениеуправленияобычнойгруппы отображениефигурыкнопки палитрацветовдиаграммы поведениеобычнойгруппы поддержкамасштабадендрограммы поддержкамасштабадиаграммыганта поддержкамасштабасводнойдиаграммы поисквтаблицепривводе положениезаголовкаэлементаформы положениекартинкикнопкиформы положениекартинкиэлементаграфическойсхемы положениекоманднойпанелиформы положениекоманднойпанелиэлементаформы положениеопорнойточкиотрисовки положениеподписейкдиаграмме положениеподписейшкалызначенийизмерительнойдиаграммы положениесостоянияпросмотра положениестрокипоиска положениетекстасоединительнойлинии положениеуправленияпоиском положениешкалывремени порядокотображенияточекгоризонтальнойгистограммы порядоксерийвлегендедиаграммы размеркартинки расположениезаголовкашкалыдиаграммы растягиваниеповертикалидиаграммыганта режимавтоотображениясостояния режимвводастроктаблицы режимвыборанезаполненного режимвыделениядаты режимвыделениястрокитаблицы режимвыделениятаблицы режимизмененияразмера режимизменениясвязанногозначения режимиспользованиядиалогапечати режимиспользованияпараметракоманды режиммасштабированияпросмотра режимосновногоокнаклиентскогоприложения режимоткрытияокнаформы режимотображениявыделения режимотображениягеографическойсхемы режимотображениязначенийсерии режимотрисовкисеткиграфическойсхемы режимполупрозрачностидиаграммы режимпробеловдиаграммы режимразмещениянастранице режимредактированияколонки режимсглаживаниядиаграммы режимсглаживанияиндикатора режимсписказадач сквозноевыравнивание сохранениеданныхформывнастройках способзаполнениятекстазаголовкашкалыдиаграммы способопределенияограничивающегозначениядиаграммы стандартнаягруппакоманд стандартноеоформление статусоповещенияпользователя стильстрелки типаппроксимациилиниитрендадиаграммы типдиаграммы типединицышкалывремени типимпортасерийслоягеографическойсхемы типлиниигеографическойсхемы типлиниидиаграммы типмаркерагеографическойсхемы типмаркерадиаграммы типобластиоформления типорганизацииисточникаданныхгеографическойсхемы типотображениясериислоягеографическойсхемы типотображенияточечногообъектагеографическойсхемы типотображенияшкалыэлементалегендыгеографическойсхемы типпоискаобъектовгеографическойсхемы типпроекциигеографическойсхемы типразмещенияизмерений типразмещенияреквизитовизмерений типрамкиэлементауправления типсводнойдиаграммы типсвязидиаграммыганта типсоединениязначенийпосериямдиаграммы типсоединенияточекдиаграммы типсоединительнойлинии типстороныэлементаграфическойсхемы типформыотчета типшкалырадарнойдиаграммы факторлиниитрендадиаграммы фигуракнопки фигурыграфическойсхемы фиксациявтаблице форматдняшкалывремени форматкартинки ширинаподчиненныхэлементовформы виддвижениябухгалтерии виддвижениянакопления видпериодарегистрарасчета видсчета видточкимаршрутабизнеспроцесса использованиеагрегатарегистранакопления использованиегруппиэлементов использованиережимапроведения использованиесреза периодичностьагрегатарегистранакопления режимавтовремя режимзаписидокумента режимпроведениядокумента авторегистрацияизменений допустимыйномерсообщения отправкаэлементаданных получениеэлементаданных использованиерасшифровкитабличногодокумента ориентациястраницы положениеитоговколоноксводнойтаблицы положениеитоговстроксводнойтаблицы положениетекстаотносительнокартинки расположениезаголовкагруппировкитабличногодокумента способчтениязначенийтабличногодокумента типдвустороннейпечати типзаполненияобластитабличногодокумента типкурсоровтабличногодокумента типлиниирисункатабличногодокумента типлинииячейкитабличногодокумента типнаправленияпереходатабличногодокумента типотображениявыделениятабличногодокумента типотображениялинийсводнойтаблицы типразмещениятекстатабличногодокумента типрисункатабличногодокумента типсмещениятабличногодокумента типузоратабличногодокумента типфайлатабличногодокумента точностьпечати чередованиерасположениястраниц отображениевремениэлементовпланировщика типфайлаформатированногодокумента обходрезультатазапроса типзаписизапроса видзаполнениярасшифровкипостроителяотчета типдобавленияпредставлений типизмеренияпостроителяотчета типразмещенияитогов доступкфайлу режимдиалогавыборафайла режимоткрытияфайла типизмеренияпостроителязапроса видданныханализа методкластеризации типединицыинтервалавременианализаданных типзаполнениятаблицырезультатаанализаданных типиспользованиячисловыхзначенийанализаданных типисточникаданныхпоискаассоциаций типколонкианализаданныхдереворешений типколонкианализаданныхкластеризация типколонкианализаданныхобщаястатистика типколонкианализаданныхпоискассоциаций типколонкианализаданныхпоискпоследовательностей типколонкимоделипрогноза типмерырасстоянияанализаданных типотсеченияправилассоциации типполяанализаданных типстандартизациианализаданных типупорядочиванияправилассоциациианализаданных типупорядочиванияшаблоновпоследовательностейанализаданных типупрощениядереварешений wsнаправлениепараметра вариантxpathxs вариантзаписидатыjson вариантпростоготипаxs видгруппымоделиxs видфасетаxdto действиепостроителяdom завершенностьпростоготипаxs завершенностьсоставноготипаxs завершенностьсхемыxs запрещенныеподстановкиxs исключениягруппподстановкиxs категорияиспользованияатрибутаxs категорияограниченияидентичностиxs категорияограниченияпространствименxs методнаследованияxs модельсодержимогоxs назначениетипаxml недопустимыеподстановкиxs обработкапробельныхсимволовxs обработкасодержимогоxs ограничениезначенияxs параметрыотбораузловdom переносстрокjson позициявдокументеdom пробельныесимволыxml типатрибутаxml типзначенияjson типканоническогоxml типкомпонентыxs типпроверкиxml типрезультатаdomxpath типузлаdom типузлаxml формаxml формапредставленияxs форматдатыjson экранированиесимволовjson видсравнениякомпоновкиданных действиеобработкирасшифровкикомпоновкиданных направлениесортировкикомпоновкиданных расположениевложенныхэлементоврезультатакомпоновкиданных расположениеитоговкомпоновкиданных расположениегруппировкикомпоновкиданных расположениеполейгруппировкикомпоновкиданных расположениеполякомпоновкиданных расположениереквизитовкомпоновкиданных расположениересурсовкомпоновкиданных типбухгалтерскогоостаткакомпоновкиданных типвыводатекстакомпоновкиданных типгруппировкикомпоновкиданных типгруппыэлементовотборакомпоновкиданных типдополненияпериодакомпоновкиданных типзаголовкаполейкомпоновкиданных типмакетагруппировкикомпоновкиданных типмакетаобластикомпоновкиданных типостаткакомпоновкиданных типпериодакомпоновкиданных типразмещениятекстакомпоновкиданных типсвязинаборовданныхкомпоновкиданных типэлементарезультатакомпоновкиданных расположениелегендыдиаграммыкомпоновкиданных типпримененияотборакомпоновкиданных режимотображенияэлементанастройкикомпоновкиданных режимотображениянастроеккомпоновкиданных состояниеэлементанастройкикомпоновкиданных способвосстановлениянастроеккомпоновкиданных режимкомпоновкирезультата использованиепараметракомпоновкиданных автопозицияресурсовкомпоновкиданных вариантиспользованиягруппировкикомпоновкиданных расположениересурсоввдиаграммекомпоновкиданных фиксациякомпоновкиданных использованиеусловногооформлениякомпоновкиданных важностьинтернетпочтовогосообщения обработкатекстаинтернетпочтовогосообщения способкодированияинтернетпочтовоговложения способкодированиянеasciiсимволовинтернетпочтовогосообщения типтекстапочтовогосообщения протоколинтернетпочты статусразборапочтовогосообщения режимтранзакциизаписижурналарегистрации статустранзакциизаписижурналарегистрации уровеньжурналарегистрации расположениехранилищасертификатовкриптографии режимвключениясертификатовкриптографии режимпроверкисертификатакриптографии типхранилищасертификатовкриптографии кодировкаименфайловвzipфайле методсжатияzip методшифрованияzip режимвосстановленияпутейфайловzip режимобработкиподкаталоговzip режимсохраненияпутейzip уровеньсжатияzip звуковоеоповещение направлениепереходакстроке позициявпотоке порядокбайтов режимблокировкиданных режимуправленияблокировкойданных сервисвстроенныхпокупок состояниефоновогозадания типподписчикадоставляемыхуведомлений уровеньиспользованиязащищенногосоединенияftp направлениепорядкасхемызапроса типдополненияпериодамисхемызапроса типконтрольнойточкисхемызапроса типобъединениясхемызапроса типпараметрадоступнойтаблицысхемызапроса типсоединениясхемызапроса httpметод автоиспользованиеобщегореквизита автопрефиксномеразадачи вариантвстроенногоязыка видиерархии видрегистранакопления видтаблицывнешнегоисточникаданных записьдвиженийприпроведении заполнениепоследовательностей индексирование использованиебазыпланавидоврасчета использованиебыстроговыбора использованиеобщегореквизита использованиеподчинения использованиеполнотекстовогопоиска использованиеразделяемыхданныхобщегореквизита использованиереквизита назначениеиспользованияприложения назначениерасширенияконфигурации направлениепередачи обновлениепредопределенныхданных оперативноепроведение основноепредставлениевидарасчета основноепредставлениевидахарактеристики основноепредставлениезадачи основноепредставлениепланаобмена основноепредставлениесправочника основноепредставлениесчета перемещениеграницыприпроведении периодичностьномерабизнеспроцесса периодичностьномерадокумента периодичностьрегистрарасчета периодичностьрегистрасведений повторноеиспользованиевозвращаемыхзначений полнотекстовыйпоискпривводепостроке принадлежностьобъекта проведение разделениеаутентификацииобщегореквизита разделениеданныхобщегореквизита разделениерасширенийконфигурацииобщегореквизита режимавтонумерацииобъектов режимзаписирегистра режимиспользованиямодальности режимиспользованиясинхронныхвызововрасширенийплатформыивнешнихкомпонент режимповторногоиспользованиясеансов режимполученияданныхвыборапривводепостроке режимсовместимости режимсовместимостиинтерфейса режимуправленияблокировкойданныхпоумолчанию сериикодовпланавидовхарактеристик сериикодовпланасчетов сериикодовсправочника созданиепривводе способвыбора способпоискастрокипривводепостроке способредактирования типданныхтаблицывнешнегоисточникаданных типкодапланавидоврасчета типкодасправочника типмакета типномерабизнеспроцесса типномерадокумента типномеразадачи типформы удалениедвижений важностьпроблемыприменениярасширенияконфигурации вариантинтерфейсаклиентскогоприложения вариантмасштабаформклиентскогоприложения вариантосновногошрифтаклиентскогоприложения вариантстандартногопериода вариантстандартнойдатыначала видграницы видкартинки видотображенияполнотекстовогопоиска видрамки видсравнения видцвета видчисловогозначения видшрифта допустимаядлина допустимыйзнак использованиеbyteordermark использованиеметаданныхполнотекстовогопоиска источникрасширенийконфигурации клавиша кодвозвратадиалога кодировкаxbase кодировкатекста направлениепоиска направлениесортировки обновлениепредопределенныхданных обновлениеприизмененииданных отображениепанелиразделов проверказаполнения режимдиалогавопрос режимзапускаклиентскогоприложения режимокругления режимоткрытияформприложения режимполнотекстовогопоиска скоростьклиентскогосоединения состояниевнешнегоисточникаданных состояниеобновленияконфигурациибазыданных способвыборасертификатаwindows способкодированиястроки статуссообщения типвнешнейкомпоненты типплатформы типповеденияклавишиenter типэлементаинформацииовыполненииобновленияконфигурациибазыданных уровеньизоляциитранзакций хешфункция частидаты",type:"comобъект ftpсоединение httpзапрос httpсервисответ httpсоединение wsопределения wsпрокси xbase анализданных аннотацияxs блокировкаданных буфердвоичныхданных включениеxs выражениекомпоновкиданных генераторслучайныхчисел географическаясхема географическиекоординаты графическаясхема группамоделиxs данныерасшифровкикомпоновкиданных двоичныеданные дендрограмма диаграмма диаграммаганта диалогвыборафайла диалогвыборацвета диалогвыборашрифта диалограсписаниярегламентногозадания диалогредактированиястандартногопериода диапазон документdom документhtml документацияxs доставляемоеуведомление записьdom записьfastinfoset записьhtml записьjson записьxml записьzipфайла записьданных записьтекста записьузловdom запрос защищенноесоединениеopenssl значенияполейрасшифровкикомпоновкиданных извлечениетекста импортxs интернетпочта интернетпочтовоесообщение интернетпочтовыйпрофиль интернетпрокси интернетсоединение информациядляприложенияxs использованиеатрибутаxs использованиесобытияжурналарегистрации источникдоступныхнастроеккомпоновкиданных итераторузловdom картинка квалификаторыдаты квалификаторыдвоичныхданных квалификаторыстроки квалификаторычисла компоновщикмакетакомпоновкиданных компоновщикнастроеккомпоновкиданных конструктормакетаоформлениякомпоновкиданных конструкторнастроеккомпоновкиданных конструкторформатнойстроки линия макеткомпоновкиданных макетобластикомпоновкиданных макетоформлениякомпоновкиданных маскаxs менеджеркриптографии наборсхемxml настройкикомпоновкиданных настройкисериализацииjson обработкакартинок обработкарасшифровкикомпоновкиданных обходдереваdom объявлениеатрибутаxs объявлениенотацииxs объявлениеэлементаxs описаниеиспользованиясобытиядоступжурналарегистрации описаниеиспользованиясобытияотказвдоступежурналарегистрации описаниеобработкирасшифровкикомпоновкиданных описаниепередаваемогофайла описаниетипов определениегруппыатрибутовxs определениегруппымоделиxs определениеограниченияидентичностиxs определениепростоготипаxs определениесоставноготипаxs определениетипадокументаdom определенияxpathxs отборкомпоновкиданных пакетотображаемыхдокументов параметрвыбора параметркомпоновкиданных параметрызаписиjson параметрызаписиxml параметрычтенияxml переопределениеxs планировщик полеанализаданных полекомпоновкиданных построительdom построительзапроса построительотчета построительотчетаанализаданных построительсхемxml поток потоквпамяти почта почтовоесообщение преобразованиеxsl преобразованиекканоническомуxml процессорвыводарезультатакомпоновкиданныхвколлекциюзначений процессорвыводарезультатакомпоновкиданныхвтабличныйдокумент процессоркомпоновкиданных разыменовательпространствименdom рамка расписаниерегламентногозадания расширенноеимяxml результатчтенияданных своднаядиаграмма связьпараметравыбора связьпотипу связьпотипукомпоновкиданных сериализаторxdto сертификатклиентаwindows сертификатклиентафайл сертификаткриптографии сертификатыудостоверяющихцентровwindows сертификатыудостоверяющихцентровфайл сжатиеданных системнаяинформация сообщениепользователю сочетаниеклавиш сравнениезначений стандартнаядатаначала стандартныйпериод схемаxml схемакомпоновкиданных табличныйдокумент текстовыйдокумент тестируемоеприложение типданныхxml уникальныйидентификатор фабрикаxdto файл файловыйпоток фасетдлиныxs фасетколичестваразрядовдробнойчастиxs фасетмаксимальноговключающегозначенияxs фасетмаксимальногоисключающегозначенияxs фасетмаксимальнойдлиныxs фасетминимальноговключающегозначенияxs фасетминимальногоисключающегозначенияxs фасетминимальнойдлиныxs фасетобразцаxs фасетобщегоколичестваразрядовxs фасетперечисленияxs фасетпробельныхсимволовxs фильтрузловdom форматированнаястрока форматированныйдокумент фрагментxs хешированиеданных хранилищезначения цвет чтениеfastinfoset чтениеhtml чтениеjson чтениеxml чтениеzipфайла чтениеданных чтениетекста чтениеузловdom шрифт элементрезультатакомпоновкиданных comsafearray деревозначений массив соответствие списокзначений структура таблицазначений фиксированнаяструктура фиксированноесоответствие фиксированныймассив ",literal:a},contains:[{className:"meta",begin:"#|&",end:"$",keywords:{$pattern:t,"meta-keyword":n+"загрузитьизфайла вебклиент вместо внешнеесоединение клиент конецобласти мобильноеприложениеклиент мобильноеприложениесервер наклиенте наклиентенасервере наклиентенасерверебезконтекста насервере насерверебезконтекста область перед после сервер толстыйклиентобычноеприложение толстыйклиентуправляемоеприложение тонкийклиент "},contains:[s]},{className:"function",variants:[{begin:"процедура|функция",end:"\\)",keywords:"процедура функция"},{begin:"конецпроцедуры|конецфункции",keywords:"конецпроцедуры конецфункции"}],contains:[{begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"params",begin:t,end:",",excludeEnd:!0,endsWithParent:!0,keywords:{$pattern:t,keyword:"знач",literal:a},contains:[r,i,o]},s]},e.inherit(e.TITLE_MODE,{begin:t})]},s,{className:"symbol",begin:"~",end:";|:",excludeEnd:!0},r,i,o]}};function Um(e){return e?"string"==typeof e?e:e.source:null}function Fm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Um(e)})).join("");return a}var Bm=function(e){var t={ruleDeclaration:/^[a-zA-Z][a-zA-Z0-9-]*/,unexpectedChars:/[!@#$^&',?+~`|:]/},n=e.COMMENT(/;/,/$/),a={className:"attribute",begin:Fm(t.ruleDeclaration,/(?=\s*=)/)};return{name:"Augmented Backus-Naur Form",illegal:t.unexpectedChars,keywords:["ALPHA","BIT","CHAR","CR","CRLF","CTL","DIGIT","DQUOTE","HEXDIG","HTAB","LF","LWSP","OCTET","SP","VCHAR","WSP"],contains:[a,n,{className:"symbol",begin:/%b[0-1]+(-[0-1]+|(\.[0-1]+)+){0,1}/},{className:"symbol",begin:/%d[0-9]+(-[0-9]+|(\.[0-9]+)+){0,1}/},{className:"symbol",begin:/%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+){0,1}/},{className:"symbol",begin:/%[si]/},e.QUOTE_STRING_MODE,e.NUMBER_MODE]}};function Gm(e){return e?"string"==typeof e?e:e.source:null}function Ym(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Gm(e)})).join("");return a}function Hm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return Gm(e)})).join("|")+")";return a}var Vm=function(e){var t=["GET","POST","HEAD","PUT","DELETE","CONNECT","OPTIONS","PATCH","TRACE"];return{name:"Apache Access Log",contains:[{className:"number",begin:/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?\b/,relevance:5},{className:"number",begin:/\b\d+\b/,relevance:0},{className:"string",begin:Ym(/"/,Hm.apply(void 0,t)),end:/"/,keywords:t,illegal:/\n/,relevance:5,contains:[{begin:/HTTP\/[12]\.\d'/,relevance:5}]},{className:"string",begin:/\[\d[^\]\n]{8,}\]/,illegal:/\n/,relevance:1},{className:"string",begin:/\[/,end:/\]/,illegal:/\n/,relevance:0},{className:"string",begin:/"Mozilla\/\d\.\d \(/,end:/"/,illegal:/\n/,relevance:3},{className:"string",begin:/"/,end:/"/,illegal:/\n/,relevance:0}]}};function qm(e){return e?"string"==typeof e?e:e.source:null}function zm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return qm(e)})).join("");return a}var Wm=function(e){var t={className:"rest_arg",begin:/[.]{3}/,end:/[a-zA-Z_$][a-zA-Z0-9_$]*/,relevance:10};return{name:"ActionScript",aliases:["as"],keywords:{keyword:"as break case catch class const continue default delete do dynamic each else extends final finally for function get if implements import in include instanceof interface internal is namespace native new override package private protected public return set static super switch this throw try typeof use var void while with",literal:"true false null undefined"},contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"class",beginKeywords:"package",end:/\{/,contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.TITLE_MODE]},{className:"meta",beginKeywords:"import include",end:/;/,keywords:{"meta-keyword":"import include"}},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,illegal:/\S/,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t]},{begin:zm(/:\s*/,/([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)/)}]},e.METHOD_GUARD],illegal:/#/}};var $m=function(e){var t="[A-Za-z](_?[A-Za-z0-9.])*",n="[]\\{\\}%#'\"",a=e.COMMENT("--","$"),r={begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:n,contains:[{beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword",beginKeywords:"not null constant access function procedure in out aliased exception"},{className:"type",begin:t,endsParent:!0,relevance:0}]};return{name:"Ada",case_insensitive:!0,keywords:{keyword:"abort else new return abs elsif not reverse abstract end accept entry select access exception of separate aliased exit or some all others subtype and for out synchronized array function overriding at tagged generic package task begin goto pragma terminate body private then if procedure type case in protected constant interface is raise use declare range delay limited record when delta loop rem while digits renames with do mod requeue xor",literal:"True False"},contains:[a,{className:"string",begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{className:"string",begin:/'.'/},{className:"number",begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)",relevance:0},{className:"symbol",begin:"'"+t},{className:"title",begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:n},{begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)",keywords:"overriding function procedure with is renames return",returnBegin:!0,contains:[a,{className:"title",begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)",excludeBegin:!0,excludeEnd:!0,illegal:n},r,{className:"type",begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0,excludeEnd:!0,endsParent:!0,illegal:n}]},{className:"type",begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:n},r]}};var Qm=function(e){var t={className:"built_in",begin:"\\b(void|bool|int|int8|int16|int32|int64|uint|uint8|uint16|uint32|uint64|string|ref|array|double|float|auto|dictionary)"},n={className:"symbol",begin:"[a-zA-Z0-9_]+@"},a={className:"keyword",begin:"<",end:">",contains:[t,n]};return t.contains=[a],n.contains=[a],{name:"AngelScript",aliases:["asc"],keywords:"for in|0 break continue while do|0 return if else case switch namespace is cast or and xor not get|0 in inout|10 out override set|0 private public const default|0 final shared external mixin|10 enum typedef funcdef this super import from interface abstract|0 try catch protected explicit property",illegal:"(^using\\s+[A-Za-z0-9_\\.]+;$|\\bfunction\\s*[^\\(])",contains:[{className:"string",begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE],relevance:0},{className:"string",begin:'"""',end:'"""'},{className:"string",begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE],relevance:0},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:"^\\s*\\[",end:"\\]"},{beginKeywords:"interface namespace",end:/\{/,illegal:"[;.\\-]",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+"}]},{beginKeywords:"class",end:/\{/,illegal:"[;.\\-]",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+",contains:[{begin:"[:,]\\s*",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+"}]}]}]},t,n,{className:"literal",begin:"\\b(null|true|false)"},{className:"number",relevance:0,begin:"(-?)(\\b0[xXbBoOdD][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?f?|\\.\\d+f?)([eE][-+]?\\d+f?)?)"}]}};var Km=function(e){var t={className:"number",begin:/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?/};return{name:"Apache config",aliases:["apacheconf"],case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"section",begin:/<\/?/,end:/>/,contains:[t,{className:"number",begin:/:\d{1,5}/},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute",begin:/\w+/,relevance:0,keywords:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"},contains:[{className:"meta",begin:/\s\[/,end:/\]$/},{className:"variable",begin:/[\$%]\{/,end:/\}/,contains:["self",{className:"number",begin:/[$%]\d+/}]},t,{className:"number",begin:/\d+/},e.QUOTE_STRING_MODE]}}],illegal:/\S/}};function jm(e){return e?"string"==typeof e?e:e.source:null}function Xm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return jm(e)})).join("");return a}function Zm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return jm(e)})).join("|")+")";return a}var Jm=function(e){var t=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),n={className:"params",begin:/\(/,end:/\)/,contains:["self",e.C_NUMBER_MODE,t]},a=e.COMMENT(/--/,/$/),r=[a,e.COMMENT(/\(\*/,/\*\)/,{contains:["self",a]}),e.HASH_COMMENT_MODE];return{name:"AppleScript",aliases:["osascript"],keywords:{keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the|0 then third through thru timeout times to transaction try until where while whose with without",literal:"AppleScript false linefeed return pi quote result space tab true",built_in:"alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"},contains:[t,e.C_NUMBER_MODE,{className:"built_in",begin:Xm(/\b/,Zm.apply(void 0,[/clipboard info/,/the clipboard/,/info for/,/list (disks|folder)/,/mount volume/,/path to/,/(close|open for) access/,/(get|set) eof/,/current date/,/do shell script/,/get volume settings/,/random number/,/set volume/,/system attribute/,/system info/,/time to GMT/,/(load|run|store) script/,/scripting components/,/ASCII (character|number)/,/localized string/,/choose (application|color|file|file name|folder|from list|remote application|URL)/,/display (alert|dialog)/]),/\b/)},{className:"built_in",begin:/^\s*return\b/},{className:"literal",begin:/\b(text item delimiters|current application|missing value)\b/},{className:"keyword",begin:Xm(/\b/,Zm.apply(void 0,[/apart from/,/aside from/,/instead of/,/out of/,/greater than/,/isn't|(doesn't|does not) (equal|come before|come after|contain)/,/(greater|less) than( or equal)?/,/(starts?|ends|begins?) with/,/contained by/,/comes (before|after)/,/a (ref|reference)/,/POSIX (file|path)/,/(date|time) string/,/quoted form/]),/\b/)},{beginKeywords:"on",illegal:/[${=;\n]/,contains:[e.UNDERSCORE_TITLE_MODE,n]}].concat(r),illegal:/\/\/|->|=>|\[\[/}};var ep=function(e){var t="[A-Za-z_][0-9A-Za-z_]*",n={keyword:"if for while var new function do return void else break",literal:"BackSlash DoubleQuote false ForwardSlash Infinity NaN NewLine null PI SingleQuote Tab TextFormatting true undefined",built_in:"Abs Acos Angle Attachments Area AreaGeodetic Asin Atan Atan2 Average Bearing Boolean Buffer BufferGeodetic Ceil Centroid Clip Console Constrain Contains Cos Count Crosses Cut Date DateAdd DateDiff Day Decode DefaultValue Dictionary Difference Disjoint Distance DistanceGeodetic Distinct DomainCode DomainName Equals Exp Extent Feature FeatureSet FeatureSetByAssociation FeatureSetById FeatureSetByPortalItem FeatureSetByRelationshipName FeatureSetByTitle FeatureSetByUrl Filter First Floor Geometry GroupBy Guid HasKey Hour IIf IndexOf Intersection Intersects IsEmpty IsNan IsSelfIntersecting Length LengthGeodetic Log Max Mean Millisecond Min Minute Month MultiPartToSinglePart Multipoint NextSequenceValue Now Number OrderBy Overlaps Point Polygon Polyline Portal Pow Random Relate Reverse RingIsClockWise Round Second SetGeometry Sin Sort Sqrt Stdev Sum SymmetricDifference Tan Text Timestamp Today ToLocal Top Touches ToUTC TrackCurrentTime TrackGeometryWindow TrackIndex TrackStartTime TrackWindow TypeOf Union UrlEncode Variance Weekday When Within Year "},a={className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},r={className:"subst",begin:"\\$\\{",end:"\\}",keywords:n,contains:[]},i={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,r]};r.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,a,e.REGEXP_MODE];var o=r.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{name:"ArcGIS Arcade",keywords:n,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"symbol",begin:"\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+"},a,{begin:/[{,]\s*/,relevance:0,contains:[{begin:t+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:t,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(return)\\b)\\s*",keywords:"return",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+t+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,contains:o}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:o}],illegal:/\[|%/},{begin:/\$[(.]/}],illegal:/#(?!!)/}};function tp(e){return e?"string"==typeof e?e:e.source:null}function np(e){return ap("(",e,")?")}function ap(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return tp(e)})).join("");return a}var rp=function(e){var t="boolean byte word String",n="KeyboardController MouseController SoftwareSerial EthernetServer EthernetClient LiquidCrystal RobotControl GSMVoiceCall EthernetUDP EsploraTFT HttpClient RobotMotor WiFiClient GSMScanner FileSystem Scheduler GSMServer YunClient YunServer IPAddress GSMClient GSMModem Keyboard Ethernet Console GSMBand Esplora Stepper Process WiFiUDP GSM_SMS Mailbox USBHost Firmata PImage Client Server GSMPIN FileIO Bridge Serial EEPROM Stream Mouse Audio Servo File Task GPRS WiFi Wire TFT GSM SPI SD ",a="setup loop runShellCommandAsynchronously analogWriteResolution retrieveCallingNumber printFirmwareVersion analogReadResolution sendDigitalPortPair noListenOnLocalhost readJoystickButton setFirmwareVersion readJoystickSwitch scrollDisplayRight getVoiceCallStatus scrollDisplayLeft writeMicroseconds delayMicroseconds beginTransmission getSignalStrength runAsynchronously getAsynchronously listenOnLocalhost getCurrentCarrier readAccelerometer messageAvailable sendDigitalPorts lineFollowConfig countryNameWrite runShellCommand readStringUntil rewindDirectory readTemperature setClockDivider readLightSensor endTransmission analogReference detachInterrupt countryNameRead attachInterrupt encryptionType readBytesUntil robotNameWrite readMicrophone robotNameRead cityNameWrite userNameWrite readJoystickY readJoystickX mouseReleased openNextFile scanNetworks noInterrupts digitalWrite beginSpeaker mousePressed isActionDone mouseDragged displayLogos noAutoscroll addParameter remoteNumber getModifiers keyboardRead userNameRead waitContinue processInput parseCommand printVersion readNetworks writeMessage blinkVersion cityNameRead readMessage setDataMode parsePacket isListening setBitOrder beginPacket isDirectory motorsWrite drawCompass digitalRead clearScreen serialEvent rightToLeft setTextSize leftToRight requestFrom keyReleased compassRead analogWrite interrupts WiFiServer disconnect playMelody parseFloat autoscroll getPINUsed setPINUsed setTimeout sendAnalog readSlider analogRead beginWrite createChar motorsStop keyPressed tempoWrite readButton subnetMask debugPrint macAddress writeGreen randomSeed attachGPRS readString sendString remotePort releaseAll mouseMoved background getXChange getYChange answerCall getResult voiceCall endPacket constrain getSocket writeJSON getButton available connected findUntil readBytes exitValue readGreen writeBlue startLoop IPAddress isPressed sendSysex pauseMode gatewayIP setCursor getOemKey tuneWrite noDisplay loadImage switchPIN onRequest onReceive changePIN playFile noBuffer parseInt overflow checkPIN knobRead beginTFT bitClear updateIR bitWrite position writeRGB highByte writeRed setSpeed readBlue noStroke remoteIP transfer shutdown hangCall beginSMS endWrite attached maintain noCursor checkReg checkPUK shiftOut isValid shiftIn pulseIn connect println localIP pinMode getIMEI display noBlink process getBand running beginSD drawBMP lowByte setBand release bitRead prepare pointTo readRed setMode noFill remove listen stroke detach attach noTone exists buffer height bitSet circle config cursor random IRread setDNS endSMS getKey micros millis begin print write ready flush width isPIN blink clear press mkdir rmdir close point yield image BSSID click delay read text move peek beep rect line open seek fill size turn stop home find step tone sqrt RSSI SSID end bit tan cos sin pow map abs max min get run put",r="DIGITAL_MESSAGE FIRMATA_STRING ANALOG_MESSAGE REPORT_DIGITAL REPORT_ANALOG INPUT_PULLUP SET_PIN_MODE INTERNAL2V56 SYSTEM_RESET LED_BUILTIN INTERNAL1V1 SYSEX_START INTERNAL EXTERNAL DEFAULT OUTPUT INPUT HIGH LOW",i=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+np(r)+"[a-zA-Z_]\\w*"+np("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:np(r)+e.IDENT_RE,relevance:0},d=np(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:ap(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,ap("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}}(e),o=i.keywords;return o.keyword+=" "+t,o.literal+=" "+r,o.built_in+=" "+n,o._+=" "+a,i.name="Arduino",i.aliases=["ino"],i.supersetOf="cpp",i};var ip=function(e){var t={variants:[e.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0}),e.COMMENT("[;@]","$",{relevance:0}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]};return{name:"ARM Assembly",case_insensitive:!0,aliases:["arm"],keywords:{$pattern:"\\.?"+e.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @"},contains:[{className:"keyword",begin:"\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?(?=\\s)"},t,e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"[#$=]?0x[0-9a-f]+"},{begin:"[#$=]?0b[01]+"},{begin:"[#$=]\\d+"},{begin:"\\b\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^[a-z_\\.\\$][a-z0-9_\\.\\$]+"},{begin:"[=#]\\w+"}],relevance:0}]}};function op(e){return e?"string"==typeof e?e:e.source:null}function sp(e){return lp("(?=",e,")")}function lp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return op(e)})).join("");return a}function cp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return op(e)})).join("|")+")";return a}var _p=function(e){var t=lp(/[A-Z_]/,lp("(",/[A-Z0-9_.-]*:/,")?"),/[A-Z0-9_.-]*/),n={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:"meta-keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},r=e.inherit(a,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"meta-string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:/[A-Za-z0-9._:-]+/,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[n]},{begin:/'/,end:/'/,contains:[n]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,o,i,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[a,r,o,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},n,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:lp(/</,sp(lp(t,cp(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:s}]},{className:"tag",begin:lp(/<\//,sp(lp(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}};function dp(e){return e?"string"==typeof e?e:e.source:null}function up(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return dp(e)})).join("");return a}var mp=function(e){var t=[{className:"strong",begin:/\*{2}([^\n]+?)\*{2}/},{className:"strong",begin:up(/\*\*/,/((\*(?!\*)|\\[^\n]|[^*\n\\])+\n)+/,/(\*(?!\*)|\\[^\n]|[^*\n\\])*/,/\*\*/),relevance:0},{className:"strong",begin:/\B\*(\S|\S[^\n]*?\S)\*(?!\w)/},{className:"strong",begin:/\*[^\s]([^\n]+\n)+([^\n]+)\*/}],n=[{className:"emphasis",begin:/_{2}([^\n]+?)_{2}/},{className:"emphasis",begin:up(/__/,/((_(?!_)|\\[^\n]|[^_\n\\])+\n)+/,/(_(?!_)|\\[^\n]|[^_\n\\])*/,/__/),relevance:0},{className:"emphasis",begin:/\b_(\S|\S[^\n]*?\S)_(?!\w)/},{className:"emphasis",begin:/_[^\s]([^\n]+\n)+([^\n]+)_/},{className:"emphasis",begin:"\\B'(?!['\\s])",end:"(\\n{2}|')",contains:[{begin:"\\\\'\\w",relevance:0}],relevance:0}];return{name:"AsciiDoc",aliases:["adoc"],contains:[e.COMMENT("^/{4,}\\n","\\n/{4,}$",{relevance:10}),e.COMMENT("^//","$",{relevance:0}),{className:"title",begin:"^\\.\\w.*$"},{begin:"^[=\\*]{4,}\\n",end:"\\n^[=\\*]{4,}$",relevance:10},{className:"section",relevance:10,variants:[{begin:"^(={1,6})[ \t].+?([ \t]\\1)?$"},{begin:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{className:"meta",begin:"^:.+?:",end:"\\s",excludeEnd:!0,relevance:10},{className:"meta",begin:"^\\[.+?\\]$",relevance:0},{className:"quote",begin:"^_{4,}\\n",end:"\\n_{4,}$",relevance:10},{className:"code",begin:"^[\\-\\.]{4,}\\n",end:"\\n[\\-\\.]{4,}$",relevance:10},{begin:"^\\+{4,}\\n",end:"\\n\\+{4,}$",contains:[{begin:"<",end:">",subLanguage:"xml",relevance:0}],relevance:10},{className:"bullet",begin:"^(\\*+|-+|\\.+|[^\\n]+?::)\\s+"},{className:"symbol",begin:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",relevance:10}].concat([{begin:/\\[*_`]/},{begin:/\\\\\*{2}[^\n]*?\*{2}/},{begin:/\\\\_{2}[^\n]*_{2}/},{begin:/\\\\`{2}[^\n]*`{2}/},{begin:/[:;}][*_`](?![*_`])/}],t,n,[{className:"string",variants:[{begin:"``.+?''"},{begin:"`.+?'"}]},{className:"code",begin:/`{2}/,end:/(\n{2}|`{2})/},{className:"code",begin:"(`.+?`|\\+.+?\\+)",relevance:0},{className:"code",begin:"^[ \\t]",end:"$",relevance:0},{begin:"^'{3,}[ \\t]*$",relevance:10},{begin:"(link:)?(http|https|ftp|file|irc|image:?):\\S+?\\[[^[]*?\\]",returnBegin:!0,contains:[{begin:"(link|image:?):",relevance:0},{className:"link",begin:"\\w",end:"[^\\[]+",relevance:0},{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0,relevance:0}],relevance:10}])}};function pp(e){return e?"string"==typeof e?e:e.source:null}function gp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return pp(e)})).join("");return a}var Ep=function(e){var t="false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",n="get set args call";return{name:"AspectJ",keywords:t,illegal:/<\/|#/,contains:[e.COMMENT(/\/\*\*/,/\*\//,{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:/@[A-Za-z]+/}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"aspect",end:/[{;=]/,excludeEnd:!0,illegal:/[:;"\[\]]/,contains:[{beginKeywords:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"},e.UNDERSCORE_TITLE_MODE,{begin:/\([^\)]*/,end:/[)]+/,keywords:t+" "+n,excludeEnd:!1}]},{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,relevance:0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"pointcut after before around throwing returning",end:/[)]/,excludeEnd:!1,illegal:/["\[\]]/,contains:[{begin:gp(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,contains:[e.UNDERSCORE_TITLE_MODE]}]},{begin:/[:]/,returnBegin:!0,end:/[{;]/,relevance:0,excludeEnd:!1,keywords:t,illegal:/["\[\]]/,contains:[{begin:gp(e.UNDERSCORE_IDENT_RE,/\s*\(/),keywords:t+" "+n,relevance:0},e.QUOTE_STRING_MODE]},{beginKeywords:"new throw",relevance:0},{className:"function",begin:/\w+ +\w+(\.\w+)?\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,returnBegin:!0,end:/[{;=]/,keywords:t,excludeEnd:!0,contains:[{begin:gp(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,relevance:0,keywords:t,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:/@[A-Za-z]+/}]}};var Sp=function(e){var t={begin:"`[\\s\\S]"};return{name:"AutoHotkey",case_insensitive:!0,aliases:["ahk"],keywords:{keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",literal:"true false NOT AND OR",built_in:"ComSpec Clipboard ClipboardAll ErrorLevel"},contains:[t,e.inherit(e.QUOTE_STRING_MODE,{contains:[t]}),e.COMMENT(";","$",{relevance:0}),e.C_BLOCK_COMMENT_MODE,{className:"number",begin:e.NUMBER_RE,relevance:0},{className:"variable",begin:"%[a-zA-Z0-9#_$@]+%"},{className:"built_in",begin:"^\\s*\\w+\\s*(,|%)"},{className:"title",variants:[{begin:'^[^\\n";]+::(?!=)'},{begin:'^[^\\n";]+:(?!=)',relevance:0}]},{className:"meta",begin:"^\\s*#\\w+",end:"$",relevance:0},{className:"built_in",begin:"A_[a-zA-Z0-9]+"},{begin:",\\s*,"}]}};var bp=function(e){var t={variants:[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#cs","#ce"),e.COMMENT("#comments-start","#comments-end")]},n={begin:"\\$[A-z0-9_]+"},a={className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},r={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"AutoIt",case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"ByRef Case Const ContinueCase ContinueLoop Dim Do Else ElseIf EndFunc EndIf EndSelect EndSwitch EndWith Enum Exit ExitLoop For Func Global If In Local Next ReDim Return Select Static Step Switch Then To Until Volatile WEnd While With",built_in:"Abs ACos AdlibRegister AdlibUnRegister Asc AscW ASin Assign ATan AutoItSetOption AutoItWinGetTitle AutoItWinSetTitle Beep Binary BinaryLen BinaryMid BinaryToString BitAND BitNOT BitOR BitRotate BitShift BitXOR BlockInput Break Call CDTray Ceiling Chr ChrW ClipGet ClipPut ConsoleRead ConsoleWrite ConsoleWriteError ControlClick ControlCommand ControlDisable ControlEnable ControlFocus ControlGetFocus ControlGetHandle ControlGetPos ControlGetText ControlHide ControlListView ControlMove ControlSend ControlSetText ControlShow ControlTreeView Cos Dec DirCopy DirCreate DirGetSize DirMove DirRemove DllCall DllCallAddress DllCallbackFree DllCallbackGetPtr DllCallbackRegister DllClose DllOpen DllStructCreate DllStructGetData DllStructGetPtr DllStructGetSize DllStructSetData DriveGetDrive DriveGetFileSystem DriveGetLabel DriveGetSerial DriveGetType DriveMapAdd DriveMapDel DriveMapGet DriveSetLabel DriveSpaceFree DriveSpaceTotal DriveStatus EnvGet EnvSet EnvUpdate Eval Execute Exp FileChangeDir FileClose FileCopy FileCreateNTFSLink FileCreateShortcut FileDelete FileExists FileFindFirstFile FileFindNextFile FileFlush FileGetAttrib FileGetEncoding FileGetLongName FileGetPos FileGetShortcut FileGetShortName FileGetSize FileGetTime FileGetVersion FileInstall FileMove FileOpen FileOpenDialog FileRead FileReadLine FileReadToArray FileRecycle FileRecycleEmpty FileSaveDialog FileSelectFolder FileSetAttrib FileSetEnd FileSetPos FileSetTime FileWrite FileWriteLine Floor FtpSetProxy FuncName GUICreate GUICtrlCreateAvi GUICtrlCreateButton GUICtrlCreateCheckbox GUICtrlCreateCombo GUICtrlCreateContextMenu GUICtrlCreateDate GUICtrlCreateDummy GUICtrlCreateEdit GUICtrlCreateGraphic GUICtrlCreateGroup GUICtrlCreateIcon GUICtrlCreateInput GUICtrlCreateLabel GUICtrlCreateList GUICtrlCreateListView GUICtrlCreateListViewItem GUICtrlCreateMenu GUICtrlCreateMenuItem GUICtrlCreateMonthCal GUICtrlCreateObj GUICtrlCreatePic GUICtrlCreateProgress GUICtrlCreateRadio GUICtrlCreateSlider GUICtrlCreateTab GUICtrlCreateTabItem GUICtrlCreateTreeView GUICtrlCreateTreeViewItem GUICtrlCreateUpdown GUICtrlDelete GUICtrlGetHandle GUICtrlGetState GUICtrlRead GUICtrlRecvMsg GUICtrlRegisterListViewSort GUICtrlSendMsg GUICtrlSendToDummy GUICtrlSetBkColor GUICtrlSetColor GUICtrlSetCursor GUICtrlSetData GUICtrlSetDefBkColor GUICtrlSetDefColor GUICtrlSetFont GUICtrlSetGraphic GUICtrlSetImage GUICtrlSetLimit GUICtrlSetOnEvent GUICtrlSetPos GUICtrlSetResizing GUICtrlSetState GUICtrlSetStyle GUICtrlSetTip GUIDelete GUIGetCursorInfo GUIGetMsg GUIGetStyle GUIRegisterMsg GUISetAccelerators GUISetBkColor GUISetCoord GUISetCursor GUISetFont GUISetHelp GUISetIcon GUISetOnEvent GUISetState GUISetStyle GUIStartGroup GUISwitch Hex HotKeySet HttpSetProxy HttpSetUserAgent HWnd InetClose InetGet InetGetInfo InetGetSize InetRead IniDelete IniRead IniReadSection IniReadSectionNames IniRenameSection IniWrite IniWriteSection InputBox Int IsAdmin IsArray IsBinary IsBool IsDeclared IsDllStruct IsFloat IsFunc IsHWnd IsInt IsKeyword IsNumber IsObj IsPtr IsString Log MemGetStats Mod MouseClick MouseClickDrag MouseDown MouseGetCursor MouseGetPos MouseMove MouseUp MouseWheel MsgBox Number ObjCreate ObjCreateInterface ObjEvent ObjGet ObjName OnAutoItExitRegister OnAutoItExitUnRegister Ping PixelChecksum PixelGetColor PixelSearch ProcessClose ProcessExists ProcessGetStats ProcessList ProcessSetPriority ProcessWait ProcessWaitClose ProgressOff ProgressOn ProgressSet Ptr Random RegDelete RegEnumKey RegEnumVal RegRead RegWrite Round Run RunAs RunAsWait RunWait Send SendKeepActive SetError SetExtended ShellExecute ShellExecuteWait Shutdown Sin Sleep SoundPlay SoundSetWaveVolume SplashImageOn SplashOff SplashTextOn Sqrt SRandom StatusbarGetText StderrRead StdinWrite StdioClose StdoutRead String StringAddCR StringCompare StringFormat StringFromASCIIArray StringInStr StringIsAlNum StringIsAlpha StringIsASCII StringIsDigit StringIsFloat StringIsInt StringIsLower StringIsSpace StringIsUpper StringIsXDigit StringLeft StringLen StringLower StringMid StringRegExp StringRegExpReplace StringReplace StringReverse StringRight StringSplit StringStripCR StringStripWS StringToASCIIArray StringToBinary StringTrimLeft StringTrimRight StringUpper Tan TCPAccept TCPCloseSocket TCPConnect TCPListen TCPNameToIP TCPRecv TCPSend TCPShutdown, UDPShutdown TCPStartup, UDPStartup TimerDiff TimerInit ToolTip TrayCreateItem TrayCreateMenu TrayGetMsg TrayItemDelete TrayItemGetHandle TrayItemGetState TrayItemGetText TrayItemSetOnEvent TrayItemSetState TrayItemSetText TraySetClick TraySetIcon TraySetOnEvent TraySetPauseIcon TraySetState TraySetToolTip TrayTip UBound UDPBind UDPCloseSocket UDPOpen UDPRecv UDPSend VarGetType WinActivate WinActive WinClose WinExists WinFlash WinGetCaretPos WinGetClassList WinGetClientSize WinGetHandle WinGetPos WinGetProcess WinGetState WinGetText WinGetTitle WinKill WinList WinMenuSelectItem WinMinimizeAll WinMinimizeAllUndo WinMove WinSetOnTop WinSetState WinSetTitle WinSetTrans WinWait WinWaitActive WinWaitClose WinWaitNotActive",literal:"True False And Null Not Or Default"},contains:[t,n,a,r,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":["EndRegion","forcedef","forceref","ignorefunc","include","include-once","NoTrayIcon","OnAutoItStartRegister","pragma","Region","RequireAdmin","Tidy_Off","Tidy_On","Tidy_Parameters"]},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",keywords:{"meta-keyword":"include"},end:"$",contains:[a,{className:"meta-string",variants:[{begin:"<",end:">"},{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]}]},a,t]},{className:"symbol",begin:"@[A-z0-9_]+"},{className:"function",beginKeywords:"Func",end:"$",illegal:"\\$|\\[|%",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:[n,a,r]}]}]}};var Tp=function(e){return{name:"AVR Assembly",case_insensitive:!0,keywords:{$pattern:"\\.?"+e.IDENT_RE,keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf",meta:".byte .cseg .db .def .device .dseg .dw .endmacro .equ .eseg .exit .include .list .listmac .macro .nolist .org .set"},contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT(";","$",{relevance:0}),e.C_NUMBER_MODE,e.BINARY_NUMBER_MODE,{className:"number",begin:"\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"},e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",illegal:"[^\\\\][^']"},{className:"symbol",begin:"^[A-Za-z0-9_.$]+:"},{className:"meta",begin:"#",end:"$"},{className:"subst",begin:"@[0-9]+"}]}};var fp=function(e){return{name:"Awk",keywords:{keyword:"BEGIN END if else while do for in break continue delete next nextfile function func exit|10"},contains:[{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/(u|b)?r?'''/,end:/'''/,relevance:10},{begin:/(u|b)?r?"""/,end:/"""/,relevance:10},{begin:/(u|r|ur)'/,end:/'/,relevance:10},{begin:/(u|r|ur)"/,end:/"/,relevance:10},{begin:/(b|br)'/,end:/'/},{begin:/(b|br)"/,end:/"/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.REGEXP_MODE,e.HASH_COMMENT_MODE,e.NUMBER_MODE]}};var Cp=function(e){return{name:"X++",aliases:["x++"],keywords:{keyword:["abstract","as","asc","avg","break","breakpoint","by","byref","case","catch","changecompany","class","client","client","common","const","continue","count","crosscompany","delegate","delete_from","desc","display","div","do","edit","else","eventhandler","exists","extends","final","finally","firstfast","firstonly","firstonly1","firstonly10","firstonly100","firstonly1000","flush","for","forceliterals","forcenestedloop","forceplaceholders","forceselectorder","forupdate","from","generateonly","group","hint","if","implements","in","index","insert_recordset","interface","internal","is","join","like","maxof","minof","mod","namespace","new","next","nofetch","notexists","optimisticlock","order","outer","pessimisticlock","print","private","protected","public","readonly","repeatableread","retry","return","reverse","select","server","setting","static","sum","super","switch","this","throw","try","ttsabort","ttsbegin","ttscommit","unchecked","update_recordset","using","validtimestate","void","where","while"],built_in:["anytype","boolean","byte","char","container","date","double","enum","guid","int","int64","long","real","short","str","utcdatetime","var"],literal:["default","false","null","true"]},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]}]}};function Np(e){return e?"string"==typeof e?e:e.source:null}function Rp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Np(e)})).join("");return a}var vp=function(e){var t={},n={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:Rp(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});var a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},r={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},i={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(i);var o={begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]},s=e.SHEBANG({binary:"(".concat(["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|"),")"),relevance:10}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z._-]+\b/,keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp"},contains:[s,e.SHEBANG(),l,o,e.HASH_COMMENT_MODE,r,i,{className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}};var Op=function(e){return{name:"BASIC",case_insensitive:!0,illegal:"^.",keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_$%!#]*",keyword:"ABS ASC AND ATN AUTO|0 BEEP BLOAD|10 BSAVE|10 CALL CALLS CDBL CHAIN CHDIR CHR$|10 CINT CIRCLE CLEAR CLOSE CLS COLOR COM COMMON CONT COS CSNG CSRLIN CVD CVI CVS DATA DATE$ DEFDBL DEFINT DEFSNG DEFSTR DEF|0 SEG USR DELETE DIM DRAW EDIT END ENVIRON ENVIRON$ EOF EQV ERASE ERDEV ERDEV$ ERL ERR ERROR EXP FIELD FILES FIX FOR|0 FRE GET GOSUB|10 GOTO HEX$ IF THEN ELSE|0 INKEY$ INP INPUT INPUT# INPUT$ INSTR IMP INT IOCTL IOCTL$ KEY ON OFF LIST KILL LEFT$ LEN LET LINE LLIST LOAD LOC LOCATE LOF LOG LPRINT USING LSET MERGE MID$ MKDIR MKD$ MKI$ MKS$ MOD NAME NEW NEXT NOISE NOT OCT$ ON OR PEN PLAY STRIG OPEN OPTION BASE OUT PAINT PALETTE PCOPY PEEK PMAP POINT POKE POS PRINT PRINT] PSET PRESET PUT RANDOMIZE READ REM RENUM RESET|0 RESTORE RESUME RETURN|0 RIGHT$ RMDIR RND RSET RUN SAVE SCREEN SGN SHELL SIN SOUND SPACE$ SPC SQR STEP STICK STOP STR$ STRING$ SWAP SYSTEM TAB TAN TIME$ TIMER TROFF TRON TO USR VAL VARPTR VARPTR$ VIEW WAIT WHILE WEND WIDTH WINDOW WRITE XOR"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("REM","$",{relevance:10}),e.COMMENT("'","$",{relevance:0}),{className:"symbol",begin:"^[0-9]+ ",relevance:10},{className:"number",begin:"\\b\\d+(\\.\\d+)?([edED]\\d+)?[#!]?",relevance:0},{className:"number",begin:"(&[hH][0-9a-fA-F]{1,4})"},{className:"number",begin:"(&[oO][0-7]{1,6})"}]}};var hp=function(e){return{name:"Backus–Naur Form",contains:[{className:"attribute",begin:/</,end:/>/},{begin:/::=/,end:/$/,contains:[{begin:/</,end:/>/},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}]}};var yp=function(e){var t={className:"literal",begin:/[+-]/,relevance:0};return{name:"Brainfuck",aliases:["bf"],contains:[e.COMMENT("[^\\[\\]\\.,\\+\\-<> \r\n]","[\\[\\]\\.,\\+\\-<> \r\n]",{returnEnd:!0,relevance:0}),{className:"title",begin:"[\\[\\]]",relevance:0},{className:"string",begin:"[\\.,]",relevance:0},{begin:/(?:\+\+|--)/,contains:[t]},t]}};function Ip(e){return e?"string"==typeof e?e:e.source:null}function Ap(e){return Dp("(",e,")?")}function Dp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Ip(e)})).join("");return a}var Mp=function(e){var t,n,a=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+Ap(r)+"[a-zA-Z_]\\w*"+Ap("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:Ap(r)+e.IDENT_RE,relevance:0},d=Ap(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:Dp(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,Dp("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}}(e);return a.disableAutodetect=!0,a.aliases=[],e.getLanguage("c")||(t=a.aliases).push.apply(t,["c","h"]),e.getLanguage("cpp")||(n=a.aliases).push.apply(n,["cc","c++","h++","hpp","hh","hxx","cxx"]),a};function Lp(e){return e?"string"==typeof e?e:e.source:null}function wp(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return Lp(e)})).join("")}("(",e,")?")}var xp=function(e){var t=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),n="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",r="(decltype\\(auto\\)|"+wp(a)+"[a-zA-Z_]\\w*"+wp("<[^<>]+>")+")",i={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},o={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},s={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},l={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(o,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},c={className:"title",begin:wp(a)+e.IDENT_RE,relevance:0},_=wp(a)+e.IDENT_RE+"\\s*\\(",d={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},u=[l,i,t,e.C_BLOCK_COMMENT_MODE,s,o],m={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:d,contains:u.concat([{begin:/\(/,end:/\)/,keywords:d,contains:u.concat(["self"]),relevance:0}]),relevance:0},p={className:"function",begin:"("+r+"[\\*&\\s]+)+"+_,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:d,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:n,keywords:d,relevance:0},{begin:_,returnBegin:!0,contains:[c],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[t,e.C_BLOCK_COMMENT_MODE,o,s,i,{begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,o,s,i]}]},i,t,e.C_BLOCK_COMMENT_MODE,l]};return{name:"C",aliases:["h"],keywords:d,disableAutodetect:!0,illegal:"</",contains:[].concat(m,p,u,[l,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:d,contains:["self",i]},{begin:e.IDENT_RE+"::",keywords:d},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:l,strings:o,keywords:d}}};var Pp=function(e){var t="div mod in and or not xor asserterror begin case do downto else end exit for if of repeat then to until while with var",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],a={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},r={className:"string",begin:/(#\d+)+/},i={className:"function",beginKeywords:"procedure",end:/[:;]/,keywords:"procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[a,r]}].concat(n)},o={className:"class",begin:"OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)",returnBegin:!0,contains:[e.TITLE_MODE,i]};return{name:"C/AL",case_insensitive:!0,keywords:{keyword:t,literal:"false true"},illegal:/\/\*/,contains:[a,r,{className:"number",begin:"\\b\\d+(\\.\\d+)?(DT|D|T)",relevance:0},{className:"string",begin:'"',end:'"'},e.NUMBER_MODE,o,i]}};var kp=function(e){return{name:"Cap’n Proto",aliases:["capnp"],keywords:{keyword:"struct enum interface union group import using const annotation extends in of on as with from fixed",built_in:"Void Bool Int8 Int16 Int32 Int64 UInt8 UInt16 UInt32 UInt64 Float32 Float64 Text Data AnyPointer AnyStruct Capability List",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.HASH_COMMENT_MODE,{className:"meta",begin:/@0x[\w\d]{16};/,illegal:/\n/},{className:"symbol",begin:/@\d+\b/},{className:"class",beginKeywords:"struct enum",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"class",beginKeywords:"interface",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]}]}};var Up=function(e){var t="assembly module package import alias class interface object given value assign void function new of extends satisfies abstracts in out return break continue throw assert dynamic if else switch case for while try catch finally then let this outer super is exists nonempty",n={className:"subst",excludeBegin:!0,excludeEnd:!0,begin:/``/,end:/``/,keywords:t,relevance:10},a=[{className:"string",begin:'"""',end:'"""',relevance:10},{className:"string",begin:'"',end:'"',contains:[n]},{className:"string",begin:"'",end:"'"},{className:"number",begin:"#[0-9a-fA-F_]+|\\$[01_]+|[0-9_]+(?:\\.[0-9_](?:[eE][+-]?\\d+)?)?[kMGTPmunpf]?",relevance:0}];return n.contains=a,{name:"Ceylon",keywords:{keyword:t+" shared abstract formal default actual variable late native deprecated final sealed annotation suppressWarnings small",meta:"doc by license see throws tagged"},illegal:"\\$[^01]|#[^0-9a-fA-F]",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),{className:"meta",begin:'@[a-z]\\w*(?::"[^"]*")?'}].concat(a)}};var Fp=function(e){return{name:"Clean",aliases:["icl","dcl"],keywords:{keyword:"if let in with where case of class instance otherwise implementation definition system module from import qualified as special code inline foreign export ccall stdcall generic derive infix infixl infixr",built_in:"Int Real Char Bool",literal:"True False"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{begin:"->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"}]}};var Bp=function(e){var t="a-zA-Z_\\-!.?+*=<>&#'",n="["+t+"]["+t+"0-9/;:]*",a="def defonce defprotocol defstruct defmulti defmethod defn- defn defmacro deftype defrecord",r={$pattern:n,"builtin-name":a+" cond apply if-not if-let if not not= =|0 <|0 >|0 <=|0 >=|0 ==|0 +|0 /|0 *|0 -|0 rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy first rest cons cast coll last butlast sigs reify second ffirst fnext nfirst nnext meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize"},i={begin:n,relevance:0},o={className:"number",begin:"[-+]?\\d+(\\.\\d+)?",relevance:0},s=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),l=e.COMMENT(";","$",{relevance:0}),c={className:"literal",begin:/\b(true|false|nil)\b/},_={begin:"[\\[\\{]",end:"[\\]\\}]"},d={className:"comment",begin:"\\^"+n},u=e.COMMENT("\\^\\{","\\}"),m={className:"symbol",begin:"[:]{1,2}"+n},p={begin:"\\(",end:"\\)"},g={endsWithParent:!0,relevance:0},E={keywords:r,className:"name",begin:n,relevance:0,starts:g},S=[p,s,d,u,l,m,_,o,c,i],b={beginKeywords:a,lexemes:n,end:'(\\[|#|\\d|"|:|\\{|\\)|\\(|$)',contains:[{className:"title",begin:n,relevance:0,excludeEnd:!0,endsParent:!0}].concat(S)};return p.contains=[e.COMMENT("comment",""),b,E,g],g.contains=S,_.contains=S,u.contains=[_],{name:"Clojure",aliases:["clj"],illegal:/\S/,contains:[p,s,d,u,l,m,_,o,c]}};var Gp=function(e){return{name:"Clojure REPL",contains:[{className:"meta",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,subLanguage:"clojure"}}]}};var Yp=function(e){return{name:"CMake",aliases:["cmake.in"],case_insensitive:!0,keywords:{keyword:"break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined"},contains:[{className:"variable",begin:/\$\{/,end:/\}/},e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE]}},Hp=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],Vp=["true","false","null","undefined","NaN","Infinity"],qp=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);var zp=function(e){var t,n={keyword:Hp.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((t=["var","const","let","function","static"],function(e){return!t.includes(e)})),literal:Vp.concat(["yes","no","on","off"]),built_in:qp.concat(["npm","print"])},a="[A-Za-z$_][0-9A-Za-z$_]*",r={className:"subst",begin:/#\{/,end:/\}/,keywords:n},i=[e.BINARY_NUMBER_MODE,e.inherit(e.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,r]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r]}]},{className:"regexp",variants:[{begin:"///",end:"///",contains:[r,e.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)",relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+a},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{begin:"```",end:"```"},{begin:"`",end:"`"}]}];r.contains=i;var o=e.inherit(e.TITLE_MODE,{begin:a}),s="(\\(.*\\)\\s*)?\\B[-=]>",l={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:n,contains:["self"].concat(i)}]};return{name:"CoffeeScript",aliases:["coffee","cson","iced"],keywords:n,illegal:/\/\*/,contains:i.concat([e.COMMENT("###","###"),e.HASH_COMMENT_MODE,{className:"function",begin:"^\\s*"+a+"\\s*=\\s*"+s,end:"[-=]>",returnBegin:!0,contains:[o,l]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function",begin:s,end:"[-=]>",returnBegin:!0,contains:[l]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[o]},o]},{begin:a+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};var Wp=function(e){return{name:"Coq",keywords:{keyword:"_|0 as at cofix else end exists exists2 fix for forall fun if IF in let match mod Prop return Set then Type using where with Abort About Add Admit Admitted All Arguments Assumptions Axiom Back BackTo Backtrack Bind Blacklist Canonical Cd Check Class Classes Close Coercion Coercions CoFixpoint CoInductive Collection Combined Compute Conjecture Conjectures Constant constr Constraint Constructors Context Corollary CreateHintDb Cut Declare Defined Definition Delimit Dependencies Dependent Derive Drop eauto End Equality Eval Example Existential Existentials Existing Export exporting Extern Extract Extraction Fact Field Fields File Fixpoint Focus for From Function Functional Generalizable Global Goal Grab Grammar Graph Guarded Heap Hint HintDb Hints Hypotheses Hypothesis ident Identity If Immediate Implicit Import Include Inductive Infix Info Initial Inline Inspect Instance Instances Intro Intros Inversion Inversion_clear Language Left Lemma Let Libraries Library Load LoadPath Local Locate Ltac ML Mode Module Modules Monomorphic Morphism Next NoInline Notation Obligation Obligations Opaque Open Optimize Options Parameter Parameters Parametric Path Paths pattern Polymorphic Preterm Print Printing Program Projections Proof Proposition Pwd Qed Quit Rec Record Recursive Redirect Relation Remark Remove Require Reserved Reset Resolve Restart Rewrite Right Ring Rings Save Scheme Scope Scopes Script Search SearchAbout SearchHead SearchPattern SearchRewrite Section Separate Set Setoid Show Solve Sorted Step Strategies Strategy Structure SubClass Table Tables Tactic Term Test Theorem Time Timeout Transparent Type Typeclasses Types Undelimit Undo Unfocus Unfocused Unfold Universe Universes Unset Unshelve using Variable Variables Variant Verbose Visibility where with",built_in:"abstract absurd admit after apply as assert assumption at auto autorewrite autounfold before bottom btauto by case case_eq cbn cbv change classical_left classical_right clear clearbody cofix compare compute congruence constr_eq constructor contradict contradiction cut cutrewrite cycle decide decompose dependent destruct destruction dintuition discriminate discrR do double dtauto eapply eassumption eauto ecase econstructor edestruct ediscriminate eelim eexact eexists einduction einjection eleft elim elimtype enough equality erewrite eright esimplify_eq esplit evar exact exactly_once exfalso exists f_equal fail field field_simplify field_simplify_eq first firstorder fix fold fourier functional generalize generalizing gfail give_up has_evar hnf idtac in induction injection instantiate intro intro_pattern intros intuition inversion inversion_clear is_evar is_var lapply lazy left lia lra move native_compute nia nsatz omega once pattern pose progress proof psatz quote record red refine reflexivity remember rename repeat replace revert revgoals rewrite rewrite_strat right ring ring_simplify rtauto set setoid_reflexivity setoid_replace setoid_rewrite setoid_symmetry setoid_transitivity shelve shelve_unifiable simpl simple simplify_eq solve specialize split split_Rabs split_Rmult stepl stepr subst sum swap symmetry tactic tauto time timeout top transitivity trivial try tryif unfold unify until using vm_compute with"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("\\(\\*","\\*\\)"),e.C_NUMBER_MODE,{className:"type",excludeBegin:!0,begin:"\\|\\s*",end:"\\w+"},{begin:/[-=]>/}]}};var $p=function(e){return{name:"Caché Object Script",case_insensitive:!0,aliases:["cls"],keywords:"property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii",contains:[{className:"number",begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)",relevance:0},{className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"comment",begin:/;/,end:"$",relevance:0},{className:"built_in",begin:/(?:\$\$?|\.\.)\^?[a-zA-Z]+/},{className:"built_in",begin:/\$\$\$[a-zA-Z]+/},{className:"built_in",begin:/%[a-z]+(?:\.[a-z]+)*/},{className:"symbol",begin:/\^%?[a-zA-Z][\w]*/},{className:"keyword",begin:/##class|##super|#define|#dim/},{begin:/&sql\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"sql"},{begin:/&(js|jscript|javascript)</,end:/>/,excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"},{begin:/&html<\s*</,end:/>\s*>/,subLanguage:"xml"}]}};function Qp(e){return e?"string"==typeof e?e:e.source:null}function Kp(e){return jp("(",e,")?")}function jp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Qp(e)})).join("");return a}var Xp=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+Kp(r)+"[a-zA-Z_]\\w*"+Kp("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:Kp(r)+e.IDENT_RE,relevance:0},d=Kp(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:jp(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,jp("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}};var Zp=function(e){var t="group clone ms master location colocation order fencing_topology rsc_ticket acl_target acl_group user role tag xml";return{name:"crmsh",aliases:["crm","pcmk"],case_insensitive:!0,keywords:{keyword:"params meta operations op rule attributes utilization read write deny defined not_defined in_range date spec in ref reference attribute type xpath version and or lt gt tag lte gte eq ne \\ number string",literal:"Master Started Slave Stopped start promote demote stop monitor true false"},contains:[e.HASH_COMMENT_MODE,{beginKeywords:"node",starts:{end:"\\s*([\\w_-]+:)?",starts:{className:"title",end:"\\s*[\\$\\w_][\\w_-]*"}}},{beginKeywords:"primitive rsc_template",starts:{className:"title",end:"\\s*[\\$\\w_][\\w_-]*",starts:{end:"\\s*@?[\\w_][\\w_\\.:-]*"}}},{begin:"\\b("+t.split(" ").join("|")+")\\s+",keywords:t,starts:{className:"title",end:"[\\$\\w_][\\w_-]*"}},{beginKeywords:"property rsc_defaults op_defaults",starts:{className:"title",end:"\\s*([\\w_-]+:)?"}},e.QUOTE_STRING_MODE,{className:"meta",begin:"(ocf|systemd|service|lsb):[\\w_:-]+",relevance:0},{className:"number",begin:"\\b\\d+(\\.\\d+)?(ms|s|h|m)?",relevance:0},{className:"literal",begin:"[-]?(infinity|inf)",relevance:0},{className:"attr",begin:/([A-Za-z$_#][\w_-]+)=/,relevance:0},{className:"tag",begin:"</?",end:"/?>",relevance:0}]}};var Jp=function(e){var t="(_?[ui](8|16|32|64|128))?",n="[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",a="[A-Za-z_]\\w*(::\\w+)*(\\?|!)?",r={$pattern:"[a-zA-Z_]\\w*[!?=]?",keyword:"abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",literal:"false nil true"},i={className:"subst",begin:/#\{/,end:/\}/,keywords:r},o={className:"template-variable",variants:[{begin:"\\{\\{",end:"\\}\\}"},{begin:"\\{%",end:"%\\}"}],keywords:r};function s(e,t){var n=[{begin:e,end:t}];return n[0].contains=n,n}var l={className:"string",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[Qwi]?\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%[Qwi]?\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%[Qwi]?\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%[Qwi]?<",end:">",contains:s("<",">")},{begin:"%[Qwi]?\\|",end:"\\|"},{begin:/<<-\w+$/,end:/^\s*\w+$/}],relevance:0},c={className:"string",variants:[{begin:"%q\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%q\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%q\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%q<",end:">",contains:s("<",">")},{begin:"%q\\|",end:"\\|"},{begin:/<<-'\w+'$/,end:/^\s*\w+$/}],relevance:0},_={begin:"(?!%\\})("+e.RE_STARTERS_RE+"|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",keywords:"case if select unless until when while",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"//[a-z]*",relevance:0},{begin:"/(?!\\/)",end:"/[a-z]*"}]}],relevance:0},d=[o,l,c,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"%r\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%r\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%r\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%r<",end:">",contains:s("<",">")},{begin:"%r\\|",end:"\\|"}],relevance:0},_,{className:"meta",begin:"@\\[",end:"\\]",contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"})]},e.HASH_COMMENT_MODE,{className:"class",beginKeywords:"class module struct",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a}),{begin:"<"}]},{className:"class",beginKeywords:"lib enum union",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})]},{beginKeywords:"annotation",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:2},{className:"function",beginKeywords:"def",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:n,endsParent:!0})]},{className:"function",beginKeywords:"fun macro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:n,endsParent:!0})],relevance:2},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":",contains:[l,{begin:n}],relevance:0},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_?[-+]?[0-9_]*)?(_?f(32|64))?(?!_)"},{begin:"\\b([1-9][0-9_]*|0)"+t}],relevance:0}];return i.contains=d,o.contains=d.slice(1),{name:"Crystal",aliases:["cr"],keywords:r,contains:d}};var eg=function(e){var t={keyword:["abstract","as","base","break","case","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"]),built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],literal:["default","false","null","true"]},n=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},r={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},i=e.inherit(r,{illegal:/\n/}),o={className:"subst",begin:/\{/,end:/\}/,keywords:t},s=e.inherit(o,{illegal:/\n/}),l={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,s]},c={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},o]},_=e.inherit(c,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},s]});o.contains=[c,l,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.C_BLOCK_COMMENT_MODE],s.contains=[_,l,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];var d={variants:[c,l,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},u={begin:"<",end:">",contains:[{beginKeywords:"in out"},n]},m=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",p={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:t,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},d,a,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},n,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"meta-string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+m+"\\s+)+"+e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:t,contains:[{beginKeywords:["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"].join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,u],relevance:0},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,relevance:0,contains:[d,a,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},p]}};var tg=function(e){return{name:"CSP",case_insensitive:!1,keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_-]*",keyword:"base-uri child-src connect-src default-src font-src form-action frame-ancestors frame-src img-src media-src object-src plugin-types report-uri sandbox script-src style-src"},contains:[{className:"string",begin:"'",end:"'"},{className:"attribute",begin:"^Content",end:":",excludeEnd:!0}]}},ng=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],ag=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],rg=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],ig=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],og=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();function sg(e){return e?"string"==typeof e?e:e.source:null}function lg(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return sg(e)})).join("")}("(?=",e,")")}var cg=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[e.C_BLOCK_COMMENT_MODE,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/},e.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+rg.join("|")+")"},{begin:"::("+ig.join("|")+")"}]},{className:"attribute",begin:"\\b("+og.join("|")+")\\b"},{begin:":",end:"[;}]",contains:[t.HEXCOLOR,t.IMPORTANT,e.CSS_NUMBER_MODE].concat(n,[{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},{className:"built_in",begin:/[\w-]+(?=\()/}])},{begin:lg(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:ag.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"}].concat(n,[e.CSS_NUMBER_MODE])}]},{className:"selector-tag",begin:"\\b("+ng.join("|")+")\\b"}]}};var _g=function(e){var t={$pattern:e.UNDERSCORE_IDENT_RE,keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",built_in:"bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring",literal:"false null true"},n="((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))",a="\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",r={className:"number",begin:"\\b"+n+"(L|u|U|Lu|LU|uL|UL)?",relevance:0},i={className:"number",begin:"\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|"+n+"(i|[fF]i|Li))",relevance:0},o={className:"string",begin:"'("+a+"|.)",end:"'",illegal:"."},s={className:"string",begin:'"',contains:[{begin:a,relevance:0}],end:'"[cwd]?'},l=e.COMMENT("\\/\\+","\\+\\/",{contains:["self"],relevance:10});return{name:"D",keywords:t,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,{className:"string",begin:'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',relevance:10},s,{className:"string",begin:'[rq]"',end:'"[cwd]?',relevance:5},{className:"string",begin:"`",end:"`[cwd]?"},{className:"string",begin:'q"\\{',end:'\\}"'},i,r,o,{className:"meta",begin:"^#!",end:"$",relevance:5},{className:"meta",begin:"#(line)",end:"$",relevance:5},{className:"keyword",begin:"@[a-zA-Z_][a-zA-Z_\\d]*"}]}};function dg(e){return e?"string"==typeof e?e:e.source:null}function ug(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return dg(e)})).join("");return a}var mg=function(e){var t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:ug(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},a={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},r={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};a.contains.push(r),r.contains.push(a);var i=[t,n];return a.contains=a.contains.concat(i),r.contains=r.contains.concat(i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:i=i.concat(a,r)},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:i}]}]},t,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},a,r,{className:"quote",begin:"^>\\s+",contains:i,end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},n,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}};var pg=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},n={className:"subst",variants:[{begin:/\$\{/,end:/\}/}],keywords:"true false null this is new super"},a={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"""',end:'"""',contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]}]};n.contains=[e.C_NUMBER_MODE,a];var r=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],i=r.map((function(e){return"".concat(e,"?")}));return{name:"Dart",keywords:{keyword:"abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is late library mixin new null on operator part required rethrow return set show static super switch sync this throw true try typedef var void while with yield",built_in:r.concat(i).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]),$pattern:/[A-Za-z][A-Za-z0-9_]*\??/},contains:[a,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".",end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}};var gg=function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],a={className:"meta",variants:[{begin:/\{\$/,end:/\}/},{begin:/\(\*\$/,end:/\*\)/}]},r={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},i={className:"string",begin:/(#\d+)+/},o={begin:e.IDENT_RE+"\\s*=\\s*class\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE]},s={className:"function",beginKeywords:"function constructor destructor procedure",end:/[:;]/,keywords:"function constructor|10 destructor|10 procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[r,i,a].concat(n)},a].concat(n)};return{name:"Delphi",aliases:["dpr","dfm","pas","pascal","freepascal","lazarus","lpr","lfm"],case_insensitive:!0,keywords:t,illegal:/"|\$[G-Zg-z]|\/\*|<\/|\|/,contains:[r,i,e.NUMBER_MODE,{className:"number",relevance:0,variants:[{begin:"\\$[0-9A-Fa-f]+"},{begin:"&[0-7]+"},{begin:"%[01]+"}]},o,s,a].concat(n)}};var Eg=function(e){return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,variants:[{begin:/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/},{begin:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{begin:/^--- +\d+,\d+ +----$/}]},{className:"comment",variants:[{begin:/Index: /,end:/$/},{begin:/^index/,end:/$/},{begin:/={3,}/,end:/$/},{begin:/^-{3}/,end:/$/},{begin:/^\*{3} /,end:/$/},{begin:/^\+{3}/,end:/$/},{begin:/^\*{15}$/},{begin:/^diff --git/,end:/$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}};var Sg=function(e){var t={begin:/\|[A-Za-z]+:?/,keywords:{name:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone"},contains:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE]};return{name:"Django",aliases:["jinja"],case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{%\s*comment\s*%\}/,/\{%\s*endcomment\s*%\}/),e.COMMENT(/\{#/,/#\}/),{className:"template-tag",begin:/\{%/,end:/%\}/,contains:[{className:"name",begin:/\w+/,keywords:{name:"comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim"},starts:{endsWithParent:!0,keywords:"in by as",contains:[t],relevance:0}}]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[t]}]}};var bg=function(e){return{name:"DNS Zone",aliases:["bind","zone"],keywords:{keyword:"IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:/^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/},{className:"number",begin:"((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b"},{className:"number",begin:"((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b"},e.inherit(e.NUMBER_MODE,{begin:/\b\d+[dhwm]?/})]}};var Tg=function(e){return{name:"Dockerfile",aliases:["docker"],case_insensitive:!0,keywords:"from maintainer expose env arg user onbuild stopsignal",contains:[e.HASH_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{beginKeywords:"run cmd entrypoint volume add copy workdir label healthcheck shell",starts:{end:/[^\\]$/,subLanguage:"bash"}}],illegal:"</"}};var fg=function(e){var t=e.COMMENT(/^\s*@?rem\b/,/$/,{relevance:10});return{name:"Batch file (DOS)",aliases:["bat","cmd"],case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",built_in:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux shift cd dir echo setlocal endlocal set pause copy append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shift sort start subst time title tree type ver verify vol ping net ipconfig taskkill xcopy ren del"},contains:[{className:"variable",begin:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{className:"function",begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",end:"goto:eof",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),t]},{className:"number",begin:"\\b\\d+",relevance:0},t]}};var Cg=function(e){return{keywords:"dsconfig",contains:[{className:"keyword",begin:"^dsconfig",end:/\s/,excludeEnd:!0,relevance:10},{className:"built_in",begin:/(list|create|get|set|delete)-(\w+)/,end:/\s/,excludeEnd:!0,illegal:"!@#$%^&*()",relevance:10},{className:"built_in",begin:/--(\w+)/,end:/\s/,excludeEnd:!0},{className:"string",begin:/"/,end:/"/},{className:"string",begin:/'/,end:/'/},{className:"string",begin:/[\w\-?]+:\w+/,end:/\W/,relevance:0},{className:"string",begin:/\w+(\-\w+)*/,end:/(?=\W)/,relevance:0},e.HASH_COMMENT_MODE]}};var Ng=function(e){var t={className:"string",variants:[e.inherit(e.QUOTE_STRING_MODE,{begin:'((u8?|U)|L)?"'}),{begin:'(u8?|U)?R"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{begin:"'\\\\?.",end:"'",illegal:"."}]},n={className:"number",variants:[{begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},{begin:e.C_NUMBER_RE}],relevance:0},a={className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef ifdef ifndef"},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",end:"$",keywords:{"meta-keyword":"include"},contains:[e.inherit(t,{className:"meta-string"}),{className:"meta-string",begin:"<",end:">",illegal:"\\n"}]},t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r={className:"variable",begin:/&[a-z\d_]*\b/},i={className:"meta-keyword",begin:"/[a-z][a-z\\d-]*/"},o={className:"symbol",begin:"^\\s*[a-zA-Z_][a-zA-Z\\d_]*:"},s={className:"params",begin:"<",end:">",contains:[n,r]},l={className:"class",begin:/[a-zA-Z_][a-zA-Z\d_@]*\s\{/,end:/[{;=]/,returnBegin:!0,excludeEnd:!0};return{name:"Device Tree",keywords:"",contains:[{className:"class",begin:"/\\s*\\{",end:/\};/,relevance:10,contains:[r,i,o,l,s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,t]},r,i,o,l,s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,t,a,{begin:e.IDENT_RE+"::",keywords:""}]}};var Rg=function(e){return{name:"Dust",aliases:["dst"],case_insensitive:!0,subLanguage:"xml",contains:[{className:"template-tag",begin:/\{[#\/]/,end:/\}/,illegal:/;/,contains:[{className:"name",begin:/[a-zA-Z\.-]+/,starts:{endsWithParent:!0,relevance:0,contains:[e.QUOTE_STRING_MODE]}}]},{className:"template-variable",begin:/\{/,end:/\}/,illegal:/;/,keywords:"if eq ne lt lte gt gte select default math sep"}]}};var vg=function(e){var t=e.COMMENT(/\(\*/,/\*\)/);return{name:"Extended Backus-Naur Form",illegal:/\S/,contains:[t,{className:"attribute",begin:/^[ ]*[a-zA-Z]+([\s_-]+[a-zA-Z]+)*/},{begin:/=/,end:/[.;]/,contains:[t,{className:"meta",begin:/\?.*\?/},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"`",end:"`"}]}]}]}};var Og=function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",n={$pattern:t,keyword:"and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0"},a={className:"subst",begin:/#\{/,end:/\}/,keywords:n},r={className:"number",begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)",relevance:0},i={className:"string",begin:"~[a-z](?=[/|([{<\"'])",contains:[{endsParent:!0,contains:[{contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</,end:/>/}]}]}]},o={className:"string",begin:"~[A-Z](?=[/|([{<\"'])",contains:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</,end:/>/}]},s={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},l={className:"function",beginKeywords:"def defp defmacro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:t,endsParent:!0})]},c=e.inherit(l,{className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord",end:/\bdo\b|$|;/}),_=[s,o,i,e.HASH_COMMENT_MODE,c,l,{begin:"::"},{className:"symbol",begin:":(?![\\s:])",contains:[s,{begin:"[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?"}],relevance:0},{className:"symbol",begin:t+":(?!:)",relevance:0},r,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))"},{begin:"->"},{begin:"("+e.RE_STARTERS_RE+")\\s*",contains:[e.HASH_COMMENT_MODE,{begin:/\/: (?=\d+\s*[,\]])/,relevance:0,contains:[r]},{className:"regexp",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}],relevance:0}];return a.contains=_,{name:"Elixir",keywords:n,contains:_}};var hg=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},n={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},a={begin:"\\(",end:"\\)",illegal:'"',contains:[{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},t]};return{name:"Elm",keywords:"let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",contains:[{beginKeywords:"port effect module",end:"exposing",keywords:"port effect module where command subscription exposing",contains:[a,t],illegal:"\\W\\.|;"},{begin:"import",end:"$",keywords:"import as exposing",contains:[a,t],illegal:"\\W\\.|;"},{begin:"type",end:"$",keywords:"type alias",contains:[n,a,{begin:/\{/,end:/\}/,contains:a.contains},t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"port",end:"$",keywords:"port",contains:[t]},{className:"string",begin:"'\\\\?.",end:"'",illegal:"."},e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,n,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}],illegal:/;/}};function yg(e){return e?"string"==typeof e?e:e.source:null}function Ig(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return yg(e)})).join("");return a}var Ag=function(e){var t,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",a={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__",built_in:"proc lambda",literal:"true false nil"},r={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},o=[e.COMMENT("#","$",{contains:[r]}),e.COMMENT("^=begin","^=end",{contains:[r],relevance:10}),e.COMMENT("^__END__","\\n$")],s={className:"subst",begin:/#\{/,end:/\}/,keywords:a},l={className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:/<<[-~]?'?(\w+)\n(?:[^\n]*\n)*?\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,s]})]}]},c="[0-9](_?[0-9])*",_={className:"number",relevance:0,variants:[{begin:"\\b(".concat("[1-9](_?[0-9])*|0",")(\\.(").concat(c,"))?([eE][+-]?(").concat(c,")|r)?i?\\b")},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},d={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:a},u=[l,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE,relevance:0}]}].concat(o)},{className:"function",begin:Ig(/def\s+/,(t=n+"\\s*(\\(|;|$)",Ig("(?=",t,")"))),relevance:0,keywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:n}),d].concat(o)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[l,{begin:n}],relevance:0},_,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:a},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(i,o),relevance:0}].concat(i,o);s.contains=u,d.contains=u;var m=[{begin:/^\s*=>/,starts:{end:"$",contains:u}},{className:"meta",begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])",starts:{end:"$",contains:u}}];return o.unshift(i),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:a,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(m).concat(o).concat(u)}};var Dg=function(e){return{name:"ERB",subLanguage:"xml",contains:[e.COMMENT("<%#","%>"),{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]}};function Mg(e){return e?"string"==typeof e?e:e.source:null}function Lg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Mg(e)})).join("");return a}var wg=function(e){return{name:"Erlang REPL",keywords:{built_in:"spawn spawn_link self",keyword:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"},contains:[{className:"meta",begin:"^[0-9]+> ",relevance:10},e.COMMENT("%","$"),{className:"number",begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:Lg(/\?(::)?/,/([A-Z]\w*)/,/((::)[A-Z]\w*)*/)},{begin:"->"},{begin:"ok"},{begin:"!"},{begin:"(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)",relevance:0},{begin:"[A-Z][a-zA-Z0-9_']*",relevance:0}]}};var xg=function(e){var t="[a-z'][a-zA-Z0-9_']*",n="("+t+":"+t+"|"+t+")",a={keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor",literal:"false true"},r=e.COMMENT("%","$"),i={className:"number",begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",relevance:0},o={begin:"fun\\s+"+t+"/\\d+"},s={begin:n+"\\(",end:"\\)",returnBegin:!0,relevance:0,contains:[{begin:n,relevance:0},{begin:"\\(",end:"\\)",endsWithParent:!0,returnEnd:!0,relevance:0}]},l={begin:/\{/,end:/\}/,relevance:0},c={begin:"\\b_([A-Z][A-Za-z0-9_]*)?",relevance:0},_={begin:"[A-Z][a-zA-Z0-9_]*",relevance:0},d={begin:"#"+e.UNDERSCORE_IDENT_RE,relevance:0,returnBegin:!0,contains:[{begin:"#"+e.UNDERSCORE_IDENT_RE,relevance:0},{begin:/\{/,end:/\}/,relevance:0}]},u={beginKeywords:"fun receive if try case",end:"end",keywords:a};u.contains=[r,o,e.inherit(e.APOS_STRING_MODE,{className:""}),u,s,e.QUOTE_STRING_MODE,i,l,c,_,d];var m=[r,o,u,s,e.QUOTE_STRING_MODE,i,l,c,_,d];s.contains[1].contains=m,l.contains=m,d.contains[1].contains=m;var p={className:"params",begin:"\\(",end:"\\)",contains:m};return{name:"Erlang",aliases:["erl"],keywords:a,illegal:"(</|\\*=|\\+=|-=|/\\*|\\*/|\\(\\*|\\*\\))",contains:[{className:"function",begin:"^"+t+"\\s*\\(",end:"->",returnBegin:!0,illegal:"\\(|#|//|/\\*|\\\\|:|;",contains:[p,e.inherit(e.TITLE_MODE,{begin:t})],starts:{end:";|\\.",keywords:a,contains:m}},r,{begin:"^-",end:"\\.",relevance:0,excludeEnd:!0,returnBegin:!0,keywords:{$pattern:"-"+e.IDENT_RE,keyword:["-module","-record","-undef","-export","-ifdef","-ifndef","-author","-copyright","-doc","-vsn","-import","-include","-include_lib","-compile","-define","-else","-endif","-file","-behaviour","-behavior","-spec"].map((function(e){return"".concat(e,"|1.5")})).join(" ")},contains:[p]},i,e.QUOTE_STRING_MODE,d,c,_,l,{begin:/\.$/}]}};var Pg=function(e){return{name:"Excel formulae",aliases:["xlsx","xls"],case_insensitive:!0,keywords:{$pattern:/[a-zA-Z][\w\.]*/,built_in:"ABS ACCRINT ACCRINTM ACOS ACOSH ACOT ACOTH AGGREGATE ADDRESS AMORDEGRC AMORLINC AND ARABIC AREAS ASC ASIN ASINH ATAN ATAN2 ATANH AVEDEV AVERAGE AVERAGEA AVERAGEIF AVERAGEIFS BAHTTEXT BASE BESSELI BESSELJ BESSELK BESSELY BETADIST BETA.DIST BETAINV BETA.INV BIN2DEC BIN2HEX BIN2OCT BINOMDIST BINOM.DIST BINOM.DIST.RANGE BINOM.INV BITAND BITLSHIFT BITOR BITRSHIFT BITXOR CALL CEILING CEILING.MATH CEILING.PRECISE CELL CHAR CHIDIST CHIINV CHITEST CHISQ.DIST CHISQ.DIST.RT CHISQ.INV CHISQ.INV.RT CHISQ.TEST CHOOSE CLEAN CODE COLUMN COLUMNS COMBIN COMBINA COMPLEX CONCAT CONCATENATE CONFIDENCE CONFIDENCE.NORM CONFIDENCE.T CONVERT CORREL COS COSH COT COTH COUNT COUNTA COUNTBLANK COUNTIF COUNTIFS COUPDAYBS COUPDAYS COUPDAYSNC COUPNCD COUPNUM COUPPCD COVAR COVARIANCE.P COVARIANCE.S CRITBINOM CSC CSCH CUBEKPIMEMBER CUBEMEMBER CUBEMEMBERPROPERTY CUBERANKEDMEMBER CUBESET CUBESETCOUNT CUBEVALUE CUMIPMT CUMPRINC DATE DATEDIF DATEVALUE DAVERAGE DAY DAYS DAYS360 DB DBCS DCOUNT DCOUNTA DDB DEC2BIN DEC2HEX DEC2OCT DECIMAL DEGREES DELTA DEVSQ DGET DISC DMAX DMIN DOLLAR DOLLARDE DOLLARFR DPRODUCT DSTDEV DSTDEVP DSUM DURATION DVAR DVARP EDATE EFFECT ENCODEURL EOMONTH ERF ERF.PRECISE ERFC ERFC.PRECISE ERROR.TYPE EUROCONVERT EVEN EXACT EXP EXPON.DIST EXPONDIST FACT FACTDOUBLE FALSE|0 F.DIST FDIST F.DIST.RT FILTERXML FIND FINDB F.INV F.INV.RT FINV FISHER FISHERINV FIXED FLOOR FLOOR.MATH FLOOR.PRECISE FORECAST FORECAST.ETS FORECAST.ETS.CONFINT FORECAST.ETS.SEASONALITY FORECAST.ETS.STAT FORECAST.LINEAR FORMULATEXT FREQUENCY F.TEST FTEST FV FVSCHEDULE GAMMA GAMMA.DIST GAMMADIST GAMMA.INV GAMMAINV GAMMALN GAMMALN.PRECISE GAUSS GCD GEOMEAN GESTEP GETPIVOTDATA GROWTH HARMEAN HEX2BIN HEX2DEC HEX2OCT HLOOKUP HOUR HYPERLINK HYPGEOM.DIST HYPGEOMDIST IF IFERROR IFNA IFS IMABS IMAGINARY IMARGUMENT IMCONJUGATE IMCOS IMCOSH IMCOT IMCSC IMCSCH IMDIV IMEXP IMLN IMLOG10 IMLOG2 IMPOWER IMPRODUCT IMREAL IMSEC IMSECH IMSIN IMSINH IMSQRT IMSUB IMSUM IMTAN INDEX INDIRECT INFO INT INTERCEPT INTRATE IPMT IRR ISBLANK ISERR ISERROR ISEVEN ISFORMULA ISLOGICAL ISNA ISNONTEXT ISNUMBER ISODD ISREF ISTEXT ISO.CEILING ISOWEEKNUM ISPMT JIS KURT LARGE LCM LEFT LEFTB LEN LENB LINEST LN LOG LOG10 LOGEST LOGINV LOGNORM.DIST LOGNORMDIST LOGNORM.INV LOOKUP LOWER MATCH MAX MAXA MAXIFS MDETERM MDURATION MEDIAN MID MIDBs MIN MINIFS MINA MINUTE MINVERSE MIRR MMULT MOD MODE MODE.MULT MODE.SNGL MONTH MROUND MULTINOMIAL MUNIT N NA NEGBINOM.DIST NEGBINOMDIST NETWORKDAYS NETWORKDAYS.INTL NOMINAL NORM.DIST NORMDIST NORMINV NORM.INV NORM.S.DIST NORMSDIST NORM.S.INV NORMSINV NOT NOW NPER NPV NUMBERVALUE OCT2BIN OCT2DEC OCT2HEX ODD ODDFPRICE ODDFYIELD ODDLPRICE ODDLYIELD OFFSET OR PDURATION PEARSON PERCENTILE.EXC PERCENTILE.INC PERCENTILE PERCENTRANK.EXC PERCENTRANK.INC PERCENTRANK PERMUT PERMUTATIONA PHI PHONETIC PI PMT POISSON.DIST POISSON POWER PPMT PRICE PRICEDISC PRICEMAT PROB PRODUCT PROPER PV QUARTILE QUARTILE.EXC QUARTILE.INC QUOTIENT RADIANS RAND RANDBETWEEN RANK.AVG RANK.EQ RANK RATE RECEIVED REGISTER.ID REPLACE REPLACEB REPT RIGHT RIGHTB ROMAN ROUND ROUNDDOWN ROUNDUP ROW ROWS RRI RSQ RTD SEARCH SEARCHB SEC SECH SECOND SERIESSUM SHEET SHEETS SIGN SIN SINH SKEW SKEW.P SLN SLOPE SMALL SQL.REQUEST SQRT SQRTPI STANDARDIZE STDEV STDEV.P STDEV.S STDEVA STDEVP STDEVPA STEYX SUBSTITUTE SUBTOTAL SUM SUMIF SUMIFS SUMPRODUCT SUMSQ SUMX2MY2 SUMX2PY2 SUMXMY2 SWITCH SYD T TAN TANH TBILLEQ TBILLPRICE TBILLYIELD T.DIST T.DIST.2T T.DIST.RT TDIST TEXT TEXTJOIN TIME TIMEVALUE T.INV T.INV.2T TINV TODAY TRANSPOSE TREND TRIM TRIMMEAN TRUE|0 TRUNC T.TEST TTEST TYPE UNICHAR UNICODE UPPER VALUE VAR VAR.P VAR.S VARA VARP VARPA VDB VLOOKUP WEBSERVICE WEEKDAY WEEKNUM WEIBULL WEIBULL.DIST WORKDAY WORKDAY.INTL XIRR XNPV XOR YEAR YEARFRAC YIELD YIELDDISC YIELDMAT Z.TEST ZTEST"},contains:[{begin:/^=/,end:/[^=]/,returnEnd:!0,illegal:/=/,relevance:10},{className:"symbol",begin:/\b[A-Z]{1,2}\d+\b/,end:/[^\d]/,excludeEnd:!0,relevance:0},{className:"symbol",begin:/[A-Z]{0,2}\d*:[A-Z]{0,2}\d*/,relevance:0},e.BACKSLASH_ESCAPE,e.QUOTE_STRING_MODE,{className:"number",begin:e.NUMBER_RE+"(%)?",relevance:0},e.COMMENT(/\bN\(/,/\)/,{excludeBegin:!0,excludeEnd:!0,illegal:/\n/})]}};var kg=function(e){return{name:"FIX",contains:[{begin:/[^\u2401\u0001]+/,end:/[\u2401\u0001]/,excludeEnd:!0,returnBegin:!0,returnEnd:!1,contains:[{begin:/([^\u2401\u0001=]+)/,end:/=([^\u2401\u0001=]+)/,returnEnd:!0,returnBegin:!1,className:"attr"},{begin:/=/,end:/([\u2401\u0001])/,excludeEnd:!0,excludeBegin:!0,className:"string"}]}],case_insensitive:!0}};var Ug=function(e){var t={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[{className:"title",relevance:0,begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/}]};return{name:"Flix",keywords:{literal:"true false",keyword:"case class def else enum if impl import in lat rel index let match namespace switch type yield with"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},{className:"string",variants:[{begin:'"',end:'"'}]},t,e.C_NUMBER_MODE]}};function Fg(e){return e?"string"==typeof e?e:e.source:null}function Bg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Fg(e)})).join("");return a}var Gg=function(e){var t={variants:[e.COMMENT("!","$",{relevance:0}),e.COMMENT("^C[ ]","$",{relevance:0}),e.COMMENT("^C$","$",{relevance:0})]},n=/(_[a-z_\d]+)?/,a=/([de][+-]?\d+)?/,r={className:"number",variants:[{begin:Bg(/\b\d+/,/\.(\d*)/,a,n)},{begin:Bg(/\b\d+/,a,n)},{begin:Bg(/\.\d+/,a,n)}],relevance:0},i={className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]};return{name:"Fortran",case_insensitive:!0,aliases:["f90","f95"],keywords:{literal:".False. .True.",keyword:"kind do concurrent local shared while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then block endblock endassociate public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure impure integer real character complex logical codimension dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image sync change team co_broadcast co_max co_min co_sum co_reduce"},illegal:/\/\*/,contains:[{className:"string",relevance:0,variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},i,{begin:/^C\s*=(?!=)/,relevance:0},t,r]}};var Yg=function(e){var t={begin:"<",end:">",contains:[e.inherit(e.TITLE_MODE,{begin:/'[a-zA-Z0-9_]+/})]};return{name:"F#",aliases:["fs"],keywords:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",illegal:/\/\*/,contains:[{className:"keyword",begin:/\b(yield|return|let|do)!/},{className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:'"""',end:'"""'},e.COMMENT("\\(\\*(\\s)","\\*\\)",{contains:["self"]}),{className:"class",beginKeywords:"type",end:"\\(|=|$",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE,t]},{className:"meta",begin:"\\[<",end:">\\]",relevance:10},{className:"symbol",begin:"\\B('[A-Za-z])\\b",contains:[e.BACKSLASH_ESCAPE]},e.C_LINE_COMMENT_MODE,e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),e.C_NUMBER_MODE]}};function Hg(e){return e?"string"==typeof e?e:e.source:null}function Vg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Hg(e)})).join("");return a}var qg=function(e){var t,n={keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",literal:"eps inf na",built_in:"abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart"},a={className:"symbol",variants:[{begin:/=[lgenxc]=/},{begin:/\$/}]},r={className:"comment",variants:[{begin:"'",end:"'"},{begin:'"',end:'"'}],illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},i={begin:"/",end:"/",keywords:n,contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},o=/[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+/,s={begin:/[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,excludeBegin:!0,end:"$",endsWithParent:!0,contains:[r,i,{className:"comment",begin:Vg(o,(t=Vg(/[ ]+/,o),Vg("(",t,")*"))),relevance:0}]};return{name:"GAMS",aliases:["gms"],case_insensitive:!0,keywords:n,contains:[e.COMMENT(/^\$ontext/,/^\$offtext/),{className:"meta",begin:"^\\$[a-z0-9]+",end:"$",returnBegin:!0,contains:[{className:"meta-keyword",begin:"^\\$[a-z0-9]+"}]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{beginKeywords:"set sets parameter parameters variable variables scalar scalars equation equations",end:";",contains:[e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i,s]},{beginKeywords:"table",end:";",returnBegin:!0,contains:[{beginKeywords:"table",end:"$",contains:[s]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},{className:"function",begin:/^[a-z][a-z0-9_,\-+' ()$]+\.{2}/,returnBegin:!0,contains:[{className:"title",begin:/^[a-z0-9_]+/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0},a]},e.C_NUMBER_MODE,a]}};var zg=function(e){var t={keyword:"bool break call callexe checkinterrupt clear clearg closeall cls comlog compile continue create debug declare delete disable dlibrary dllcall do dos ed edit else elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv",built_in:"abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdusv ldlp ldlsol linSolve listwise ln lncdfbvn lncdfbvn2 lncdfmvn lncdfn lncdfn2 lncdfnc lnfact lngammacplx lnpdfmvn lnpdfmvt lnpdfn lnpdft loadd loadstruct loadwind loess loessmt loessmtControlCreate log loglog logx logy lower lowmat lowmat1 ltrisol lu lusol machEpsilon make makevars makewind margin matalloc matinit mattoarray maxbytes maxc maxindc maxv maxvec mbesselei mbesselei0 mbesselei1 mbesseli mbesseli0 mbesseli1 meanc median mergeby mergevar minc minindc minv miss missex missrv moment momentd movingave movingaveExpwgt movingaveWgt nextindex nextn nextnevn nextwind ntos null null1 numCombinations ols olsmt olsmtControlCreate olsqr olsqr2 olsqrmt ones optn optnevn orth outtyp pacf packedToSp packr parse pause pdfCauchy pdfChi pdfExp pdfGenPareto pdfHyperGeo pdfLaplace pdfLogistic pdfn pdfPoisson pdfRayleigh pdfWeibull pi pinv pinvmt plotAddArrow plotAddBar plotAddBox plotAddHist plotAddHistF plotAddHistP plotAddPolar plotAddScatter plotAddShape plotAddTextbox plotAddTS plotAddXY plotArea plotBar plotBox plotClearLayout plotContour plotCustomLayout plotGetDefaults plotHist plotHistF plotHistP plotLayout plotLogLog plotLogX plotLogY plotOpenWindow plotPolar plotSave plotScatter plotSetAxesPen plotSetBar plotSetBarFill plotSetBarStacked plotSetBkdColor plotSetFill plotSetGrid plotSetLegend plotSetLineColor plotSetLineStyle plotSetLineSymbol plotSetLineThickness plotSetNewWindow plotSetTitle plotSetWhichYAxis plotSetXAxisShow plotSetXLabel plotSetXRange plotSetXTicInterval plotSetXTicLabel plotSetYAxisShow plotSetYLabel plotSetYRange plotSetZAxisShow plotSetZLabel plotSurface plotTS plotXY polar polychar polyeval polygamma polyint polymake polymat polymroot polymult polyroot pqgwin previousindex princomp printfm printfmt prodc psi putarray putf putvals pvCreate pvGetIndex pvGetParNames pvGetParVector pvLength pvList pvPack pvPacki pvPackm pvPackmi pvPacks pvPacksi pvPacksm pvPacksmi pvPutParVector pvTest pvUnpack QNewton QNewtonmt QNewtonmtControlCreate QNewtonmtOutCreate QNewtonSet QProg QProgmt QProgmtInCreate qqr qqre qqrep qr qre qrep qrsol qrtsol qtyr qtyre qtyrep quantile quantiled qyr qyre qyrep qz rank rankindx readr real reclassify reclassifyCuts recode recserar recsercp recserrc rerun rescale reshape rets rev rfft rffti rfftip rfftn rfftnp rfftp rndBernoulli rndBeta rndBinomial rndCauchy rndChiSquare rndCon rndCreateState rndExp rndGamma rndGeo rndGumbel rndHyperGeo rndi rndKMbeta rndKMgam rndKMi rndKMn rndKMnb rndKMp rndKMu rndKMvm rndLaplace rndLCbeta rndLCgam rndLCi rndLCn rndLCnb rndLCp rndLCu rndLCvm rndLogNorm rndMTu rndMVn rndMVt rndn rndnb rndNegBinomial rndp rndPoisson rndRayleigh rndStateSkip rndu rndvm rndWeibull rndWishart rotater round rows rowsf rref sampleData satostrC saved saveStruct savewind scale scale3d scalerr scalinfnanmiss scalmiss schtoc schur searchsourcepath seekr select selif seqa seqm setdif setdifsa setvars setvwrmode setwind shell shiftr sin singleindex sinh sleep solpd sortc sortcc sortd sorthc sorthcc sortind sortindc sortmc sortr sortrc spBiconjGradSol spChol spConjGradSol spCreate spDenseSubmat spDiagRvMat spEigv spEye spLDL spline spLU spNumNZE spOnes spreadSheetReadM spreadSheetReadSA spreadSheetWrite spScale spSubmat spToDense spTrTDense spTScalar spZeros sqpSolve sqpSolveMT sqpSolveMTControlCreate sqpSolveMTlagrangeCreate sqpSolveMToutCreate sqpSolveSet sqrt statements stdc stdsc stocv stof strcombine strindx strlen strput strrindx strsect strsplit strsplitPad strtodt strtof strtofcplx strtriml strtrimr strtrunc strtruncl strtruncpad strtruncr submat subscat substute subvec sumc sumr surface svd svd1 svd2 svdcusv svds svdusv sysstate tab tan tanh tempname time timedt timestr timeutc title tkf2eps tkf2ps tocart todaydt toeplitz token topolar trapchk trigamma trimr trunc type typecv typef union unionsa uniqindx uniqindxsa unique uniquesa upmat upmat1 upper utctodt utctodtv utrisol vals varCovMS varCovXS varget vargetl varmall varmares varput varputl vartypef vcm vcms vcx vcxs vec vech vecr vector vget view viewxyz vlist vnamecv volume vput vread vtypecv wait waitc walkindex where window writer xlabel xlsGetSheetCount xlsGetSheetSize xlsGetSheetTypes xlsMakeRange xlsReadM xlsReadSA xlsWrite xlsWriteM xlsWriteSA xpnd xtics xy xyz ylabel ytics zeros zeta zlabel ztics cdfEmpirical dot h5create h5open h5read h5readAttribute h5write h5writeAttribute ldl plotAddErrorBar plotAddSurface plotCDFEmpirical plotSetColormap plotSetContourLabels plotSetLegendFont plotSetTextInterpreter plotSetXTicCount plotSetYTicCount plotSetZLevels powerm strjoin sylvester strtrim",literal:"DB_AFTER_LAST_ROW DB_ALL_TABLES DB_BATCH_OPERATIONS DB_BEFORE_FIRST_ROW DB_BLOB DB_EVENT_NOTIFICATIONS DB_FINISH_QUERY DB_HIGH_PRECISION DB_LAST_INSERT_ID DB_LOW_PRECISION_DOUBLE DB_LOW_PRECISION_INT32 DB_LOW_PRECISION_INT64 DB_LOW_PRECISION_NUMBERS DB_MULTIPLE_RESULT_SETS DB_NAMED_PLACEHOLDERS DB_POSITIONAL_PLACEHOLDERS DB_PREPARED_QUERIES DB_QUERY_SIZE DB_SIMPLE_LOCKING DB_SYSTEM_TABLES DB_TABLES DB_TRANSACTIONS DB_UNICODE DB_VIEWS __STDIN __STDOUT __STDERR __FILE_DIR"},n=e.COMMENT("@","@"),a={className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"define definecs|10 undef ifdef ifndef iflight ifdllcall ifmac ifos2win ifunix else endif lineson linesoff srcfile srcline"},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",end:"$",keywords:{"meta-keyword":"include"},contains:[{className:"meta-string",begin:'"',end:'"',illegal:"\\n"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n]},r={begin:/\bstruct\s+/,end:/\s/,keywords:"struct",contains:[{className:"type",begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},i=[{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,endsWithParent:!0,relevance:0,contains:[{className:"literal",begin:/\.\.\./},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,r]}],o={className:"title",begin:e.UNDERSCORE_IDENT_RE,relevance:0},s=function(t,a,r){var s=e.inherit({className:"function",beginKeywords:t,end:a,excludeEnd:!0,contains:[].concat(i)},r||{});return s.contains.push(o),s.contains.push(e.C_NUMBER_MODE),s.contains.push(e.C_BLOCK_COMMENT_MODE),s.contains.push(n),s},l={className:"built_in",begin:"\\b("+t.built_in.split(" ").join("|")+")\\b"},c={className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE],relevance:0},_={begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,keywords:t,relevance:0,contains:[{beginKeywords:t.keyword},l,{className:"built_in",begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},d={begin:/\(/,end:/\)/,relevance:0,keywords:{built_in:t.built_in,literal:t.literal},contains:[e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,l,_,c,"self"]};return _.contains.push(d),{name:"GAUSS",aliases:["gss"],case_insensitive:!0,keywords:t,illegal:/(\{[%#]|[%#]\}| <- )/,contains:[e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,c,a,{className:"keyword",begin:/\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)/},s("proc keyword",";"),s("fn","="),{beginKeywords:"for threadfor",end:/;/,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE,n,d]},{variants:[{begin:e.UNDERSCORE_IDENT_RE+"\\."+e.UNDERSCORE_IDENT_RE},{begin:e.UNDERSCORE_IDENT_RE+"\\s*="}],relevance:0},_,r]}};var Wg=function(e){var t={$pattern:"[A-Z_][A-Z0-9_.]*",keyword:"IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT EQ LT GT NE GE LE OR XOR"},n=e.inherit(e.C_NUMBER_MODE,{begin:"([-+]?((\\.\\d+)|(\\d+)(\\.\\d*)?))|"+e.C_NUMBER_RE}),a=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(/\(/,/\)/),n,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"name",begin:"([G])([0-9]+\\.?[0-9]?)"},{className:"name",begin:"([M])([0-9]+\\.?[0-9]?)"},{className:"attr",begin:"(VC|VS|#)",end:"(\\d+)"},{className:"attr",begin:"(VZOFX|VZOFY|VZOFZ)"},{className:"built_in",begin:"(ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN)(\\[)",contains:[n],end:"\\]"},{className:"symbol",variants:[{begin:"N",end:"\\d+",illegal:"\\W"}]}];return{name:"G-code (ISO 6983)",aliases:["nc"],case_insensitive:!0,keywords:t,contains:[{className:"meta",begin:"%"},{className:"meta",begin:"([O])([0-9]+)"}].concat(a)}};var $g=function(e){return{name:"Gherkin",aliases:["feature"],keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta",begin:"@[^@\\s]+"},{begin:"\\|",end:"\\|\\w*$",contains:[{className:"string",begin:"[^|]+"}]},{className:"variable",begin:"<",end:">"},e.HASH_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},e.QUOTE_STRING_MODE]}};var Qg=function(e){return{name:"GLSL",keywords:{keyword:"break continue discard do else for if return while switch case default attribute binding buffer ccw centroid centroid varying coherent column_major const cw depth_any depth_greater depth_less depth_unchanged early_fragment_tests equal_spacing flat fractional_even_spacing fractional_odd_spacing highp in index inout invariant invocations isolines layout line_strip lines lines_adjacency local_size_x local_size_y local_size_z location lowp max_vertices mediump noperspective offset origin_upper_left out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 rgb10_a2ui rgba16 rgba16_snorm rgba16f rgba16i rgba16ui rgba32f rgba32i rgba32ui rgba8 rgba8_snorm rgba8i rgba8ui row_major sample shared smooth std140 std430 stream triangle_strip triangles triangles_adjacency uniform varying vertices volatile writeonly",type:"atomic_uint bool bvec2 bvec3 bvec4 dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 double dvec2 dvec3 dvec4 float iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray int isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow image1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D samplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 vec2 vec3 vec4 void",built_in:"gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxComputeAtomicCounterBuffers gl_MaxComputeAtomicCounters gl_MaxComputeImageUniforms gl_MaxComputeTextureImageUnits gl_MaxComputeUniformComponents gl_MaxComputeWorkGroupCount gl_MaxComputeWorkGroupSize gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentInputVectors gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexOutputVectors gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffset gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_GlobalInvocationID gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_LocalInvocationID gl_LocalInvocationIndex gl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_NumSamples gl_NumWorkGroups gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrix gl_TextureMatrixInverse gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_WorkGroupID gl_WorkGroupSize gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicAdd atomicAnd atomicCompSwap atomicCounter atomicCounterDecrement atomicCounterIncrement atomicExchange atomicMax atomicMin atomicOr atomicXor barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual groupMemoryBarrier imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageSize imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier memoryBarrierAtomicCounter memoryBarrierBuffer memoryBarrierImage memoryBarrierShared min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj shadow1DProjLod shadow2D shadow2DLod shadow2DProj shadow2DProjLod sign sin sinh smoothstep sqrt step tan tanh texelFetch texelFetchOffset texture texture1D texture1DLod texture1DProj texture1DProjLod texture2D texture2DLod texture2DProj texture2DProjLod texture3D texture3DLod texture3DProj texture3DProjLod textureCube textureCubeLod textureGather textureGatherOffset textureGatherOffsets textureGrad textureGradOffset textureLod textureLodOffset textureOffset textureProj textureProjGrad textureProjGradOffset textureProjLod textureProjLodOffset textureProjOffset textureQueryLevels textureQueryLod textureSize transpose trunc uaddCarry uintBitsToFloat umulExtended unpackDouble2x32 unpackHalf2x16 unpackSnorm2x16 unpackSnorm4x8 unpackUnorm2x16 unpackUnorm4x8 usubBorrow",literal:"true false"},illegal:'"',contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"}]}};var Kg=function(e){return{name:"GML",case_insensitive:!1,keywords:{keyword:"begin end if then else while do for break continue with until repeat exit and or xor not return mod div switch case default var globalvar enum function constructor delete #macro #region #endregion",built_in:"is_real is_string is_array is_undefined is_int32 is_int64 is_ptr is_vec3 is_vec4 is_matrix is_bool is_method is_struct is_infinity is_nan is_numeric typeof variable_global_exists variable_global_get variable_global_set variable_instance_exists variable_instance_get variable_instance_set variable_instance_get_names variable_struct_exists variable_struct_get variable_struct_get_names variable_struct_names_count variable_struct_remove variable_struct_set array_delete array_insert array_length array_length_1d array_length_2d array_height_2d array_equals array_create array_copy array_pop array_push array_resize array_sort random random_range irandom irandom_range random_set_seed random_get_seed randomize randomise choose abs round floor ceil sign frac sqrt sqr exp ln log2 log10 sin cos tan arcsin arccos arctan arctan2 dsin dcos dtan darcsin darccos darctan darctan2 degtorad radtodeg power logn min max mean median clamp lerp dot_product dot_product_3d dot_product_normalised dot_product_3d_normalised dot_product_normalized dot_product_3d_normalized math_set_epsilon math_get_epsilon angle_difference point_distance_3d point_distance point_direction lengthdir_x lengthdir_y real string int64 ptr string_format chr ansi_char ord string_length string_byte_length string_pos string_copy string_char_at string_ord_at string_byte_at string_set_byte_at string_delete string_insert string_lower string_upper string_repeat string_letters string_digits string_lettersdigits string_replace string_replace_all string_count string_hash_to_newline clipboard_has_text clipboard_set_text clipboard_get_text date_current_datetime date_create_datetime date_valid_datetime date_inc_year date_inc_month date_inc_week date_inc_day date_inc_hour date_inc_minute date_inc_second date_get_year date_get_month date_get_week date_get_day date_get_hour date_get_minute date_get_second date_get_weekday date_get_day_of_year date_get_hour_of_year date_get_minute_of_year date_get_second_of_year date_year_span date_month_span date_week_span date_day_span date_hour_span date_minute_span date_second_span date_compare_datetime date_compare_date date_compare_time date_date_of date_time_of date_datetime_string date_date_string date_time_string date_days_in_month date_days_in_year date_leap_year date_is_today date_set_timezone date_get_timezone game_set_speed game_get_speed motion_set motion_add place_free place_empty place_meeting place_snapped move_random move_snap move_towards_point move_contact_solid move_contact_all move_outside_solid move_outside_all move_bounce_solid move_bounce_all move_wrap distance_to_point distance_to_object position_empty position_meeting path_start path_end mp_linear_step mp_potential_step mp_linear_step_object mp_potential_step_object mp_potential_settings mp_linear_path mp_potential_path mp_linear_path_object mp_potential_path_object mp_grid_create mp_grid_destroy mp_grid_clear_all mp_grid_clear_cell mp_grid_clear_rectangle mp_grid_add_cell mp_grid_get_cell mp_grid_add_rectangle mp_grid_add_instances mp_grid_path mp_grid_draw mp_grid_to_ds_grid collision_point collision_rectangle collision_circle collision_ellipse collision_line collision_point_list collision_rectangle_list collision_circle_list collision_ellipse_list collision_line_list instance_position_list instance_place_list point_in_rectangle point_in_triangle point_in_circle rectangle_in_rectangle rectangle_in_triangle rectangle_in_circle instance_find instance_exists instance_number instance_position instance_nearest instance_furthest instance_place instance_create_depth instance_create_layer instance_copy instance_change instance_destroy position_destroy position_change instance_id_get instance_deactivate_all instance_deactivate_object instance_deactivate_region instance_activate_all instance_activate_object instance_activate_region room_goto room_goto_previous room_goto_next room_previous room_next room_restart game_end game_restart game_load game_save game_save_buffer game_load_buffer event_perform event_user event_perform_object event_inherited show_debug_message show_debug_overlay debug_event debug_get_callstack alarm_get alarm_set font_texture_page_size keyboard_set_map keyboard_get_map keyboard_unset_map keyboard_check keyboard_check_pressed keyboard_check_released keyboard_check_direct keyboard_get_numlock keyboard_set_numlock keyboard_key_press keyboard_key_release keyboard_clear io_clear mouse_check_button mouse_check_button_pressed mouse_check_button_released mouse_wheel_up mouse_wheel_down mouse_clear draw_self draw_sprite draw_sprite_pos draw_sprite_ext draw_sprite_stretched draw_sprite_stretched_ext draw_sprite_tiled draw_sprite_tiled_ext draw_sprite_part draw_sprite_part_ext draw_sprite_general draw_clear draw_clear_alpha draw_point draw_line draw_line_width draw_rectangle draw_roundrect draw_roundrect_ext draw_triangle draw_circle draw_ellipse draw_set_circle_precision draw_arrow draw_button draw_path draw_healthbar draw_getpixel draw_getpixel_ext draw_set_colour draw_set_color draw_set_alpha draw_get_colour draw_get_color draw_get_alpha merge_colour make_colour_rgb make_colour_hsv colour_get_red colour_get_green colour_get_blue colour_get_hue colour_get_saturation colour_get_value merge_color make_color_rgb make_color_hsv color_get_red color_get_green color_get_blue color_get_hue color_get_saturation color_get_value merge_color screen_save screen_save_part draw_set_font draw_set_halign draw_set_valign draw_text draw_text_ext string_width string_height string_width_ext string_height_ext draw_text_transformed draw_text_ext_transformed draw_text_colour draw_text_ext_colour draw_text_transformed_colour draw_text_ext_transformed_colour draw_text_color draw_text_ext_color draw_text_transformed_color draw_text_ext_transformed_color draw_point_colour draw_line_colour draw_line_width_colour draw_rectangle_colour draw_roundrect_colour draw_roundrect_colour_ext draw_triangle_colour draw_circle_colour draw_ellipse_colour draw_point_color draw_line_color draw_line_width_color draw_rectangle_color draw_roundrect_color draw_roundrect_color_ext draw_triangle_color draw_circle_color draw_ellipse_color draw_primitive_begin draw_vertex draw_vertex_colour draw_vertex_color draw_primitive_end sprite_get_uvs font_get_uvs sprite_get_texture font_get_texture texture_get_width texture_get_height texture_get_uvs draw_primitive_begin_texture draw_vertex_texture draw_vertex_texture_colour draw_vertex_texture_color texture_global_scale surface_create surface_create_ext surface_resize surface_free surface_exists surface_get_width surface_get_height surface_get_texture surface_set_target surface_set_target_ext surface_reset_target surface_depth_disable surface_get_depth_disable draw_surface draw_surface_stretched draw_surface_tiled draw_surface_part draw_surface_ext draw_surface_stretched_ext draw_surface_tiled_ext draw_surface_part_ext draw_surface_general surface_getpixel surface_getpixel_ext surface_save surface_save_part surface_copy surface_copy_part application_surface_draw_enable application_get_position application_surface_enable application_surface_is_enabled display_get_width display_get_height display_get_orientation display_get_gui_width display_get_gui_height display_reset display_mouse_get_x display_mouse_get_y display_mouse_set display_set_ui_visibility window_set_fullscreen window_get_fullscreen window_set_caption window_set_min_width window_set_max_width window_set_min_height window_set_max_height window_get_visible_rects window_get_caption window_set_cursor window_get_cursor window_set_colour window_get_colour window_set_color window_get_color window_set_position window_set_size window_set_rectangle window_center window_get_x window_get_y window_get_width window_get_height window_mouse_get_x window_mouse_get_y window_mouse_set window_view_mouse_get_x window_view_mouse_get_y window_views_mouse_get_x window_views_mouse_get_y audio_listener_position audio_listener_velocity audio_listener_orientation audio_emitter_position audio_emitter_create audio_emitter_free audio_emitter_exists audio_emitter_pitch audio_emitter_velocity audio_emitter_falloff audio_emitter_gain audio_play_sound audio_play_sound_on audio_play_sound_at audio_stop_sound audio_resume_music audio_music_is_playing audio_resume_sound audio_pause_sound audio_pause_music audio_channel_num audio_sound_length audio_get_type audio_falloff_set_model audio_play_music audio_stop_music audio_master_gain audio_music_gain audio_sound_gain audio_sound_pitch audio_stop_all audio_resume_all audio_pause_all audio_is_playing audio_is_paused audio_exists audio_sound_set_track_position audio_sound_get_track_position audio_emitter_get_gain audio_emitter_get_pitch audio_emitter_get_x audio_emitter_get_y audio_emitter_get_z audio_emitter_get_vx audio_emitter_get_vy audio_emitter_get_vz audio_listener_set_position audio_listener_set_velocity audio_listener_set_orientation audio_listener_get_data audio_set_master_gain audio_get_master_gain audio_sound_get_gain audio_sound_get_pitch audio_get_name audio_sound_set_track_position audio_sound_get_track_position audio_create_stream audio_destroy_stream audio_create_sync_group audio_destroy_sync_group audio_play_in_sync_group audio_start_sync_group audio_stop_sync_group audio_pause_sync_group audio_resume_sync_group audio_sync_group_get_track_pos audio_sync_group_debug audio_sync_group_is_playing audio_debug audio_group_load audio_group_unload audio_group_is_loaded audio_group_load_progress audio_group_name audio_group_stop_all audio_group_set_gain audio_create_buffer_sound audio_free_buffer_sound audio_create_play_queue audio_free_play_queue audio_queue_sound audio_get_recorder_count audio_get_recorder_info audio_start_recording audio_stop_recording audio_sound_get_listener_mask audio_emitter_get_listener_mask audio_get_listener_mask audio_sound_set_listener_mask audio_emitter_set_listener_mask audio_set_listener_mask audio_get_listener_count audio_get_listener_info audio_system show_message show_message_async clickable_add clickable_add_ext clickable_change clickable_change_ext clickable_delete clickable_exists clickable_set_style show_question show_question_async get_integer get_string get_integer_async get_string_async get_login_async get_open_filename get_save_filename get_open_filename_ext get_save_filename_ext show_error highscore_clear highscore_add highscore_value highscore_name draw_highscore sprite_exists sprite_get_name sprite_get_number sprite_get_width sprite_get_height sprite_get_xoffset sprite_get_yoffset sprite_get_bbox_left sprite_get_bbox_right sprite_get_bbox_top sprite_get_bbox_bottom sprite_save sprite_save_strip sprite_set_cache_size sprite_set_cache_size_ext sprite_get_tpe sprite_prefetch sprite_prefetch_multi sprite_flush sprite_flush_multi sprite_set_speed sprite_get_speed_type sprite_get_speed font_exists font_get_name font_get_fontname font_get_bold font_get_italic font_get_first font_get_last font_get_size font_set_cache_size path_exists path_get_name path_get_length path_get_time path_get_kind path_get_closed path_get_precision path_get_number path_get_point_x path_get_point_y path_get_point_speed path_get_x path_get_y path_get_speed script_exists script_get_name timeline_add timeline_delete timeline_clear timeline_exists timeline_get_name timeline_moment_clear timeline_moment_add_script timeline_size timeline_max_moment object_exists object_get_name object_get_sprite object_get_solid object_get_visible object_get_persistent object_get_mask object_get_parent object_get_physics object_is_ancestor room_exists room_get_name sprite_set_offset sprite_duplicate sprite_assign sprite_merge sprite_add sprite_replace sprite_create_from_surface sprite_add_from_surface sprite_delete sprite_set_alpha_from_sprite sprite_collision_mask font_add_enable_aa font_add_get_enable_aa font_add font_add_sprite font_add_sprite_ext font_replace font_replace_sprite font_replace_sprite_ext font_delete path_set_kind path_set_closed path_set_precision path_add path_assign path_duplicate path_append path_delete path_add_point path_insert_point path_change_point path_delete_point path_clear_points path_reverse path_mirror path_flip path_rotate path_rescale path_shift script_execute object_set_sprite object_set_solid object_set_visible object_set_persistent object_set_mask room_set_width room_set_height room_set_persistent room_set_background_colour room_set_background_color room_set_view room_set_viewport room_get_viewport room_set_view_enabled room_add room_duplicate room_assign room_instance_add room_instance_clear room_get_camera room_set_camera asset_get_index asset_get_type file_text_open_from_string file_text_open_read file_text_open_write file_text_open_append file_text_close file_text_write_string file_text_write_real file_text_writeln file_text_read_string file_text_read_real file_text_readln file_text_eof file_text_eoln file_exists file_delete file_rename file_copy directory_exists directory_create directory_destroy file_find_first file_find_next file_find_close file_attributes filename_name filename_path filename_dir filename_drive filename_ext filename_change_ext file_bin_open file_bin_rewrite file_bin_close file_bin_position file_bin_size file_bin_seek file_bin_write_byte file_bin_read_byte parameter_count parameter_string environment_get_variable ini_open_from_string ini_open ini_close ini_read_string ini_read_real ini_write_string ini_write_real ini_key_exists ini_section_exists ini_key_delete ini_section_delete ds_set_precision ds_exists ds_stack_create ds_stack_destroy ds_stack_clear ds_stack_copy ds_stack_size ds_stack_empty ds_stack_push ds_stack_pop ds_stack_top ds_stack_write ds_stack_read ds_queue_create ds_queue_destroy ds_queue_clear ds_queue_copy ds_queue_size ds_queue_empty ds_queue_enqueue ds_queue_dequeue ds_queue_head ds_queue_tail ds_queue_write ds_queue_read ds_list_create ds_list_destroy ds_list_clear ds_list_copy ds_list_size ds_list_empty ds_list_add ds_list_insert ds_list_replace ds_list_delete ds_list_find_index ds_list_find_value ds_list_mark_as_list ds_list_mark_as_map ds_list_sort ds_list_shuffle ds_list_write ds_list_read ds_list_set ds_map_create ds_map_destroy ds_map_clear ds_map_copy ds_map_size ds_map_empty ds_map_add ds_map_add_list ds_map_add_map ds_map_replace ds_map_replace_map ds_map_replace_list ds_map_delete ds_map_exists ds_map_find_value ds_map_find_previous ds_map_find_next ds_map_find_first ds_map_find_last ds_map_write ds_map_read ds_map_secure_save ds_map_secure_load ds_map_secure_load_buffer ds_map_secure_save_buffer ds_map_set ds_priority_create ds_priority_destroy ds_priority_clear ds_priority_copy ds_priority_size ds_priority_empty ds_priority_add ds_priority_change_priority ds_priority_find_priority ds_priority_delete_value ds_priority_delete_min ds_priority_find_min ds_priority_delete_max ds_priority_find_max ds_priority_write ds_priority_read ds_grid_create ds_grid_destroy ds_grid_copy ds_grid_resize ds_grid_width ds_grid_height ds_grid_clear ds_grid_set ds_grid_add ds_grid_multiply ds_grid_set_region ds_grid_add_region ds_grid_multiply_region ds_grid_set_disk ds_grid_add_disk ds_grid_multiply_disk ds_grid_set_grid_region ds_grid_add_grid_region ds_grid_multiply_grid_region ds_grid_get ds_grid_get_sum ds_grid_get_max ds_grid_get_min ds_grid_get_mean ds_grid_get_disk_sum ds_grid_get_disk_min ds_grid_get_disk_max ds_grid_get_disk_mean ds_grid_value_exists ds_grid_value_x ds_grid_value_y ds_grid_value_disk_exists ds_grid_value_disk_x ds_grid_value_disk_y ds_grid_shuffle ds_grid_write ds_grid_read ds_grid_sort ds_grid_set ds_grid_get effect_create_below effect_create_above effect_clear part_type_create part_type_destroy part_type_exists part_type_clear part_type_shape part_type_sprite part_type_size part_type_scale part_type_orientation part_type_life part_type_step part_type_death part_type_speed part_type_direction part_type_gravity part_type_colour1 part_type_colour2 part_type_colour3 part_type_colour_mix part_type_colour_rgb part_type_colour_hsv part_type_color1 part_type_color2 part_type_color3 part_type_color_mix part_type_color_rgb part_type_color_hsv part_type_alpha1 part_type_alpha2 part_type_alpha3 part_type_blend part_system_create part_system_create_layer part_system_destroy part_system_exists part_system_clear part_system_draw_order part_system_depth part_system_position part_system_automatic_update part_system_automatic_draw part_system_update part_system_drawit part_system_get_layer part_system_layer part_particles_create part_particles_create_colour part_particles_create_color part_particles_clear part_particles_count part_emitter_create part_emitter_destroy part_emitter_destroy_all part_emitter_exists part_emitter_clear part_emitter_region part_emitter_burst part_emitter_stream external_call external_define external_free window_handle window_device matrix_get matrix_set matrix_build_identity matrix_build matrix_build_lookat matrix_build_projection_ortho matrix_build_projection_perspective matrix_build_projection_perspective_fov matrix_multiply matrix_transform_vertex matrix_stack_push matrix_stack_pop matrix_stack_multiply matrix_stack_set matrix_stack_clear matrix_stack_top matrix_stack_is_empty browser_input_capture os_get_config os_get_info os_get_language os_get_region os_lock_orientation display_get_dpi_x display_get_dpi_y display_set_gui_size display_set_gui_maximise display_set_gui_maximize device_mouse_dbclick_enable display_set_timing_method display_get_timing_method display_set_sleep_margin display_get_sleep_margin virtual_key_add virtual_key_hide virtual_key_delete virtual_key_show draw_enable_drawevent draw_enable_swf_aa draw_set_swf_aa_level draw_get_swf_aa_level draw_texture_flush draw_flush gpu_set_blendenable gpu_set_ztestenable gpu_set_zfunc gpu_set_zwriteenable gpu_set_lightingenable gpu_set_fog gpu_set_cullmode gpu_set_blendmode gpu_set_blendmode_ext gpu_set_blendmode_ext_sepalpha gpu_set_colorwriteenable gpu_set_colourwriteenable gpu_set_alphatestenable gpu_set_alphatestref gpu_set_alphatestfunc gpu_set_texfilter gpu_set_texfilter_ext gpu_set_texrepeat gpu_set_texrepeat_ext gpu_set_tex_filter gpu_set_tex_filter_ext gpu_set_tex_repeat gpu_set_tex_repeat_ext gpu_set_tex_mip_filter gpu_set_tex_mip_filter_ext gpu_set_tex_mip_bias gpu_set_tex_mip_bias_ext gpu_set_tex_min_mip gpu_set_tex_min_mip_ext gpu_set_tex_max_mip gpu_set_tex_max_mip_ext gpu_set_tex_max_aniso gpu_set_tex_max_aniso_ext gpu_set_tex_mip_enable gpu_set_tex_mip_enable_ext gpu_get_blendenable gpu_get_ztestenable gpu_get_zfunc gpu_get_zwriteenable gpu_get_lightingenable gpu_get_fog gpu_get_cullmode gpu_get_blendmode gpu_get_blendmode_ext gpu_get_blendmode_ext_sepalpha gpu_get_blendmode_src gpu_get_blendmode_dest gpu_get_blendmode_srcalpha gpu_get_blendmode_destalpha gpu_get_colorwriteenable gpu_get_colourwriteenable gpu_get_alphatestenable gpu_get_alphatestref gpu_get_alphatestfunc gpu_get_texfilter gpu_get_texfilter_ext gpu_get_texrepeat gpu_get_texrepeat_ext gpu_get_tex_filter gpu_get_tex_filter_ext gpu_get_tex_repeat gpu_get_tex_repeat_ext gpu_get_tex_mip_filter gpu_get_tex_mip_filter_ext gpu_get_tex_mip_bias gpu_get_tex_mip_bias_ext gpu_get_tex_min_mip gpu_get_tex_min_mip_ext gpu_get_tex_max_mip gpu_get_tex_max_mip_ext gpu_get_tex_max_aniso gpu_get_tex_max_aniso_ext gpu_get_tex_mip_enable gpu_get_tex_mip_enable_ext gpu_push_state gpu_pop_state gpu_get_state gpu_set_state draw_light_define_ambient draw_light_define_direction draw_light_define_point draw_light_enable draw_set_lighting draw_light_get_ambient draw_light_get draw_get_lighting shop_leave_rating url_get_domain url_open url_open_ext url_open_full get_timer achievement_login achievement_logout achievement_post achievement_increment achievement_post_score achievement_available achievement_show_achievements achievement_show_leaderboards achievement_load_friends achievement_load_leaderboard achievement_send_challenge achievement_load_progress achievement_reset achievement_login_status achievement_get_pic achievement_show_challenge_notifications achievement_get_challenges achievement_event achievement_show achievement_get_info cloud_file_save cloud_string_save cloud_synchronise ads_enable ads_disable ads_setup ads_engagement_launch ads_engagement_available ads_engagement_active ads_event ads_event_preload ads_set_reward_callback ads_get_display_height ads_get_display_width ads_move ads_interstitial_available ads_interstitial_display device_get_tilt_x device_get_tilt_y device_get_tilt_z device_is_keypad_open device_mouse_check_button device_mouse_check_button_pressed device_mouse_check_button_released device_mouse_x device_mouse_y device_mouse_raw_x device_mouse_raw_y device_mouse_x_to_gui device_mouse_y_to_gui iap_activate iap_status iap_enumerate_products iap_restore_all iap_acquire iap_consume iap_product_details iap_purchase_details facebook_init facebook_login facebook_status facebook_graph_request facebook_dialog facebook_logout facebook_launch_offerwall facebook_post_message facebook_send_invite facebook_user_id facebook_accesstoken facebook_check_permission facebook_request_read_permissions facebook_request_publish_permissions gamepad_is_supported gamepad_get_device_count gamepad_is_connected gamepad_get_description gamepad_get_button_threshold gamepad_set_button_threshold gamepad_get_axis_deadzone gamepad_set_axis_deadzone gamepad_button_count gamepad_button_check gamepad_button_check_pressed gamepad_button_check_released gamepad_button_value gamepad_axis_count gamepad_axis_value gamepad_set_vibration gamepad_set_colour gamepad_set_color os_is_paused window_has_focus code_is_compiled http_get http_get_file http_post_string http_request json_encode json_decode zip_unzip load_csv base64_encode base64_decode md5_string_unicode md5_string_utf8 md5_file os_is_network_connected sha1_string_unicode sha1_string_utf8 sha1_file os_powersave_enable analytics_event analytics_event_ext win8_livetile_tile_notification win8_livetile_tile_clear win8_livetile_badge_notification win8_livetile_badge_clear win8_livetile_queue_enable win8_secondarytile_pin win8_secondarytile_badge_notification win8_secondarytile_delete win8_livetile_notification_begin win8_livetile_notification_secondary_begin win8_livetile_notification_expiry win8_livetile_notification_tag win8_livetile_notification_text_add win8_livetile_notification_image_add win8_livetile_notification_end win8_appbar_enable win8_appbar_add_element win8_appbar_remove_element win8_settingscharm_add_entry win8_settingscharm_add_html_entry win8_settingscharm_add_xaml_entry win8_settingscharm_set_xaml_property win8_settingscharm_get_xaml_property win8_settingscharm_remove_entry win8_share_image win8_share_screenshot win8_share_file win8_share_url win8_share_text win8_search_enable win8_search_disable win8_search_add_suggestions win8_device_touchscreen_available win8_license_initialize_sandbox win8_license_trial_version winphone_license_trial_version winphone_tile_title winphone_tile_count winphone_tile_back_title winphone_tile_back_content winphone_tile_back_content_wide winphone_tile_front_image winphone_tile_front_image_small winphone_tile_front_image_wide winphone_tile_back_image winphone_tile_back_image_wide winphone_tile_background_colour winphone_tile_background_color winphone_tile_icon_image winphone_tile_small_icon_image winphone_tile_wide_content winphone_tile_cycle_images winphone_tile_small_background_image physics_world_create physics_world_gravity physics_world_update_speed physics_world_update_iterations physics_world_draw_debug physics_pause_enable physics_fixture_create physics_fixture_set_kinematic physics_fixture_set_density physics_fixture_set_awake physics_fixture_set_restitution physics_fixture_set_friction physics_fixture_set_collision_group physics_fixture_set_sensor physics_fixture_set_linear_damping physics_fixture_set_angular_damping physics_fixture_set_circle_shape physics_fixture_set_box_shape physics_fixture_set_edge_shape physics_fixture_set_polygon_shape physics_fixture_set_chain_shape physics_fixture_add_point physics_fixture_bind physics_fixture_bind_ext physics_fixture_delete physics_apply_force physics_apply_impulse physics_apply_angular_impulse physics_apply_local_force physics_apply_local_impulse physics_apply_torque physics_mass_properties physics_draw_debug physics_test_overlap physics_remove_fixture physics_set_friction physics_set_density physics_set_restitution physics_get_friction physics_get_density physics_get_restitution physics_joint_distance_create physics_joint_rope_create physics_joint_revolute_create physics_joint_prismatic_create physics_joint_pulley_create physics_joint_wheel_create physics_joint_weld_create physics_joint_friction_create physics_joint_gear_create physics_joint_enable_motor physics_joint_get_value physics_joint_set_value physics_joint_delete physics_particle_create physics_particle_delete physics_particle_delete_region_circle physics_particle_delete_region_box physics_particle_delete_region_poly physics_particle_set_flags physics_particle_set_category_flags physics_particle_draw physics_particle_draw_ext physics_particle_count physics_particle_get_data physics_particle_get_data_particle physics_particle_group_begin physics_particle_group_circle physics_particle_group_box physics_particle_group_polygon physics_particle_group_add_point physics_particle_group_end physics_particle_group_join physics_particle_group_delete physics_particle_group_count physics_particle_group_get_data physics_particle_group_get_mass physics_particle_group_get_inertia physics_particle_group_get_centre_x physics_particle_group_get_centre_y physics_particle_group_get_vel_x physics_particle_group_get_vel_y physics_particle_group_get_ang_vel physics_particle_group_get_x physics_particle_group_get_y physics_particle_group_get_angle physics_particle_set_group_flags physics_particle_get_group_flags physics_particle_get_max_count physics_particle_get_radius physics_particle_get_density physics_particle_get_damping physics_particle_get_gravity_scale physics_particle_set_max_count physics_particle_set_radius physics_particle_set_density physics_particle_set_damping physics_particle_set_gravity_scale network_create_socket network_create_socket_ext network_create_server network_create_server_raw network_connect network_connect_raw network_send_packet network_send_raw network_send_broadcast network_send_udp network_send_udp_raw network_set_timeout network_set_config network_resolve network_destroy buffer_create buffer_write buffer_read buffer_seek buffer_get_surface buffer_set_surface buffer_delete buffer_exists buffer_get_type buffer_get_alignment buffer_poke buffer_peek buffer_save buffer_save_ext buffer_load buffer_load_ext buffer_load_partial buffer_copy buffer_fill buffer_get_size buffer_tell buffer_resize buffer_md5 buffer_sha1 buffer_base64_encode buffer_base64_decode buffer_base64_decode_ext buffer_sizeof buffer_get_address buffer_create_from_vertex_buffer buffer_create_from_vertex_buffer_ext buffer_copy_from_vertex_buffer buffer_async_group_begin buffer_async_group_option buffer_async_group_end buffer_load_async buffer_save_async gml_release_mode gml_pragma steam_activate_overlay steam_is_overlay_enabled steam_is_overlay_activated steam_get_persona_name steam_initialised steam_is_cloud_enabled_for_app steam_is_cloud_enabled_for_account steam_file_persisted steam_get_quota_total steam_get_quota_free steam_file_write steam_file_write_file steam_file_read steam_file_delete steam_file_exists steam_file_size steam_file_share steam_is_screenshot_requested steam_send_screenshot steam_is_user_logged_on steam_get_user_steam_id steam_user_owns_dlc steam_user_installed_dlc steam_set_achievement steam_get_achievement steam_clear_achievement steam_set_stat_int steam_set_stat_float steam_set_stat_avg_rate steam_get_stat_int steam_get_stat_float steam_get_stat_avg_rate steam_reset_all_stats steam_reset_all_stats_achievements steam_stats_ready steam_create_leaderboard steam_upload_score steam_upload_score_ext steam_download_scores_around_user steam_download_scores steam_download_friends_scores steam_upload_score_buffer steam_upload_score_buffer_ext steam_current_game_language steam_available_languages steam_activate_overlay_browser steam_activate_overlay_user steam_activate_overlay_store steam_get_user_persona_name steam_get_app_id steam_get_user_account_id steam_ugc_download steam_ugc_create_item steam_ugc_start_item_update steam_ugc_set_item_title steam_ugc_set_item_description steam_ugc_set_item_visibility steam_ugc_set_item_tags steam_ugc_set_item_content steam_ugc_set_item_preview steam_ugc_submit_item_update steam_ugc_get_item_update_progress steam_ugc_subscribe_item steam_ugc_unsubscribe_item steam_ugc_num_subscribed_items steam_ugc_get_subscribed_items steam_ugc_get_item_install_info steam_ugc_get_item_update_info steam_ugc_request_item_details steam_ugc_create_query_user steam_ugc_create_query_user_ex steam_ugc_create_query_all steam_ugc_create_query_all_ex steam_ugc_query_set_cloud_filename_filter steam_ugc_query_set_match_any_tag steam_ugc_query_set_search_text steam_ugc_query_set_ranked_by_trend_days steam_ugc_query_add_required_tag steam_ugc_query_add_excluded_tag steam_ugc_query_set_return_long_description steam_ugc_query_set_return_total_only steam_ugc_query_set_allow_cached_response steam_ugc_send_query shader_set shader_get_name shader_reset shader_current shader_is_compiled shader_get_sampler_index shader_get_uniform shader_set_uniform_i shader_set_uniform_i_array shader_set_uniform_f shader_set_uniform_f_array shader_set_uniform_matrix shader_set_uniform_matrix_array shader_enable_corner_id texture_set_stage texture_get_texel_width texture_get_texel_height shaders_are_supported vertex_format_begin vertex_format_end vertex_format_delete vertex_format_add_position vertex_format_add_position_3d vertex_format_add_colour vertex_format_add_color vertex_format_add_normal vertex_format_add_texcoord vertex_format_add_textcoord vertex_format_add_custom vertex_create_buffer vertex_create_buffer_ext vertex_delete_buffer vertex_begin vertex_end vertex_position vertex_position_3d vertex_colour vertex_color vertex_argb vertex_texcoord vertex_normal vertex_float1 vertex_float2 vertex_float3 vertex_float4 vertex_ubyte4 vertex_submit vertex_freeze vertex_get_number vertex_get_buffer_size vertex_create_buffer_from_buffer vertex_create_buffer_from_buffer_ext push_local_notification push_get_first_local_notification push_get_next_local_notification push_cancel_local_notification skeleton_animation_set skeleton_animation_get skeleton_animation_mix skeleton_animation_set_ext skeleton_animation_get_ext skeleton_animation_get_duration skeleton_animation_get_frames skeleton_animation_clear skeleton_skin_set skeleton_skin_get skeleton_attachment_set skeleton_attachment_get skeleton_attachment_create skeleton_collision_draw_set skeleton_bone_data_get skeleton_bone_data_set skeleton_bone_state_get skeleton_bone_state_set skeleton_get_minmax skeleton_get_num_bounds skeleton_get_bounds skeleton_animation_get_frame skeleton_animation_set_frame draw_skeleton draw_skeleton_time draw_skeleton_instance draw_skeleton_collision skeleton_animation_list skeleton_skin_list skeleton_slot_data layer_get_id layer_get_id_at_depth layer_get_depth layer_create layer_destroy layer_destroy_instances layer_add_instance layer_has_instance layer_set_visible layer_get_visible layer_exists layer_x layer_y layer_get_x layer_get_y layer_hspeed layer_vspeed layer_get_hspeed layer_get_vspeed layer_script_begin layer_script_end layer_shader layer_get_script_begin layer_get_script_end layer_get_shader layer_set_target_room layer_get_target_room layer_reset_target_room layer_get_all layer_get_all_elements layer_get_name layer_depth layer_get_element_layer layer_get_element_type layer_element_move layer_force_draw_depth layer_is_draw_depth_forced layer_get_forced_depth layer_background_get_id layer_background_exists layer_background_create layer_background_destroy layer_background_visible layer_background_change layer_background_sprite layer_background_htiled layer_background_vtiled layer_background_stretch layer_background_yscale layer_background_xscale layer_background_blend layer_background_alpha layer_background_index layer_background_speed layer_background_get_visible layer_background_get_sprite layer_background_get_htiled layer_background_get_vtiled layer_background_get_stretch layer_background_get_yscale layer_background_get_xscale layer_background_get_blend layer_background_get_alpha layer_background_get_index layer_background_get_speed layer_sprite_get_id layer_sprite_exists layer_sprite_create layer_sprite_destroy layer_sprite_change layer_sprite_index layer_sprite_speed layer_sprite_xscale layer_sprite_yscale layer_sprite_angle layer_sprite_blend layer_sprite_alpha layer_sprite_x layer_sprite_y layer_sprite_get_sprite layer_sprite_get_index layer_sprite_get_speed layer_sprite_get_xscale layer_sprite_get_yscale layer_sprite_get_angle layer_sprite_get_blend layer_sprite_get_alpha layer_sprite_get_x layer_sprite_get_y layer_tilemap_get_id layer_tilemap_exists layer_tilemap_create layer_tilemap_destroy tilemap_tileset tilemap_x tilemap_y tilemap_set tilemap_set_at_pixel tilemap_get_tileset tilemap_get_tile_width tilemap_get_tile_height tilemap_get_width tilemap_get_height tilemap_get_x tilemap_get_y tilemap_get tilemap_get_at_pixel tilemap_get_cell_x_at_pixel tilemap_get_cell_y_at_pixel tilemap_clear draw_tilemap draw_tile tilemap_set_global_mask tilemap_get_global_mask tilemap_set_mask tilemap_get_mask tilemap_get_frame tile_set_empty tile_set_index tile_set_flip tile_set_mirror tile_set_rotate tile_get_empty tile_get_index tile_get_flip tile_get_mirror tile_get_rotate layer_tile_exists layer_tile_create layer_tile_destroy layer_tile_change layer_tile_xscale layer_tile_yscale layer_tile_blend layer_tile_alpha layer_tile_x layer_tile_y layer_tile_region layer_tile_visible layer_tile_get_sprite layer_tile_get_xscale layer_tile_get_yscale layer_tile_get_blend layer_tile_get_alpha layer_tile_get_x layer_tile_get_y layer_tile_get_region layer_tile_get_visible layer_instance_get_instance instance_activate_layer instance_deactivate_layer camera_create camera_create_view camera_destroy camera_apply camera_get_active camera_get_default camera_set_default camera_set_view_mat camera_set_proj_mat camera_set_update_script camera_set_begin_script camera_set_end_script camera_set_view_pos camera_set_view_size camera_set_view_speed camera_set_view_border camera_set_view_angle camera_set_view_target camera_get_view_mat camera_get_proj_mat camera_get_update_script camera_get_begin_script camera_get_end_script camera_get_view_x camera_get_view_y camera_get_view_width camera_get_view_height camera_get_view_speed_x camera_get_view_speed_y camera_get_view_border_x camera_get_view_border_y camera_get_view_angle camera_get_view_target view_get_camera view_get_visible view_get_xport view_get_yport view_get_wport view_get_hport view_get_surface_id view_set_camera view_set_visible view_set_xport view_set_yport view_set_wport view_set_hport view_set_surface_id gesture_drag_time gesture_drag_distance gesture_flick_speed gesture_double_tap_time gesture_double_tap_distance gesture_pinch_distance gesture_pinch_angle_towards gesture_pinch_angle_away gesture_rotate_time gesture_rotate_angle gesture_tap_count gesture_get_drag_time gesture_get_drag_distance gesture_get_flick_speed gesture_get_double_tap_time gesture_get_double_tap_distance gesture_get_pinch_distance gesture_get_pinch_angle_towards gesture_get_pinch_angle_away gesture_get_rotate_time gesture_get_rotate_angle gesture_get_tap_count keyboard_virtual_show keyboard_virtual_hide keyboard_virtual_status keyboard_virtual_height",literal:"self other all noone global local undefined pointer_invalid pointer_null path_action_stop path_action_restart path_action_continue path_action_reverse true false pi GM_build_date GM_version GM_runtime_version timezone_local timezone_utc gamespeed_fps gamespeed_microseconds ev_create ev_destroy ev_step ev_alarm ev_keyboard ev_mouse ev_collision ev_other ev_draw ev_draw_begin ev_draw_end ev_draw_pre ev_draw_post ev_keypress ev_keyrelease ev_trigger ev_left_button ev_right_button ev_middle_button ev_no_button ev_left_press ev_right_press ev_middle_press ev_left_release ev_right_release ev_middle_release ev_mouse_enter ev_mouse_leave ev_mouse_wheel_up ev_mouse_wheel_down ev_global_left_button ev_global_right_button ev_global_middle_button ev_global_left_press ev_global_right_press ev_global_middle_press ev_global_left_release ev_global_right_release ev_global_middle_release ev_joystick1_left ev_joystick1_right ev_joystick1_up ev_joystick1_down ev_joystick1_button1 ev_joystick1_button2 ev_joystick1_button3 ev_joystick1_button4 ev_joystick1_button5 ev_joystick1_button6 ev_joystick1_button7 ev_joystick1_button8 ev_joystick2_left ev_joystick2_right ev_joystick2_up ev_joystick2_down ev_joystick2_button1 ev_joystick2_button2 ev_joystick2_button3 ev_joystick2_button4 ev_joystick2_button5 ev_joystick2_button6 ev_joystick2_button7 ev_joystick2_button8 ev_outside ev_boundary ev_game_start ev_game_end ev_room_start ev_room_end ev_no_more_lives ev_animation_end ev_end_of_path ev_no_more_health ev_close_button ev_user0 ev_user1 ev_user2 ev_user3 ev_user4 ev_user5 ev_user6 ev_user7 ev_user8 ev_user9 ev_user10 ev_user11 ev_user12 ev_user13 ev_user14 ev_user15 ev_step_normal ev_step_begin ev_step_end ev_gui ev_gui_begin ev_gui_end ev_cleanup ev_gesture ev_gesture_tap ev_gesture_double_tap ev_gesture_drag_start ev_gesture_dragging ev_gesture_drag_end ev_gesture_flick ev_gesture_pinch_start ev_gesture_pinch_in ev_gesture_pinch_out ev_gesture_pinch_end ev_gesture_rotate_start ev_gesture_rotating ev_gesture_rotate_end ev_global_gesture_tap ev_global_gesture_double_tap ev_global_gesture_drag_start ev_global_gesture_dragging ev_global_gesture_drag_end ev_global_gesture_flick ev_global_gesture_pinch_start ev_global_gesture_pinch_in ev_global_gesture_pinch_out ev_global_gesture_pinch_end ev_global_gesture_rotate_start ev_global_gesture_rotating ev_global_gesture_rotate_end vk_nokey vk_anykey vk_enter vk_return vk_shift vk_control vk_alt vk_escape vk_space vk_backspace vk_tab vk_pause vk_printscreen vk_left vk_right vk_up vk_down vk_home vk_end vk_delete vk_insert vk_pageup vk_pagedown vk_f1 vk_f2 vk_f3 vk_f4 vk_f5 vk_f6 vk_f7 vk_f8 vk_f9 vk_f10 vk_f11 vk_f12 vk_numpad0 vk_numpad1 vk_numpad2 vk_numpad3 vk_numpad4 vk_numpad5 vk_numpad6 vk_numpad7 vk_numpad8 vk_numpad9 vk_divide vk_multiply vk_subtract vk_add vk_decimal vk_lshift vk_lcontrol vk_lalt vk_rshift vk_rcontrol vk_ralt mb_any mb_none mb_left mb_right mb_middle c_aqua c_black c_blue c_dkgray c_fuchsia c_gray c_green c_lime c_ltgray c_maroon c_navy c_olive c_purple c_red c_silver c_teal c_white c_yellow c_orange fa_left fa_center fa_right fa_top fa_middle fa_bottom pr_pointlist pr_linelist pr_linestrip pr_trianglelist pr_trianglestrip pr_trianglefan bm_complex bm_normal bm_add bm_max bm_subtract bm_zero bm_one bm_src_colour bm_inv_src_colour bm_src_color bm_inv_src_color bm_src_alpha bm_inv_src_alpha bm_dest_alpha bm_inv_dest_alpha bm_dest_colour bm_inv_dest_colour bm_dest_color bm_inv_dest_color bm_src_alpha_sat tf_point tf_linear tf_anisotropic mip_off mip_on mip_markedonly audio_falloff_none audio_falloff_inverse_distance audio_falloff_inverse_distance_clamped audio_falloff_linear_distance audio_falloff_linear_distance_clamped audio_falloff_exponent_distance audio_falloff_exponent_distance_clamped audio_old_system audio_new_system audio_mono audio_stereo audio_3d cr_default cr_none cr_arrow cr_cross cr_beam cr_size_nesw cr_size_ns cr_size_nwse cr_size_we cr_uparrow cr_hourglass cr_drag cr_appstart cr_handpoint cr_size_all spritespeed_framespersecond spritespeed_framespergameframe asset_object asset_unknown asset_sprite asset_sound asset_room asset_path asset_script asset_font asset_timeline asset_tiles asset_shader fa_readonly fa_hidden fa_sysfile fa_volumeid fa_directory fa_archive ds_type_map ds_type_list ds_type_stack ds_type_queue ds_type_grid ds_type_priority ef_explosion ef_ring ef_ellipse ef_firework ef_smoke ef_smokeup ef_star ef_spark ef_flare ef_cloud ef_rain ef_snow pt_shape_pixel pt_shape_disk pt_shape_square pt_shape_line pt_shape_star pt_shape_circle pt_shape_ring pt_shape_sphere pt_shape_flare pt_shape_spark pt_shape_explosion pt_shape_cloud pt_shape_smoke pt_shape_snow ps_distr_linear ps_distr_gaussian ps_distr_invgaussian ps_shape_rectangle ps_shape_ellipse ps_shape_diamond ps_shape_line ty_real ty_string dll_cdecl dll_stdcall matrix_view matrix_projection matrix_world os_win32 os_windows os_macosx os_ios os_android os_symbian os_linux os_unknown os_winphone os_tizen os_win8native os_wiiu os_3ds os_psvita os_bb10 os_ps4 os_xboxone os_ps3 os_xbox360 os_uwp os_tvos os_switch browser_not_a_browser browser_unknown browser_ie browser_firefox browser_chrome browser_safari browser_safari_mobile browser_opera browser_tizen browser_edge browser_windows_store browser_ie_mobile device_ios_unknown device_ios_iphone device_ios_iphone_retina device_ios_ipad device_ios_ipad_retina device_ios_iphone5 device_ios_iphone6 device_ios_iphone6plus device_emulator device_tablet display_landscape display_landscape_flipped display_portrait display_portrait_flipped tm_sleep tm_countvsyncs of_challenge_win of_challen ge_lose of_challenge_tie leaderboard_type_number leaderboard_type_time_mins_secs cmpfunc_never cmpfunc_less cmpfunc_equal cmpfunc_lessequal cmpfunc_greater cmpfunc_notequal cmpfunc_greaterequal cmpfunc_always cull_noculling cull_clockwise cull_counterclockwise lighttype_dir lighttype_point iap_ev_storeload iap_ev_product iap_ev_purchase iap_ev_consume iap_ev_restore iap_storeload_ok iap_storeload_failed iap_status_uninitialised iap_status_unavailable iap_status_loading iap_status_available iap_status_processing iap_status_restoring iap_failed iap_unavailable iap_available iap_purchased iap_canceled iap_refunded fb_login_default fb_login_fallback_to_webview fb_login_no_fallback_to_webview fb_login_forcing_webview fb_login_use_system_account fb_login_forcing_safari phy_joint_anchor_1_x phy_joint_anchor_1_y phy_joint_anchor_2_x phy_joint_anchor_2_y phy_joint_reaction_force_x phy_joint_reaction_force_y phy_joint_reaction_torque phy_joint_motor_speed phy_joint_angle phy_joint_motor_torque phy_joint_max_motor_torque phy_joint_translation phy_joint_speed phy_joint_motor_force phy_joint_max_motor_force phy_joint_length_1 phy_joint_length_2 phy_joint_damping_ratio phy_joint_frequency phy_joint_lower_angle_limit phy_joint_upper_angle_limit phy_joint_angle_limits phy_joint_max_length phy_joint_max_torque phy_joint_max_force phy_debug_render_aabb phy_debug_render_collision_pairs phy_debug_render_coms phy_debug_render_core_shapes phy_debug_render_joints phy_debug_render_obb phy_debug_render_shapes phy_particle_flag_water phy_particle_flag_zombie phy_particle_flag_wall phy_particle_flag_spring phy_particle_flag_elastic phy_particle_flag_viscous phy_particle_flag_powder phy_particle_flag_tensile phy_particle_flag_colourmixing phy_particle_flag_colormixing phy_particle_group_flag_solid phy_particle_group_flag_rigid phy_particle_data_flag_typeflags phy_particle_data_flag_position phy_particle_data_flag_velocity phy_particle_data_flag_colour phy_particle_data_flag_color phy_particle_data_flag_category achievement_our_info achievement_friends_info achievement_leaderboard_info achievement_achievement_info achievement_filter_all_players achievement_filter_friends_only achievement_filter_favorites_only achievement_type_achievement_challenge achievement_type_score_challenge achievement_pic_loaded achievement_show_ui achievement_show_profile achievement_show_leaderboard achievement_show_achievement achievement_show_bank achievement_show_friend_picker achievement_show_purchase_prompt network_socket_tcp network_socket_udp network_socket_bluetooth network_type_connect network_type_disconnect network_type_data network_type_non_blocking_connect network_config_connect_timeout network_config_use_non_blocking_socket network_config_enable_reliable_udp network_config_disable_reliable_udp buffer_fixed buffer_grow buffer_wrap buffer_fast buffer_vbuffer buffer_network buffer_u8 buffer_s8 buffer_u16 buffer_s16 buffer_u32 buffer_s32 buffer_u64 buffer_f16 buffer_f32 buffer_f64 buffer_bool buffer_text buffer_string buffer_surface_copy buffer_seek_start buffer_seek_relative buffer_seek_end buffer_generalerror buffer_outofspace buffer_outofbounds buffer_invalidtype text_type button_type input_type ANSI_CHARSET DEFAULT_CHARSET EASTEUROPE_CHARSET RUSSIAN_CHARSET SYMBOL_CHARSET SHIFTJIS_CHARSET HANGEUL_CHARSET GB2312_CHARSET CHINESEBIG5_CHARSET JOHAB_CHARSET HEBREW_CHARSET ARABIC_CHARSET GREEK_CHARSET TURKISH_CHARSET VIETNAMESE_CHARSET THAI_CHARSET MAC_CHARSET BALTIC_CHARSET OEM_CHARSET gp_face1 gp_face2 gp_face3 gp_face4 gp_shoulderl gp_shoulderr gp_shoulderlb gp_shoulderrb gp_select gp_start gp_stickl gp_stickr gp_padu gp_padd gp_padl gp_padr gp_axislh gp_axislv gp_axisrh gp_axisrv ov_friends ov_community ov_players ov_settings ov_gamegroup ov_achievements lb_sort_none lb_sort_ascending lb_sort_descending lb_disp_none lb_disp_numeric lb_disp_time_sec lb_disp_time_ms ugc_result_success ugc_filetype_community ugc_filetype_microtrans ugc_visibility_public ugc_visibility_friends_only ugc_visibility_private ugc_query_RankedByVote ugc_query_RankedByPublicationDate ugc_query_AcceptedForGameRankedByAcceptanceDate ugc_query_RankedByTrend ugc_query_FavoritedByFriendsRankedByPublicationDate ugc_query_CreatedByFriendsRankedByPublicationDate ugc_query_RankedByNumTimesReported ugc_query_CreatedByFollowedUsersRankedByPublicationDate ugc_query_NotYetRated ugc_query_RankedByTotalVotesAsc ugc_query_RankedByVotesUp ugc_query_RankedByTextSearch ugc_sortorder_CreationOrderDesc ugc_sortorder_CreationOrderAsc ugc_sortorder_TitleAsc ugc_sortorder_LastUpdatedDesc ugc_sortorder_SubscriptionDateDesc ugc_sortorder_VoteScoreDesc ugc_sortorder_ForModeration ugc_list_Published ugc_list_VotedOn ugc_list_VotedUp ugc_list_VotedDown ugc_list_WillVoteLater ugc_list_Favorited ugc_list_Subscribed ugc_list_UsedOrPlayed ugc_list_Followed ugc_match_Items ugc_match_Items_Mtx ugc_match_Items_ReadyToUse ugc_match_Collections ugc_match_Artwork ugc_match_Videos ugc_match_Screenshots ugc_match_AllGuides ugc_match_WebGuides ugc_match_IntegratedGuides ugc_match_UsableInGame ugc_match_ControllerBindings vertex_usage_position vertex_usage_colour vertex_usage_color vertex_usage_normal vertex_usage_texcoord vertex_usage_textcoord vertex_usage_blendweight vertex_usage_blendindices vertex_usage_psize vertex_usage_tangent vertex_usage_binormal vertex_usage_fog vertex_usage_depth vertex_usage_sample vertex_type_float1 vertex_type_float2 vertex_type_float3 vertex_type_float4 vertex_type_colour vertex_type_color vertex_type_ubyte4 layerelementtype_undefined layerelementtype_background layerelementtype_instance layerelementtype_oldtilemap layerelementtype_sprite layerelementtype_tilemap layerelementtype_particlesystem layerelementtype_tile tile_rotate tile_flip tile_mirror tile_index_mask kbv_type_default kbv_type_ascii kbv_type_url kbv_type_email kbv_type_numbers kbv_type_phone kbv_type_phone_name kbv_returnkey_default kbv_returnkey_go kbv_returnkey_google kbv_returnkey_join kbv_returnkey_next kbv_returnkey_route kbv_returnkey_search kbv_returnkey_send kbv_returnkey_yahoo kbv_returnkey_done kbv_returnkey_continue kbv_returnkey_emergency kbv_autocapitalize_none kbv_autocapitalize_words kbv_autocapitalize_sentences kbv_autocapitalize_characters",symbol:"argument_relative argument argument0 argument1 argument2 argument3 argument4 argument5 argument6 argument7 argument8 argument9 argument10 argument11 argument12 argument13 argument14 argument15 argument_count x|0 y|0 xprevious yprevious xstart ystart hspeed vspeed direction speed friction gravity gravity_direction path_index path_position path_positionprevious path_speed path_scale path_orientation path_endaction object_index id solid persistent mask_index instance_count instance_id room_speed fps fps_real current_time current_year current_month current_day current_weekday current_hour current_minute current_second alarm timeline_index timeline_position timeline_speed timeline_running timeline_loop room room_first room_last room_width room_height room_caption room_persistent score lives health show_score show_lives show_health caption_score caption_lives caption_health event_type event_number event_object event_action application_surface gamemaker_pro gamemaker_registered gamemaker_version error_occurred error_last debug_mode keyboard_key keyboard_lastkey keyboard_lastchar keyboard_string mouse_x mouse_y mouse_button mouse_lastbutton cursor_sprite visible sprite_index sprite_width sprite_height sprite_xoffset sprite_yoffset image_number image_index image_speed depth image_xscale image_yscale image_angle image_alpha image_blend bbox_left bbox_right bbox_top bbox_bottom layer background_colour background_showcolour background_color background_showcolor view_enabled view_current view_visible view_xview view_yview view_wview view_hview view_xport view_yport view_wport view_hport view_angle view_hborder view_vborder view_hspeed view_vspeed view_object view_surface_id view_camera game_id game_display_name game_project_name game_save_id working_directory temp_directory program_directory browser_width browser_height os_type os_device os_browser os_version display_aa async_load delta_time webgl_enabled event_data iap_data phy_rotation phy_position_x phy_position_y phy_angular_velocity phy_linear_velocity_x phy_linear_velocity_y phy_speed_x phy_speed_y phy_speed phy_angular_damping phy_linear_damping phy_bullet phy_fixed_rotation phy_active phy_mass phy_inertia phy_com_x phy_com_y phy_dynamic phy_kinematic phy_sleeping phy_collision_points phy_collision_x phy_collision_y phy_col_normal_x phy_col_normal_y phy_position_xprevious phy_position_yprevious"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};var jg=function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{name:"Go",aliases:["golang"],keywords:t,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{begin:e.C_NUMBER_RE+"[i]",relevance:1},e.C_NUMBER_MODE]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,illegal:/["']/}]}]}};var Xg=function(e){return{name:"Golo",keywords:{keyword:"println readln print import module function local return let var while for foreach times in case when match with break continue augment augmentation each find filter reduce if then else otherwise try catch finally raise throw orIfNull DynamicObject|10 DynamicVariable struct Observable map set vector list array",literal:"true false null"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}};var Zg=function(e){return{name:"Gradle",case_insensitive:!0,keywords:{keyword:"task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.REGEXP_MODE]}};function Jg(e){return e?"string"==typeof e?e:e.source:null}function eE(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return Jg(e)})).join("")}("(?=",e,")")}function tE(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.variants=e,t}var nE=function(e){var t="[A-Za-z0-9_$]+",n=tE([e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]})]),a={className:"regexp",begin:/~?\/[^\/\n]+\//,contains:[e.BACKSLASH_ESCAPE]},r=tE([e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]),i=tE([{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:"\\$/",end:"/\\$",relevance:10},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE],{className:"string"});return{name:"Groovy",keywords:{built_in:"this super",literal:"true false null",keyword:"byte short char int long boolean float double void def as in assert trait abstract static volatile transient public private protected synchronized final class interface enum if else for while switch case break default continue throw throws try catch finally implements extends new import package return instanceof"},contains:[e.SHEBANG({binary:"groovy",relevance:10}),n,i,a,r,{className:"class",beginKeywords:"class interface trait enum",end:/\{/,illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{className:"meta",begin:"@[A-Za-z]+",relevance:0},{className:"attr",begin:t+"[ \t]*:",relevance:0},{begin:/\?/,end:/:/,relevance:0,contains:[n,i,a,r,"self"]},{className:"symbol",begin:"^[ \t]*"+eE(t+":"),excludeBegin:!0,end:t+":",relevance:0}],illegal:/#|<\//}};var aE=function(e){return{name:"HAML",case_insensitive:!0,contains:[{className:"meta",begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",relevance:10},e.COMMENT("^\\s*(!=#|=#|-#|/).*$",!1,{relevance:0}),{begin:"^\\s*(-|=|!=)(?!#)",starts:{end:"\\n",subLanguage:"ruby"}},{className:"tag",begin:"^\\s*%",contains:[{className:"selector-tag",begin:"\\w+"},{className:"selector-id",begin:"#[\\w-]+"},{className:"selector-class",begin:"\\.[\\w-]+"},{begin:/\{\s*/,end:/\s*\}/,contains:[{begin:":\\w+\\s*=>",end:",\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:":\\w+"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]},{begin:"\\(\\s*",end:"\\s*\\)",excludeEnd:!0,contains:[{begin:"\\w+\\s*=",end:"\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:"\\w+",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]}]},{begin:"^\\s*[=~]\\s*"},{begin:/#\{/,starts:{end:/\}/,subLanguage:"ruby"}}]}};function rE(e){return e?"string"==typeof e?e:e.source:null}function iE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return rE(e)})).join("");return a}var oE=function(e){var t={"builtin-name":["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"]},n=/\[\]|\[[^\]]+\]/,a=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,r=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return rE(e)})).join("|")+")"}(/""|"[^"]+"/,/''|'[^']+'/,n,a),i=iE(iE("(",/\.|\.\/|\//,")?"),r,function(e){return iE("(",e,")*")}(iE(/(\.|\/)/,r))),o=iE("(",n,"|",a,")(?==)"),s={begin:i,lexemes:/[\w.\/]+/},l=e.inherit(s,{keywords:{literal:["true","false","undefined","null"]}}),c={begin:/\(/,end:/\)/},_={className:"attr",begin:o,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,l,c]}}},d={contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},_,l,c],returnEnd:!0},u=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\)/})});c.contains=[u];var m=e.inherit(s,{keywords:t,className:"name",starts:e.inherit(d,{end:/\}\}/})}),p=e.inherit(s,{keywords:t,className:"name"}),g=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\}\}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[m],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[p]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[m]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[p]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[g]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[g]}]}};var sE=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},n={className:"meta",begin:/\{-#/,end:/#-\}/},a={className:"meta",begin:"^#",end:"$"},r={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},i={begin:"\\(",end:"\\)",illegal:'"',contains:[n,a,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),t]};return{name:"Haskell",aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[i,t],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[i,t],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[r,i,t]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[n,r,i,{begin:/\{/,end:/\}/,contains:i.contains},t]},{beginKeywords:"default",end:"$",contains:[r,i,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[r,e.QUOTE_STRING_MODE,t]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},n,a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,r,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}]}};var lE=function(e){return{name:"Haxe",aliases:["hx"],keywords:{keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while Int Float String Bool Dynamic Void Array ",built_in:"trace this",literal:"true false null _"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"},{className:"subst",begin:"\\$",end:/\W\}/}]},e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@:",end:"$"},{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end error"}},{className:"type",begin:":[ \t]*",end:"[^A-Za-z0-9_ \t\\->]",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:":[ \t]*",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"new *",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"class",beginKeywords:"enum",end:"\\{",contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"abstract",end:"[\\{$]",contains:[{className:"type",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"from +",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"to +",end:"\\W",excludeBegin:!0,excludeEnd:!0},e.TITLE_MODE],keywords:{keyword:"abstract from to"}},{className:"class",begin:"\\b(class|interface) +",end:"[\\{$]",excludeEnd:!0,keywords:"class interface",contains:[{className:"keyword",begin:"\\b(extends|implements) +",keywords:"extends implements",contains:[{className:"type",begin:e.IDENT_RE,relevance:0}]},e.TITLE_MODE]},{className:"function",beginKeywords:"function",end:"\\(",excludeEnd:!0,illegal:"\\S",contains:[e.TITLE_MODE]}],illegal:/<\//}};var cE=function(e){return{name:"HSP",case_insensitive:!0,keywords:{$pattern:/[\w._]+/,keyword:"goto gosub return break repeat loop continue wait await dim sdim foreach dimtype dup dupptr end stop newmod delmod mref run exgoto on mcall assert logmes newlab resume yield onexit onerror onkey onclick oncmd exist delete mkdir chdir dirlist bload bsave bcopy memfile if else poke wpoke lpoke getstr chdpm memexpand memcpy memset notesel noteadd notedel noteload notesave randomize noteunsel noteget split strrep setease button chgdisp exec dialog mmload mmplay mmstop mci pset pget syscolor mes print title pos circle cls font sysfont objsize picload color palcolor palette redraw width gsel gcopy gzoom gmode bmpsave hsvcolor getkey listbox chkbox combox input mesbox buffer screen bgscr mouse objsel groll line clrobj boxf objprm objmode stick grect grotate gsquare gradf objimage objskip objenable celload celdiv celput newcom querycom delcom cnvstow comres axobj winobj sendmsg comevent comevarg sarrayconv callfunc cnvwtos comevdisp libptr system hspstat hspver stat cnt err strsize looplev sublev iparam wparam lparam refstr refdval int rnd strlen length length2 length3 length4 vartype gettime peek wpeek lpeek varptr varuse noteinfo instr abs limit getease str strmid strf getpath strtrim sin cos tan atan sqrt double absf expf logf limitf powf geteasef mousex mousey mousew hwnd hinstance hdc ginfo objinfo dirinfo sysinfo thismod __hspver__ __hsp30__ __date__ __time__ __line__ __file__ _debug __hspdef__ and or xor not screen_normal screen_palette screen_hide screen_fixedsize screen_tool screen_frame gmode_gdi gmode_mem gmode_rgb0 gmode_alpha gmode_rgb0alpha gmode_add gmode_sub gmode_pixela ginfo_mx ginfo_my ginfo_act ginfo_sel ginfo_wx1 ginfo_wy1 ginfo_wx2 ginfo_wy2 ginfo_vx ginfo_vy ginfo_sizex ginfo_sizey ginfo_winx ginfo_winy ginfo_mesx ginfo_mesy ginfo_r ginfo_g ginfo_b ginfo_paluse ginfo_dispx ginfo_dispy ginfo_cx ginfo_cy ginfo_intid ginfo_newid ginfo_sx ginfo_sy objinfo_mode objinfo_bmscr objinfo_hwnd notemax notesize dir_cur dir_exe dir_win dir_sys dir_cmdline dir_desktop dir_mydoc dir_tv font_normal font_bold font_italic font_underline font_strikeout font_antialias objmode_normal objmode_guifont objmode_usefont gsquare_grad msgothic msmincho do until while wend for next _break _continue switch case default swbreak swend ddim ldim alloc m_pi rad2deg deg2rad ease_linear ease_quad_in ease_quad_out ease_quad_inout ease_cubic_in ease_cubic_out ease_cubic_inout ease_quartic_in ease_quartic_out ease_quartic_inout ease_bounce_in ease_bounce_out ease_bounce_inout ease_shake_in ease_shake_out ease_shake_inout ease_loop"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",begin:/\{"/,end:/"\}/,contains:[e.BACKSLASH_ESCAPE]},e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"addion cfunc cmd cmpopt comfunc const defcfunc deffunc define else endif enum epack func global if ifdef ifndef include modcfunc modfunc modinit modterm module pack packopt regcmd runtime undef usecom uselib"},contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),e.NUMBER_MODE,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"symbol",begin:"^\\*(\\w+|@)"},e.NUMBER_MODE,e.C_NUMBER_MODE]}};function _E(e){return e?"string"==typeof e?e:e.source:null}function dE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return _E(e)})).join("");return a}function uE(e){var t={"builtin-name":["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"]},n=/\[\]|\[[^\]]+\]/,a=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,r=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return _E(e)})).join("|")+")"}(/""|"[^"]+"/,/''|'[^']+'/,n,a),i=dE(dE("(",/\.|\.\/|\//,")?"),r,function(e){return dE("(",e,")*")}(dE(/(\.|\/)/,r))),o=dE("(",n,"|",a,")(?==)"),s={begin:i,lexemes:/[\w.\/]+/},l=e.inherit(s,{keywords:{literal:["true","false","undefined","null"]}}),c={begin:/\(/,end:/\)/},_={className:"attr",begin:o,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,l,c]}}},d={contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},_,l,c],returnEnd:!0},u=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\)/})});c.contains=[u];var m=e.inherit(s,{keywords:t,className:"name",starts:e.inherit(d,{end:/\}\}/})}),p=e.inherit(s,{keywords:t,className:"name"}),g=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\}\}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[m],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[p]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[m]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[p]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[g]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[g]}]}}var mE=function(e){var t=uE(e);return t.name="HTMLbars",e.getLanguage("handlebars")&&(t.disableAutodetect=!0),t};function pE(e){return e?"string"==typeof e?e:e.source:null}function gE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return pE(e)})).join("");return a}var EE=function(e){var t="HTTP/(2|1\\.[01])",n={className:"attribute",begin:gE("^",/[A-Za-z][A-Za-z0-9-]*/,"(?=\\:\\s)"),starts:{contains:[{className:"punctuation",begin:/: /,relevance:0,starts:{end:"$",relevance:0}}]}},a=[n,{begin:"\\n\\n",starts:{subLanguage:[],endsWithParent:!0}}];return{name:"HTTP",aliases:["https"],illegal:/\S/,contains:[{begin:"^(?="+t+" \\d{3})",end:/$/,contains:[{className:"meta",begin:t},{className:"number",begin:"\\b\\d{3}\\b"}],starts:{end:/\b\B/,illegal:/\S/,contains:a}},{begin:"(?=^[A-Z]+ (.*?) "+t+"$)",end:/$/,contains:[{className:"string",begin:" ",end:" ",excludeBegin:!0,excludeEnd:!0},{className:"meta",begin:t},{className:"keyword",begin:"[A-Z]+"}],starts:{end:/\b\B/,illegal:/\S/,contains:a}},e.inherit(n,{relevance:0})]}};var SE=function(e){var t="a-zA-Z_\\-!.?+*=<>&#'",n="["+t+"]["+t+"0-9/;:]*",a={$pattern:n,"builtin-name":"!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . / // //= /= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile/calls profile/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"},r={begin:n,relevance:0},i={className:"number",begin:"[-+]?\\d+(\\.\\d+)?",relevance:0},o=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),s=e.COMMENT(";","$",{relevance:0}),l={className:"literal",begin:/\b([Tt]rue|[Ff]alse|nil|None)\b/},c={begin:"[\\[\\{]",end:"[\\]\\}]"},_={className:"comment",begin:"\\^"+n},d=e.COMMENT("\\^\\{","\\}"),u={className:"symbol",begin:"[:]{1,2}"+n},m={begin:"\\(",end:"\\)"},p={endsWithParent:!0,relevance:0},g={className:"name",relevance:0,keywords:a,begin:n,starts:p},E=[m,o,_,d,s,u,c,i,l,r];return m.contains=[e.COMMENT("comment",""),g,p],p.contains=E,c.contains=E,{name:"Hy",aliases:["hylang"],illegal:/\S/,contains:[e.SHEBANG(),m,o,_,d,s,u,c,i,l]}};var bE=function(e){return{name:"Inform 7",aliases:["i7"],case_insensitive:!0,keywords:{keyword:"thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule"},contains:[{className:"string",begin:'"',end:'"',relevance:0,contains:[{className:"subst",begin:"\\[",end:"\\]"}]},{className:"section",begin:/^(Volume|Book|Part|Chapter|Section|Table)\b/,end:"$"},{begin:/^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\b/,end:":",contains:[{begin:"\\(This",end:"\\)"}]},{className:"comment",begin:"\\[",end:"\\]",contains:["self"]}]}};function TE(e){return e?"string"==typeof e?e:e.source:null}function fE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return TE(e)})).join("");return a}var CE=function(e){var t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},n=e.COMMENT();n.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var a={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},r={className:"literal",begin:/\bon|off|true|false|yes|no\b/},i={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},o={begin:/\[/,end:/\]/,contains:[n,r,a,i,t,"self"],relevance:0},s=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return TE(e)})).join("|")+")"}(/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/);return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[n,{className:"section",begin:/\[+/,end:/\]+/},{begin:fE(s,"(\\s*\\.\\s*",s,")*",fE("(?=",/\s*=\s*[^#\s]/,")")),className:"attr",starts:{end:/$/,contains:[n,o,r,a,i,t]}}]}};function NE(e){return e?"string"==typeof e?e:e.source:null}function RE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return NE(e)})).join("");return a}var vE=function(e){var t=/(_[a-z_\d]+)?/,n=/([de][+-]?\d+)?/,a={className:"number",variants:[{begin:RE(/\b\d+/,/\.(\d*)/,n,t)},{begin:RE(/\b\d+/,n,t)},{begin:RE(/\.\d+/,n,t)}],relevance:0};return{name:"IRPF90",case_insensitive:!0,keywords:{literal:".False. .True.",keyword:"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here"},illegal:/\/\*/,contains:[e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{className:"string",relevance:0}),{className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},e.COMMENT("!","$",{relevance:0}),e.COMMENT("begin_doc","end_doc",{relevance:10}),a]}};var OE=function(e){var t="[A-Za-zА-Яа-яёЁ_!][A-Za-zА-Яа-яёЁ_0-9]*",n={className:"number",begin:e.NUMBER_RE,relevance:0},a={className:"string",variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]},r={className:"doctag",begin:"\\b(?:TODO|DONE|BEGIN|END|STUB|CHG|FIXME|NOTE|BUG|XXX)\\b",relevance:0},i={variants:[{className:"comment",begin:"//",end:"$",relevance:0,contains:[e.PHRASAL_WORDS_MODE,r]},{className:"comment",begin:"/\\*",end:"\\*/",relevance:0,contains:[e.PHRASAL_WORDS_MODE,r]}]},o={$pattern:t,keyword:"and и else иначе endexcept endfinally endforeach конецвсе endif конецесли endwhile конецпока except exitfor finally foreach все if если in в not не or или try while пока ",built_in:"SYSRES_CONST_ACCES_RIGHT_TYPE_EDIT SYSRES_CONST_ACCES_RIGHT_TYPE_FULL SYSRES_CONST_ACCES_RIGHT_TYPE_VIEW SYSRES_CONST_ACCESS_MODE_REQUISITE_CODE SYSRES_CONST_ACCESS_NO_ACCESS_VIEW SYSRES_CONST_ACCESS_NO_ACCESS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW SYSRES_CONST_ACCESS_RIGHTS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_TYPE_CHANGE SYSRES_CONST_ACCESS_TYPE_CHANGE_CODE SYSRES_CONST_ACCESS_TYPE_EXISTS SYSRES_CONST_ACCESS_TYPE_EXISTS_CODE SYSRES_CONST_ACCESS_TYPE_FULL SYSRES_CONST_ACCESS_TYPE_FULL_CODE SYSRES_CONST_ACCESS_TYPE_VIEW SYSRES_CONST_ACCESS_TYPE_VIEW_CODE SYSRES_CONST_ACTION_TYPE_ABORT SYSRES_CONST_ACTION_TYPE_ACCEPT SYSRES_CONST_ACTION_TYPE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ADD_ATTACHMENT SYSRES_CONST_ACTION_TYPE_CHANGE_CARD SYSRES_CONST_ACTION_TYPE_CHANGE_KIND SYSRES_CONST_ACTION_TYPE_CHANGE_STORAGE SYSRES_CONST_ACTION_TYPE_CONTINUE SYSRES_CONST_ACTION_TYPE_COPY SYSRES_CONST_ACTION_TYPE_CREATE SYSRES_CONST_ACTION_TYPE_CREATE_VERSION SYSRES_CONST_ACTION_TYPE_DELETE SYSRES_CONST_ACTION_TYPE_DELETE_ATTACHMENT SYSRES_CONST_ACTION_TYPE_DELETE_VERSION SYSRES_CONST_ACTION_TYPE_DISABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE_AND_PASSWORD SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_PASSWORD SYSRES_CONST_ACTION_TYPE_EXPORT_WITH_LOCK SYSRES_CONST_ACTION_TYPE_EXPORT_WITHOUT_LOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITH_UNLOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITHOUT_UNLOCK SYSRES_CONST_ACTION_TYPE_LIFE_CYCLE_STAGE SYSRES_CONST_ACTION_TYPE_LOCK SYSRES_CONST_ACTION_TYPE_LOCK_FOR_SERVER SYSRES_CONST_ACTION_TYPE_LOCK_MODIFY SYSRES_CONST_ACTION_TYPE_MARK_AS_READED SYSRES_CONST_ACTION_TYPE_MARK_AS_UNREADED SYSRES_CONST_ACTION_TYPE_MODIFY SYSRES_CONST_ACTION_TYPE_MODIFY_CARD SYSRES_CONST_ACTION_TYPE_MOVE_TO_ARCHIVE SYSRES_CONST_ACTION_TYPE_OFF_ENCRYPTION SYSRES_CONST_ACTION_TYPE_PASSWORD_CHANGE SYSRES_CONST_ACTION_TYPE_PERFORM SYSRES_CONST_ACTION_TYPE_RECOVER_FROM_LOCAL_COPY SYSRES_CONST_ACTION_TYPE_RESTART SYSRES_CONST_ACTION_TYPE_RESTORE_FROM_ARCHIVE SYSRES_CONST_ACTION_TYPE_REVISION SYSRES_CONST_ACTION_TYPE_SEND_BY_MAIL SYSRES_CONST_ACTION_TYPE_SIGN SYSRES_CONST_ACTION_TYPE_START SYSRES_CONST_ACTION_TYPE_UNLOCK SYSRES_CONST_ACTION_TYPE_UNLOCK_FROM_SERVER SYSRES_CONST_ACTION_TYPE_VERSION_STATE SYSRES_CONST_ACTION_TYPE_VERSION_VISIBILITY SYSRES_CONST_ACTION_TYPE_VIEW SYSRES_CONST_ACTION_TYPE_VIEW_SHADOW_COPY SYSRES_CONST_ACTION_TYPE_WORKFLOW_DESCRIPTION_MODIFY SYSRES_CONST_ACTION_TYPE_WRITE_HISTORY SYSRES_CONST_ACTIVE_VERSION_STATE_PICK_VALUE SYSRES_CONST_ADD_REFERENCE_MODE_NAME SYSRES_CONST_ADDITION_REQUISITE_CODE SYSRES_CONST_ADDITIONAL_PARAMS_REQUISITE_CODE SYSRES_CONST_ADITIONAL_JOB_END_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_READ_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_START_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_STATE_REQUISITE_NAME SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE_ACTION SYSRES_CONST_ALL_ACCEPT_CONDITION_RUS SYSRES_CONST_ALL_USERS_GROUP SYSRES_CONST_ALL_USERS_GROUP_NAME SYSRES_CONST_ALL_USERS_SERVER_GROUP_NAME SYSRES_CONST_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_APP_VIEWER_TYPE_REQUISITE_CODE SYSRES_CONST_APPROVING_SIGNATURE_NAME SYSRES_CONST_APPROVING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE_CODE SYSRES_CONST_ATTACH_TYPE_COMPONENT_TOKEN SYSRES_CONST_ATTACH_TYPE_DOC SYSRES_CONST_ATTACH_TYPE_EDOC SYSRES_CONST_ATTACH_TYPE_FOLDER SYSRES_CONST_ATTACH_TYPE_JOB SYSRES_CONST_ATTACH_TYPE_REFERENCE SYSRES_CONST_ATTACH_TYPE_TASK SYSRES_CONST_AUTH_ENCODED_PASSWORD SYSRES_CONST_AUTH_ENCODED_PASSWORD_CODE SYSRES_CONST_AUTH_NOVELL SYSRES_CONST_AUTH_PASSWORD SYSRES_CONST_AUTH_PASSWORD_CODE SYSRES_CONST_AUTH_WINDOWS SYSRES_CONST_AUTHENTICATING_SIGNATURE_NAME SYSRES_CONST_AUTHENTICATING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_AUTO_ENUM_METHOD_FLAG SYSRES_CONST_AUTO_NUMERATION_CODE SYSRES_CONST_AUTO_STRONG_ENUM_METHOD_FLAG SYSRES_CONST_AUTOTEXT_NAME_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_TEXT_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_USAGE_ALL SYSRES_CONST_AUTOTEXT_USAGE_ALL_CODE SYSRES_CONST_AUTOTEXT_USAGE_SIGN SYSRES_CONST_AUTOTEXT_USAGE_SIGN_CODE SYSRES_CONST_AUTOTEXT_USAGE_WORK SYSRES_CONST_AUTOTEXT_USAGE_WORK_CODE SYSRES_CONST_AUTOTEXT_USE_ANYWHERE_CODE SYSRES_CONST_AUTOTEXT_USE_ON_SIGNING_CODE SYSRES_CONST_AUTOTEXT_USE_ON_WORK_CODE SYSRES_CONST_BEGIN_DATE_REQUISITE_CODE SYSRES_CONST_BLACK_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BLUE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BTN_PART SYSRES_CONST_CALCULATED_ROLE_TYPE_CODE SYSRES_CONST_CALL_TYPE_VARIABLE_BUTTON_VALUE SYSRES_CONST_CALL_TYPE_VARIABLE_PROGRAM_VALUE SYSRES_CONST_CANCEL_MESSAGE_FUNCTION_RESULT SYSRES_CONST_CARD_PART SYSRES_CONST_CARD_REFERENCE_MODE_NAME SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_AND_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_VALUE SYSRES_CONST_CHECK_PARAM_VALUE_DATE_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_FLOAT_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_INTEGER_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_PICK_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_REEFRENCE_PARAM_TYPE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_CODE_COMPONENT_TYPE_ADMIN SYSRES_CONST_CODE_COMPONENT_TYPE_DEVELOPER SYSRES_CONST_CODE_COMPONENT_TYPE_DOCS SYSRES_CONST_CODE_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_CODE_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_CODE_COMPONENT_TYPE_OTHER SYSRES_CONST_CODE_COMPONENT_TYPE_REFERENCE SYSRES_CONST_CODE_COMPONENT_TYPE_REPORT SYSRES_CONST_CODE_COMPONENT_TYPE_SCRIPT SYSRES_CONST_CODE_COMPONENT_TYPE_URL SYSRES_CONST_CODE_REQUISITE_ACCESS SYSRES_CONST_CODE_REQUISITE_CODE SYSRES_CONST_CODE_REQUISITE_COMPONENT SYSRES_CONST_CODE_REQUISITE_DESCRIPTION SYSRES_CONST_CODE_REQUISITE_EXCLUDE_COMPONENT SYSRES_CONST_CODE_REQUISITE_RECORD SYSRES_CONST_COMMENT_REQ_CODE SYSRES_CONST_COMMON_SETTINGS_REQUISITE_CODE SYSRES_CONST_COMP_CODE_GRD SYSRES_CONST_COMPONENT_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_COMPONENT_TYPE_ADMIN_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DEVELOPER_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DOCS SYSRES_CONST_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_COMPONENT_TYPE_EDOCS SYSRES_CONST_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_COMPONENT_TYPE_OTHER SYSRES_CONST_COMPONENT_TYPE_REFERENCE_TYPES SYSRES_CONST_COMPONENT_TYPE_REFERENCES SYSRES_CONST_COMPONENT_TYPE_REPORTS SYSRES_CONST_COMPONENT_TYPE_SCRIPTS SYSRES_CONST_COMPONENT_TYPE_URL SYSRES_CONST_COMPONENTS_REMOTE_SERVERS_VIEW_CODE SYSRES_CONST_CONDITION_BLOCK_DESCRIPTION SYSRES_CONST_CONST_FIRM_STATUS_COMMON SYSRES_CONST_CONST_FIRM_STATUS_INDIVIDUAL SYSRES_CONST_CONST_NEGATIVE_VALUE SYSRES_CONST_CONST_POSITIVE_VALUE SYSRES_CONST_CONST_SERVER_STATUS_DONT_REPLICATE SYSRES_CONST_CONST_SERVER_STATUS_REPLICATE SYSRES_CONST_CONTENTS_REQUISITE_CODE SYSRES_CONST_DATA_TYPE_BOOLEAN SYSRES_CONST_DATA_TYPE_DATE SYSRES_CONST_DATA_TYPE_FLOAT SYSRES_CONST_DATA_TYPE_INTEGER SYSRES_CONST_DATA_TYPE_PICK SYSRES_CONST_DATA_TYPE_REFERENCE SYSRES_CONST_DATA_TYPE_STRING SYSRES_CONST_DATA_TYPE_TEXT SYSRES_CONST_DATA_TYPE_VARIANT SYSRES_CONST_DATE_CLOSE_REQ_CODE SYSRES_CONST_DATE_FORMAT_DATE_ONLY_CHAR SYSRES_CONST_DATE_OPEN_REQ_CODE SYSRES_CONST_DATE_REQUISITE SYSRES_CONST_DATE_REQUISITE_CODE SYSRES_CONST_DATE_REQUISITE_NAME SYSRES_CONST_DATE_REQUISITE_TYPE SYSRES_CONST_DATE_TYPE_CHAR SYSRES_CONST_DATETIME_FORMAT_VALUE SYSRES_CONST_DEA_ACCESS_RIGHTS_ACTION_CODE SYSRES_CONST_DESCRIPTION_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_DET1_PART SYSRES_CONST_DET2_PART SYSRES_CONST_DET3_PART SYSRES_CONST_DET4_PART SYSRES_CONST_DET5_PART SYSRES_CONST_DET6_PART SYSRES_CONST_DETAIL_DATASET_KEY_REQUISITE_CODE SYSRES_CONST_DETAIL_PICK_REQUISITE_CODE SYSRES_CONST_DETAIL_REQ_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_NAME SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_NAME SYSRES_CONST_DOCUMENT_STORAGES_CODE SYSRES_CONST_DOCUMENT_TEMPLATES_TYPE_NAME SYSRES_CONST_DOUBLE_REQUISITE_CODE SYSRES_CONST_EDITOR_CLOSE_FILE_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_CLOSE_PROCESS_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_TYPE_REQUISITE_CODE SYSRES_CONST_EDITORS_APPLICATION_NAME_REQUISITE_CODE SYSRES_CONST_EDITORS_CREATE_SEVERAL_PROCESSES_REQUISITE_CODE SYSRES_CONST_EDITORS_EXTENSION_REQUISITE_CODE SYSRES_CONST_EDITORS_OBSERVER_BY_PROCESS_TYPE SYSRES_CONST_EDITORS_REFERENCE_CODE SYSRES_CONST_EDITORS_REPLACE_SPEC_CHARS_REQUISITE_CODE SYSRES_CONST_EDITORS_USE_PLUGINS_REQUISITE_CODE SYSRES_CONST_EDITORS_VIEW_DOCUMENT_OPENED_TO_EDIT_CODE SYSRES_CONST_EDOC_CARD_TYPE_REQUISITE_CODE SYSRES_CONST_EDOC_CARD_TYPES_LINK_REQUISITE_CODE SYSRES_CONST_EDOC_CERTIFICATE_AND_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_CERTIFICATE_ENCODE_CODE SYSRES_CONST_EDOC_DATE_REQUISITE_CODE SYSRES_CONST_EDOC_KIND_REFERENCE_CODE SYSRES_CONST_EDOC_KINDS_BY_TEMPLATE_ACTION_CODE SYSRES_CONST_EDOC_MANAGE_ACCESS_CODE SYSRES_CONST_EDOC_NONE_ENCODE_CODE SYSRES_CONST_EDOC_NUMBER_REQUISITE_CODE SYSRES_CONST_EDOC_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_READONLY_ACCESS_CODE SYSRES_CONST_EDOC_SHELL_LIFE_TYPE_VIEW_VALUE SYSRES_CONST_EDOC_SIZE_RESTRICTION_PRIORITY_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_CHECK_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_COMPUTER_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_DATABASE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_EDIT_IN_STORAGE_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_LOCAL_PATH_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_SHARED_SOURCE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_EDOC_TYPES_REFERENCE_CODE SYSRES_CONST_EDOC_VERSION_ACTIVE_STAGE_CODE SYSRES_CONST_EDOC_VERSION_DESIGN_STAGE_CODE SYSRES_CONST_EDOC_VERSION_OBSOLETE_STAGE_CODE SYSRES_CONST_EDOC_WRITE_ACCES_CODE SYSRES_CONST_EDOCUMENT_CARD_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_END_DATE_REQUISITE_CODE SYSRES_CONST_ENUMERATION_TYPE_REQUISITE_CODE SYSRES_CONST_EXECUTE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_EXECUTIVE_FILE_STORAGE_TYPE SYSRES_CONST_EXIST_CONST SYSRES_CONST_EXIST_VALUE SYSRES_CONST_EXPORT_LOCK_TYPE_ASK SYSRES_CONST_EXPORT_LOCK_TYPE_WITH_LOCK SYSRES_CONST_EXPORT_LOCK_TYPE_WITHOUT_LOCK SYSRES_CONST_EXPORT_VERSION_TYPE_ASK SYSRES_CONST_EXPORT_VERSION_TYPE_LAST SYSRES_CONST_EXPORT_VERSION_TYPE_LAST_ACTIVE SYSRES_CONST_EXTENSION_REQUISITE_CODE SYSRES_CONST_FILTER_NAME_REQUISITE_CODE SYSRES_CONST_FILTER_REQUISITE_CODE SYSRES_CONST_FILTER_TYPE_COMMON_CODE SYSRES_CONST_FILTER_TYPE_COMMON_NAME SYSRES_CONST_FILTER_TYPE_USER_CODE SYSRES_CONST_FILTER_TYPE_USER_NAME SYSRES_CONST_FILTER_VALUE_REQUISITE_NAME SYSRES_CONST_FLOAT_NUMBER_FORMAT_CHAR SYSRES_CONST_FLOAT_REQUISITE_TYPE SYSRES_CONST_FOLDER_AUTHOR_VALUE SYSRES_CONST_FOLDER_KIND_ANY_OBJECTS SYSRES_CONST_FOLDER_KIND_COMPONENTS SYSRES_CONST_FOLDER_KIND_EDOCS SYSRES_CONST_FOLDER_KIND_JOBS SYSRES_CONST_FOLDER_KIND_TASKS SYSRES_CONST_FOLDER_TYPE_COMMON SYSRES_CONST_FOLDER_TYPE_COMPONENT SYSRES_CONST_FOLDER_TYPE_FAVORITES SYSRES_CONST_FOLDER_TYPE_INBOX SYSRES_CONST_FOLDER_TYPE_OUTBOX SYSRES_CONST_FOLDER_TYPE_QUICK_LAUNCH SYSRES_CONST_FOLDER_TYPE_SEARCH SYSRES_CONST_FOLDER_TYPE_SHORTCUTS SYSRES_CONST_FOLDER_TYPE_USER SYSRES_CONST_FROM_DICTIONARY_ENUM_METHOD_FLAG SYSRES_CONST_FULL_SUBSTITUTE_TYPE SYSRES_CONST_FULL_SUBSTITUTE_TYPE_CODE SYSRES_CONST_FUNCTION_CANCEL_RESULT SYSRES_CONST_FUNCTION_CATEGORY_SYSTEM SYSRES_CONST_FUNCTION_CATEGORY_USER SYSRES_CONST_FUNCTION_FAILURE_RESULT SYSRES_CONST_FUNCTION_SAVE_RESULT SYSRES_CONST_GENERATED_REQUISITE SYSRES_CONST_GREEN_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_GROUP_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_NAME SYSRES_CONST_GROUP_CATEGORY_SERVICE_CODE SYSRES_CONST_GROUP_CATEGORY_SERVICE_NAME SYSRES_CONST_GROUP_COMMON_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_FULL_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_CODES_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_SERVICE_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_USER_REQUISITE_CODE SYSRES_CONST_GROUPS_REFERENCE_CODE SYSRES_CONST_GROUPS_REQUISITE_CODE SYSRES_CONST_HIDDEN_MODE_NAME SYSRES_CONST_HIGH_LVL_REQUISITE_CODE SYSRES_CONST_HISTORY_ACTION_CREATE_CODE SYSRES_CONST_HISTORY_ACTION_DELETE_CODE SYSRES_CONST_HISTORY_ACTION_EDIT_CODE SYSRES_CONST_HOUR_CHAR SYSRES_CONST_ID_REQUISITE_CODE SYSRES_CONST_IDSPS_REQUISITE_CODE SYSRES_CONST_IMAGE_MODE_COLOR SYSRES_CONST_IMAGE_MODE_GREYSCALE SYSRES_CONST_IMAGE_MODE_MONOCHROME SYSRES_CONST_IMPORTANCE_HIGH SYSRES_CONST_IMPORTANCE_LOW SYSRES_CONST_IMPORTANCE_NORMAL SYSRES_CONST_IN_DESIGN_VERSION_STATE_PICK_VALUE SYSRES_CONST_INCOMING_WORK_RULE_TYPE_CODE SYSRES_CONST_INT_REQUISITE SYSRES_CONST_INT_REQUISITE_TYPE SYSRES_CONST_INTEGER_NUMBER_FORMAT_CHAR SYSRES_CONST_INTEGER_TYPE_CHAR SYSRES_CONST_IS_GENERATED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_PUBLIC_ROLE_REQUISITE_CODE SYSRES_CONST_IS_REMOTE_USER_NEGATIVE_VALUE SYSRES_CONST_IS_REMOTE_USER_POSITIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_STORED_VALUE SYSRES_CONST_ITALIC_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_JOB_BLOCK_DESCRIPTION SYSRES_CONST_JOB_KIND_CONTROL_JOB SYSRES_CONST_JOB_KIND_JOB SYSRES_CONST_JOB_KIND_NOTICE SYSRES_CONST_JOB_STATE_ABORTED SYSRES_CONST_JOB_STATE_COMPLETE SYSRES_CONST_JOB_STATE_WORKING SYSRES_CONST_KIND_REQUISITE_CODE SYSRES_CONST_KIND_REQUISITE_NAME SYSRES_CONST_KINDS_CREATE_SHADOW_COPIES_REQUISITE_CODE SYSRES_CONST_KINDS_DEFAULT_EDOC_LIFE_STAGE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALL_TEPLATES_ALLOWED_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_LIFE_CYCLE_STAGE_CHANGING_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_MULTIPLE_ACTIVE_VERSIONS_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_SHARE_ACCES_RIGHTS_BY_DEFAULT_CODE SYSRES_CONST_KINDS_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_TYPE_REQUISITE_CODE SYSRES_CONST_KINDS_SIGNERS_REQUISITES_CODE SYSRES_CONST_KOD_INPUT_TYPE SYSRES_CONST_LAST_UPDATE_DATE_REQUISITE_CODE SYSRES_CONST_LIFE_CYCLE_START_STAGE_REQUISITE_CODE SYSRES_CONST_LILAC_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_LINK_OBJECT_KIND_COMPONENT SYSRES_CONST_LINK_OBJECT_KIND_DOCUMENT SYSRES_CONST_LINK_OBJECT_KIND_EDOC SYSRES_CONST_LINK_OBJECT_KIND_FOLDER SYSRES_CONST_LINK_OBJECT_KIND_JOB SYSRES_CONST_LINK_OBJECT_KIND_REFERENCE SYSRES_CONST_LINK_OBJECT_KIND_TASK SYSRES_CONST_LINK_REF_TYPE_REQUISITE_CODE SYSRES_CONST_LIST_REFERENCE_MODE_NAME SYSRES_CONST_LOCALIZATION_DICTIONARY_MAIN_VIEW_CODE SYSRES_CONST_MAIN_VIEW_CODE SYSRES_CONST_MANUAL_ENUM_METHOD_FLAG SYSRES_CONST_MASTER_COMP_TYPE_REQUISITE_CODE SYSRES_CONST_MASTER_TABLE_REC_ID_REQUISITE_CODE SYSRES_CONST_MAXIMIZED_MODE_NAME SYSRES_CONST_ME_VALUE SYSRES_CONST_MESSAGE_ATTENTION_CAPTION SYSRES_CONST_MESSAGE_CONFIRMATION_CAPTION SYSRES_CONST_MESSAGE_ERROR_CAPTION SYSRES_CONST_MESSAGE_INFORMATION_CAPTION SYSRES_CONST_MINIMIZED_MODE_NAME SYSRES_CONST_MINUTE_CHAR SYSRES_CONST_MODULE_REQUISITE_CODE SYSRES_CONST_MONITORING_BLOCK_DESCRIPTION SYSRES_CONST_MONTH_FORMAT_VALUE SYSRES_CONST_NAME_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_NAME_REQUISITE_CODE SYSRES_CONST_NAME_SINGULAR_REQUISITE_CODE SYSRES_CONST_NAMEAN_INPUT_TYPE SYSRES_CONST_NEGATIVE_PICK_VALUE SYSRES_CONST_NEGATIVE_VALUE SYSRES_CONST_NO SYSRES_CONST_NO_PICK_VALUE SYSRES_CONST_NO_SIGNATURE_REQUISITE_CODE SYSRES_CONST_NO_VALUE SYSRES_CONST_NONE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_NORMAL_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NORMAL_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_NORMAL_MODE_NAME SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_NOTE_REQUISITE_CODE SYSRES_CONST_NOTICE_BLOCK_DESCRIPTION SYSRES_CONST_NUM_REQUISITE SYSRES_CONST_NUM_STR_REQUISITE_CODE SYSRES_CONST_NUMERATION_AUTO_NOT_STRONG SYSRES_CONST_NUMERATION_AUTO_STRONG SYSRES_CONST_NUMERATION_FROM_DICTONARY SYSRES_CONST_NUMERATION_MANUAL SYSRES_CONST_NUMERIC_TYPE_CHAR SYSRES_CONST_NUMREQ_REQUISITE_CODE SYSRES_CONST_OBSOLETE_VERSION_STATE_PICK_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_OPTIONAL_FORM_COMP_REQCODE_PREFIX SYSRES_CONST_ORANGE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_ORIGINALREF_REQUISITE_CODE SYSRES_CONST_OURFIRM_REF_CODE SYSRES_CONST_OURFIRM_REQUISITE_CODE SYSRES_CONST_OURFIRM_VAR SYSRES_CONST_OUTGOING_WORK_RULE_TYPE_CODE SYSRES_CONST_PICK_NEGATIVE_RESULT SYSRES_CONST_PICK_POSITIVE_RESULT SYSRES_CONST_PICK_REQUISITE SYSRES_CONST_PICK_REQUISITE_TYPE SYSRES_CONST_PICK_TYPE_CHAR SYSRES_CONST_PLAN_STATUS_REQUISITE_CODE SYSRES_CONST_PLATFORM_VERSION_COMMENT SYSRES_CONST_PLUGINS_SETTINGS_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_POSITIVE_PICK_VALUE SYSRES_CONST_POWER_TO_CREATE_ACTION_CODE SYSRES_CONST_POWER_TO_SIGN_ACTION_CODE SYSRES_CONST_PRIORITY_REQUISITE_CODE SYSRES_CONST_QUALIFIED_TASK_TYPE SYSRES_CONST_QUALIFIED_TASK_TYPE_CODE SYSRES_CONST_RECSTAT_REQUISITE_CODE SYSRES_CONST_RED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_REF_ID_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_REF_REQUISITE SYSRES_CONST_REF_REQUISITE_TYPE SYSRES_CONST_REF_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_REFERENCE_RECORD_HISTORY_CREATE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_DELETE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_MODIFY_ACTION_CODE SYSRES_CONST_REFERENCE_TYPE_CHAR SYSRES_CONST_REFERENCE_TYPE_REQUISITE_NAME SYSRES_CONST_REFERENCES_ADD_PARAMS_REQUISITE_CODE SYSRES_CONST_REFERENCES_DISPLAY_REQUISITE_REQUISITE_CODE SYSRES_CONST_REMOTE_SERVER_STATUS_WORKING SYSRES_CONST_REMOTE_SERVER_TYPE_MAIN SYSRES_CONST_REMOTE_SERVER_TYPE_SECONDARY SYSRES_CONST_REMOTE_USER_FLAG_VALUE_CODE SYSRES_CONST_REPORT_APP_EDITOR_INTERNAL SYSRES_CONST_REPORT_BASE_REPORT_ID_REQUISITE_CODE SYSRES_CONST_REPORT_BASE_REPORT_REQUISITE_CODE SYSRES_CONST_REPORT_SCRIPT_REQUISITE_CODE SYSRES_CONST_REPORT_TEMPLATE_REQUISITE_CODE SYSRES_CONST_REPORT_VIEWER_CODE_REQUISITE_CODE SYSRES_CONST_REQ_ALLOW_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_RECORD_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_SERVER_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_MODE_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_EDIT_CODE SYSRES_CONST_REQ_MODE_HIDDEN_CODE SYSRES_CONST_REQ_MODE_NOT_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_VIEW_CODE SYSRES_CONST_REQ_NUMBER_REQUISITE_CODE SYSRES_CONST_REQ_SECTION_VALUE SYSRES_CONST_REQ_TYPE_VALUE SYSRES_CONST_REQUISITE_FORMAT_BY_UNIT SYSRES_CONST_REQUISITE_FORMAT_DATE_FULL SYSRES_CONST_REQUISITE_FORMAT_DATE_TIME SYSRES_CONST_REQUISITE_FORMAT_LEFT SYSRES_CONST_REQUISITE_FORMAT_RIGHT SYSRES_CONST_REQUISITE_FORMAT_WITHOUT_UNIT SYSRES_CONST_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_REQUISITE_SECTION_ACTIONS SYSRES_CONST_REQUISITE_SECTION_BUTTON SYSRES_CONST_REQUISITE_SECTION_BUTTONS SYSRES_CONST_REQUISITE_SECTION_CARD SYSRES_CONST_REQUISITE_SECTION_TABLE SYSRES_CONST_REQUISITE_SECTION_TABLE10 SYSRES_CONST_REQUISITE_SECTION_TABLE11 SYSRES_CONST_REQUISITE_SECTION_TABLE12 SYSRES_CONST_REQUISITE_SECTION_TABLE13 SYSRES_CONST_REQUISITE_SECTION_TABLE14 SYSRES_CONST_REQUISITE_SECTION_TABLE15 SYSRES_CONST_REQUISITE_SECTION_TABLE16 SYSRES_CONST_REQUISITE_SECTION_TABLE17 SYSRES_CONST_REQUISITE_SECTION_TABLE18 SYSRES_CONST_REQUISITE_SECTION_TABLE19 SYSRES_CONST_REQUISITE_SECTION_TABLE2 SYSRES_CONST_REQUISITE_SECTION_TABLE20 SYSRES_CONST_REQUISITE_SECTION_TABLE21 SYSRES_CONST_REQUISITE_SECTION_TABLE22 SYSRES_CONST_REQUISITE_SECTION_TABLE23 SYSRES_CONST_REQUISITE_SECTION_TABLE24 SYSRES_CONST_REQUISITE_SECTION_TABLE3 SYSRES_CONST_REQUISITE_SECTION_TABLE4 SYSRES_CONST_REQUISITE_SECTION_TABLE5 SYSRES_CONST_REQUISITE_SECTION_TABLE6 SYSRES_CONST_REQUISITE_SECTION_TABLE7 SYSRES_CONST_REQUISITE_SECTION_TABLE8 SYSRES_CONST_REQUISITE_SECTION_TABLE9 SYSRES_CONST_REQUISITES_PSEUDOREFERENCE_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_RIGHT_ALIGNMENT_CODE SYSRES_CONST_ROLES_REFERENCE_CODE SYSRES_CONST_ROUTE_STEP_AFTER_RUS SYSRES_CONST_ROUTE_STEP_AND_CONDITION_RUS SYSRES_CONST_ROUTE_STEP_OR_CONDITION_RUS SYSRES_CONST_ROUTE_TYPE_COMPLEX SYSRES_CONST_ROUTE_TYPE_PARALLEL SYSRES_CONST_ROUTE_TYPE_SERIAL SYSRES_CONST_SBDATASETDESC_NEGATIVE_VALUE SYSRES_CONST_SBDATASETDESC_POSITIVE_VALUE SYSRES_CONST_SBVIEWSDESC_POSITIVE_VALUE SYSRES_CONST_SCRIPT_BLOCK_DESCRIPTION SYSRES_CONST_SEARCH_BY_TEXT_REQUISITE_CODE SYSRES_CONST_SEARCHES_COMPONENT_CONTENT SYSRES_CONST_SEARCHES_CRITERIA_ACTION_NAME SYSRES_CONST_SEARCHES_EDOC_CONTENT SYSRES_CONST_SEARCHES_FOLDER_CONTENT SYSRES_CONST_SEARCHES_JOB_CONTENT SYSRES_CONST_SEARCHES_REFERENCE_CODE SYSRES_CONST_SEARCHES_TASK_CONTENT SYSRES_CONST_SECOND_CHAR SYSRES_CONST_SECTION_REQUISITE_ACTIONS_VALUE SYSRES_CONST_SECTION_REQUISITE_CARD_VALUE SYSRES_CONST_SECTION_REQUISITE_CODE SYSRES_CONST_SECTION_REQUISITE_DETAIL_1_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_2_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_3_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_4_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_5_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_6_VALUE SYSRES_CONST_SELECT_REFERENCE_MODE_NAME SYSRES_CONST_SELECT_TYPE_SELECTABLE SYSRES_CONST_SELECT_TYPE_SELECTABLE_ONLY_CHILD SYSRES_CONST_SELECT_TYPE_SELECTABLE_WITH_CHILD SYSRES_CONST_SELECT_TYPE_UNSLECTABLE SYSRES_CONST_SERVER_TYPE_MAIN SYSRES_CONST_SERVICE_USER_CATEGORY_FIELD_VALUE SYSRES_CONST_SETTINGS_USER_REQUISITE_CODE SYSRES_CONST_SIGNATURE_AND_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SIGNATURE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SINGULAR_TITLE_REQUISITE_CODE SYSRES_CONST_SQL_SERVER_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_SQL_SERVER_ENCODE_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_STANDART_ROUTES_GROUPS_REFERENCE_CODE SYSRES_CONST_STATE_REQ_NAME SYSRES_CONST_STATE_REQUISITE_ACTIVE_VALUE SYSRES_CONST_STATE_REQUISITE_CLOSED_VALUE SYSRES_CONST_STATE_REQUISITE_CODE SYSRES_CONST_STATIC_ROLE_TYPE_CODE SYSRES_CONST_STATUS_PLAN_DEFAULT_VALUE SYSRES_CONST_STATUS_VALUE_AUTOCLEANING SYSRES_CONST_STATUS_VALUE_BLUE_SQUARE SYSRES_CONST_STATUS_VALUE_COMPLETE SYSRES_CONST_STATUS_VALUE_GREEN_SQUARE SYSRES_CONST_STATUS_VALUE_ORANGE_SQUARE SYSRES_CONST_STATUS_VALUE_PURPLE_SQUARE SYSRES_CONST_STATUS_VALUE_RED_SQUARE SYSRES_CONST_STATUS_VALUE_SUSPEND SYSRES_CONST_STATUS_VALUE_YELLOW_SQUARE SYSRES_CONST_STDROUTE_SHOW_TO_USERS_REQUISITE_CODE SYSRES_CONST_STORAGE_TYPE_FILE SYSRES_CONST_STORAGE_TYPE_SQL_SERVER SYSRES_CONST_STR_REQUISITE SYSRES_CONST_STRIKEOUT_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_STRING_FORMAT_LEFT_ALIGN_CHAR SYSRES_CONST_STRING_FORMAT_RIGHT_ALIGN_CHAR SYSRES_CONST_STRING_REQUISITE_CODE SYSRES_CONST_STRING_REQUISITE_TYPE SYSRES_CONST_STRING_TYPE_CHAR SYSRES_CONST_SUBSTITUTES_PSEUDOREFERENCE_CODE SYSRES_CONST_SUBTASK_BLOCK_DESCRIPTION SYSRES_CONST_SYSTEM_SETTING_CURRENT_USER_PARAM_VALUE SYSRES_CONST_SYSTEM_SETTING_EMPTY_VALUE_PARAM_VALUE SYSRES_CONST_SYSTEM_VERSION_COMMENT SYSRES_CONST_TASK_ACCESS_TYPE_ALL SYSRES_CONST_TASK_ACCESS_TYPE_ALL_MEMBERS SYSRES_CONST_TASK_ACCESS_TYPE_MANUAL SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION_AND_PASSWORD SYSRES_CONST_TASK_ENCODE_TYPE_NONE SYSRES_CONST_TASK_ENCODE_TYPE_PASSWORD SYSRES_CONST_TASK_ROUTE_ALL_CONDITION SYSRES_CONST_TASK_ROUTE_AND_CONDITION SYSRES_CONST_TASK_ROUTE_OR_CONDITION SYSRES_CONST_TASK_STATE_ABORTED SYSRES_CONST_TASK_STATE_COMPLETE SYSRES_CONST_TASK_STATE_CONTINUED SYSRES_CONST_TASK_STATE_CONTROL SYSRES_CONST_TASK_STATE_INIT SYSRES_CONST_TASK_STATE_WORKING SYSRES_CONST_TASK_TITLE SYSRES_CONST_TASK_TYPES_GROUPS_REFERENCE_CODE SYSRES_CONST_TASK_TYPES_REFERENCE_CODE SYSRES_CONST_TEMPLATES_REFERENCE_CODE SYSRES_CONST_TEST_DATE_REQUISITE_NAME SYSRES_CONST_TEST_DEV_DATABASE_NAME SYSRES_CONST_TEST_DEV_SYSTEM_CODE SYSRES_CONST_TEST_EDMS_DATABASE_NAME SYSRES_CONST_TEST_EDMS_MAIN_CODE SYSRES_CONST_TEST_EDMS_MAIN_DB_NAME SYSRES_CONST_TEST_EDMS_SECOND_CODE SYSRES_CONST_TEST_EDMS_SECOND_DB_NAME SYSRES_CONST_TEST_EDMS_SYSTEM_CODE SYSRES_CONST_TEST_NUMERIC_REQUISITE_NAME SYSRES_CONST_TEXT_REQUISITE SYSRES_CONST_TEXT_REQUISITE_CODE SYSRES_CONST_TEXT_REQUISITE_TYPE SYSRES_CONST_TEXT_TYPE_CHAR SYSRES_CONST_TYPE_CODE_REQUISITE_CODE SYSRES_CONST_TYPE_REQUISITE_CODE SYSRES_CONST_UNDEFINED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_UNITS_SECTION_ID_REQUISITE_CODE SYSRES_CONST_UNITS_SECTION_REQUISITE_CODE SYSRES_CONST_UNOPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_NAME SYSRES_CONST_USE_ACCESS_TYPE_CODE SYSRES_CONST_USE_ACCESS_TYPE_NAME SYSRES_CONST_USER_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_USER_ADDITIONAL_INFORMATION_REQUISITE_CODE SYSRES_CONST_USER_AND_GROUP_ID_FROM_PSEUDOREFERENCE_REQUISITE_CODE SYSRES_CONST_USER_CATEGORY_NORMAL SYSRES_CONST_USER_CERTIFICATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_STATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_SUBJECT_NAME_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_THUMBPRINT_REQUISITE_CODE SYSRES_CONST_USER_COMMON_CATEGORY SYSRES_CONST_USER_COMMON_CATEGORY_CODE SYSRES_CONST_USER_FULL_NAME_REQUISITE_CODE SYSRES_CONST_USER_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_USER_LOGIN_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_SYSTEM_REQUISITE_CODE SYSRES_CONST_USER_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_USER_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_USER_SERVICE_CATEGORY SYSRES_CONST_USER_SERVICE_CATEGORY_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_NAME SYSRES_CONST_USER_STATUS_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_DEVELOPER_NAME SYSRES_CONST_USER_STATUS_DISABLED_CODE SYSRES_CONST_USER_STATUS_DISABLED_NAME SYSRES_CONST_USER_STATUS_SYSTEM_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_USER_CODE SYSRES_CONST_USER_STATUS_USER_NAME SYSRES_CONST_USER_STATUS_USER_NAME_DEPRECATED SYSRES_CONST_USER_TYPE_FIELD_VALUE_USER SYSRES_CONST_USER_TYPE_REQUISITE_CODE SYSRES_CONST_USERS_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USERS_IS_MAIN_SERVER_REQUISITE_CODE SYSRES_CONST_USERS_REFERENCE_CODE SYSRES_CONST_USERS_REGISTRATION_CERTIFICATES_ACTION_NAME SYSRES_CONST_USERS_REQUISITE_CODE SYSRES_CONST_USERS_SYSTEM_REQUISITE_CODE SYSRES_CONST_USERS_USER_ACCESS_RIGHTS_TYPR_REQUISITE_CODE SYSRES_CONST_USERS_USER_AUTHENTICATION_REQUISITE_CODE SYSRES_CONST_USERS_USER_COMPONENT_REQUISITE_CODE SYSRES_CONST_USERS_USER_GROUP_REQUISITE_CODE SYSRES_CONST_USERS_VIEW_CERTIFICATES_ACTION_NAME SYSRES_CONST_VIEW_DEFAULT_CODE SYSRES_CONST_VIEW_DEFAULT_NAME SYSRES_CONST_VIEWER_REQUISITE_CODE SYSRES_CONST_WAITING_BLOCK_DESCRIPTION SYSRES_CONST_WIZARD_FORM_LABEL_TEST_STRING SYSRES_CONST_WIZARD_QUERY_PARAM_HEIGHT_ETALON_STRING SYSRES_CONST_WIZARD_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_WORK_RULES_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_WORK_TIME_CALENDAR_REFERENCE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORK_WORKFLOW_SOFT_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORKFLOW_ROUTE_TYPR_HARD SYSRES_CONST_WORKFLOW_ROUTE_TYPR_SOFT SYSRES_CONST_XML_ENCODING SYSRES_CONST_XREC_STAT_REQUISITE_CODE SYSRES_CONST_XRECID_FIELD_NAME SYSRES_CONST_YES SYSRES_CONST_YES_NO_2_REQUISITE_CODE SYSRES_CONST_YES_NO_REQUISITE_CODE SYSRES_CONST_YES_NO_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_YES_PICK_VALUE SYSRES_CONST_YES_VALUE CR FALSE nil NO_VALUE NULL TAB TRUE YES_VALUE ADMINISTRATORS_GROUP_NAME CUSTOMIZERS_GROUP_NAME DEVELOPERS_GROUP_NAME SERVICE_USERS_GROUP_NAME DECISION_BLOCK_FIRST_OPERAND_PROPERTY DECISION_BLOCK_NAME_PROPERTY DECISION_BLOCK_OPERATION_PROPERTY DECISION_BLOCK_RESULT_TYPE_PROPERTY DECISION_BLOCK_SECOND_OPERAND_PROPERTY ANY_FILE_EXTENTION COMPRESSED_DOCUMENT_EXTENSION EXTENDED_DOCUMENT_EXTENSION SHORT_COMPRESSED_DOCUMENT_EXTENSION SHORT_EXTENDED_DOCUMENT_EXTENSION JOB_BLOCK_ABORT_DEADLINE_PROPERTY JOB_BLOCK_AFTER_FINISH_EVENT JOB_BLOCK_AFTER_QUERY_PARAMETERS_EVENT JOB_BLOCK_ATTACHMENT_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY JOB_BLOCK_BEFORE_QUERY_PARAMETERS_EVENT JOB_BLOCK_BEFORE_START_EVENT JOB_BLOCK_CREATED_JOBS_PROPERTY JOB_BLOCK_DEADLINE_PROPERTY JOB_BLOCK_EXECUTION_RESULTS_PROPERTY JOB_BLOCK_IS_PARALLEL_PROPERTY JOB_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY JOB_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY JOB_BLOCK_JOB_TEXT_PROPERTY JOB_BLOCK_NAME_PROPERTY JOB_BLOCK_NEED_SIGN_ON_PERFORM_PROPERTY JOB_BLOCK_PERFORMER_PROPERTY JOB_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY JOB_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY JOB_BLOCK_SUBJECT_PROPERTY ENGLISH_LANGUAGE_CODE RUSSIAN_LANGUAGE_CODE smHidden smMaximized smMinimized smNormal wmNo wmYes COMPONENT_TOKEN_LINK_KIND DOCUMENT_LINK_KIND EDOCUMENT_LINK_KIND FOLDER_LINK_KIND JOB_LINK_KIND REFERENCE_LINK_KIND TASK_LINK_KIND COMPONENT_TOKEN_LOCK_TYPE EDOCUMENT_VERSION_LOCK_TYPE MONITOR_BLOCK_AFTER_FINISH_EVENT MONITOR_BLOCK_BEFORE_START_EVENT MONITOR_BLOCK_DEADLINE_PROPERTY MONITOR_BLOCK_INTERVAL_PROPERTY MONITOR_BLOCK_INTERVAL_TYPE_PROPERTY MONITOR_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY MONITOR_BLOCK_NAME_PROPERTY MONITOR_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY MONITOR_BLOCK_SEARCH_SCRIPT_PROPERTY NOTICE_BLOCK_AFTER_FINISH_EVENT NOTICE_BLOCK_ATTACHMENT_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY NOTICE_BLOCK_BEFORE_START_EVENT NOTICE_BLOCK_CREATED_NOTICES_PROPERTY NOTICE_BLOCK_DEADLINE_PROPERTY NOTICE_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY NOTICE_BLOCK_NAME_PROPERTY NOTICE_BLOCK_NOTICE_TEXT_PROPERTY NOTICE_BLOCK_PERFORMER_PROPERTY NOTICE_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY NOTICE_BLOCK_SUBJECT_PROPERTY dseAfterCancel dseAfterClose dseAfterDelete dseAfterDeleteOutOfTransaction dseAfterInsert dseAfterOpen dseAfterScroll dseAfterUpdate dseAfterUpdateOutOfTransaction dseBeforeCancel dseBeforeClose dseBeforeDelete dseBeforeDetailUpdate dseBeforeInsert dseBeforeOpen dseBeforeUpdate dseOnAnyRequisiteChange dseOnCloseRecord dseOnDeleteError dseOnOpenRecord dseOnPrepareUpdate dseOnUpdateError dseOnUpdateRatifiedRecord dseOnValidDelete dseOnValidUpdate reOnChange reOnChangeValues SELECTION_BEGIN_ROUTE_EVENT SELECTION_END_ROUTE_EVENT CURRENT_PERIOD_IS_REQUIRED PREVIOUS_CARD_TYPE_NAME SHOW_RECORD_PROPERTIES_FORM ACCESS_RIGHTS_SETTING_DIALOG_CODE ADMINISTRATOR_USER_CODE ANALYTIC_REPORT_TYPE asrtHideLocal asrtHideRemote CALCULATED_ROLE_TYPE_CODE COMPONENTS_REFERENCE_DEVELOPER_VIEW_CODE DCTS_TEST_PROTOCOLS_FOLDER_PATH E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED_BY_USER E_EDOC_VERSION_ALREDY_SIGNED E_EDOC_VERSION_ALREDY_SIGNED_BY_USER EDOC_TYPES_CODE_REQUISITE_FIELD_NAME EDOCUMENTS_ALIAS_NAME FILES_FOLDER_PATH FILTER_OPERANDS_DELIMITER FILTER_OPERATIONS_DELIMITER FORMCARD_NAME FORMLIST_NAME GET_EXTENDED_DOCUMENT_EXTENSION_CREATION_MODE GET_EXTENDED_DOCUMENT_EXTENSION_IMPORT_MODE INTEGRATED_REPORT_TYPE IS_BUILDER_APPLICATION_ROLE IS_BUILDER_APPLICATION_ROLE2 IS_BUILDER_USERS ISBSYSDEV LOG_FOLDER_PATH mbCancel mbNo mbNoToAll mbOK mbYes mbYesToAll MEMORY_DATASET_DESRIPTIONS_FILENAME mrNo mrNoToAll mrYes mrYesToAll MULTIPLE_SELECT_DIALOG_CODE NONOPERATING_RECORD_FLAG_FEMININE NONOPERATING_RECORD_FLAG_MASCULINE OPERATING_RECORD_FLAG_FEMININE OPERATING_RECORD_FLAG_MASCULINE PROFILING_SETTINGS_COMMON_SETTINGS_CODE_VALUE PROGRAM_INITIATED_LOOKUP_ACTION ratDelete ratEdit ratInsert REPORT_TYPE REQUIRED_PICK_VALUES_VARIABLE rmCard rmList SBRTE_PROGID_DEV SBRTE_PROGID_RELEASE STATIC_ROLE_TYPE_CODE SUPPRESS_EMPTY_TEMPLATE_CREATION SYSTEM_USER_CODE UPDATE_DIALOG_DATASET USED_IN_OBJECT_HINT_PARAM USER_INITIATED_LOOKUP_ACTION USER_NAME_FORMAT USER_SELECTION_RESTRICTIONS WORKFLOW_TEST_PROTOCOLS_FOLDER_PATH ELS_SUBTYPE_CONTROL_NAME ELS_FOLDER_KIND_CONTROL_NAME REPEAT_PROCESS_CURRENT_OBJECT_EXCEPTION_NAME PRIVILEGE_COMPONENT_FULL_ACCESS PRIVILEGE_DEVELOPMENT_EXPORT PRIVILEGE_DEVELOPMENT_IMPORT PRIVILEGE_DOCUMENT_DELETE PRIVILEGE_ESD PRIVILEGE_FOLDER_DELETE PRIVILEGE_MANAGE_ACCESS_RIGHTS PRIVILEGE_MANAGE_REPLICATION PRIVILEGE_MANAGE_SESSION_SERVER PRIVILEGE_OBJECT_FULL_ACCESS PRIVILEGE_OBJECT_VIEW PRIVILEGE_RESERVE_LICENSE PRIVILEGE_SYSTEM_CUSTOMIZE PRIVILEGE_SYSTEM_DEVELOP PRIVILEGE_SYSTEM_INSTALL PRIVILEGE_TASK_DELETE PRIVILEGE_USER_PLUGIN_SETTINGS_CUSTOMIZE PRIVILEGES_PSEUDOREFERENCE_CODE ACCESS_TYPES_PSEUDOREFERENCE_CODE ALL_AVAILABLE_COMPONENTS_PSEUDOREFERENCE_CODE ALL_AVAILABLE_PRIVILEGES_PSEUDOREFERENCE_CODE ALL_REPLICATE_COMPONENTS_PSEUDOREFERENCE_CODE AVAILABLE_DEVELOPERS_COMPONENTS_PSEUDOREFERENCE_CODE COMPONENTS_PSEUDOREFERENCE_CODE FILTRATER_SETTINGS_CONFLICTS_PSEUDOREFERENCE_CODE GROUPS_PSEUDOREFERENCE_CODE RECEIVE_PROTOCOL_PSEUDOREFERENCE_CODE REFERENCE_REQUISITE_PSEUDOREFERENCE_CODE REFERENCE_REQUISITES_PSEUDOREFERENCE_CODE REFTYPES_PSEUDOREFERENCE_CODE REPLICATION_SEANCES_DIARY_PSEUDOREFERENCE_CODE SEND_PROTOCOL_PSEUDOREFERENCE_CODE SUBSTITUTES_PSEUDOREFERENCE_CODE SYSTEM_SETTINGS_PSEUDOREFERENCE_CODE UNITS_PSEUDOREFERENCE_CODE USERS_PSEUDOREFERENCE_CODE VIEWERS_PSEUDOREFERENCE_CODE CERTIFICATE_TYPE_ENCRYPT CERTIFICATE_TYPE_SIGN CERTIFICATE_TYPE_SIGN_AND_ENCRYPT STORAGE_TYPE_FILE STORAGE_TYPE_NAS_CIFS STORAGE_TYPE_SAPERION STORAGE_TYPE_SQL_SERVER COMPTYPE2_REQUISITE_DOCUMENTS_VALUE COMPTYPE2_REQUISITE_TASKS_VALUE COMPTYPE2_REQUISITE_FOLDERS_VALUE COMPTYPE2_REQUISITE_REFERENCES_VALUE SYSREQ_CODE SYSREQ_COMPTYPE2 SYSREQ_CONST_AVAILABLE_FOR_WEB SYSREQ_CONST_COMMON_CODE SYSREQ_CONST_COMMON_VALUE SYSREQ_CONST_FIRM_CODE SYSREQ_CONST_FIRM_STATUS SYSREQ_CONST_FIRM_VALUE SYSREQ_CONST_SERVER_STATUS SYSREQ_CONTENTS SYSREQ_DATE_OPEN SYSREQ_DATE_CLOSE SYSREQ_DESCRIPTION SYSREQ_DESCRIPTION_LOCALIZE_ID SYSREQ_DOUBLE SYSREQ_EDOC_ACCESS_TYPE SYSREQ_EDOC_AUTHOR SYSREQ_EDOC_CREATED SYSREQ_EDOC_DELEGATE_RIGHTS_REQUISITE_CODE SYSREQ_EDOC_EDITOR SYSREQ_EDOC_ENCODE_TYPE SYSREQ_EDOC_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_EXPORT_DATE SYSREQ_EDOC_EXPORTER SYSREQ_EDOC_KIND SYSREQ_EDOC_LIFE_STAGE_NAME SYSREQ_EDOC_LOCKED_FOR_SERVER_CODE SYSREQ_EDOC_MODIFIED SYSREQ_EDOC_NAME SYSREQ_EDOC_NOTE SYSREQ_EDOC_QUALIFIED_ID SYSREQ_EDOC_SESSION_KEY SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_SIGNATURE_TYPE SYSREQ_EDOC_SIGNED SYSREQ_EDOC_STORAGE SYSREQ_EDOC_STORAGES_ARCHIVE_STORAGE SYSREQ_EDOC_STORAGES_CHECK_RIGHTS SYSREQ_EDOC_STORAGES_COMPUTER_NAME SYSREQ_EDOC_STORAGES_EDIT_IN_STORAGE SYSREQ_EDOC_STORAGES_EXECUTIVE_STORAGE SYSREQ_EDOC_STORAGES_FUNCTION SYSREQ_EDOC_STORAGES_INITIALIZED SYSREQ_EDOC_STORAGES_LOCAL_PATH SYSREQ_EDOC_STORAGES_SAPERION_DATABASE_NAME SYSREQ_EDOC_STORAGES_SEARCH_BY_TEXT SYSREQ_EDOC_STORAGES_SERVER_NAME SYSREQ_EDOC_STORAGES_SHARED_SOURCE_NAME SYSREQ_EDOC_STORAGES_TYPE SYSREQ_EDOC_TEXT_MODIFIED SYSREQ_EDOC_TYPE_ACT_CODE SYSREQ_EDOC_TYPE_ACT_DESCRIPTION SYSREQ_EDOC_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_EDOC_TYPE_ACT_SECTION SYSREQ_EDOC_TYPE_ADD_PARAMS SYSREQ_EDOC_TYPE_COMMENT SYSREQ_EDOC_TYPE_EVENT_TEXT SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_EDOC_TYPE_NAME_LOCALIZE_ID SYSREQ_EDOC_TYPE_NUMERATION_METHOD SYSREQ_EDOC_TYPE_PSEUDO_REQUISITE_CODE SYSREQ_EDOC_TYPE_REQ_CODE SYSREQ_EDOC_TYPE_REQ_DESCRIPTION SYSREQ_EDOC_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_REQ_IS_LEADING SYSREQ_EDOC_TYPE_REQ_IS_REQUIRED SYSREQ_EDOC_TYPE_REQ_NUMBER SYSREQ_EDOC_TYPE_REQ_ON_CHANGE SYSREQ_EDOC_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_EDOC_TYPE_REQ_ON_SELECT SYSREQ_EDOC_TYPE_REQ_ON_SELECT_KIND SYSREQ_EDOC_TYPE_REQ_SECTION SYSREQ_EDOC_TYPE_VIEW_CARD SYSREQ_EDOC_TYPE_VIEW_CODE SYSREQ_EDOC_TYPE_VIEW_COMMENT SYSREQ_EDOC_TYPE_VIEW_IS_MAIN SYSREQ_EDOC_TYPE_VIEW_NAME SYSREQ_EDOC_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_EDOC_VERSION_AUTHOR SYSREQ_EDOC_VERSION_CRC SYSREQ_EDOC_VERSION_DATA SYSREQ_EDOC_VERSION_EDITOR SYSREQ_EDOC_VERSION_EXPORT_DATE SYSREQ_EDOC_VERSION_EXPORTER SYSREQ_EDOC_VERSION_HIDDEN SYSREQ_EDOC_VERSION_LIFE_STAGE SYSREQ_EDOC_VERSION_MODIFIED SYSREQ_EDOC_VERSION_NOTE SYSREQ_EDOC_VERSION_SIGNATURE_TYPE SYSREQ_EDOC_VERSION_SIGNED SYSREQ_EDOC_VERSION_SIZE SYSREQ_EDOC_VERSION_SOURCE SYSREQ_EDOC_VERSION_TEXT_MODIFIED SYSREQ_EDOCKIND_DEFAULT_VERSION_STATE_CODE SYSREQ_FOLDER_KIND SYSREQ_FUNC_CATEGORY SYSREQ_FUNC_COMMENT SYSREQ_FUNC_GROUP SYSREQ_FUNC_GROUP_COMMENT SYSREQ_FUNC_GROUP_NUMBER SYSREQ_FUNC_HELP SYSREQ_FUNC_PARAM_DEF_VALUE SYSREQ_FUNC_PARAM_IDENT SYSREQ_FUNC_PARAM_NUMBER SYSREQ_FUNC_PARAM_TYPE SYSREQ_FUNC_TEXT SYSREQ_GROUP_CATEGORY SYSREQ_ID SYSREQ_LAST_UPDATE SYSREQ_LEADER_REFERENCE SYSREQ_LINE_NUMBER SYSREQ_MAIN_RECORD_ID SYSREQ_NAME SYSREQ_NAME_LOCALIZE_ID SYSREQ_NOTE SYSREQ_ORIGINAL_RECORD SYSREQ_OUR_FIRM SYSREQ_PROFILING_SETTINGS_BATCH_LOGING SYSREQ_PROFILING_SETTINGS_BATCH_SIZE SYSREQ_PROFILING_SETTINGS_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_SQL_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_START_LOGGED SYSREQ_RECORD_STATUS SYSREQ_REF_REQ_FIELD_NAME SYSREQ_REF_REQ_FORMAT SYSREQ_REF_REQ_GENERATED SYSREQ_REF_REQ_LENGTH SYSREQ_REF_REQ_PRECISION SYSREQ_REF_REQ_REFERENCE SYSREQ_REF_REQ_SECTION SYSREQ_REF_REQ_STORED SYSREQ_REF_REQ_TOKENS SYSREQ_REF_REQ_TYPE SYSREQ_REF_REQ_VIEW SYSREQ_REF_TYPE_ACT_CODE SYSREQ_REF_TYPE_ACT_DESCRIPTION SYSREQ_REF_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_ACT_ON_EXECUTE SYSREQ_REF_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_REF_TYPE_ACT_SECTION SYSREQ_REF_TYPE_ADD_PARAMS SYSREQ_REF_TYPE_COMMENT SYSREQ_REF_TYPE_COMMON_SETTINGS SYSREQ_REF_TYPE_DISPLAY_REQUISITE_NAME SYSREQ_REF_TYPE_EVENT_TEXT SYSREQ_REF_TYPE_MAIN_LEADING_REF SYSREQ_REF_TYPE_NAME_IN_SINGULAR SYSREQ_REF_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_REF_TYPE_NAME_LOCALIZE_ID SYSREQ_REF_TYPE_NUMERATION_METHOD SYSREQ_REF_TYPE_REQ_CODE SYSREQ_REF_TYPE_REQ_DESCRIPTION SYSREQ_REF_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_REQ_IS_CONTROL SYSREQ_REF_TYPE_REQ_IS_FILTER SYSREQ_REF_TYPE_REQ_IS_LEADING SYSREQ_REF_TYPE_REQ_IS_REQUIRED SYSREQ_REF_TYPE_REQ_NUMBER SYSREQ_REF_TYPE_REQ_ON_CHANGE SYSREQ_REF_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_REF_TYPE_REQ_ON_SELECT SYSREQ_REF_TYPE_REQ_ON_SELECT_KIND SYSREQ_REF_TYPE_REQ_SECTION SYSREQ_REF_TYPE_VIEW_CARD SYSREQ_REF_TYPE_VIEW_CODE SYSREQ_REF_TYPE_VIEW_COMMENT SYSREQ_REF_TYPE_VIEW_IS_MAIN SYSREQ_REF_TYPE_VIEW_NAME SYSREQ_REF_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_REFERENCE_TYPE_ID SYSREQ_STATE SYSREQ_STATЕ SYSREQ_SYSTEM_SETTINGS_VALUE SYSREQ_TYPE SYSREQ_UNIT SYSREQ_UNIT_ID SYSREQ_USER_GROUPS_GROUP_FULL_NAME SYSREQ_USER_GROUPS_GROUP_NAME SYSREQ_USER_GROUPS_GROUP_SERVER_NAME SYSREQ_USERS_ACCESS_RIGHTS SYSREQ_USERS_AUTHENTICATION SYSREQ_USERS_CATEGORY SYSREQ_USERS_COMPONENT SYSREQ_USERS_COMPONENT_USER_IS_PUBLIC SYSREQ_USERS_DOMAIN SYSREQ_USERS_FULL_USER_NAME SYSREQ_USERS_GROUP SYSREQ_USERS_IS_MAIN_SERVER SYSREQ_USERS_LOGIN SYSREQ_USERS_REFERENCE_USER_IS_PUBLIC SYSREQ_USERS_STATUS SYSREQ_USERS_USER_CERTIFICATE SYSREQ_USERS_USER_CERTIFICATE_INFO SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_NAME SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_VERSION SYSREQ_USERS_USER_CERTIFICATE_STATE SYSREQ_USERS_USER_CERTIFICATE_SUBJECT_NAME SYSREQ_USERS_USER_CERTIFICATE_THUMBPRINT SYSREQ_USERS_USER_DEFAULT_CERTIFICATE SYSREQ_USERS_USER_DESCRIPTION SYSREQ_USERS_USER_GLOBAL_NAME SYSREQ_USERS_USER_LOGIN SYSREQ_USERS_USER_MAIN_SERVER SYSREQ_USERS_USER_TYPE SYSREQ_WORK_RULES_FOLDER_ID RESULT_VAR_NAME RESULT_VAR_NAME_ENG AUTO_NUMERATION_RULE_ID CANT_CHANGE_ID_REQUISITE_RULE_ID CANT_CHANGE_OURFIRM_REQUISITE_RULE_ID CHECK_CHANGING_REFERENCE_RECORD_USE_RULE_ID CHECK_CODE_REQUISITE_RULE_ID CHECK_DELETING_REFERENCE_RECORD_USE_RULE_ID CHECK_FILTRATER_CHANGES_RULE_ID CHECK_RECORD_INTERVAL_RULE_ID CHECK_REFERENCE_INTERVAL_RULE_ID CHECK_REQUIRED_DATA_FULLNESS_RULE_ID CHECK_REQUIRED_REQUISITES_FULLNESS_RULE_ID MAKE_RECORD_UNRATIFIED_RULE_ID RESTORE_AUTO_NUMERATION_RULE_ID SET_FIRM_CONTEXT_FROM_RECORD_RULE_ID SET_FIRST_RECORD_IN_LIST_FORM_RULE_ID SET_IDSPS_VALUE_RULE_ID SET_NEXT_CODE_VALUE_RULE_ID SET_OURFIRM_BOUNDS_RULE_ID SET_OURFIRM_REQUISITE_RULE_ID SCRIPT_BLOCK_AFTER_FINISH_EVENT SCRIPT_BLOCK_BEFORE_START_EVENT SCRIPT_BLOCK_EXECUTION_RESULTS_PROPERTY SCRIPT_BLOCK_NAME_PROPERTY SCRIPT_BLOCK_SCRIPT_PROPERTY SUBTASK_BLOCK_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_AFTER_FINISH_EVENT SUBTASK_BLOCK_ASSIGN_PARAMS_EVENT SUBTASK_BLOCK_ATTACHMENTS_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY SUBTASK_BLOCK_BEFORE_START_EVENT SUBTASK_BLOCK_CREATED_TASK_PROPERTY SUBTASK_BLOCK_CREATION_EVENT SUBTASK_BLOCK_DEADLINE_PROPERTY SUBTASK_BLOCK_IMPORTANCE_PROPERTY SUBTASK_BLOCK_INITIATOR_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY SUBTASK_BLOCK_JOBS_TYPE_PROPERTY SUBTASK_BLOCK_NAME_PROPERTY SUBTASK_BLOCK_PARALLEL_ROUTE_PROPERTY SUBTASK_BLOCK_PERFORMERS_PROPERTY SUBTASK_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_REQUIRE_SIGN_PROPERTY SUBTASK_BLOCK_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_START_EVENT SUBTASK_BLOCK_STEP_CONTROL_PROPERTY SUBTASK_BLOCK_SUBJECT_PROPERTY SUBTASK_BLOCK_TASK_CONTROL_PROPERTY SUBTASK_BLOCK_TEXT_PROPERTY SUBTASK_BLOCK_UNLOCK_ATTACHMENTS_ON_STOP_PROPERTY SUBTASK_BLOCK_USE_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_WAIT_FOR_TASK_COMPLETE_PROPERTY SYSCOMP_CONTROL_JOBS SYSCOMP_FOLDERS SYSCOMP_JOBS SYSCOMP_NOTICES SYSCOMP_TASKS SYSDLG_CREATE_EDOCUMENT SYSDLG_CREATE_EDOCUMENT_VERSION SYSDLG_CURRENT_PERIOD SYSDLG_EDIT_FUNCTION_HELP SYSDLG_EDOCUMENT_KINDS_FOR_TEMPLATE SYSDLG_EXPORT_MULTIPLE_EDOCUMENTS SYSDLG_EXPORT_SINGLE_EDOCUMENT SYSDLG_IMPORT_EDOCUMENT SYSDLG_MULTIPLE_SELECT SYSDLG_SETUP_ACCESS_RIGHTS SYSDLG_SETUP_DEFAULT_RIGHTS SYSDLG_SETUP_FILTER_CONDITION SYSDLG_SETUP_SIGN_RIGHTS SYSDLG_SETUP_TASK_OBSERVERS SYSDLG_SETUP_TASK_ROUTE SYSDLG_SETUP_USERS_LIST SYSDLG_SIGN_EDOCUMENT SYSDLG_SIGN_MULTIPLE_EDOCUMENTS SYSREF_ACCESS_RIGHTS_TYPES SYSREF_ADMINISTRATION_HISTORY SYSREF_ALL_AVAILABLE_COMPONENTS SYSREF_ALL_AVAILABLE_PRIVILEGES SYSREF_ALL_REPLICATING_COMPONENTS SYSREF_AVAILABLE_DEVELOPERS_COMPONENTS SYSREF_CALENDAR_EVENTS SYSREF_COMPONENT_TOKEN_HISTORY SYSREF_COMPONENT_TOKENS SYSREF_COMPONENTS SYSREF_CONSTANTS SYSREF_DATA_RECEIVE_PROTOCOL SYSREF_DATA_SEND_PROTOCOL SYSREF_DIALOGS SYSREF_DIALOGS_REQUISITES SYSREF_EDITORS SYSREF_EDOC_CARDS SYSREF_EDOC_TYPES SYSREF_EDOCUMENT_CARD_REQUISITES SYSREF_EDOCUMENT_CARD_TYPES SYSREF_EDOCUMENT_CARD_TYPES_REFERENCE SYSREF_EDOCUMENT_CARDS SYSREF_EDOCUMENT_HISTORY SYSREF_EDOCUMENT_KINDS SYSREF_EDOCUMENT_REQUISITES SYSREF_EDOCUMENT_SIGNATURES SYSREF_EDOCUMENT_TEMPLATES SYSREF_EDOCUMENT_TEXT_STORAGES SYSREF_EDOCUMENT_VIEWS SYSREF_FILTERER_SETUP_CONFLICTS SYSREF_FILTRATER_SETTING_CONFLICTS SYSREF_FOLDER_HISTORY SYSREF_FOLDERS SYSREF_FUNCTION_GROUPS SYSREF_FUNCTION_PARAMS SYSREF_FUNCTIONS SYSREF_JOB_HISTORY SYSREF_LINKS SYSREF_LOCALIZATION_DICTIONARY SYSREF_LOCALIZATION_LANGUAGES SYSREF_MODULES SYSREF_PRIVILEGES SYSREF_RECORD_HISTORY SYSREF_REFERENCE_REQUISITES SYSREF_REFERENCE_TYPE_VIEWS SYSREF_REFERENCE_TYPES SYSREF_REFERENCES SYSREF_REFERENCES_REQUISITES SYSREF_REMOTE_SERVERS SYSREF_REPLICATION_SESSIONS_LOG SYSREF_REPLICATION_SESSIONS_PROTOCOL SYSREF_REPORTS SYSREF_ROLES SYSREF_ROUTE_BLOCK_GROUPS SYSREF_ROUTE_BLOCKS SYSREF_SCRIPTS SYSREF_SEARCHES SYSREF_SERVER_EVENTS SYSREF_SERVER_EVENTS_HISTORY SYSREF_STANDARD_ROUTE_GROUPS SYSREF_STANDARD_ROUTES SYSREF_STATUSES SYSREF_SYSTEM_SETTINGS SYSREF_TASK_HISTORY SYSREF_TASK_KIND_GROUPS SYSREF_TASK_KINDS SYSREF_TASK_RIGHTS SYSREF_TASK_SIGNATURES SYSREF_TASKS SYSREF_UNITS SYSREF_USER_GROUPS SYSREF_USER_GROUPS_REFERENCE SYSREF_USER_SUBSTITUTION SYSREF_USERS SYSREF_USERS_REFERENCE SYSREF_VIEWERS SYSREF_WORKING_TIME_CALENDARS ACCESS_RIGHTS_TABLE_NAME EDMS_ACCESS_TABLE_NAME EDOC_TYPES_TABLE_NAME TEST_DEV_DB_NAME TEST_DEV_SYSTEM_CODE TEST_EDMS_DB_NAME TEST_EDMS_MAIN_CODE TEST_EDMS_MAIN_DB_NAME TEST_EDMS_SECOND_CODE TEST_EDMS_SECOND_DB_NAME TEST_EDMS_SYSTEM_CODE TEST_ISB5_MAIN_CODE TEST_ISB5_SECOND_CODE TEST_SQL_SERVER_2005_NAME TEST_SQL_SERVER_NAME ATTENTION_CAPTION cbsCommandLinks cbsDefault CONFIRMATION_CAPTION ERROR_CAPTION INFORMATION_CAPTION mrCancel mrOk EDOC_VERSION_ACTIVE_STAGE_CODE EDOC_VERSION_DESIGN_STAGE_CODE EDOC_VERSION_OBSOLETE_STAGE_CODE cpDataEnciphermentEnabled cpDigitalSignatureEnabled cpID cpIssuer cpPluginVersion cpSerial cpSubjectName cpSubjSimpleName cpValidFromDate cpValidToDate ISBL_SYNTAX NO_SYNTAX XML_SYNTAX WAIT_BLOCK_AFTER_FINISH_EVENT WAIT_BLOCK_BEFORE_START_EVENT WAIT_BLOCK_DEADLINE_PROPERTY WAIT_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY WAIT_BLOCK_NAME_PROPERTY WAIT_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SYSRES_COMMON SYSRES_CONST SYSRES_MBFUNC SYSRES_SBDATA SYSRES_SBGUI SYSRES_SBINTF SYSRES_SBREFDSC SYSRES_SQLERRORS SYSRES_SYSCOMP atUser atGroup atRole aemEnabledAlways aemDisabledAlways aemEnabledOnBrowse aemEnabledOnEdit aemDisabledOnBrowseEmpty apBegin apEnd alLeft alRight asmNever asmNoButCustomize asmAsLastTime asmYesButCustomize asmAlways cirCommon cirRevoked ctSignature ctEncode ctSignatureEncode clbUnchecked clbChecked clbGrayed ceISB ceAlways ceNever ctDocument ctReference ctScript ctUnknown ctReport ctDialog ctFunction ctFolder ctEDocument ctTask ctJob ctNotice ctControlJob cfInternal cfDisplay ciUnspecified ciWrite ciRead ckFolder ckEDocument ckTask ckJob ckComponentToken ckAny ckReference ckScript ckReport ckDialog ctISBLEditor ctBevel ctButton ctCheckListBox ctComboBox ctComboEdit ctGrid ctDBCheckBox ctDBComboBox ctDBEdit ctDBEllipsis ctDBMemo ctDBNavigator ctDBRadioGroup ctDBStatusLabel ctEdit ctGroupBox ctInplaceHint ctMemo ctPanel ctListBox ctRadioButton ctRichEdit ctTabSheet ctWebBrowser ctImage ctHyperLink ctLabel ctDBMultiEllipsis ctRibbon ctRichView ctInnerPanel ctPanelGroup ctBitButton cctDate cctInteger cctNumeric cctPick cctReference cctString cctText cltInternal cltPrimary cltGUI dseBeforeOpen dseAfterOpen dseBeforeClose dseAfterClose dseOnValidDelete dseBeforeDelete dseAfterDelete dseAfterDeleteOutOfTransaction dseOnDeleteError dseBeforeInsert dseAfterInsert dseOnValidUpdate dseBeforeUpdate dseOnUpdateRatifiedRecord dseAfterUpdate dseAfterUpdateOutOfTransaction dseOnUpdateError dseAfterScroll dseOnOpenRecord dseOnCloseRecord dseBeforeCancel dseAfterCancel dseOnUpdateDeadlockError dseBeforeDetailUpdate dseOnPrepareUpdate dseOnAnyRequisiteChange dssEdit dssInsert dssBrowse dssInActive dftDate dftShortDate dftDateTime dftTimeStamp dotDays dotHours dotMinutes dotSeconds dtkndLocal dtkndUTC arNone arView arEdit arFull ddaView ddaEdit emLock emEdit emSign emExportWithLock emImportWithUnlock emChangeVersionNote emOpenForModify emChangeLifeStage emDelete emCreateVersion emImport emUnlockExportedWithLock emStart emAbort emReInit emMarkAsReaded emMarkAsUnreaded emPerform emAccept emResume emChangeRights emEditRoute emEditObserver emRecoveryFromLocalCopy emChangeWorkAccessType emChangeEncodeTypeToCertificate emChangeEncodeTypeToPassword emChangeEncodeTypeToNone emChangeEncodeTypeToCertificatePassword emChangeStandardRoute emGetText emOpenForView emMoveToStorage emCreateObject emChangeVersionHidden emDeleteVersion emChangeLifeCycleStage emApprovingSign emExport emContinue emLockFromEdit emUnLockForEdit emLockForServer emUnlockFromServer emDelegateAccessRights emReEncode ecotFile ecotProcess eaGet eaCopy eaCreate eaCreateStandardRoute edltAll edltNothing edltQuery essmText essmCard esvtLast esvtLastActive esvtSpecified edsfExecutive edsfArchive edstSQLServer edstFile edvstNone edvstEDocumentVersionCopy edvstFile edvstTemplate edvstScannedFile vsDefault vsDesign vsActive vsObsolete etNone etCertificate etPassword etCertificatePassword ecException ecWarning ecInformation estAll estApprovingOnly evtLast evtLastActive evtQuery fdtString fdtNumeric fdtInteger fdtDate fdtText fdtUnknown fdtWideString fdtLargeInteger ftInbox ftOutbox ftFavorites ftCommonFolder ftUserFolder ftComponents ftQuickLaunch ftShortcuts ftSearch grhAuto grhX1 grhX2 grhX3 hltText hltRTF hltHTML iffBMP iffJPEG iffMultiPageTIFF iffSinglePageTIFF iffTIFF iffPNG im8bGrayscale im24bRGB im1bMonochrome itBMP itJPEG itWMF itPNG ikhInformation ikhWarning ikhError ikhNoIcon icUnknown icScript icFunction icIntegratedReport icAnalyticReport icDataSetEventHandler icActionHandler icFormEventHandler icLookUpEventHandler icRequisiteChangeEventHandler icBeforeSearchEventHandler icRoleCalculation icSelectRouteEventHandler icBlockPropertyCalculation icBlockQueryParamsEventHandler icChangeSearchResultEventHandler icBlockEventHandler icSubTaskInitEventHandler icEDocDataSetEventHandler icEDocLookUpEventHandler icEDocActionHandler icEDocFormEventHandler icEDocRequisiteChangeEventHandler icStructuredConversionRule icStructuredConversionEventBefore icStructuredConversionEventAfter icWizardEventHandler icWizardFinishEventHandler icWizardStepEventHandler icWizardStepFinishEventHandler icWizardActionEnableEventHandler icWizardActionExecuteEventHandler icCreateJobsHandler icCreateNoticesHandler icBeforeLookUpEventHandler icAfterLookUpEventHandler icTaskAbortEventHandler icWorkflowBlockActionHandler icDialogDataSetEventHandler icDialogActionHandler icDialogLookUpEventHandler icDialogRequisiteChangeEventHandler icDialogFormEventHandler icDialogValidCloseEventHandler icBlockFormEventHandler icTaskFormEventHandler icReferenceMethod icEDocMethod icDialogMethod icProcessMessageHandler isShow isHide isByUserSettings jkJob jkNotice jkControlJob jtInner jtLeft jtRight jtFull jtCross lbpAbove lbpBelow lbpLeft lbpRight eltPerConnection eltPerUser sfcUndefined sfcBlack sfcGreen sfcRed sfcBlue sfcOrange sfcLilac sfsItalic sfsStrikeout sfsNormal ldctStandardRoute ldctWizard ldctScript ldctFunction ldctRouteBlock ldctIntegratedReport ldctAnalyticReport ldctReferenceType ldctEDocumentType ldctDialog ldctServerEvents mrcrtNone mrcrtUser mrcrtMaximal mrcrtCustom vtEqual vtGreaterOrEqual vtLessOrEqual vtRange rdYesterday rdToday rdTomorrow rdThisWeek rdThisMonth rdThisYear rdNextMonth rdNextWeek rdLastWeek rdLastMonth rdWindow rdFile rdPrinter rdtString rdtNumeric rdtInteger rdtDate rdtReference rdtAccount rdtText rdtPick rdtUnknown rdtLargeInteger rdtDocument reOnChange reOnChangeValues ttGlobal ttLocal ttUser ttSystem ssmBrowse ssmSelect ssmMultiSelect ssmBrowseModal smSelect smLike smCard stNone stAuthenticating stApproving sctString sctStream sstAnsiSort sstNaturalSort svtEqual svtContain soatString soatNumeric soatInteger soatDatetime soatReferenceRecord soatText soatPick soatBoolean soatEDocument soatAccount soatIntegerCollection soatNumericCollection soatStringCollection soatPickCollection soatDatetimeCollection soatBooleanCollection soatReferenceRecordCollection soatEDocumentCollection soatAccountCollection soatContents soatUnknown tarAbortByUser tarAbortByWorkflowException tvtAllWords tvtExactPhrase tvtAnyWord usNone usCompleted usRedSquare usBlueSquare usYellowSquare usGreenSquare usOrangeSquare usPurpleSquare usFollowUp utUnknown utUser utDeveloper utAdministrator utSystemDeveloper utDisconnected btAnd btDetailAnd btOr btNotOr btOnly vmView vmSelect vmNavigation vsmSingle vsmMultiple vsmMultipleCheck vsmNoSelection wfatPrevious wfatNext wfatCancel wfatFinish wfepUndefined wfepText3 wfepText6 wfepText9 wfepSpinEdit wfepDropDown wfepRadioGroup wfepFlag wfepText12 wfepText15 wfepText18 wfepText21 wfepText24 wfepText27 wfepText30 wfepRadioGroupColumn1 wfepRadioGroupColumn2 wfepRadioGroupColumn3 wfetQueryParameter wfetText wfetDelimiter wfetLabel wptString wptInteger wptNumeric wptBoolean wptDateTime wptPick wptText wptUser wptUserList wptEDocumentInfo wptEDocumentInfoList wptReferenceRecordInfo wptReferenceRecordInfoList wptFolderInfo wptTaskInfo wptContents wptFileName wptDate wsrComplete wsrGoNext wsrGoPrevious wsrCustom wsrCancel wsrGoFinal wstForm wstEDocument wstTaskCard wstReferenceRecordCard wstFinal waAll waPerformers waManual wsbStart wsbFinish wsbNotice wsbStep wsbDecision wsbWait wsbMonitor wsbScript wsbConnector wsbSubTask wsbLifeCycleStage wsbPause wdtInteger wdtFloat wdtString wdtPick wdtDateTime wdtBoolean wdtTask wdtJob wdtFolder wdtEDocument wdtReferenceRecord wdtUser wdtGroup wdtRole wdtIntegerCollection wdtFloatCollection wdtStringCollection wdtPickCollection wdtDateTimeCollection wdtBooleanCollection wdtTaskCollection wdtJobCollection wdtFolderCollection wdtEDocumentCollection wdtReferenceRecordCollection wdtUserCollection wdtGroupCollection wdtRoleCollection wdtContents wdtUserList wdtSearchDescription wdtDeadLine wdtPickSet wdtAccountCollection wiLow wiNormal wiHigh wrtSoft wrtHard wsInit wsRunning wsDone wsControlled wsAborted wsContinued wtmFull wtmFromCurrent wtmOnlyCurrent ",class:"AltState Application CallType ComponentTokens CreatedJobs CreatedNotices ControlState DialogResult Dialogs EDocuments EDocumentVersionSource Folders GlobalIDs Job Jobs InputValue LookUpReference LookUpRequisiteNames LookUpSearch Object ParentComponent Processes References Requisite ReportName Reports Result Scripts Searches SelectedAttachments SelectedItems SelectMode Sender ServerEvents ServiceFactory ShiftState SubTask SystemDialogs Tasks Wizard Wizards Work ВызовСпособ ИмяОтчета РеквЗнач ",literal:"null true false nil "},s={begin:"\\.\\s*"+e.UNDERSCORE_IDENT_RE,keywords:o,relevance:0},l={className:"type",begin:":[ \\t]*("+"IApplication IAccessRights IAccountRepository IAccountSelectionRestrictions IAction IActionList IAdministrationHistoryDescription IAnchors IApplication IArchiveInfo IAttachment IAttachmentList ICheckListBox ICheckPointedList IColumn IComponent IComponentDescription IComponentToken IComponentTokenFactory IComponentTokenInfo ICompRecordInfo IConnection IContents IControl IControlJob IControlJobInfo IControlList ICrypto ICrypto2 ICustomJob ICustomJobInfo ICustomListBox ICustomObjectWizardStep ICustomWork ICustomWorkInfo IDataSet IDataSetAccessInfo IDataSigner IDateCriterion IDateRequisite IDateRequisiteDescription IDateValue IDeaAccessRights IDeaObjectInfo IDevelopmentComponentLock IDialog IDialogFactory IDialogPickRequisiteItems IDialogsFactory IDICSFactory IDocRequisite IDocumentInfo IDualListDialog IECertificate IECertificateInfo IECertificates IEditControl IEditorForm IEdmsExplorer IEdmsObject IEdmsObjectDescription IEdmsObjectFactory IEdmsObjectInfo IEDocument IEDocumentAccessRights IEDocumentDescription IEDocumentEditor IEDocumentFactory IEDocumentInfo IEDocumentStorage IEDocumentVersion IEDocumentVersionListDialog IEDocumentVersionSource IEDocumentWizardStep IEDocVerSignature IEDocVersionState IEnabledMode IEncodeProvider IEncrypter IEvent IEventList IException IExternalEvents IExternalHandler IFactory IField IFileDialog IFolder IFolderDescription IFolderDialog IFolderFactory IFolderInfo IForEach IForm IFormTitle IFormWizardStep IGlobalIDFactory IGlobalIDInfo IGrid IHasher IHistoryDescription IHyperLinkControl IImageButton IImageControl IInnerPanel IInplaceHint IIntegerCriterion IIntegerList IIntegerRequisite IIntegerValue IISBLEditorForm IJob IJobDescription IJobFactory IJobForm IJobInfo ILabelControl ILargeIntegerCriterion ILargeIntegerRequisite ILargeIntegerValue ILicenseInfo ILifeCycleStage IList IListBox ILocalIDInfo ILocalization ILock IMemoryDataSet IMessagingFactory IMetadataRepository INotice INoticeInfo INumericCriterion INumericRequisite INumericValue IObject IObjectDescription IObjectImporter IObjectInfo IObserver IPanelGroup IPickCriterion IPickProperty IPickRequisite IPickRequisiteDescription IPickRequisiteItem IPickRequisiteItems IPickValue IPrivilege IPrivilegeList IProcess IProcessFactory IProcessMessage IProgress IProperty IPropertyChangeEvent IQuery IReference IReferenceCriterion IReferenceEnabledMode IReferenceFactory IReferenceHistoryDescription IReferenceInfo IReferenceRecordCardWizardStep IReferenceRequisiteDescription IReferencesFactory IReferenceValue IRefRequisite IReport IReportFactory IRequisite IRequisiteDescription IRequisiteDescriptionList IRequisiteFactory IRichEdit IRouteStep IRule IRuleList ISchemeBlock IScript IScriptFactory ISearchCriteria ISearchCriterion ISearchDescription ISearchFactory ISearchFolderInfo ISearchForObjectDescription ISearchResultRestrictions ISecuredContext ISelectDialog IServerEvent IServerEventFactory IServiceDialog IServiceFactory ISignature ISignProvider ISignProvider2 ISignProvider3 ISimpleCriterion IStringCriterion IStringList IStringRequisite IStringRequisiteDescription IStringValue ISystemDialogsFactory ISystemInfo ITabSheet ITask ITaskAbortReasonInfo ITaskCardWizardStep ITaskDescription ITaskFactory ITaskInfo ITaskRoute ITextCriterion ITextRequisite ITextValue ITreeListSelectDialog IUser IUserList IValue IView IWebBrowserControl IWizard IWizardAction IWizardFactory IWizardFormElement IWizardParam IWizardPickParam IWizardReferenceParam IWizardStep IWorkAccessRights IWorkDescription IWorkflowAskableParam IWorkflowAskableParams IWorkflowBlock IWorkflowBlockResult IWorkflowEnabledMode IWorkflowParam IWorkflowPickParam IWorkflowReferenceParam IWorkState IWorkTreeCustomNode IWorkTreeJobNode IWorkTreeTaskNode IXMLEditorForm SBCrypto ".trim().replace(/\s/g,"|")+")",end:"[ \\t]*=",excludeEnd:!0},c={className:"variable",keywords:o,begin:t,relevance:0,contains:[l,s]},_="[A-Za-zА-Яа-яёЁ_][A-Za-zА-Яа-яёЁ_0-9]*\\(";return{name:"ISBL",case_insensitive:!0,keywords:o,illegal:"\\$|\\?|%|,|;$|~|#|@|</",contains:[{className:"function",begin:_,end:"\\)$",returnBegin:!0,keywords:o,illegal:"[\\[\\]\\|\\$\\?%,~#@]",contains:[{className:"title",keywords:{$pattern:t,built_in:"AddSubString AdjustLineBreaks AmountInWords Analysis ArrayDimCount ArrayHighBound ArrayLowBound ArrayOf ArrayReDim Assert Assigned BeginOfMonth BeginOfPeriod BuildProfilingOperationAnalysis CallProcedure CanReadFile CArrayElement CDataSetRequisite ChangeDate ChangeReferenceDataset Char CharPos CheckParam CheckParamValue CompareStrings ConstantExists ControlState ConvertDateStr Copy CopyFile CreateArray CreateCachedReference CreateConnection CreateDialog CreateDualListDialog CreateEditor CreateException CreateFile CreateFolderDialog CreateInputDialog CreateLinkFile CreateList CreateLock CreateMemoryDataSet CreateObject CreateOpenDialog CreateProgress CreateQuery CreateReference CreateReport CreateSaveDialog CreateScript CreateSQLPivotFunction CreateStringList CreateTreeListSelectDialog CSelectSQL CSQL CSubString CurrentUserID CurrentUserName CurrentVersion DataSetLocateEx DateDiff DateTimeDiff DateToStr DayOfWeek DeleteFile DirectoryExists DisableCheckAccessRights DisableCheckFullShowingRestriction DisableMassTaskSendingRestrictions DropTable DupeString EditText EnableCheckAccessRights EnableCheckFullShowingRestriction EnableMassTaskSendingRestrictions EndOfMonth EndOfPeriod ExceptionExists ExceptionsOff ExceptionsOn Execute ExecuteProcess Exit ExpandEnvironmentVariables ExtractFileDrive ExtractFileExt ExtractFileName ExtractFilePath ExtractParams FileExists FileSize FindFile FindSubString FirmContext ForceDirectories Format FormatDate FormatNumeric FormatSQLDate FormatString FreeException GetComponent GetComponentLaunchParam GetConstant GetLastException GetReferenceRecord GetRefTypeByRefID GetTableID GetTempFolder IfThen In IndexOf InputDialog InputDialogEx InteractiveMode IsFileLocked IsGraphicFile IsNumeric Length LoadString LoadStringFmt LocalTimeToUTC LowerCase Max MessageBox MessageBoxEx MimeDecodeBinary MimeDecodeString MimeEncodeBinary MimeEncodeString Min MoneyInWords MoveFile NewID Now OpenFile Ord Precision Raise ReadCertificateFromFile ReadFile ReferenceCodeByID ReferenceNumber ReferenceRequisiteMode ReferenceRequisiteValue RegionDateSettings RegionNumberSettings RegionTimeSettings RegRead RegWrite RenameFile Replace Round SelectServerCode SelectSQL ServerDateTime SetConstant SetManagedFolderFieldsState ShowConstantsInputDialog ShowMessage Sleep Split SQL SQL2XLSTAB SQLProfilingSendReport StrToDate SubString SubStringCount SystemSetting Time TimeDiff Today Transliterate Trim UpperCase UserStatus UTCToLocalTime ValidateXML VarIsClear VarIsEmpty VarIsNull WorkTimeDiff WriteFile WriteFileEx WriteObjectHistory Анализ БазаДанных БлокЕсть БлокЕстьРасш БлокИнфо БлокСнять БлокСнятьРасш БлокУстановить Ввод ВводМеню ВедС ВедСпр ВерхняяГраницаМассива ВнешПрогр Восст ВременнаяПапка Время ВыборSQL ВыбратьЗапись ВыделитьСтр Вызвать Выполнить ВыпПрогр ГрафическийФайл ГруппаДополнительно ДатаВремяСерв ДеньНедели ДиалогДаНет ДлинаСтр ДобПодстр ЕПусто ЕслиТо ЕЧисло ЗамПодстр ЗаписьСправочника ЗначПоляСпр ИДТипСпр ИзвлечьДиск ИзвлечьИмяФайла ИзвлечьПуть ИзвлечьРасширение ИзмДат ИзменитьРазмерМассива ИзмеренийМассива ИмяОрг ИмяПоляСпр Индекс ИндикаторЗакрыть ИндикаторОткрыть ИндикаторШаг ИнтерактивныйРежим ИтогТблСпр КодВидВедСпр КодВидСпрПоИД КодПоAnalit КодСимвола КодСпр КолПодстр КолПроп КонМес Конст КонстЕсть КонстЗнач КонТран КопироватьФайл КопияСтр КПериод КСтрТблСпр Макс МаксСтрТблСпр Массив Меню МенюРасш Мин НаборДанныхНайтиРасш НаимВидСпр НаимПоAnalit НаимСпр НастроитьПереводыСтрок НачМес НачТран НижняяГраницаМассива НомерСпр НПериод Окно Окр Окружение ОтлИнфДобавить ОтлИнфУдалить Отчет ОтчетАнал ОтчетИнт ПапкаСуществует Пауза ПВыборSQL ПереименоватьФайл Переменные ПереместитьФайл Подстр ПоискПодстр ПоискСтр ПолучитьИДТаблицы ПользовательДополнительно ПользовательИД ПользовательИмя ПользовательСтатус Прервать ПроверитьПараметр ПроверитьПараметрЗнач ПроверитьУсловие РазбСтр РазнВремя РазнДат РазнДатаВремя РазнРабВремя РегУстВрем РегУстДат РегУстЧсл РедТекст РеестрЗапись РеестрСписокИменПарам РеестрЧтение РеквСпр РеквСпрПр Сегодня Сейчас Сервер СерверПроцессИД СертификатФайлСчитать СжПроб Символ СистемаДиректумКод СистемаИнформация СистемаКод Содержит СоединениеЗакрыть СоединениеОткрыть СоздатьДиалог СоздатьДиалогВыбораИзДвухСписков СоздатьДиалогВыбораПапки СоздатьДиалогОткрытияФайла СоздатьДиалогСохраненияФайла СоздатьЗапрос СоздатьИндикатор СоздатьИсключение СоздатьКэшированныйСправочник СоздатьМассив СоздатьНаборДанных СоздатьОбъект СоздатьОтчет СоздатьПапку СоздатьРедактор СоздатьСоединение СоздатьСписок СоздатьСписокСтрок СоздатьСправочник СоздатьСценарий СоздСпр СостСпр Сохр СохрСпр СписокСистем Спр Справочник СпрБлокЕсть СпрБлокСнять СпрБлокСнятьРасш СпрБлокУстановить СпрИзмНабДан СпрКод СпрНомер СпрОбновить СпрОткрыть СпрОтменить СпрПарам СпрПолеЗнач СпрПолеИмя СпрРекв СпрРеквВведЗн СпрРеквНовые СпрРеквПр СпрРеквПредЗн СпрРеквРежим СпрРеквТипТекст СпрСоздать СпрСост СпрСохранить СпрТблИтог СпрТблСтр СпрТблСтрКол СпрТблСтрМакс СпрТблСтрМин СпрТблСтрПред СпрТблСтрСлед СпрТблСтрСозд СпрТблСтрУд СпрТекПредст СпрУдалить СравнитьСтр СтрВерхРегистр СтрНижнРегистр СтрТблСпр СумПроп Сценарий СценарийПарам ТекВерсия ТекОрг Точн Тран Транслитерация УдалитьТаблицу УдалитьФайл УдСпр УдСтрТблСпр Уст УстановкиКонстант ФайлАтрибутСчитать ФайлАтрибутУстановить ФайлВремя ФайлВремяУстановить ФайлВыбрать ФайлЗанят ФайлЗаписать ФайлИскать ФайлКопировать ФайлМожноЧитать ФайлОткрыть ФайлПереименовать ФайлПерекодировать ФайлПереместить ФайлПросмотреть ФайлРазмер ФайлСоздать ФайлСсылкаСоздать ФайлСуществует ФайлСчитать ФайлУдалить ФмтSQLДат ФмтДат ФмтСтр ФмтЧсл Формат ЦМассивЭлемент ЦНаборДанныхРеквизит ЦПодстр "},begin:_,end:"\\(",returnBegin:!0,excludeEnd:!0},s,c,a,n,i]},l,s,c,a,n,i]}},hE="\\.(".concat("[0-9](_*[0-9])*",")"),yE="[0-9a-fA-F](_*[0-9a-fA-F])*",IE={className:"number",variants:[{begin:"(\\b(".concat("[0-9](_*[0-9])*",")((").concat(hE,")|\\.)?|(").concat(hE,"))")+"[eE][+-]?(".concat("[0-9](_*[0-9])*",")[fFdD]?\\b")},{begin:"\\b(".concat("[0-9](_*[0-9])*",")((").concat(hE,")[fFdD]?\\b|\\.([fFdD]\\b)?)")},{begin:"(".concat(hE,")[fFdD]?\\b")},{begin:"\\b(".concat("[0-9](_*[0-9])*",")[fFdD]\\b")},{begin:"\\b0[xX]((".concat(yE,")\\.?|(").concat(yE,")?\\.(").concat(yE,"))")+"[pP][+-]?(".concat("[0-9](_*[0-9])*",")[fFdD]?\\b")},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:"\\b0[xX](".concat(yE,")[lL]?\\b")},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};var AE=function(e){var t="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",n="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",a={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},r=IE;return{name:"Java",aliases:["jsp"],keywords:n,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface enum",end:/[{;=]/,excludeEnd:!0,relevance:1,keywords:"class interface enum",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"class",begin:"record\\s+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,excludeEnd:!0,end:/[{;=]/,keywords:n,contains:[{beginKeywords:"record"},{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:n,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"function",begin:"([À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(\\s*,\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:n,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:n,relevance:0,contains:[a,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r,a]}},DE=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],ME=["true","false","null","undefined","NaN","Infinity"],LE=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function wE(e){return e?"string"==typeof e?e:e.source:null}function xE(e){return PE("(?=",e,")")}function PE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return wE(e)})).join("");return a}var kE=function(e){var t="[A-Za-z$_][0-9A-Za-z$_]*",n="<>",a="</>",r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:function(e,t){var n=e[0].length+e.index,a=e.input[n];"<"!==a?">"===a&&(function(e,t){var n=t.after,a="</"+e[0].slice(1);return-1!==e.input.indexOf(a,n)}(e,{after:n})||t.ignoreMatch()):t.ignoreMatch()}},i={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:DE,literal:ME,built_in:LE},o="[0-9](_?[0-9])*",s="\\.(".concat(o,")"),l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:"(\\b(".concat(l,")((").concat(s,")|\\.)?|(").concat(s,"))")+"[eE][+-]?(".concat(o,")\\b")},{begin:"\\b(".concat(l,")\\b((").concat(s,")\\b|\\.)?|(").concat(s,")\\b")},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},_={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"xml"}},u={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"css"}},m={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,_]},p={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},g=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,c,e.REGEXP_MODE];_.contains=g.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(g)});var E=[].concat(p,_.contains),S=E.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(E)}]),b={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:S},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,p,c,{begin:PE(/[{,\n]\s*/,xE(PE(/(((\/\/.*$)|(\/\*(\*[^/]|[^*])*\*\/))\s*)*/,t+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:t+xE("\\s*:"),relevance:0}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[p,e.REGEXP_MODE,{className:"function",begin:"(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:n,end:a},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:i,contains:["self",e.inherit(e.TITLE_MODE,{begin:t}),b],illegal:/%/},{beginKeywords:"while if switch catch for"},{className:"function",begin:e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,contains:[b,e.inherit(e.TITLE_MODE,{begin:t})]},{variants:[{begin:"\\."+t},{begin:"\\$"+t}],relevance:0},{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/,end:/[{;]/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),"self",b]},{begin:"(get|set)\\s+(?="+t+"\\()",end:/\{/,keywords:"get set",contains:[e.inherit(e.TITLE_MODE,{begin:t}),{begin:/\(\)/},b]},{begin:/\$[(.]/}]}};var UE=function(e){var t={className:"params",begin:/\(/,end:/\)/,contains:[{begin:/[\w-]+ *=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[\w-]+/}]}],relevance:0};return{name:"JBoss CLI",aliases:["wildfly-cli"],keywords:{$pattern:"[a-z-]+",keyword:"alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source",literal:"true false"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"params",begin:/--[\w\-=\/]+/},{className:"function",begin:/:[\w\-.]+/,relevance:0},{className:"string",begin:/\B([\/.])[\w\-.\/=]+/},t]}};var FE=function(e){var t={literal:"true false null"},n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],a=[e.QUOTE_STRING_MODE,e.C_NUMBER_MODE],r={end:",",endsWithParent:!0,excludeEnd:!0,contains:a,keywords:t},i={begin:/\{/,end:/\}/,contains:[{className:"attr",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE],illegal:"\\n"},e.inherit(r,{begin:/:/})].concat(n),illegal:"\\S"},o={begin:"\\[",end:"\\]",contains:[e.inherit(r)],illegal:"\\S"};return a.push(i,o),n.forEach((function(e){a.push(e)})),{name:"JSON",contains:a,keywords:t,illegal:"\\S"}};var BE=function(e){var t="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",n={$pattern:t,keyword:["baremodule","begin","break","catch","ccall","const","continue","do","else","elseif","end","export","false","finally","for","function","global","if","import","in","isa","let","local","macro","module","quote","return","true","try","using","where","while"],literal:["ARGS","C_NULL","DEPOT_PATH","ENDIAN_BOM","ENV","Inf","Inf16","Inf32","Inf64","InsertionSort","LOAD_PATH","MergeSort","NaN","NaN16","NaN32","NaN64","PROGRAM_FILE","QuickSort","RoundDown","RoundFromZero","RoundNearest","RoundNearestTiesAway","RoundNearestTiesUp","RoundToZero","RoundUp","VERSION|0","devnull","false","im","missing","nothing","pi","stderr","stdin","stdout","true","undef","π","ℯ"],built_in:["AbstractArray","AbstractChannel","AbstractChar","AbstractDict","AbstractDisplay","AbstractFloat","AbstractIrrational","AbstractMatrix","AbstractRange","AbstractSet","AbstractString","AbstractUnitRange","AbstractVecOrMat","AbstractVector","Any","ArgumentError","Array","AssertionError","BigFloat","BigInt","BitArray","BitMatrix","BitSet","BitVector","Bool","BoundsError","CapturedException","CartesianIndex","CartesianIndices","Cchar","Cdouble","Cfloat","Channel","Char","Cint","Cintmax_t","Clong","Clonglong","Cmd","Colon","Complex","ComplexF16","ComplexF32","ComplexF64","CompositeException","Condition","Cptrdiff_t","Cshort","Csize_t","Cssize_t","Cstring","Cuchar","Cuint","Cuintmax_t","Culong","Culonglong","Cushort","Cvoid","Cwchar_t","Cwstring","DataType","DenseArray","DenseMatrix","DenseVecOrMat","DenseVector","Dict","DimensionMismatch","Dims","DivideError","DomainError","EOFError","Enum","ErrorException","Exception","ExponentialBackOff","Expr","Float16","Float32","Float64","Function","GlobalRef","HTML","IO","IOBuffer","IOContext","IOStream","IdDict","IndexCartesian","IndexLinear","IndexStyle","InexactError","InitError","Int","Int128","Int16","Int32","Int64","Int8","Integer","InterruptException","InvalidStateException","Irrational","KeyError","LinRange","LineNumberNode","LinearIndices","LoadError","MIME","Matrix","Method","MethodError","Missing","MissingException","Module","NTuple","NamedTuple","Nothing","Number","OrdinalRange","OutOfMemoryError","OverflowError","Pair","PartialQuickSort","PermutedDimsArray","Pipe","ProcessFailedException","Ptr","QuoteNode","Rational","RawFD","ReadOnlyMemoryError","Real","ReentrantLock","Ref","Regex","RegexMatch","RoundingMode","SegmentationFault","Set","Signed","Some","StackOverflowError","StepRange","StepRangeLen","StridedArray","StridedMatrix","StridedVecOrMat","StridedVector","String","StringIndexError","SubArray","SubString","SubstitutionString","Symbol","SystemError","Task","TaskFailedException","Text","TextDisplay","Timer","Tuple","Type","TypeError","TypeVar","UInt","UInt128","UInt16","UInt32","UInt64","UInt8","UndefInitializer","UndefKeywordError","UndefRefError","UndefVarError","Union","UnionAll","UnitRange","Unsigned","Val","Vararg","VecElement","VecOrMat","Vector","VersionNumber","WeakKeyDict","WeakRef"]},a={keywords:n,illegal:/<\//},r={className:"subst",begin:/\$\(/,end:/\)/,keywords:n},i={className:"variable",begin:"\\$"+t},o={className:"string",contains:[e.BACKSLASH_ESCAPE,r,i],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},s={className:"string",contains:[e.BACKSLASH_ESCAPE,r,i],begin:"`",end:"`"},l={className:"meta",begin:"@"+t};return a.name="Julia",a.contains=[{className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},o,s,l,{className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]},e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],r.contains=a.contains,a};var GE=function(e){return{name:"Julia REPL",contains:[{className:"meta",begin:/^julia>/,relevance:10,starts:{end:/^(?![ ]{6})/,subLanguage:"julia"},aliases:["jldoctest"]}]}},YE="\\.(".concat("[0-9](_*[0-9])*",")"),HE="[0-9a-fA-F](_*[0-9a-fA-F])*",VE={className:"number",variants:[{begin:"(\\b(".concat("[0-9](_*[0-9])*",")((").concat(YE,")|\\.)?|(").concat(YE,"))")+"[eE][+-]?(".concat("[0-9](_*[0-9])*",")[fFdD]?\\b")},{begin:"\\b(".concat("[0-9](_*[0-9])*",")((").concat(YE,")[fFdD]?\\b|\\.([fFdD]\\b)?)")},{begin:"(".concat(YE,")[fFdD]?\\b")},{begin:"\\b(".concat("[0-9](_*[0-9])*",")[fFdD]\\b")},{begin:"\\b0[xX]((".concat(HE,")\\.?|(").concat(HE,")?\\.(").concat(HE,"))")+"[pP][+-]?(".concat("[0-9](_*[0-9])*",")[fFdD]?\\b")},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:"\\b0[xX](".concat(HE,")[lL]?\\b")},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};var qE=function(e){var t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},r={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},i={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[r,a]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,r,a]}]};a.contains.push(i);var o={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},s={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(i,{className:"meta-string"})]}]},l=VE,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),_={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},d=_;return d.variants[1].contains=[_],_.variants[1].contains=[d],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},n,o,s,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[_,e.C_LINE_COMMENT_MODE,c],relevance:0},e.C_LINE_COMMENT_MODE,c,o,s,i,e.C_NUMBER_MODE]},c]},{className:"class",beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/,excludeBegin:!0,returnEnd:!0},o,s]},i,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},l]}};var zE=function(e){var t="[a-zA-Z_][\\w.]*",n="<\\?(lasso(script)?|=)",a="\\]|\\?>",r={$pattern:"[a-zA-Z_][\\w.]*|&[lg]t;",literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock",keyword:"cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},i=e.COMMENT("\x3c!--","--\x3e",{relevance:0}),o={className:"meta",begin:"\\[noprocess\\]",starts:{end:"\\[/noprocess\\]",returnEnd:!0,contains:[i]}},s={className:"meta",begin:"\\[/noprocess|"+n},l={className:"symbol",begin:"'[a-zA-Z_][\\w.]*'"},c=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(e.C_NUMBER_MODE,{begin:e.C_NUMBER_RE+"|(-?infinity|NaN)\\b"}),e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"`",end:"`"},{variants:[{begin:"[#$][a-zA-Z_][\\w.]*"},{begin:"#",end:"\\d+",illegal:"\\W"}]},{className:"type",begin:"::\\s*",end:t,illegal:"\\W"},{className:"params",variants:[{begin:"-(?!infinity)[a-zA-Z_][\\w.]*",relevance:0},{begin:"(\\.\\.\\.)"}]},{begin:/(->|\.)\s*/,relevance:0,contains:[l]},{className:"class",beginKeywords:"define",returnEnd:!0,end:"\\(|=>",contains:[e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z_][\\w.]*(=(?!>))?|[-+*/%](?!>)"})]}];return{name:"Lasso",aliases:["ls","lassoscript"],case_insensitive:!0,keywords:r,contains:[{className:"meta",begin:a,relevance:0,starts:{end:"\\[|"+n,returnEnd:!0,relevance:0,contains:[i]}},o,s,{className:"meta",begin:"\\[no_square_brackets",starts:{end:"\\[/no_square_brackets\\]",keywords:r,contains:[{className:"meta",begin:a,relevance:0,starts:{end:"\\[noprocess\\]|"+n,returnEnd:!0,contains:[i]}},o,s].concat(c)}},{className:"meta",begin:"\\[",relevance:0},{className:"meta",begin:"^#!",end:"lasso9$",relevance:10}].concat(c)}};function WE(e){return e?"string"==typeof e?e:e.source:null}function $E(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return WE(e)})).join("|")+")";return a}var QE=function(e){var t,n=[{begin:/\^{6}[0-9a-f]{6}/},{begin:/\^{5}[0-9a-f]{5}/},{begin:/\^{4}[0-9a-f]{4}/},{begin:/\^{3}[0-9a-f]{3}/},{begin:/\^{2}[0-9a-f]{2}/},{begin:/\^{2}[\u0000-\u007f]/}],a=[{className:"keyword",begin:/\\/,relevance:0,contains:[{endsParent:!0,begin:$E.apply(void 0,c(["(?:NeedsTeXFormat|RequirePackage|GetIdInfo)","Provides(?:Expl)?(?:Package|Class|File)","(?:DeclareOption|ProcessOptions)","(?:documentclass|usepackage|input|include)","makeat(?:letter|other)","ExplSyntax(?:On|Off)","(?:new|renew|provide)?command","(?:re)newenvironment","(?:New|Renew|Provide|Declare)(?:Expandable)?DocumentCommand","(?:New|Renew|Provide|Declare)DocumentEnvironment","(?:(?:e|g|x)?def|let)","(?:begin|end)","(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph)","caption","(?:label|(?:eq|page|name)?ref|(?:paren|foot|super)?cite)","(?:alpha|beta|[Gg]amma|[Dd]elta|(?:var)?epsilon|zeta|eta|[Tt]heta|vartheta)","(?:iota|(?:var)?kappa|[Ll]ambda|mu|nu|[Xx]i|[Pp]i|varpi|(?:var)rho)","(?:[Ss]igma|varsigma|tau|[Uu]psilon|[Pp]hi|varphi|chi|[Pp]si|[Oo]mega)","(?:frac|sum|prod|lim|infty|times|sqrt|leq|geq|left|right|middle|[bB]igg?)","(?:[lr]angle|q?quad|[lcvdi]?dots|d?dot|hat|tilde|bar)"].map((function(e){return e+"(?![a-zA-Z@:_])"}))))},{endsParent:!0,begin:new RegExp(["(?:__)?[a-zA-Z]{2,}_[a-zA-Z](?:_?[a-zA-Z])+:[a-zA-Z]*","[lgc]__?[a-zA-Z](?:_?[a-zA-Z])*_[a-zA-Z]{2,}","[qs]__?[a-zA-Z](?:_?[a-zA-Z])+","use(?:_i)?:[a-zA-Z]*","(?:else|fi|or):","(?:if|cs|exp):w","(?:hbox|vbox):n","::[a-zA-Z]_unbraced","::[a-zA-Z:]"].map((function(e){return e+"(?![a-zA-Z:_])"})).join("|"))},{endsParent:!0,variants:n},{endsParent:!0,relevance:0,variants:[{begin:/[a-zA-Z@]+/},{begin:/[^a-zA-Z@]?/}]}]},{className:"params",relevance:0,begin:/#+\d?/},{variants:n},{className:"built_in",relevance:0,begin:/[$&^_]/},{className:"meta",begin:"% !TeX",end:"$",relevance:10},e.COMMENT("%","$",{relevance:0})],r={begin:/\{/,end:/\}/,relevance:0,contains:["self"].concat(a)},i=e.inherit(r,{relevance:0,endsParent:!0,contains:[r].concat(a)}),o={begin:/\[/,end:/\]/,endsParent:!0,relevance:0,contains:[r].concat(a)},s={begin:/\s+/,relevance:0},l=[i],_=[o],d=function(e,t){return{contains:[s],starts:{relevance:0,contains:e,starts:t}}},u=function(e,t){return{begin:"\\\\"+e+"(?![a-zA-Z@:_])",keywords:{$pattern:/\\[a-zA-Z]+/,keyword:"\\"+e},relevance:0,contains:[s],starts:t}},m=function(t,n){return e.inherit({begin:"\\\\begin(?=[ \t]*(\\r?\\n[ \t]*)?\\{"+t+"\\})",keywords:{$pattern:/\\[a-zA-Z]+/,keyword:"\\begin"},relevance:0},d(l,n))},p=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"string";return e.END_SAME_AS_BEGIN({className:t,begin:/(.|\r?\n)/,end:/(.|\r?\n)/,excludeBegin:!0,excludeEnd:!0,endsParent:!0})},g=function(e){return{className:"string",end:"(?=\\\\end\\{"+e+"\\})"}},E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"string";return{relevance:0,begin:/\{/,starts:{endsParent:!0,contains:[{className:e,end:/(?=\})/,endsParent:!0,contains:[{begin:/\{/,end:/\}/,relevance:0,contains:["self"]}]}]}}},S=[].concat(c(["verb","lstinline"].map((function(e){return u(e,{contains:[p()]})}))),[u("mint",d(l,{contains:[p()]})),u("mintinline",d(l,{contains:[E(),p()]})),u("url",{contains:[E("link"),E("link")]}),u("hyperref",{contains:[E("link")]}),u("href",d(_,{contains:[E("link")]}))],c((t=[]).concat.apply(t,c(["","\\*"].map((function(e){return[m("verbatim"+e,g("verbatim"+e)),m("filecontents"+e,d(l,g("filecontents"+e)))].concat(c(["","B","L"].map((function(t){return m(t+"Verbatim"+e,d(_,g(t+"Verbatim"+e)))}))))}))))),[m("minted",d(_,d(l,g("minted"))))]);return{name:"LaTeX",aliases:["tex"],contains:[].concat(c(S),a)}};var KE=function(e){return{name:"LDIF",contains:[{className:"attribute",begin:"^dn",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0},relevance:10},{className:"attribute",begin:"^\\w",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0}},{className:"literal",begin:"^-",end:"$"},e.HASH_COMMENT_MODE]}};var jE=function(e){return{name:"Leaf",contains:[{className:"function",begin:"#+[A-Za-z_0-9]*\\(",end:/ \{/,returnBegin:!0,excludeEnd:!0,contains:[{className:"keyword",begin:"#+"},{className:"title",begin:"[A-Za-z_][A-Za-z_0-9]*"},{className:"params",begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"string",begin:'"',end:'"'},{className:"variable",begin:"[A-Za-z_][A-Za-z_0-9]*"}]}]}]}},XE=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],ZE=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],JE=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],eS=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],tS=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse(),nS=JE.concat(eS);var aS=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=nS,a="([\\w-]+|@\\{[\\w-]+\\})",r=[],i=[],o=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},s=function(e,t,n){return{className:e,begin:t,relevance:n}},l={$pattern:/[a-z-]+/,keyword:"and or not only",attribute:ZE.join(" ")},c={begin:"\\(",end:"\\)",contains:i,keywords:l,relevance:0};i.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,o("'"),o('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.HEXCOLOR,c,s("variable","@@?[\\w-]+",10),s("variable","@\\{[\\w-]+\\}"),s("built_in","~?`[^`]*?`"),{className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT);var _=i.concat({begin:/\{/,end:/\}/,contains:r}),d={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(i)},u={begin:a+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},{className:"attribute",begin:"\\b("+tS.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:i}}]},m={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:l,returnEnd:!0,contains:i,relevance:0}},p={className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:_}},g={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:a,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,d,s("keyword","all\\b"),s("variable","@\\{[\\w-]+\\}"),{begin:"\\b("+XE.join("|")+")\\b",className:"selector-tag"},s("selector-tag",a+"%?",0),s("selector-id","#"+a),s("selector-class","\\."+a,0),s("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+JE.join("|")+")"},{className:"selector-pseudo",begin:"::("+eS.join("|")+")"},{begin:"\\(",end:"\\)",contains:_},{begin:"!important"}]},E={begin:"[\\w-]+:(:)?"+"(".concat(n.join("|"),")"),returnBegin:!0,contains:[g]};return r.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m,p,E,u,g),{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:r}};var rS=function(e){var t="[a-zA-Z_\\-+\\*\\/<=>&#][a-zA-Z0-9_\\-+*\\/<=>&#!]*",n="\\|[^]*?\\|",a="(-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|-)?\\d+)?",r={className:"literal",begin:"\\b(t{1}|nil)\\b"},i={className:"number",variants:[{begin:a,relevance:0},{begin:"#(b|B)[0-1]+(/[0-1]+)?"},{begin:"#(o|O)[0-7]+(/[0-7]+)?"},{begin:"#(x|X)[0-9a-fA-F]+(/[0-9a-fA-F]+)?"},{begin:"#(c|C)\\("+a+" +"+a,end:"\\)"}]},o=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),s=e.COMMENT(";","$",{relevance:0}),l={begin:"\\*",end:"\\*"},c={className:"symbol",begin:"[:&]"+t},_={begin:t,relevance:0},d={begin:n},u={contains:[i,o,l,c,{begin:"\\(",end:"\\)",contains:["self",r,o,i,_]},_],variants:[{begin:"['`]\\(",end:"\\)"},{begin:"\\(quote ",end:"\\)",keywords:{name:"quote"}},{begin:"'"+n}]},m={variants:[{begin:"'"+t},{begin:"#'"+t+"(::"+t+")*"}]},p={begin:"\\(\\s*",end:"\\)"},g={endsWithParent:!0,relevance:0};return p.contains=[{className:"name",variants:[{begin:t,relevance:0},{begin:n}]},g],g.contains=[u,m,p,r,i,o,s,l,c,d,_],{name:"Lisp",illegal:/\S/,contains:[i,e.SHEBANG(),r,o,s,u,m,p,_]}};var iS=function(e){var t={className:"variable",variants:[{begin:"\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)"},{begin:"\\$_[A-Z]+"}],relevance:0},n=[e.C_BLOCK_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("--","$"),e.COMMENT("[^:]//","$")],a=e.inherit(e.TITLE_MODE,{variants:[{begin:"\\b_*rig[A-Z][A-Za-z0-9_\\-]*"},{begin:"\\b_[a-z0-9\\-]+"}]}),r=e.inherit(e.TITLE_MODE,{begin:"\\b([A-Za-z0-9_\\-]+)\\b"});return{name:"LiveCode",case_insensitive:!1,keywords:{keyword:"$_COOKIE $_FILES $_GET $_GET_BINARY $_GET_RAW $_POST $_POST_BINARY $_POST_RAW $_SESSION $_SERVER codepoint codepoints segment segments codeunit codeunits sentence sentences trueWord trueWords paragraph after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word words fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",literal:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg avgDev base64Decode base64Encode baseConvert binaryDecode binaryEncode byteOffset byteToNum cachedURL cachedURLs charToNum cipherNames codepointOffset codepointProperty codepointToNum codeunitOffset commandNames compound compress constantNames cos date dateFormat decompress difference directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames geometricMean global globals hasMemory harmonicMean hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge messageAuthenticationCode messageDigest millisec millisecs millisecond milliseconds min monthNames nativeCharToNum normalizeText num number numToByte numToChar numToCodepoint numToNativeChar offset open openfiles openProcesses openProcessIDs openSockets paragraphOffset paramCount param params peerAddress pendingMessages platform popStdDev populationStandardDeviation populationVariance popVariance processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLCreateTreeFromFileWithNamespaces revXMLCreateTreeWithNamespaces revXMLDataFromXPathQuery revXMLEvaluateXPath revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_Execute revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sampVariance sec secs seconds sentenceOffset sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName textDecode textEncode tick ticks time to tokenOffset toLower toUpper transpose truewordOffset trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus uuid value variableNames variance version waitDepth weekdayNames wordOffset xsltApplyStylesheet xsltApplyStylesheetFromFile xsltLoadStylesheet xsltLoadStylesheetFromFile add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetDriver libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load extension loadedExtensions multiply socket prepare process post seek rel relative read from process rename replace require resetAll resolve revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split start stop subtract symmetric union unload vectorDotProduct wait write"},contains:[t,{className:"keyword",begin:"\\bend\\sif\\b"},{className:"function",beginKeywords:"function",end:"$",contains:[t,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a]},{className:"function",begin:"\\bend\\s+",end:"$",keywords:"end",contains:[r,a],relevance:0},{beginKeywords:"command on",end:"$",contains:[t,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a]},{className:"meta",variants:[{begin:"<\\?(rev|lc|livecode)",relevance:10},{begin:"<\\?"},{begin:"\\?>"}]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a].concat(n),illegal:";$|^\\[|^=|&|\\{"}},oS=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],sS=["true","false","null","undefined","NaN","Infinity"],lS=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);var cS=function(e){var t={keyword:oS.concat(["then","unless","until","loop","of","by","when","and","or","is","isnt","not","it","that","otherwise","from","to","til","fallthrough","case","enum","native","list","map","__hasProp","__extends","__slice","__bind","__indexOf"]),literal:sS.concat(["yes","no","on","off","it","that","void"]),built_in:lS.concat(["npm","print"])},n="[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*",a=e.inherit(e.TITLE_MODE,{begin:n}),r={className:"subst",begin:/#\{/,end:/\}/,keywords:t},i={className:"subst",begin:/#[A-Za-z$_]/,end:/(?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,keywords:t},o=[e.BINARY_NUMBER_MODE,{className:"number",begin:"(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)",relevance:0,starts:{end:"(\\s*/)?",relevance:0}},{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,r,i]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,i]},{begin:/\\/,end:/(\s|$)/,excludeEnd:!0}]},{className:"regexp",variants:[{begin:"//",end:"//[gim]*",contains:[r,e.HASH_COMMENT_MODE]},{begin:/\/(?![ *])(\\.|[^\\\n])*?\/[gim]*(?=\W)/}]},{begin:"@"+n},{begin:"``",end:"``",excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"}];r.contains=o;var s={className:"params",begin:"\\(",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]};return{name:"LiveScript",aliases:["ls"],keywords:t,illegal:/\/\*/,contains:o.concat([e.COMMENT("\\/\\*","\\*\\/"),e.HASH_COMMENT_MODE,{begin:"(#=>|=>|\\|>>|-?->|!->)"},{className:"function",contains:[a,s],returnBegin:!0,variants:[{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B->\\*?",end:"->\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?!?(\\(.*\\)\\s*)?\\B[-~]{1,2}>\\*?",end:"[-~]{1,2}>\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B!?[-~]{1,2}>\\*?",end:"!?[-~]{1,2}>\\*?"}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[a]},a]},{begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};function _S(e){return e?"string"==typeof e?e:e.source:null}function dS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return _S(e)})).join("");return a}var uS=function(e){var t=/([-a-zA-Z$._][\w$.-]*)/,n={className:"variable",variants:[{begin:dS(/%/,t)},{begin:/%\d+/},{begin:/#\d+/}]},a={className:"title",variants:[{begin:dS(/@/,t)},{begin:/@\d+/},{begin:dS(/!/,t)},{begin:dS(/!\d+/,t)},{begin:/!\d+/}]};return{name:"LLVM IR",keywords:"begin end true false declare define global constant private linker_private internal available_externally linkonce linkonce_odr weak weak_odr appending dllimport dllexport common default hidden protected extern_weak external thread_local zeroinitializer undef null to tail target triple datalayout volatile nuw nsw nnan ninf nsz arcp fast exact inbounds align addrspace section alias module asm sideeffect gc dbg linker_private_weak attributes blockaddress initialexec localdynamic localexec prefix unnamed_addr ccc fastcc coldcc x86_stdcallcc x86_fastcallcc arm_apcscc arm_aapcscc arm_aapcs_vfpcc ptx_device ptx_kernel intel_ocl_bicc msp430_intrcc spir_func spir_kernel x86_64_sysvcc x86_64_win64cc x86_thiscallcc cc c signext zeroext inreg sret nounwind noreturn noalias nocapture byval nest readnone readonly inlinehint noinline alwaysinline optsize ssp sspreq noredzone noimplicitfloat naked builtin cold nobuiltin noduplicate nonlazybind optnone returns_twice sanitize_address sanitize_memory sanitize_thread sspstrong uwtable returned type opaque eq ne slt sgt sle sge ult ugt ule uge oeq one olt ogt ole oge ord uno ueq une x acq_rel acquire alignstack atomic catch cleanup filter inteldialect max min monotonic nand personality release seq_cst singlethread umax umin unordered xchg add fadd sub fsub mul fmul udiv sdiv fdiv urem srem frem shl lshr ashr and or xor icmp fcmp phi call trunc zext sext fptrunc fpext uitofp sitofp fptoui fptosi inttoptr ptrtoint bitcast addrspacecast select va_arg ret br switch invoke unwind unreachable indirectbr landingpad resume malloc alloca free load store getelementptr extractelement insertelement shufflevector getresult extractvalue insertvalue atomicrmw cmpxchg fence argmemonly double",contains:[{className:"type",begin:/\bi\d+(?=\s|\b)/},e.COMMENT(/;\s*$/,null,{relevance:0}),e.COMMENT(/;/,/$/),e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:/"/,end:/[^\\]"/}]},a,{className:"punctuation",relevance:0,begin:/,/},{className:"operator",relevance:0,begin:/=/},n,{className:"symbol",variants:[{begin:/^\s*[a-z]+:/}],relevance:0},{className:"number",variants:[{begin:/0[xX][a-fA-F0-9]+/},{begin:/-?\d+(?:[.]\d+)?(?:[eE][-+]?\d+(?:[.]\d+)?)?/}],relevance:0}]}};var mS=function(e){var t={className:"string",begin:'"',end:'"',contains:[{className:"subst",begin:/\\[tn"\\]/}]},n={className:"number",relevance:0,begin:e.C_NUMBER_RE};return{name:"LSL (Linden Scripting Language)",illegal:":",contains:[t,{className:"comment",variants:[e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/")],relevance:0},n,{className:"section",variants:[{begin:"\\b(state|default)\\b"},{begin:"\\b(state_(entry|exit)|touch(_(start|end))?|(land_)?collision(_(start|end))?|timer|listen|(no_)?sensor|control|(not_)?at_(rot_)?target|money|email|experience_permissions(_denied)?|run_time_permissions|changed|attach|dataserver|moving_(start|end)|link_message|(on|object)_rez|remote_data|http_re(sponse|quest)|path_update|transaction_result)\\b"}]},{className:"built_in",begin:"\\b(ll(AgentInExperience|(Create|DataSize|Delete|KeyCount|Keys|Read|Update)KeyValue|GetExperience(Details|ErrorMessage)|ReturnObjectsBy(ID|Owner)|Json(2List|[GS]etValue|ValueType)|Sin|Cos|Tan|Atan2|Sqrt|Pow|Abs|Fabs|Frand|Floor|Ceil|Round|Vec(Mag|Norm|Dist)|Rot(Between|2(Euler|Fwd|Left|Up))|(Euler|Axes)2Rot|Whisper|(Region|Owner)?Say|Shout|Listen(Control|Remove)?|Sensor(Repeat|Remove)?|Detected(Name|Key|Owner|Type|Pos|Vel|Grab|Rot|Group|LinkNumber)|Die|Ground|Wind|([GS]et)(AnimationOverride|MemoryLimit|PrimMediaParams|ParcelMusicURL|Object(Desc|Name)|PhysicsMaterial|Status|Scale|Color|Alpha|Texture|Pos|Rot|Force|Torque)|ResetAnimationOverride|(Scale|Offset|Rotate)Texture|(Rot)?Target(Remove)?|(Stop)?MoveToTarget|Apply(Rotational)?Impulse|Set(KeyframedMotion|ContentType|RegionPos|(Angular)?Velocity|Buoyancy|HoverHeight|ForceAndTorque|TimerEvent|ScriptState|Damage|TextureAnim|Sound(Queueing|Radius)|Vehicle(Type|(Float|Vector|Rotation)Param)|(Touch|Sit)?Text|Camera(Eye|At)Offset|PrimitiveParams|ClickAction|Link(Alpha|Color|PrimitiveParams(Fast)?|Texture(Anim)?|Camera|Media)|RemoteScriptAccessPin|PayPrice|LocalRot)|ScaleByFactor|Get((Max|Min)ScaleFactor|ClosestNavPoint|StaticPath|SimStats|Env|PrimitiveParams|Link(PrimitiveParams|Number(OfSides)?|Key|Name|Media)|HTTPHeader|FreeURLs|Object(Details|PermMask|PrimCount)|Parcel(MaxPrims|Details|Prim(Count|Owners))|Attached(List)?|(SPMax|Free|Used)Memory|Region(Name|TimeDilation|FPS|Corner|AgentCount)|Root(Position|Rotation)|UnixTime|(Parcel|Region)Flags|(Wall|GMT)clock|SimulatorHostname|BoundingBox|GeometricCenter|Creator|NumberOf(Prims|NotecardLines|Sides)|Animation(List)?|(Camera|Local)(Pos|Rot)|Vel|Accel|Omega|Time(stamp|OfDay)|(Object|CenterOf)?Mass|MassMKS|Energy|Owner|(Owner)?Key|SunDirection|Texture(Offset|Scale|Rot)|Inventory(Number|Name|Key|Type|Creator|PermMask)|Permissions(Key)?|StartParameter|List(Length|EntryType)|Date|Agent(Size|Info|Language|List)|LandOwnerAt|NotecardLine|Script(Name|State))|(Get|Reset|GetAndReset)Time|PlaySound(Slave)?|LoopSound(Master|Slave)?|(Trigger|Stop|Preload)Sound|((Get|Delete)Sub|Insert)String|To(Upper|Lower)|Give(InventoryList|Money)|RezObject|(Stop)?LookAt|Sleep|CollisionFilter|(Take|Release)Controls|DetachFromAvatar|AttachToAvatar(Temp)?|InstantMessage|(GetNext)?Email|StopHover|MinEventDelay|RotLookAt|String(Length|Trim)|(Start|Stop)Animation|TargetOmega|Request(Experience)?Permissions|(Create|Break)Link|BreakAllLinks|(Give|Remove)Inventory|Water|PassTouches|Request(Agent|Inventory)Data|TeleportAgent(Home|GlobalCoords)?|ModifyLand|CollisionSound|ResetScript|MessageLinked|PushObject|PassCollisions|AxisAngle2Rot|Rot2(Axis|Angle)|A(cos|sin)|AngleBetween|AllowInventoryDrop|SubStringIndex|List2(CSV|Integer|Json|Float|String|Key|Vector|Rot|List(Strided)?)|DeleteSubList|List(Statistics|Sort|Randomize|(Insert|Find|Replace)List)|EdgeOfWorld|AdjustSoundVolume|Key2Name|TriggerSoundLimited|EjectFromLand|(CSV|ParseString)2List|OverMyLand|SameGroup|UnSit|Ground(Slope|Normal|Contour)|GroundRepel|(Set|Remove)VehicleFlags|SitOnLink|(AvatarOn)?(Link)?SitTarget|Script(Danger|Profiler)|Dialog|VolumeDetect|ResetOtherScript|RemoteLoadScriptPin|(Open|Close)RemoteDataChannel|SendRemoteData|RemoteDataReply|(Integer|String)ToBase64|XorBase64|Log(10)?|Base64To(String|Integer)|ParseStringKeepNulls|RezAtRoot|RequestSimulatorData|ForceMouselook|(Load|Release|(E|Une)scape)URL|ParcelMedia(CommandList|Query)|ModPow|MapDestination|(RemoveFrom|AddTo|Reset)Land(Pass|Ban)List|(Set|Clear)CameraParams|HTTP(Request|Response)|TextBox|DetectedTouch(UV|Face|Pos|(N|Bin)ormal|ST)|(MD5|SHA1|DumpList2)String|Request(Secure)?URL|Clear(Prim|Link)Media|(Link)?ParticleSystem|(Get|Request)(Username|DisplayName)|RegionSayTo|CastRay|GenerateKey|TransferLindenDollars|ManageEstateAccess|(Create|Delete)Character|ExecCharacterCmd|Evade|FleeFrom|NavigateTo|PatrolPoints|Pursue|UpdateCharacter|WanderWithin))\\b"},{className:"literal",variants:[{begin:"\\b(PI|TWO_PI|PI_BY_TWO|DEG_TO_RAD|RAD_TO_DEG|SQRT2)\\b"},{begin:"\\b(XP_ERROR_(EXPERIENCES_DISABLED|EXPERIENCE_(DISABLED|SUSPENDED)|INVALID_(EXPERIENCE|PARAMETERS)|KEY_NOT_FOUND|MATURITY_EXCEEDED|NONE|NOT_(FOUND|PERMITTED(_LAND)?)|NO_EXPERIENCE|QUOTA_EXCEEDED|RETRY_UPDATE|STORAGE_EXCEPTION|STORE_DISABLED|THROTTLED|UNKNOWN_ERROR)|JSON_APPEND|STATUS_(PHYSICS|ROTATE_[XYZ]|PHANTOM|SANDBOX|BLOCK_GRAB(_OBJECT)?|(DIE|RETURN)_AT_EDGE|CAST_SHADOWS|OK|MALFORMED_PARAMS|TYPE_MISMATCH|BOUNDS_ERROR|NOT_(FOUND|SUPPORTED)|INTERNAL_ERROR|WHITELIST_FAILED)|AGENT(_(BY_(LEGACY_|USER)NAME|FLYING|ATTACHMENTS|SCRIPTED|MOUSELOOK|SITTING|ON_OBJECT|AWAY|WALKING|IN_AIR|TYPING|CROUCHING|BUSY|ALWAYS_RUN|AUTOPILOT|LIST_(PARCEL(_OWNER)?|REGION)))?|CAMERA_(PITCH|DISTANCE|BEHINDNESS_(ANGLE|LAG)|(FOCUS|POSITION)(_(THRESHOLD|LOCKED|LAG))?|FOCUS_OFFSET|ACTIVE)|ANIM_ON|LOOP|REVERSE|PING_PONG|SMOOTH|ROTATE|SCALE|ALL_SIDES|LINK_(ROOT|SET|ALL_(OTHERS|CHILDREN)|THIS)|ACTIVE|PASS(IVE|_(ALWAYS|IF_NOT_HANDLED|NEVER))|SCRIPTED|CONTROL_(FWD|BACK|(ROT_)?(LEFT|RIGHT)|UP|DOWN|(ML_)?LBUTTON)|PERMISSION_(RETURN_OBJECTS|DEBIT|OVERRIDE_ANIMATIONS|SILENT_ESTATE_MANAGEMENT|TAKE_CONTROLS|TRIGGER_ANIMATION|ATTACH|CHANGE_LINKS|(CONTROL|TRACK)_CAMERA|TELEPORT)|INVENTORY_(TEXTURE|SOUND|OBJECT|SCRIPT|LANDMARK|CLOTHING|NOTECARD|BODYPART|ANIMATION|GESTURE|ALL|NONE)|CHANGED_(INVENTORY|COLOR|SHAPE|SCALE|TEXTURE|LINK|ALLOWED_DROP|OWNER|REGION(_START)?|TELEPORT|MEDIA)|OBJECT_(CLICK_ACTION|HOVER_HEIGHT|LAST_OWNER_ID|(PHYSICS|SERVER|STREAMING)_COST|UNKNOWN_DETAIL|CHARACTER_TIME|PHANTOM|PHYSICS|TEMP_(ATTACHED|ON_REZ)|NAME|DESC|POS|PRIM_(COUNT|EQUIVALENCE)|RETURN_(PARCEL(_OWNER)?|REGION)|REZZER_KEY|ROO?T|VELOCITY|OMEGA|OWNER|GROUP(_TAG)?|CREATOR|ATTACHED_(POINT|SLOTS_AVAILABLE)|RENDER_WEIGHT|(BODY_SHAPE|PATHFINDING)_TYPE|(RUNNING|TOTAL)_SCRIPT_COUNT|TOTAL_INVENTORY_COUNT|SCRIPT_(MEMORY|TIME))|TYPE_(INTEGER|FLOAT|STRING|KEY|VECTOR|ROTATION|INVALID)|(DEBUG|PUBLIC)_CHANNEL|ATTACH_(AVATAR_CENTER|CHEST|HEAD|BACK|PELVIS|MOUTH|CHIN|NECK|NOSE|BELLY|[LR](SHOULDER|HAND|FOOT|EAR|EYE|[UL](ARM|LEG)|HIP)|(LEFT|RIGHT)_PEC|HUD_(CENTER_[12]|TOP_(RIGHT|CENTER|LEFT)|BOTTOM(_(RIGHT|LEFT))?)|[LR]HAND_RING1|TAIL_(BASE|TIP)|[LR]WING|FACE_(JAW|[LR]EAR|[LR]EYE|TOUNGE)|GROIN|HIND_[LR]FOOT)|LAND_(LEVEL|RAISE|LOWER|SMOOTH|NOISE|REVERT)|DATA_(ONLINE|NAME|BORN|SIM_(POS|STATUS|RATING)|PAYINFO)|PAYMENT_INFO_(ON_FILE|USED)|REMOTE_DATA_(CHANNEL|REQUEST|REPLY)|PSYS_(PART_(BF_(ZERO|ONE(_MINUS_(DEST_COLOR|SOURCE_(ALPHA|COLOR)))?|DEST_COLOR|SOURCE_(ALPHA|COLOR))|BLEND_FUNC_(DEST|SOURCE)|FLAGS|(START|END)_(COLOR|ALPHA|SCALE|GLOW)|MAX_AGE|(RIBBON|WIND|INTERP_(COLOR|SCALE)|BOUNCE|FOLLOW_(SRC|VELOCITY)|TARGET_(POS|LINEAR)|EMISSIVE)_MASK)|SRC_(MAX_AGE|PATTERN|ANGLE_(BEGIN|END)|BURST_(RATE|PART_COUNT|RADIUS|SPEED_(MIN|MAX))|ACCEL|TEXTURE|TARGET_KEY|OMEGA|PATTERN_(DROP|EXPLODE|ANGLE(_CONE(_EMPTY)?)?)))|VEHICLE_(REFERENCE_FRAME|TYPE_(NONE|SLED|CAR|BOAT|AIRPLANE|BALLOON)|(LINEAR|ANGULAR)_(FRICTION_TIMESCALE|MOTOR_DIRECTION)|LINEAR_MOTOR_OFFSET|HOVER_(HEIGHT|EFFICIENCY|TIMESCALE)|BUOYANCY|(LINEAR|ANGULAR)_(DEFLECTION_(EFFICIENCY|TIMESCALE)|MOTOR_(DECAY_)?TIMESCALE)|VERTICAL_ATTRACTION_(EFFICIENCY|TIMESCALE)|BANKING_(EFFICIENCY|MIX|TIMESCALE)|FLAG_(NO_DEFLECTION_UP|LIMIT_(ROLL_ONLY|MOTOR_UP)|HOVER_((WATER|TERRAIN|UP)_ONLY|GLOBAL_HEIGHT)|MOUSELOOK_(STEER|BANK)|CAMERA_DECOUPLED))|PRIM_(ALLOW_UNSIT|ALPHA_MODE(_(BLEND|EMISSIVE|MASK|NONE))?|NORMAL|SPECULAR|TYPE(_(BOX|CYLINDER|PRISM|SPHERE|TORUS|TUBE|RING|SCULPT))?|HOLE_(DEFAULT|CIRCLE|SQUARE|TRIANGLE)|MATERIAL(_(STONE|METAL|GLASS|WOOD|FLESH|PLASTIC|RUBBER))?|SHINY_(NONE|LOW|MEDIUM|HIGH)|BUMP_(NONE|BRIGHT|DARK|WOOD|BARK|BRICKS|CHECKER|CONCRETE|TILE|STONE|DISKS|GRAVEL|BLOBS|SIDING|LARGETILE|STUCCO|SUCTION|WEAVE)|TEXGEN_(DEFAULT|PLANAR)|SCRIPTED_SIT_ONLY|SCULPT_(TYPE_(SPHERE|TORUS|PLANE|CYLINDER|MASK)|FLAG_(MIRROR|INVERT))|PHYSICS(_(SHAPE_(CONVEX|NONE|PRIM|TYPE)))?|(POS|ROT)_LOCAL|SLICE|TEXT|FLEXIBLE|POINT_LIGHT|TEMP_ON_REZ|PHANTOM|POSITION|SIT_TARGET|SIZE|ROTATION|TEXTURE|NAME|OMEGA|DESC|LINK_TARGET|COLOR|BUMP_SHINY|FULLBRIGHT|TEXGEN|GLOW|MEDIA_(ALT_IMAGE_ENABLE|CONTROLS|(CURRENT|HOME)_URL|AUTO_(LOOP|PLAY|SCALE|ZOOM)|FIRST_CLICK_INTERACT|(WIDTH|HEIGHT)_PIXELS|WHITELIST(_ENABLE)?|PERMS_(INTERACT|CONTROL)|PARAM_MAX|CONTROLS_(STANDARD|MINI)|PERM_(NONE|OWNER|GROUP|ANYONE)|MAX_(URL_LENGTH|WHITELIST_(SIZE|COUNT)|(WIDTH|HEIGHT)_PIXELS)))|MASK_(BASE|OWNER|GROUP|EVERYONE|NEXT)|PERM_(TRANSFER|MODIFY|COPY|MOVE|ALL)|PARCEL_(MEDIA_COMMAND_(STOP|PAUSE|PLAY|LOOP|TEXTURE|URL|TIME|AGENT|UNLOAD|AUTO_ALIGN|TYPE|SIZE|DESC|LOOP_SET)|FLAG_(ALLOW_(FLY|(GROUP_)?SCRIPTS|LANDMARK|TERRAFORM|DAMAGE|CREATE_(GROUP_)?OBJECTS)|USE_(ACCESS_(GROUP|LIST)|BAN_LIST|LAND_PASS_LIST)|LOCAL_SOUND_ONLY|RESTRICT_PUSHOBJECT|ALLOW_(GROUP|ALL)_OBJECT_ENTRY)|COUNT_(TOTAL|OWNER|GROUP|OTHER|SELECTED|TEMP)|DETAILS_(NAME|DESC|OWNER|GROUP|AREA|ID|SEE_AVATARS))|LIST_STAT_(MAX|MIN|MEAN|MEDIAN|STD_DEV|SUM(_SQUARES)?|NUM_COUNT|GEOMETRIC_MEAN|RANGE)|PAY_(HIDE|DEFAULT)|REGION_FLAG_(ALLOW_DAMAGE|FIXED_SUN|BLOCK_TERRAFORM|SANDBOX|DISABLE_(COLLISIONS|PHYSICS)|BLOCK_FLY|ALLOW_DIRECT_TELEPORT|RESTRICT_PUSHOBJECT)|HTTP_(METHOD|MIMETYPE|BODY_(MAXLENGTH|TRUNCATED)|CUSTOM_HEADER|PRAGMA_NO_CACHE|VERBOSE_THROTTLE|VERIFY_CERT)|SIT_(INVALID_(AGENT|LINK_OBJECT)|NO(T_EXPERIENCE|_(ACCESS|EXPERIENCE_PERMISSION|SIT_TARGET)))|STRING_(TRIM(_(HEAD|TAIL))?)|CLICK_ACTION_(NONE|TOUCH|SIT|BUY|PAY|OPEN(_MEDIA)?|PLAY|ZOOM)|TOUCH_INVALID_FACE|PROFILE_(NONE|SCRIPT_MEMORY)|RC_(DATA_FLAGS|DETECT_PHANTOM|GET_(LINK_NUM|NORMAL|ROOT_KEY)|MAX_HITS|REJECT_(TYPES|AGENTS|(NON)?PHYSICAL|LAND))|RCERR_(CAST_TIME_EXCEEDED|SIM_PERF_LOW|UNKNOWN)|ESTATE_ACCESS_(ALLOWED_(AGENT|GROUP)_(ADD|REMOVE)|BANNED_AGENT_(ADD|REMOVE))|DENSITY|FRICTION|RESTITUTION|GRAVITY_MULTIPLIER|KFM_(COMMAND|CMD_(PLAY|STOP|PAUSE)|MODE|FORWARD|LOOP|PING_PONG|REVERSE|DATA|ROTATION|TRANSLATION)|ERR_(GENERIC|PARCEL_PERMISSIONS|MALFORMED_PARAMS|RUNTIME_PERMISSIONS|THROTTLED)|CHARACTER_(CMD_((SMOOTH_)?STOP|JUMP)|DESIRED_(TURN_)?SPEED|RADIUS|STAY_WITHIN_PARCEL|LENGTH|ORIENTATION|ACCOUNT_FOR_SKIPPED_FRAMES|AVOIDANCE_MODE|TYPE(_([ABCD]|NONE))?|MAX_(DECEL|TURN_RADIUS|(ACCEL|SPEED)))|PURSUIT_(OFFSET|FUZZ_FACTOR|GOAL_TOLERANCE|INTERCEPT)|REQUIRE_LINE_OF_SIGHT|FORCE_DIRECT_PATH|VERTICAL|HORIZONTAL|AVOID_(CHARACTERS|DYNAMIC_OBSTACLES|NONE)|PU_(EVADE_(HIDDEN|SPOTTED)|FAILURE_(DYNAMIC_PATHFINDING_DISABLED|INVALID_(GOAL|START)|NO_(NAVMESH|VALID_DESTINATION)|OTHER|TARGET_GONE|(PARCEL_)?UNREACHABLE)|(GOAL|SLOWDOWN_DISTANCE)_REACHED)|TRAVERSAL_TYPE(_(FAST|NONE|SLOW))?|CONTENT_TYPE_(ATOM|FORM|HTML|JSON|LLSD|RSS|TEXT|XHTML|XML)|GCNP_(RADIUS|STATIC)|(PATROL|WANDER)_PAUSE_AT_WAYPOINTS|OPT_(AVATAR|CHARACTER|EXCLUSION_VOLUME|LEGACY_LINKSET|MATERIAL_VOLUME|OTHER|STATIC_OBSTACLE|WALKABLE)|SIM_STAT_PCT_CHARS_STEPPED)\\b"},{begin:"\\b(FALSE|TRUE)\\b"},{begin:"\\b(ZERO_ROTATION)\\b"},{begin:"\\b(EOF|JSON_(ARRAY|DELETE|FALSE|INVALID|NULL|NUMBER|OBJECT|STRING|TRUE)|NULL_KEY|TEXTURE_(BLANK|DEFAULT|MEDIA|PLYWOOD|TRANSPARENT)|URL_REQUEST_(GRANTED|DENIED))\\b"},{begin:"\\b(ZERO_VECTOR|TOUCH_INVALID_(TEXCOORD|VECTOR))\\b"}]},{className:"type",begin:"\\b(integer|float|string|key|vector|quaternion|rotation|list)\\b"}]}};var pS=function(e){var t="\\[=*\\[",n="\\]=*\\]",a={begin:t,end:n,contains:["self"]},r=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[",n,{contains:[a],relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[a],relevance:5}])}};var gS=function(e){var t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},a={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[t]},r={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},i={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,t,n,a,r,{className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,"meta-keyword":".PHONY"}},i]}},ES=["AASTriangle","AbelianGroup","Abort","AbortKernels","AbortProtect","AbortScheduledTask","Above","Abs","AbsArg","AbsArgPlot","Absolute","AbsoluteCorrelation","AbsoluteCorrelationFunction","AbsoluteCurrentValue","AbsoluteDashing","AbsoluteFileName","AbsoluteOptions","AbsolutePointSize","AbsoluteThickness","AbsoluteTime","AbsoluteTiming","AcceptanceThreshold","AccountingForm","Accumulate","Accuracy","AccuracyGoal","ActionDelay","ActionMenu","ActionMenuBox","ActionMenuBoxOptions","Activate","Active","ActiveClassification","ActiveClassificationObject","ActiveItem","ActivePrediction","ActivePredictionObject","ActiveStyle","AcyclicGraphQ","AddOnHelpPath","AddSides","AddTo","AddToSearchIndex","AddUsers","AdjacencyGraph","AdjacencyList","AdjacencyMatrix","AdjacentMeshCells","AdjustmentBox","AdjustmentBoxOptions","AdjustTimeSeriesForecast","AdministrativeDivisionData","AffineHalfSpace","AffineSpace","AffineStateSpaceModel","AffineTransform","After","AggregatedEntityClass","AggregationLayer","AircraftData","AirportData","AirPressureData","AirTemperatureData","AiryAi","AiryAiPrime","AiryAiZero","AiryBi","AiryBiPrime","AiryBiZero","AlgebraicIntegerQ","AlgebraicNumber","AlgebraicNumberDenominator","AlgebraicNumberNorm","AlgebraicNumberPolynomial","AlgebraicNumberTrace","AlgebraicRules","AlgebraicRulesData","Algebraics","AlgebraicUnitQ","Alignment","AlignmentMarker","AlignmentPoint","All","AllowAdultContent","AllowedCloudExtraParameters","AllowedCloudParameterExtensions","AllowedDimensions","AllowedFrequencyRange","AllowedHeads","AllowGroupClose","AllowIncomplete","AllowInlineCells","AllowKernelInitialization","AllowLooseGrammar","AllowReverseGroupClose","AllowScriptLevelChange","AllowVersionUpdate","AllTrue","Alphabet","AlphabeticOrder","AlphabeticSort","AlphaChannel","AlternateImage","AlternatingFactorial","AlternatingGroup","AlternativeHypothesis","Alternatives","AltitudeMethod","AmbientLight","AmbiguityFunction","AmbiguityList","Analytic","AnatomyData","AnatomyForm","AnatomyPlot3D","AnatomySkinStyle","AnatomyStyling","AnchoredSearch","And","AndersonDarlingTest","AngerJ","AngleBisector","AngleBracket","AnglePath","AnglePath3D","AngleVector","AngularGauge","Animate","AnimationCycleOffset","AnimationCycleRepetitions","AnimationDirection","AnimationDisplayTime","AnimationRate","AnimationRepetitions","AnimationRunning","AnimationRunTime","AnimationTimeIndex","Animator","AnimatorBox","AnimatorBoxOptions","AnimatorElements","Annotate","Annotation","AnnotationDelete","AnnotationKeys","AnnotationRules","AnnotationValue","Annuity","AnnuityDue","Annulus","AnomalyDetection","AnomalyDetector","AnomalyDetectorFunction","Anonymous","Antialiasing","AntihermitianMatrixQ","Antisymmetric","AntisymmetricMatrixQ","Antonyms","AnyOrder","AnySubset","AnyTrue","Apart","ApartSquareFree","APIFunction","Appearance","AppearanceElements","AppearanceRules","AppellF1","Append","AppendCheck","AppendLayer","AppendTo","Apply","ApplySides","ArcCos","ArcCosh","ArcCot","ArcCoth","ArcCsc","ArcCsch","ArcCurvature","ARCHProcess","ArcLength","ArcSec","ArcSech","ArcSin","ArcSinDistribution","ArcSinh","ArcTan","ArcTanh","Area","Arg","ArgMax","ArgMin","ArgumentCountQ","ARIMAProcess","ArithmeticGeometricMean","ARMAProcess","Around","AroundReplace","ARProcess","Array","ArrayComponents","ArrayDepth","ArrayFilter","ArrayFlatten","ArrayMesh","ArrayPad","ArrayPlot","ArrayQ","ArrayResample","ArrayReshape","ArrayRules","Arrays","Arrow","Arrow3DBox","ArrowBox","Arrowheads","ASATriangle","Ask","AskAppend","AskConfirm","AskDisplay","AskedQ","AskedValue","AskFunction","AskState","AskTemplateDisplay","AspectRatio","AspectRatioFixed","Assert","AssociateTo","Association","AssociationFormat","AssociationMap","AssociationQ","AssociationThread","AssumeDeterministic","Assuming","Assumptions","AstronomicalData","Asymptotic","AsymptoticDSolveValue","AsymptoticEqual","AsymptoticEquivalent","AsymptoticGreater","AsymptoticGreaterEqual","AsymptoticIntegrate","AsymptoticLess","AsymptoticLessEqual","AsymptoticOutputTracker","AsymptoticProduct","AsymptoticRSolveValue","AsymptoticSolve","AsymptoticSum","Asynchronous","AsynchronousTaskObject","AsynchronousTasks","Atom","AtomCoordinates","AtomCount","AtomDiagramCoordinates","AtomList","AtomQ","AttentionLayer","Attributes","Audio","AudioAmplify","AudioAnnotate","AudioAnnotationLookup","AudioBlockMap","AudioCapture","AudioChannelAssignment","AudioChannelCombine","AudioChannelMix","AudioChannels","AudioChannelSeparate","AudioData","AudioDelay","AudioDelete","AudioDevice","AudioDistance","AudioEncoding","AudioFade","AudioFrequencyShift","AudioGenerator","AudioIdentify","AudioInputDevice","AudioInsert","AudioInstanceQ","AudioIntervals","AudioJoin","AudioLabel","AudioLength","AudioLocalMeasurements","AudioLooping","AudioLoudness","AudioMeasurements","AudioNormalize","AudioOutputDevice","AudioOverlay","AudioPad","AudioPan","AudioPartition","AudioPause","AudioPitchShift","AudioPlay","AudioPlot","AudioQ","AudioRecord","AudioReplace","AudioResample","AudioReverb","AudioReverse","AudioSampleRate","AudioSpectralMap","AudioSpectralTransformation","AudioSplit","AudioStop","AudioStream","AudioStreams","AudioTimeStretch","AudioTracks","AudioTrim","AudioType","AugmentedPolyhedron","AugmentedSymmetricPolynomial","Authenticate","Authentication","AuthenticationDialog","AutoAction","Autocomplete","AutocompletionFunction","AutoCopy","AutocorrelationTest","AutoDelete","AutoEvaluateEvents","AutoGeneratedPackage","AutoIndent","AutoIndentSpacings","AutoItalicWords","AutoloadPath","AutoMatch","Automatic","AutomaticImageSize","AutoMultiplicationSymbol","AutoNumberFormatting","AutoOpenNotebooks","AutoOpenPalettes","AutoQuoteCharacters","AutoRefreshed","AutoRemove","AutorunSequencing","AutoScaling","AutoScroll","AutoSpacing","AutoStyleOptions","AutoStyleWords","AutoSubmitting","Axes","AxesEdge","AxesLabel","AxesOrigin","AxesStyle","AxiomaticTheory","Axis","BabyMonsterGroupB","Back","Background","BackgroundAppearance","BackgroundTasksSettings","Backslash","Backsubstitution","Backward","Ball","Band","BandpassFilter","BandstopFilter","BarabasiAlbertGraphDistribution","BarChart","BarChart3D","BarcodeImage","BarcodeRecognize","BaringhausHenzeTest","BarLegend","BarlowProschanImportance","BarnesG","BarOrigin","BarSpacing","BartlettHannWindow","BartlettWindow","BaseDecode","BaseEncode","BaseForm","Baseline","BaselinePosition","BaseStyle","BasicRecurrentLayer","BatchNormalizationLayer","BatchSize","BatesDistribution","BattleLemarieWavelet","BayesianMaximization","BayesianMaximizationObject","BayesianMinimization","BayesianMinimizationObject","Because","BeckmannDistribution","Beep","Before","Begin","BeginDialogPacket","BeginFrontEndInteractionPacket","BeginPackage","BellB","BellY","Below","BenfordDistribution","BeniniDistribution","BenktanderGibratDistribution","BenktanderWeibullDistribution","BernoulliB","BernoulliDistribution","BernoulliGraphDistribution","BernoulliProcess","BernsteinBasis","BesselFilterModel","BesselI","BesselJ","BesselJZero","BesselK","BesselY","BesselYZero","Beta","BetaBinomialDistribution","BetaDistribution","BetaNegativeBinomialDistribution","BetaPrimeDistribution","BetaRegularized","Between","BetweennessCentrality","BeveledPolyhedron","BezierCurve","BezierCurve3DBox","BezierCurve3DBoxOptions","BezierCurveBox","BezierCurveBoxOptions","BezierFunction","BilateralFilter","Binarize","BinaryDeserialize","BinaryDistance","BinaryFormat","BinaryImageQ","BinaryRead","BinaryReadList","BinarySerialize","BinaryWrite","BinCounts","BinLists","Binomial","BinomialDistribution","BinomialProcess","BinormalDistribution","BiorthogonalSplineWavelet","BipartiteGraphQ","BiquadraticFilterModel","BirnbaumImportance","BirnbaumSaundersDistribution","BitAnd","BitClear","BitGet","BitLength","BitNot","BitOr","BitSet","BitShiftLeft","BitShiftRight","BitXor","BiweightLocation","BiweightMidvariance","Black","BlackmanHarrisWindow","BlackmanNuttallWindow","BlackmanWindow","Blank","BlankForm","BlankNullSequence","BlankSequence","Blend","Block","BlockchainAddressData","BlockchainBase","BlockchainBlockData","BlockchainContractValue","BlockchainData","BlockchainGet","BlockchainKeyEncode","BlockchainPut","BlockchainTokenData","BlockchainTransaction","BlockchainTransactionData","BlockchainTransactionSign","BlockchainTransactionSubmit","BlockMap","BlockRandom","BlomqvistBeta","BlomqvistBetaTest","Blue","Blur","BodePlot","BohmanWindow","Bold","Bond","BondCount","BondList","BondQ","Bookmarks","Boole","BooleanConsecutiveFunction","BooleanConvert","BooleanCountingFunction","BooleanFunction","BooleanGraph","BooleanMaxterms","BooleanMinimize","BooleanMinterms","BooleanQ","BooleanRegion","Booleans","BooleanStrings","BooleanTable","BooleanVariables","BorderDimensions","BorelTannerDistribution","Bottom","BottomHatTransform","BoundaryDiscretizeGraphics","BoundaryDiscretizeRegion","BoundaryMesh","BoundaryMeshRegion","BoundaryMeshRegionQ","BoundaryStyle","BoundedRegionQ","BoundingRegion","Bounds","Box","BoxBaselineShift","BoxData","BoxDimensions","Boxed","Boxes","BoxForm","BoxFormFormatTypes","BoxFrame","BoxID","BoxMargins","BoxMatrix","BoxObject","BoxRatios","BoxRotation","BoxRotationPoint","BoxStyle","BoxWhiskerChart","Bra","BracketingBar","BraKet","BrayCurtisDistance","BreadthFirstScan","Break","BridgeData","BrightnessEqualize","BroadcastStationData","Brown","BrownForsytheTest","BrownianBridgeProcess","BrowserCategory","BSplineBasis","BSplineCurve","BSplineCurve3DBox","BSplineCurve3DBoxOptions","BSplineCurveBox","BSplineCurveBoxOptions","BSplineFunction","BSplineSurface","BSplineSurface3DBox","BSplineSurface3DBoxOptions","BubbleChart","BubbleChart3D","BubbleScale","BubbleSizes","BuildingData","BulletGauge","BusinessDayQ","ButterflyGraph","ButterworthFilterModel","Button","ButtonBar","ButtonBox","ButtonBoxOptions","ButtonCell","ButtonContents","ButtonData","ButtonEvaluator","ButtonExpandable","ButtonFrame","ButtonFunction","ButtonMargins","ButtonMinHeight","ButtonNote","ButtonNotebook","ButtonSource","ButtonStyle","ButtonStyleMenuListing","Byte","ByteArray","ByteArrayFormat","ByteArrayQ","ByteArrayToString","ByteCount","ByteOrdering","C","CachedValue","CacheGraphics","CachePersistence","CalendarConvert","CalendarData","CalendarType","Callout","CalloutMarker","CalloutStyle","CallPacket","CanberraDistance","Cancel","CancelButton","CandlestickChart","CanonicalGraph","CanonicalizePolygon","CanonicalizePolyhedron","CanonicalName","CanonicalWarpingCorrespondence","CanonicalWarpingDistance","CantorMesh","CantorStaircase","Cap","CapForm","CapitalDifferentialD","Capitalize","CapsuleShape","CaptureRunning","CardinalBSplineBasis","CarlemanLinearize","CarmichaelLambda","CaseOrdering","Cases","CaseSensitive","Cashflow","Casoratian","Catalan","CatalanNumber","Catch","CategoricalDistribution","Catenate","CatenateLayer","CauchyDistribution","CauchyWindow","CayleyGraph","CDF","CDFDeploy","CDFInformation","CDFWavelet","Ceiling","CelestialSystem","Cell","CellAutoOverwrite","CellBaseline","CellBoundingBox","CellBracketOptions","CellChangeTimes","CellContents","CellContext","CellDingbat","CellDynamicExpression","CellEditDuplicate","CellElementsBoundingBox","CellElementSpacings","CellEpilog","CellEvaluationDuplicate","CellEvaluationFunction","CellEvaluationLanguage","CellEventActions","CellFrame","CellFrameColor","CellFrameLabelMargins","CellFrameLabels","CellFrameMargins","CellGroup","CellGroupData","CellGrouping","CellGroupingRules","CellHorizontalScrolling","CellID","CellLabel","CellLabelAutoDelete","CellLabelMargins","CellLabelPositioning","CellLabelStyle","CellLabelTemplate","CellMargins","CellObject","CellOpen","CellPrint","CellProlog","Cells","CellSize","CellStyle","CellTags","CellularAutomaton","CensoredDistribution","Censoring","Center","CenterArray","CenterDot","CentralFeature","CentralMoment","CentralMomentGeneratingFunction","Cepstrogram","CepstrogramArray","CepstrumArray","CForm","ChampernowneNumber","ChangeOptions","ChannelBase","ChannelBrokerAction","ChannelDatabin","ChannelHistoryLength","ChannelListen","ChannelListener","ChannelListeners","ChannelListenerWait","ChannelObject","ChannelPreSendFunction","ChannelReceiverFunction","ChannelSend","ChannelSubscribers","ChanVeseBinarize","Character","CharacterCounts","CharacterEncoding","CharacterEncodingsPath","CharacteristicFunction","CharacteristicPolynomial","CharacterName","CharacterNormalize","CharacterRange","Characters","ChartBaseStyle","ChartElementData","ChartElementDataFunction","ChartElementFunction","ChartElements","ChartLabels","ChartLayout","ChartLegends","ChartStyle","Chebyshev1FilterModel","Chebyshev2FilterModel","ChebyshevDistance","ChebyshevT","ChebyshevU","Check","CheckAbort","CheckAll","Checkbox","CheckboxBar","CheckboxBox","CheckboxBoxOptions","ChemicalData","ChessboardDistance","ChiDistribution","ChineseRemainder","ChiSquareDistribution","ChoiceButtons","ChoiceDialog","CholeskyDecomposition","Chop","ChromaticityPlot","ChromaticityPlot3D","ChromaticPolynomial","Circle","CircleBox","CircleDot","CircleMinus","CirclePlus","CirclePoints","CircleThrough","CircleTimes","CirculantGraph","CircularOrthogonalMatrixDistribution","CircularQuaternionMatrixDistribution","CircularRealMatrixDistribution","CircularSymplecticMatrixDistribution","CircularUnitaryMatrixDistribution","Circumsphere","CityData","ClassifierFunction","ClassifierInformation","ClassifierMeasurements","ClassifierMeasurementsObject","Classify","ClassPriors","Clear","ClearAll","ClearAttributes","ClearCookies","ClearPermissions","ClearSystemCache","ClebschGordan","ClickPane","Clip","ClipboardNotebook","ClipFill","ClippingStyle","ClipPlanes","ClipPlanesStyle","ClipRange","Clock","ClockGauge","ClockwiseContourIntegral","Close","Closed","CloseKernels","ClosenessCentrality","Closing","ClosingAutoSave","ClosingEvent","ClosingSaveDialog","CloudAccountData","CloudBase","CloudConnect","CloudConnections","CloudDeploy","CloudDirectory","CloudDisconnect","CloudEvaluate","CloudExport","CloudExpression","CloudExpressions","CloudFunction","CloudGet","CloudImport","CloudLoggingData","CloudObject","CloudObjectInformation","CloudObjectInformationData","CloudObjectNameFormat","CloudObjects","CloudObjectURLType","CloudPublish","CloudPut","CloudRenderingMethod","CloudSave","CloudShare","CloudSubmit","CloudSymbol","CloudUnshare","CloudUserID","ClusterClassify","ClusterDissimilarityFunction","ClusteringComponents","ClusteringTree","CMYKColor","Coarse","CodeAssistOptions","Coefficient","CoefficientArrays","CoefficientDomain","CoefficientList","CoefficientRules","CoifletWavelet","Collect","Colon","ColonForm","ColorBalance","ColorCombine","ColorConvert","ColorCoverage","ColorData","ColorDataFunction","ColorDetect","ColorDistance","ColorFunction","ColorFunctionScaling","Colorize","ColorNegate","ColorOutput","ColorProfileData","ColorQ","ColorQuantize","ColorReplace","ColorRules","ColorSelectorSettings","ColorSeparate","ColorSetter","ColorSetterBox","ColorSetterBoxOptions","ColorSlider","ColorsNear","ColorSpace","ColorToneMapping","Column","ColumnAlignments","ColumnBackgrounds","ColumnForm","ColumnLines","ColumnsEqual","ColumnSpacings","ColumnWidths","CombinedEntityClass","CombinerFunction","CometData","CommonDefaultFormatTypes","Commonest","CommonestFilter","CommonName","CommonUnits","CommunityBoundaryStyle","CommunityGraphPlot","CommunityLabels","CommunityRegionStyle","CompanyData","CompatibleUnitQ","CompilationOptions","CompilationTarget","Compile","Compiled","CompiledCodeFunction","CompiledFunction","CompilerOptions","Complement","ComplementedEntityClass","CompleteGraph","CompleteGraphQ","CompleteKaryTree","CompletionsListPacket","Complex","ComplexContourPlot","Complexes","ComplexExpand","ComplexInfinity","ComplexityFunction","ComplexListPlot","ComplexPlot","ComplexPlot3D","ComplexRegionPlot","ComplexStreamPlot","ComplexVectorPlot","ComponentMeasurements","ComponentwiseContextMenu","Compose","ComposeList","ComposeSeries","CompositeQ","Composition","CompoundElement","CompoundExpression","CompoundPoissonDistribution","CompoundPoissonProcess","CompoundRenewalProcess","Compress","CompressedData","CompressionLevel","ComputeUncertainty","Condition","ConditionalExpression","Conditioned","Cone","ConeBox","ConfidenceLevel","ConfidenceRange","ConfidenceTransform","ConfigurationPath","ConformAudio","ConformImages","Congruent","ConicHullRegion","ConicHullRegion3DBox","ConicHullRegionBox","ConicOptimization","Conjugate","ConjugateTranspose","Conjunction","Connect","ConnectedComponents","ConnectedGraphComponents","ConnectedGraphQ","ConnectedMeshComponents","ConnectedMoleculeComponents","ConnectedMoleculeQ","ConnectionSettings","ConnectLibraryCallbackFunction","ConnectSystemModelComponents","ConnesWindow","ConoverTest","ConsoleMessage","ConsoleMessagePacket","Constant","ConstantArray","ConstantArrayLayer","ConstantImage","ConstantPlusLayer","ConstantRegionQ","Constants","ConstantTimesLayer","ConstellationData","ConstrainedMax","ConstrainedMin","Construct","Containing","ContainsAll","ContainsAny","ContainsExactly","ContainsNone","ContainsOnly","ContentFieldOptions","ContentLocationFunction","ContentObject","ContentPadding","ContentsBoundingBox","ContentSelectable","ContentSize","Context","ContextMenu","Contexts","ContextToFileName","Continuation","Continue","ContinuedFraction","ContinuedFractionK","ContinuousAction","ContinuousMarkovProcess","ContinuousTask","ContinuousTimeModelQ","ContinuousWaveletData","ContinuousWaveletTransform","ContourDetect","ContourGraphics","ContourIntegral","ContourLabels","ContourLines","ContourPlot","ContourPlot3D","Contours","ContourShading","ContourSmoothing","ContourStyle","ContraharmonicMean","ContrastiveLossLayer","Control","ControlActive","ControlAlignment","ControlGroupContentsBox","ControllabilityGramian","ControllabilityMatrix","ControllableDecomposition","ControllableModelQ","ControllerDuration","ControllerInformation","ControllerInformationData","ControllerLinking","ControllerManipulate","ControllerMethod","ControllerPath","ControllerState","ControlPlacement","ControlsRendering","ControlType","Convergents","ConversionOptions","ConversionRules","ConvertToBitmapPacket","ConvertToPostScript","ConvertToPostScriptPacket","ConvexHullMesh","ConvexPolygonQ","ConvexPolyhedronQ","ConvolutionLayer","Convolve","ConwayGroupCo1","ConwayGroupCo2","ConwayGroupCo3","CookieFunction","Cookies","CoordinateBoundingBox","CoordinateBoundingBoxArray","CoordinateBounds","CoordinateBoundsArray","CoordinateChartData","CoordinatesToolOptions","CoordinateTransform","CoordinateTransformData","CoprimeQ","Coproduct","CopulaDistribution","Copyable","CopyDatabin","CopyDirectory","CopyFile","CopyTag","CopyToClipboard","CornerFilter","CornerNeighbors","Correlation","CorrelationDistance","CorrelationFunction","CorrelationTest","Cos","Cosh","CoshIntegral","CosineDistance","CosineWindow","CosIntegral","Cot","Coth","Count","CountDistinct","CountDistinctBy","CounterAssignments","CounterBox","CounterBoxOptions","CounterClockwiseContourIntegral","CounterEvaluator","CounterFunction","CounterIncrements","CounterStyle","CounterStyleMenuListing","CountRoots","CountryData","Counts","CountsBy","Covariance","CovarianceEstimatorFunction","CovarianceFunction","CoxianDistribution","CoxIngersollRossProcess","CoxModel","CoxModelFit","CramerVonMisesTest","CreateArchive","CreateCellID","CreateChannel","CreateCloudExpression","CreateDatabin","CreateDataStructure","CreateDataSystemModel","CreateDialog","CreateDirectory","CreateDocument","CreateFile","CreateIntermediateDirectories","CreateManagedLibraryExpression","CreateNotebook","CreatePacletArchive","CreatePalette","CreatePalettePacket","CreatePermissionsGroup","CreateScheduledTask","CreateSearchIndex","CreateSystemModel","CreateTemporary","CreateUUID","CreateWindow","CriterionFunction","CriticalityFailureImportance","CriticalitySuccessImportance","CriticalSection","Cross","CrossEntropyLossLayer","CrossingCount","CrossingDetect","CrossingPolygon","CrossMatrix","Csc","Csch","CTCLossLayer","Cube","CubeRoot","Cubics","Cuboid","CuboidBox","Cumulant","CumulantGeneratingFunction","Cup","CupCap","Curl","CurlyDoubleQuote","CurlyQuote","CurrencyConvert","CurrentDate","CurrentImage","CurrentlySpeakingPacket","CurrentNotebookImage","CurrentScreenImage","CurrentValue","Curry","CurryApplied","CurvatureFlowFilter","CurveClosed","Cyan","CycleGraph","CycleIndexPolynomial","Cycles","CyclicGroup","Cyclotomic","Cylinder","CylinderBox","CylindricalDecomposition","D","DagumDistribution","DamData","DamerauLevenshteinDistance","DampingFactor","Darker","Dashed","Dashing","DatabaseConnect","DatabaseDisconnect","DatabaseReference","Databin","DatabinAdd","DatabinRemove","Databins","DatabinUpload","DataCompression","DataDistribution","DataRange","DataReversed","Dataset","DatasetDisplayPanel","DataStructure","DataStructureQ","Date","DateBounds","Dated","DateDelimiters","DateDifference","DatedUnit","DateFormat","DateFunction","DateHistogram","DateInterval","DateList","DateListLogPlot","DateListPlot","DateListStepPlot","DateObject","DateObjectQ","DateOverlapsQ","DatePattern","DatePlus","DateRange","DateReduction","DateString","DateTicksFormat","DateValue","DateWithinQ","DaubechiesWavelet","DavisDistribution","DawsonF","DayCount","DayCountConvention","DayHemisphere","DaylightQ","DayMatchQ","DayName","DayNightTerminator","DayPlus","DayRange","DayRound","DeBruijnGraph","DeBruijnSequence","Debug","DebugTag","Decapitalize","Decimal","DecimalForm","DeclareKnownSymbols","DeclarePackage","Decompose","DeconvolutionLayer","Decrement","Decrypt","DecryptFile","DedekindEta","DeepSpaceProbeData","Default","DefaultAxesStyle","DefaultBaseStyle","DefaultBoxStyle","DefaultButton","DefaultColor","DefaultControlPlacement","DefaultDuplicateCellStyle","DefaultDuration","DefaultElement","DefaultFaceGridsStyle","DefaultFieldHintStyle","DefaultFont","DefaultFontProperties","DefaultFormatType","DefaultFormatTypeForStyle","DefaultFrameStyle","DefaultFrameTicksStyle","DefaultGridLinesStyle","DefaultInlineFormatType","DefaultInputFormatType","DefaultLabelStyle","DefaultMenuStyle","DefaultNaturalLanguage","DefaultNewCellStyle","DefaultNewInlineCellStyle","DefaultNotebook","DefaultOptions","DefaultOutputFormatType","DefaultPrintPrecision","DefaultStyle","DefaultStyleDefinitions","DefaultTextFormatType","DefaultTextInlineFormatType","DefaultTicksStyle","DefaultTooltipStyle","DefaultValue","DefaultValues","Defer","DefineExternal","DefineInputStreamMethod","DefineOutputStreamMethod","DefineResourceFunction","Definition","Degree","DegreeCentrality","DegreeGraphDistribution","DegreeLexicographic","DegreeReverseLexicographic","DEigensystem","DEigenvalues","Deinitialization","Del","DelaunayMesh","Delayed","Deletable","Delete","DeleteAnomalies","DeleteBorderComponents","DeleteCases","DeleteChannel","DeleteCloudExpression","DeleteContents","DeleteDirectory","DeleteDuplicates","DeleteDuplicatesBy","DeleteFile","DeleteMissing","DeleteObject","DeletePermissionsKey","DeleteSearchIndex","DeleteSmallComponents","DeleteStopwords","DeleteWithContents","DeletionWarning","DelimitedArray","DelimitedSequence","Delimiter","DelimiterFlashTime","DelimiterMatching","Delimiters","DeliveryFunction","Dendrogram","Denominator","DensityGraphics","DensityHistogram","DensityPlot","DensityPlot3D","DependentVariables","Deploy","Deployed","Depth","DepthFirstScan","Derivative","DerivativeFilter","DerivedKey","DescriptorStateSpace","DesignMatrix","DestroyAfterEvaluation","Det","DeviceClose","DeviceConfigure","DeviceExecute","DeviceExecuteAsynchronous","DeviceObject","DeviceOpen","DeviceOpenQ","DeviceRead","DeviceReadBuffer","DeviceReadLatest","DeviceReadList","DeviceReadTimeSeries","Devices","DeviceStreams","DeviceWrite","DeviceWriteBuffer","DGaussianWavelet","DiacriticalPositioning","Diagonal","DiagonalizableMatrixQ","DiagonalMatrix","DiagonalMatrixQ","Dialog","DialogIndent","DialogInput","DialogLevel","DialogNotebook","DialogProlog","DialogReturn","DialogSymbols","Diamond","DiamondMatrix","DiceDissimilarity","DictionaryLookup","DictionaryWordQ","DifferenceDelta","DifferenceOrder","DifferenceQuotient","DifferenceRoot","DifferenceRootReduce","Differences","DifferentialD","DifferentialRoot","DifferentialRootReduce","DifferentiatorFilter","DigitalSignature","DigitBlock","DigitBlockMinimum","DigitCharacter","DigitCount","DigitQ","DihedralAngle","DihedralGroup","Dilation","DimensionalCombinations","DimensionalMeshComponents","DimensionReduce","DimensionReducerFunction","DimensionReduction","Dimensions","DiracComb","DiracDelta","DirectedEdge","DirectedEdges","DirectedGraph","DirectedGraphQ","DirectedInfinity","Direction","Directive","Directory","DirectoryName","DirectoryQ","DirectoryStack","DirichletBeta","DirichletCharacter","DirichletCondition","DirichletConvolve","DirichletDistribution","DirichletEta","DirichletL","DirichletLambda","DirichletTransform","DirichletWindow","DisableConsolePrintPacket","DisableFormatting","DiscreteAsymptotic","DiscreteChirpZTransform","DiscreteConvolve","DiscreteDelta","DiscreteHadamardTransform","DiscreteIndicator","DiscreteLimit","DiscreteLQEstimatorGains","DiscreteLQRegulatorGains","DiscreteLyapunovSolve","DiscreteMarkovProcess","DiscreteMaxLimit","DiscreteMinLimit","DiscretePlot","DiscretePlot3D","DiscreteRatio","DiscreteRiccatiSolve","DiscreteShift","DiscreteTimeModelQ","DiscreteUniformDistribution","DiscreteVariables","DiscreteWaveletData","DiscreteWaveletPacketTransform","DiscreteWaveletTransform","DiscretizeGraphics","DiscretizeRegion","Discriminant","DisjointQ","Disjunction","Disk","DiskBox","DiskMatrix","DiskSegment","Dispatch","DispatchQ","DispersionEstimatorFunction","Display","DisplayAllSteps","DisplayEndPacket","DisplayFlushImagePacket","DisplayForm","DisplayFunction","DisplayPacket","DisplayRules","DisplaySetSizePacket","DisplayString","DisplayTemporary","DisplayWith","DisplayWithRef","DisplayWithVariable","DistanceFunction","DistanceMatrix","DistanceTransform","Distribute","Distributed","DistributedContexts","DistributeDefinitions","DistributionChart","DistributionDomain","DistributionFitTest","DistributionParameterAssumptions","DistributionParameterQ","Dithering","Div","Divergence","Divide","DivideBy","Dividers","DivideSides","Divisible","Divisors","DivisorSigma","DivisorSum","DMSList","DMSString","Do","DockedCells","DocumentGenerator","DocumentGeneratorInformation","DocumentGeneratorInformationData","DocumentGenerators","DocumentNotebook","DocumentWeightingRules","Dodecahedron","DomainRegistrationInformation","DominantColors","DOSTextFormat","Dot","DotDashed","DotEqual","DotLayer","DotPlusLayer","Dotted","DoubleBracketingBar","DoubleContourIntegral","DoubleDownArrow","DoubleLeftArrow","DoubleLeftRightArrow","DoubleLeftTee","DoubleLongLeftArrow","DoubleLongLeftRightArrow","DoubleLongRightArrow","DoubleRightArrow","DoubleRightTee","DoubleUpArrow","DoubleUpDownArrow","DoubleVerticalBar","DoublyInfinite","Down","DownArrow","DownArrowBar","DownArrowUpArrow","DownLeftRightVector","DownLeftTeeVector","DownLeftVector","DownLeftVectorBar","DownRightTeeVector","DownRightVector","DownRightVectorBar","Downsample","DownTee","DownTeeArrow","DownValues","DragAndDrop","DrawEdges","DrawFrontFaces","DrawHighlighted","Drop","DropoutLayer","DSolve","DSolveValue","Dt","DualLinearProgramming","DualPolyhedron","DualSystemsModel","DumpGet","DumpSave","DuplicateFreeQ","Duration","Dynamic","DynamicBox","DynamicBoxOptions","DynamicEvaluationTimeout","DynamicGeoGraphics","DynamicImage","DynamicLocation","DynamicModule","DynamicModuleBox","DynamicModuleBoxOptions","DynamicModuleParent","DynamicModuleValues","DynamicName","DynamicNamespace","DynamicReference","DynamicSetting","DynamicUpdating","DynamicWrapper","DynamicWrapperBox","DynamicWrapperBoxOptions","E","EarthImpactData","EarthquakeData","EccentricityCentrality","Echo","EchoFunction","EclipseType","EdgeAdd","EdgeBetweennessCentrality","EdgeCapacity","EdgeCapForm","EdgeColor","EdgeConnectivity","EdgeContract","EdgeCost","EdgeCount","EdgeCoverQ","EdgeCycleMatrix","EdgeDashing","EdgeDelete","EdgeDetect","EdgeForm","EdgeIndex","EdgeJoinForm","EdgeLabeling","EdgeLabels","EdgeLabelStyle","EdgeList","EdgeOpacity","EdgeQ","EdgeRenderingFunction","EdgeRules","EdgeShapeFunction","EdgeStyle","EdgeTaggedGraph","EdgeTaggedGraphQ","EdgeTags","EdgeThickness","EdgeWeight","EdgeWeightedGraphQ","Editable","EditButtonSettings","EditCellTagsSettings","EditDistance","EffectiveInterest","Eigensystem","Eigenvalues","EigenvectorCentrality","Eigenvectors","Element","ElementData","ElementwiseLayer","ElidedForms","Eliminate","EliminationOrder","Ellipsoid","EllipticE","EllipticExp","EllipticExpPrime","EllipticF","EllipticFilterModel","EllipticK","EllipticLog","EllipticNomeQ","EllipticPi","EllipticReducedHalfPeriods","EllipticTheta","EllipticThetaPrime","EmbedCode","EmbeddedHTML","EmbeddedService","EmbeddingLayer","EmbeddingObject","EmitSound","EmphasizeSyntaxErrors","EmpiricalDistribution","Empty","EmptyGraphQ","EmptyRegion","EnableConsolePrintPacket","Enabled","Encode","Encrypt","EncryptedObject","EncryptFile","End","EndAdd","EndDialogPacket","EndFrontEndInteractionPacket","EndOfBuffer","EndOfFile","EndOfLine","EndOfString","EndPackage","EngineEnvironment","EngineeringForm","Enter","EnterExpressionPacket","EnterTextPacket","Entity","EntityClass","EntityClassList","EntityCopies","EntityFunction","EntityGroup","EntityInstance","EntityList","EntityPrefetch","EntityProperties","EntityProperty","EntityPropertyClass","EntityRegister","EntityStore","EntityStores","EntityTypeName","EntityUnregister","EntityValue","Entropy","EntropyFilter","Environment","Epilog","EpilogFunction","Equal","EqualColumns","EqualRows","EqualTilde","EqualTo","EquatedTo","Equilibrium","EquirippleFilterKernel","Equivalent","Erf","Erfc","Erfi","ErlangB","ErlangC","ErlangDistribution","Erosion","ErrorBox","ErrorBoxOptions","ErrorNorm","ErrorPacket","ErrorsDialogSettings","EscapeRadius","EstimatedBackground","EstimatedDistribution","EstimatedProcess","EstimatorGains","EstimatorRegulator","EuclideanDistance","EulerAngles","EulerCharacteristic","EulerE","EulerGamma","EulerianGraphQ","EulerMatrix","EulerPhi","Evaluatable","Evaluate","Evaluated","EvaluatePacket","EvaluateScheduledTask","EvaluationBox","EvaluationCell","EvaluationCompletionAction","EvaluationData","EvaluationElements","EvaluationEnvironment","EvaluationMode","EvaluationMonitor","EvaluationNotebook","EvaluationObject","EvaluationOrder","Evaluator","EvaluatorNames","EvenQ","EventData","EventEvaluator","EventHandler","EventHandlerTag","EventLabels","EventSeries","ExactBlackmanWindow","ExactNumberQ","ExactRootIsolation","ExampleData","Except","ExcludedForms","ExcludedLines","ExcludedPhysicalQuantities","ExcludePods","Exclusions","ExclusionsStyle","Exists","Exit","ExitDialog","ExoplanetData","Exp","Expand","ExpandAll","ExpandDenominator","ExpandFileName","ExpandNumerator","Expectation","ExpectationE","ExpectedValue","ExpGammaDistribution","ExpIntegralE","ExpIntegralEi","ExpirationDate","Exponent","ExponentFunction","ExponentialDistribution","ExponentialFamily","ExponentialGeneratingFunction","ExponentialMovingAverage","ExponentialPowerDistribution","ExponentPosition","ExponentStep","Export","ExportAutoReplacements","ExportByteArray","ExportForm","ExportPacket","ExportString","Expression","ExpressionCell","ExpressionGraph","ExpressionPacket","ExpressionUUID","ExpToTrig","ExtendedEntityClass","ExtendedGCD","Extension","ExtentElementFunction","ExtentMarkers","ExtentSize","ExternalBundle","ExternalCall","ExternalDataCharacterEncoding","ExternalEvaluate","ExternalFunction","ExternalFunctionName","ExternalIdentifier","ExternalObject","ExternalOptions","ExternalSessionObject","ExternalSessions","ExternalStorageBase","ExternalStorageDownload","ExternalStorageGet","ExternalStorageObject","ExternalStoragePut","ExternalStorageUpload","ExternalTypeSignature","ExternalValue","Extract","ExtractArchive","ExtractLayer","ExtractPacletArchive","ExtremeValueDistribution","FaceAlign","FaceForm","FaceGrids","FaceGridsStyle","FacialFeatures","Factor","FactorComplete","Factorial","Factorial2","FactorialMoment","FactorialMomentGeneratingFunction","FactorialPower","FactorInteger","FactorList","FactorSquareFree","FactorSquareFreeList","FactorTerms","FactorTermsList","Fail","Failure","FailureAction","FailureDistribution","FailureQ","False","FareySequence","FARIMAProcess","FeatureDistance","FeatureExtract","FeatureExtraction","FeatureExtractor","FeatureExtractorFunction","FeatureNames","FeatureNearest","FeatureSpacePlot","FeatureSpacePlot3D","FeatureTypes","FEDisableConsolePrintPacket","FeedbackLinearize","FeedbackSector","FeedbackSectorStyle","FeedbackType","FEEnableConsolePrintPacket","FetalGrowthData","Fibonacci","Fibonorial","FieldCompletionFunction","FieldHint","FieldHintStyle","FieldMasked","FieldSize","File","FileBaseName","FileByteCount","FileConvert","FileDate","FileExistsQ","FileExtension","FileFormat","FileHandler","FileHash","FileInformation","FileName","FileNameDepth","FileNameDialogSettings","FileNameDrop","FileNameForms","FileNameJoin","FileNames","FileNameSetter","FileNameSplit","FileNameTake","FilePrint","FileSize","FileSystemMap","FileSystemScan","FileTemplate","FileTemplateApply","FileType","FilledCurve","FilledCurveBox","FilledCurveBoxOptions","Filling","FillingStyle","FillingTransform","FilteredEntityClass","FilterRules","FinancialBond","FinancialData","FinancialDerivative","FinancialIndicator","Find","FindAnomalies","FindArgMax","FindArgMin","FindChannels","FindClique","FindClusters","FindCookies","FindCurvePath","FindCycle","FindDevices","FindDistribution","FindDistributionParameters","FindDivisions","FindEdgeCover","FindEdgeCut","FindEdgeIndependentPaths","FindEquationalProof","FindEulerianCycle","FindExternalEvaluators","FindFaces","FindFile","FindFit","FindFormula","FindFundamentalCycles","FindGeneratingFunction","FindGeoLocation","FindGeometricConjectures","FindGeometricTransform","FindGraphCommunities","FindGraphIsomorphism","FindGraphPartition","FindHamiltonianCycle","FindHamiltonianPath","FindHiddenMarkovStates","FindImageText","FindIndependentEdgeSet","FindIndependentVertexSet","FindInstance","FindIntegerNullVector","FindKClan","FindKClique","FindKClub","FindKPlex","FindLibrary","FindLinearRecurrence","FindList","FindMatchingColor","FindMaximum","FindMaximumCut","FindMaximumFlow","FindMaxValue","FindMeshDefects","FindMinimum","FindMinimumCostFlow","FindMinimumCut","FindMinValue","FindMoleculeSubstructure","FindPath","FindPeaks","FindPermutation","FindPostmanTour","FindProcessParameters","FindRepeat","FindRoot","FindSequenceFunction","FindSettings","FindShortestPath","FindShortestTour","FindSpanningTree","FindSystemModelEquilibrium","FindTextualAnswer","FindThreshold","FindTransientRepeat","FindVertexCover","FindVertexCut","FindVertexIndependentPaths","Fine","FinishDynamic","FiniteAbelianGroupCount","FiniteGroupCount","FiniteGroupData","First","FirstCase","FirstPassageTimeDistribution","FirstPosition","FischerGroupFi22","FischerGroupFi23","FischerGroupFi24Prime","FisherHypergeometricDistribution","FisherRatioTest","FisherZDistribution","Fit","FitAll","FitRegularization","FittedModel","FixedOrder","FixedPoint","FixedPointList","FlashSelection","Flat","Flatten","FlattenAt","FlattenLayer","FlatTopWindow","FlipView","Floor","FlowPolynomial","FlushPrintOutputPacket","Fold","FoldList","FoldPair","FoldPairList","FollowRedirects","Font","FontColor","FontFamily","FontForm","FontName","FontOpacity","FontPostScriptName","FontProperties","FontReencoding","FontSize","FontSlant","FontSubstitutions","FontTracking","FontVariations","FontWeight","For","ForAll","ForceVersionInstall","Format","FormatRules","FormatType","FormatTypeAutoConvert","FormatValues","FormBox","FormBoxOptions","FormControl","FormFunction","FormLayoutFunction","FormObject","FormPage","FormTheme","FormulaData","FormulaLookup","FortranForm","Forward","ForwardBackward","Fourier","FourierCoefficient","FourierCosCoefficient","FourierCosSeries","FourierCosTransform","FourierDCT","FourierDCTFilter","FourierDCTMatrix","FourierDST","FourierDSTMatrix","FourierMatrix","FourierParameters","FourierSequenceTransform","FourierSeries","FourierSinCoefficient","FourierSinSeries","FourierSinTransform","FourierTransform","FourierTrigSeries","FractionalBrownianMotionProcess","FractionalGaussianNoiseProcess","FractionalPart","FractionBox","FractionBoxOptions","FractionLine","Frame","FrameBox","FrameBoxOptions","Framed","FrameInset","FrameLabel","Frameless","FrameMargins","FrameRate","FrameStyle","FrameTicks","FrameTicksStyle","FRatioDistribution","FrechetDistribution","FreeQ","FrenetSerretSystem","FrequencySamplingFilterKernel","FresnelC","FresnelF","FresnelG","FresnelS","Friday","FrobeniusNumber","FrobeniusSolve","FromAbsoluteTime","FromCharacterCode","FromCoefficientRules","FromContinuedFraction","FromDate","FromDigits","FromDMS","FromEntity","FromJulianDate","FromLetterNumber","FromPolarCoordinates","FromRomanNumeral","FromSphericalCoordinates","FromUnixTime","Front","FrontEndDynamicExpression","FrontEndEventActions","FrontEndExecute","FrontEndObject","FrontEndResource","FrontEndResourceString","FrontEndStackSize","FrontEndToken","FrontEndTokenExecute","FrontEndValueCache","FrontEndVersion","FrontFaceColor","FrontFaceOpacity","Full","FullAxes","FullDefinition","FullForm","FullGraphics","FullInformationOutputRegulator","FullOptions","FullRegion","FullSimplify","Function","FunctionCompile","FunctionCompileExport","FunctionCompileExportByteArray","FunctionCompileExportLibrary","FunctionCompileExportString","FunctionDomain","FunctionExpand","FunctionInterpolation","FunctionPeriod","FunctionRange","FunctionSpace","FussellVeselyImportance","GaborFilter","GaborMatrix","GaborWavelet","GainMargins","GainPhaseMargins","GalaxyData","GalleryView","Gamma","GammaDistribution","GammaRegularized","GapPenalty","GARCHProcess","GatedRecurrentLayer","Gather","GatherBy","GaugeFaceElementFunction","GaugeFaceStyle","GaugeFrameElementFunction","GaugeFrameSize","GaugeFrameStyle","GaugeLabels","GaugeMarkers","GaugeStyle","GaussianFilter","GaussianIntegers","GaussianMatrix","GaussianOrthogonalMatrixDistribution","GaussianSymplecticMatrixDistribution","GaussianUnitaryMatrixDistribution","GaussianWindow","GCD","GegenbauerC","General","GeneralizedLinearModelFit","GenerateAsymmetricKeyPair","GenerateConditions","GeneratedCell","GeneratedDocumentBinding","GenerateDerivedKey","GenerateDigitalSignature","GenerateDocument","GeneratedParameters","GeneratedQuantityMagnitudes","GenerateFileSignature","GenerateHTTPResponse","GenerateSecuredAuthenticationKey","GenerateSymmetricKey","GeneratingFunction","GeneratorDescription","GeneratorHistoryLength","GeneratorOutputType","Generic","GenericCylindricalDecomposition","GenomeData","GenomeLookup","GeoAntipode","GeoArea","GeoArraySize","GeoBackground","GeoBoundingBox","GeoBounds","GeoBoundsRegion","GeoBubbleChart","GeoCenter","GeoCircle","GeoContourPlot","GeoDensityPlot","GeodesicClosing","GeodesicDilation","GeodesicErosion","GeodesicOpening","GeoDestination","GeodesyData","GeoDirection","GeoDisk","GeoDisplacement","GeoDistance","GeoDistanceList","GeoElevationData","GeoEntities","GeoGraphics","GeogravityModelData","GeoGridDirectionDifference","GeoGridLines","GeoGridLinesStyle","GeoGridPosition","GeoGridRange","GeoGridRangePadding","GeoGridUnitArea","GeoGridUnitDistance","GeoGridVector","GeoGroup","GeoHemisphere","GeoHemisphereBoundary","GeoHistogram","GeoIdentify","GeoImage","GeoLabels","GeoLength","GeoListPlot","GeoLocation","GeologicalPeriodData","GeomagneticModelData","GeoMarker","GeometricAssertion","GeometricBrownianMotionProcess","GeometricDistribution","GeometricMean","GeometricMeanFilter","GeometricOptimization","GeometricScene","GeometricTransformation","GeometricTransformation3DBox","GeometricTransformation3DBoxOptions","GeometricTransformationBox","GeometricTransformationBoxOptions","GeoModel","GeoNearest","GeoPath","GeoPosition","GeoPositionENU","GeoPositionXYZ","GeoProjection","GeoProjectionData","GeoRange","GeoRangePadding","GeoRegionValuePlot","GeoResolution","GeoScaleBar","GeoServer","GeoSmoothHistogram","GeoStreamPlot","GeoStyling","GeoStylingImageFunction","GeoVariant","GeoVector","GeoVectorENU","GeoVectorPlot","GeoVectorXYZ","GeoVisibleRegion","GeoVisibleRegionBoundary","GeoWithinQ","GeoZoomLevel","GestureHandler","GestureHandlerTag","Get","GetBoundingBoxSizePacket","GetContext","GetEnvironment","GetFileName","GetFrontEndOptionsDataPacket","GetLinebreakInformationPacket","GetMenusPacket","GetPageBreakInformationPacket","Glaisher","GlobalClusteringCoefficient","GlobalPreferences","GlobalSession","Glow","GoldenAngle","GoldenRatio","GompertzMakehamDistribution","GoochShading","GoodmanKruskalGamma","GoodmanKruskalGammaTest","Goto","Grad","Gradient","GradientFilter","GradientOrientationFilter","GrammarApply","GrammarRules","GrammarToken","Graph","Graph3D","GraphAssortativity","GraphAutomorphismGroup","GraphCenter","GraphComplement","GraphData","GraphDensity","GraphDiameter","GraphDifference","GraphDisjointUnion","GraphDistance","GraphDistanceMatrix","GraphElementData","GraphEmbedding","GraphHighlight","GraphHighlightStyle","GraphHub","Graphics","Graphics3D","Graphics3DBox","Graphics3DBoxOptions","GraphicsArray","GraphicsBaseline","GraphicsBox","GraphicsBoxOptions","GraphicsColor","GraphicsColumn","GraphicsComplex","GraphicsComplex3DBox","GraphicsComplex3DBoxOptions","GraphicsComplexBox","GraphicsComplexBoxOptions","GraphicsContents","GraphicsData","GraphicsGrid","GraphicsGridBox","GraphicsGroup","GraphicsGroup3DBox","GraphicsGroup3DBoxOptions","GraphicsGroupBox","GraphicsGroupBoxOptions","GraphicsGrouping","GraphicsHighlightColor","GraphicsRow","GraphicsSpacing","GraphicsStyle","GraphIntersection","GraphLayout","GraphLinkEfficiency","GraphPeriphery","GraphPlot","GraphPlot3D","GraphPower","GraphPropertyDistribution","GraphQ","GraphRadius","GraphReciprocity","GraphRoot","GraphStyle","GraphUnion","Gray","GrayLevel","Greater","GreaterEqual","GreaterEqualLess","GreaterEqualThan","GreaterFullEqual","GreaterGreater","GreaterLess","GreaterSlantEqual","GreaterThan","GreaterTilde","Green","GreenFunction","Grid","GridBaseline","GridBox","GridBoxAlignment","GridBoxBackground","GridBoxDividers","GridBoxFrame","GridBoxItemSize","GridBoxItemStyle","GridBoxOptions","GridBoxSpacings","GridCreationSettings","GridDefaultElement","GridElementStyleOptions","GridFrame","GridFrameMargins","GridGraph","GridLines","GridLinesStyle","GroebnerBasis","GroupActionBase","GroupBy","GroupCentralizer","GroupElementFromWord","GroupElementPosition","GroupElementQ","GroupElements","GroupElementToWord","GroupGenerators","Groupings","GroupMultiplicationTable","GroupOrbits","GroupOrder","GroupPageBreakWithin","GroupSetwiseStabilizer","GroupStabilizer","GroupStabilizerChain","GroupTogetherGrouping","GroupTogetherNestedGrouping","GrowCutComponents","Gudermannian","GuidedFilter","GumbelDistribution","HaarWavelet","HadamardMatrix","HalfLine","HalfNormalDistribution","HalfPlane","HalfSpace","HalftoneShading","HamiltonianGraphQ","HammingDistance","HammingWindow","HandlerFunctions","HandlerFunctionsKeys","HankelH1","HankelH2","HankelMatrix","HankelTransform","HannPoissonWindow","HannWindow","HaradaNortonGroupHN","HararyGraph","HarmonicMean","HarmonicMeanFilter","HarmonicNumber","Hash","HatchFilling","HatchShading","Haversine","HazardFunction","Head","HeadCompose","HeaderAlignment","HeaderBackground","HeaderDisplayFunction","HeaderLines","HeaderSize","HeaderStyle","Heads","HeavisideLambda","HeavisidePi","HeavisideTheta","HeldGroupHe","HeldPart","HelpBrowserLookup","HelpBrowserNotebook","HelpBrowserSettings","Here","HermiteDecomposition","HermiteH","HermitianMatrixQ","HessenbergDecomposition","Hessian","HeunB","HeunBPrime","HeunC","HeunCPrime","HeunD","HeunDPrime","HeunG","HeunGPrime","HeunT","HeunTPrime","HexadecimalCharacter","Hexahedron","HexahedronBox","HexahedronBoxOptions","HiddenItems","HiddenMarkovProcess","HiddenSurface","Highlighted","HighlightGraph","HighlightImage","HighlightMesh","HighpassFilter","HigmanSimsGroupHS","HilbertCurve","HilbertFilter","HilbertMatrix","Histogram","Histogram3D","HistogramDistribution","HistogramList","HistogramTransform","HistogramTransformInterpolation","HistoricalPeriodData","HitMissTransform","HITSCentrality","HjorthDistribution","HodgeDual","HoeffdingD","HoeffdingDTest","Hold","HoldAll","HoldAllComplete","HoldComplete","HoldFirst","HoldForm","HoldPattern","HoldRest","HolidayCalendar","HomeDirectory","HomePage","Horizontal","HorizontalForm","HorizontalGauge","HorizontalScrollPosition","HornerForm","HostLookup","HotellingTSquareDistribution","HoytDistribution","HTMLSave","HTTPErrorResponse","HTTPRedirect","HTTPRequest","HTTPRequestData","HTTPResponse","Hue","HumanGrowthData","HumpDownHump","HumpEqual","HurwitzLerchPhi","HurwitzZeta","HyperbolicDistribution","HypercubeGraph","HyperexponentialDistribution","Hyperfactorial","Hypergeometric0F1","Hypergeometric0F1Regularized","Hypergeometric1F1","Hypergeometric1F1Regularized","Hypergeometric2F1","Hypergeometric2F1Regularized","HypergeometricDistribution","HypergeometricPFQ","HypergeometricPFQRegularized","HypergeometricU","Hyperlink","HyperlinkAction","HyperlinkCreationSettings","Hyperplane","Hyphenation","HyphenationOptions","HypoexponentialDistribution","HypothesisTestData","I","IconData","Iconize","IconizedObject","IconRules","Icosahedron","Identity","IdentityMatrix","If","IgnoreCase","IgnoreDiacritics","IgnorePunctuation","IgnoreSpellCheck","IgnoringInactive","Im","Image","Image3D","Image3DProjection","Image3DSlices","ImageAccumulate","ImageAdd","ImageAdjust","ImageAlign","ImageApply","ImageApplyIndexed","ImageAspectRatio","ImageAssemble","ImageAugmentationLayer","ImageBoundingBoxes","ImageCache","ImageCacheValid","ImageCapture","ImageCaptureFunction","ImageCases","ImageChannels","ImageClip","ImageCollage","ImageColorSpace","ImageCompose","ImageContainsQ","ImageContents","ImageConvolve","ImageCooccurrence","ImageCorners","ImageCorrelate","ImageCorrespondingPoints","ImageCrop","ImageData","ImageDeconvolve","ImageDemosaic","ImageDifference","ImageDimensions","ImageDisplacements","ImageDistance","ImageEffect","ImageExposureCombine","ImageFeatureTrack","ImageFileApply","ImageFileFilter","ImageFileScan","ImageFilter","ImageFocusCombine","ImageForestingComponents","ImageFormattingWidth","ImageForwardTransformation","ImageGraphics","ImageHistogram","ImageIdentify","ImageInstanceQ","ImageKeypoints","ImageLabels","ImageLegends","ImageLevels","ImageLines","ImageMargins","ImageMarker","ImageMarkers","ImageMeasurements","ImageMesh","ImageMultiply","ImageOffset","ImagePad","ImagePadding","ImagePartition","ImagePeriodogram","ImagePerspectiveTransformation","ImagePosition","ImagePreviewFunction","ImagePyramid","ImagePyramidApply","ImageQ","ImageRangeCache","ImageRecolor","ImageReflect","ImageRegion","ImageResize","ImageResolution","ImageRestyle","ImageRotate","ImageRotated","ImageSaliencyFilter","ImageScaled","ImageScan","ImageSize","ImageSizeAction","ImageSizeCache","ImageSizeMultipliers","ImageSizeRaw","ImageSubtract","ImageTake","ImageTransformation","ImageTrim","ImageType","ImageValue","ImageValuePositions","ImagingDevice","ImplicitRegion","Implies","Import","ImportAutoReplacements","ImportByteArray","ImportOptions","ImportString","ImprovementImportance","In","Inactivate","Inactive","IncidenceGraph","IncidenceList","IncidenceMatrix","IncludeAromaticBonds","IncludeConstantBasis","IncludeDefinitions","IncludeDirectories","IncludeFileExtension","IncludeGeneratorTasks","IncludeHydrogens","IncludeInflections","IncludeMetaInformation","IncludePods","IncludeQuantities","IncludeRelatedTables","IncludeSingularTerm","IncludeWindowTimes","Increment","IndefiniteMatrixQ","Indent","IndentingNewlineSpacings","IndentMaxFraction","IndependenceTest","IndependentEdgeSetQ","IndependentPhysicalQuantity","IndependentUnit","IndependentUnitDimension","IndependentVertexSetQ","Indeterminate","IndeterminateThreshold","IndexCreationOptions","Indexed","IndexEdgeTaggedGraph","IndexGraph","IndexTag","Inequality","InexactNumberQ","InexactNumbers","InfiniteFuture","InfiniteLine","InfinitePast","InfinitePlane","Infinity","Infix","InflationAdjust","InflationMethod","Information","InformationData","InformationDataGrid","Inherited","InheritScope","InhomogeneousPoissonProcess","InitialEvaluationHistory","Initialization","InitializationCell","InitializationCellEvaluation","InitializationCellWarning","InitializationObjects","InitializationValue","Initialize","InitialSeeding","InlineCounterAssignments","InlineCounterIncrements","InlineRules","Inner","InnerPolygon","InnerPolyhedron","Inpaint","Input","InputAliases","InputAssumptions","InputAutoReplacements","InputField","InputFieldBox","InputFieldBoxOptions","InputForm","InputGrouping","InputNamePacket","InputNotebook","InputPacket","InputSettings","InputStream","InputString","InputStringPacket","InputToBoxFormPacket","Insert","InsertionFunction","InsertionPointObject","InsertLinebreaks","InsertResults","Inset","Inset3DBox","Inset3DBoxOptions","InsetBox","InsetBoxOptions","Insphere","Install","InstallService","InstanceNormalizationLayer","InString","Integer","IntegerDigits","IntegerExponent","IntegerLength","IntegerName","IntegerPart","IntegerPartitions","IntegerQ","IntegerReverse","Integers","IntegerString","Integral","Integrate","Interactive","InteractiveTradingChart","Interlaced","Interleaving","InternallyBalancedDecomposition","InterpolatingFunction","InterpolatingPolynomial","Interpolation","InterpolationOrder","InterpolationPoints","InterpolationPrecision","Interpretation","InterpretationBox","InterpretationBoxOptions","InterpretationFunction","Interpreter","InterpretTemplate","InterquartileRange","Interrupt","InterruptSettings","IntersectedEntityClass","IntersectingQ","Intersection","Interval","IntervalIntersection","IntervalMarkers","IntervalMarkersStyle","IntervalMemberQ","IntervalSlider","IntervalUnion","Into","Inverse","InverseBetaRegularized","InverseCDF","InverseChiSquareDistribution","InverseContinuousWaveletTransform","InverseDistanceTransform","InverseEllipticNomeQ","InverseErf","InverseErfc","InverseFourier","InverseFourierCosTransform","InverseFourierSequenceTransform","InverseFourierSinTransform","InverseFourierTransform","InverseFunction","InverseFunctions","InverseGammaDistribution","InverseGammaRegularized","InverseGaussianDistribution","InverseGudermannian","InverseHankelTransform","InverseHaversine","InverseImagePyramid","InverseJacobiCD","InverseJacobiCN","InverseJacobiCS","InverseJacobiDC","InverseJacobiDN","InverseJacobiDS","InverseJacobiNC","InverseJacobiND","InverseJacobiNS","InverseJacobiSC","InverseJacobiSD","InverseJacobiSN","InverseLaplaceTransform","InverseMellinTransform","InversePermutation","InverseRadon","InverseRadonTransform","InverseSeries","InverseShortTimeFourier","InverseSpectrogram","InverseSurvivalFunction","InverseTransformedRegion","InverseWaveletTransform","InverseWeierstrassP","InverseWishartMatrixDistribution","InverseZTransform","Invisible","InvisibleApplication","InvisibleTimes","IPAddress","IrreduciblePolynomialQ","IslandData","IsolatingInterval","IsomorphicGraphQ","IsotopeData","Italic","Item","ItemAspectRatio","ItemBox","ItemBoxOptions","ItemDisplayFunction","ItemSize","ItemStyle","ItoProcess","JaccardDissimilarity","JacobiAmplitude","Jacobian","JacobiCD","JacobiCN","JacobiCS","JacobiDC","JacobiDN","JacobiDS","JacobiNC","JacobiND","JacobiNS","JacobiP","JacobiSC","JacobiSD","JacobiSN","JacobiSymbol","JacobiZeta","JankoGroupJ1","JankoGroupJ2","JankoGroupJ3","JankoGroupJ4","JarqueBeraALMTest","JohnsonDistribution","Join","JoinAcross","Joined","JoinedCurve","JoinedCurveBox","JoinedCurveBoxOptions","JoinForm","JordanDecomposition","JordanModelDecomposition","JulianDate","JuliaSetBoettcher","JuliaSetIterationCount","JuliaSetPlot","JuliaSetPoints","K","KagiChart","KaiserBesselWindow","KaiserWindow","KalmanEstimator","KalmanFilter","KarhunenLoeveDecomposition","KaryTree","KatzCentrality","KCoreComponents","KDistribution","KEdgeConnectedComponents","KEdgeConnectedGraphQ","KeepExistingVersion","KelvinBei","KelvinBer","KelvinKei","KelvinKer","KendallTau","KendallTauTest","KernelExecute","KernelFunction","KernelMixtureDistribution","KernelObject","Kernels","Ket","Key","KeyCollisionFunction","KeyComplement","KeyDrop","KeyDropFrom","KeyExistsQ","KeyFreeQ","KeyIntersection","KeyMap","KeyMemberQ","KeypointStrength","Keys","KeySelect","KeySort","KeySortBy","KeyTake","KeyUnion","KeyValueMap","KeyValuePattern","Khinchin","KillProcess","KirchhoffGraph","KirchhoffMatrix","KleinInvariantJ","KnapsackSolve","KnightTourGraph","KnotData","KnownUnitQ","KochCurve","KolmogorovSmirnovTest","KroneckerDelta","KroneckerModelDecomposition","KroneckerProduct","KroneckerSymbol","KuiperTest","KumaraswamyDistribution","Kurtosis","KuwaharaFilter","KVertexConnectedComponents","KVertexConnectedGraphQ","LABColor","Label","Labeled","LabeledSlider","LabelingFunction","LabelingSize","LabelStyle","LabelVisibility","LaguerreL","LakeData","LambdaComponents","LambertW","LaminaData","LanczosWindow","LandauDistribution","Language","LanguageCategory","LanguageData","LanguageIdentify","LanguageOptions","LaplaceDistribution","LaplaceTransform","Laplacian","LaplacianFilter","LaplacianGaussianFilter","Large","Larger","Last","Latitude","LatitudeLongitude","LatticeData","LatticeReduce","Launch","LaunchKernels","LayeredGraphPlot","LayerSizeFunction","LayoutInformation","LCHColor","LCM","LeaderSize","LeafCount","LeapYearQ","LearnDistribution","LearnedDistribution","LearningRate","LearningRateMultipliers","LeastSquares","LeastSquaresFilterKernel","Left","LeftArrow","LeftArrowBar","LeftArrowRightArrow","LeftDownTeeVector","LeftDownVector","LeftDownVectorBar","LeftRightArrow","LeftRightVector","LeftTee","LeftTeeArrow","LeftTeeVector","LeftTriangle","LeftTriangleBar","LeftTriangleEqual","LeftUpDownVector","LeftUpTeeVector","LeftUpVector","LeftUpVectorBar","LeftVector","LeftVectorBar","LegendAppearance","Legended","LegendFunction","LegendLabel","LegendLayout","LegendMargins","LegendMarkers","LegendMarkerSize","LegendreP","LegendreQ","LegendreType","Length","LengthWhile","LerchPhi","Less","LessEqual","LessEqualGreater","LessEqualThan","LessFullEqual","LessGreater","LessLess","LessSlantEqual","LessThan","LessTilde","LetterCharacter","LetterCounts","LetterNumber","LetterQ","Level","LeveneTest","LeviCivitaTensor","LevyDistribution","Lexicographic","LibraryDataType","LibraryFunction","LibraryFunctionError","LibraryFunctionInformation","LibraryFunctionLoad","LibraryFunctionUnload","LibraryLoad","LibraryUnload","LicenseID","LiftingFilterData","LiftingWaveletTransform","LightBlue","LightBrown","LightCyan","Lighter","LightGray","LightGreen","Lighting","LightingAngle","LightMagenta","LightOrange","LightPink","LightPurple","LightRed","LightSources","LightYellow","Likelihood","Limit","LimitsPositioning","LimitsPositioningTokens","LindleyDistribution","Line","Line3DBox","Line3DBoxOptions","LinearFilter","LinearFractionalOptimization","LinearFractionalTransform","LinearGradientImage","LinearizingTransformationData","LinearLayer","LinearModelFit","LinearOffsetFunction","LinearOptimization","LinearProgramming","LinearRecurrence","LinearSolve","LinearSolveFunction","LineBox","LineBoxOptions","LineBreak","LinebreakAdjustments","LineBreakChart","LinebreakSemicolonWeighting","LineBreakWithin","LineColor","LineGraph","LineIndent","LineIndentMaxFraction","LineIntegralConvolutionPlot","LineIntegralConvolutionScale","LineLegend","LineOpacity","LineSpacing","LineWrapParts","LinkActivate","LinkClose","LinkConnect","LinkConnectedQ","LinkCreate","LinkError","LinkFlush","LinkFunction","LinkHost","LinkInterrupt","LinkLaunch","LinkMode","LinkObject","LinkOpen","LinkOptions","LinkPatterns","LinkProtocol","LinkRankCentrality","LinkRead","LinkReadHeld","LinkReadyQ","Links","LinkService","LinkWrite","LinkWriteHeld","LiouvilleLambda","List","Listable","ListAnimate","ListContourPlot","ListContourPlot3D","ListConvolve","ListCorrelate","ListCurvePathPlot","ListDeconvolve","ListDensityPlot","ListDensityPlot3D","Listen","ListFormat","ListFourierSequenceTransform","ListInterpolation","ListLineIntegralConvolutionPlot","ListLinePlot","ListLogLinearPlot","ListLogLogPlot","ListLogPlot","ListPicker","ListPickerBox","ListPickerBoxBackground","ListPickerBoxOptions","ListPlay","ListPlot","ListPlot3D","ListPointPlot3D","ListPolarPlot","ListQ","ListSliceContourPlot3D","ListSliceDensityPlot3D","ListSliceVectorPlot3D","ListStepPlot","ListStreamDensityPlot","ListStreamPlot","ListSurfacePlot3D","ListVectorDensityPlot","ListVectorPlot","ListVectorPlot3D","ListZTransform","Literal","LiteralSearch","LocalAdaptiveBinarize","LocalCache","LocalClusteringCoefficient","LocalizeDefinitions","LocalizeVariables","LocalObject","LocalObjects","LocalResponseNormalizationLayer","LocalSubmit","LocalSymbol","LocalTime","LocalTimeZone","LocationEquivalenceTest","LocationTest","Locator","LocatorAutoCreate","LocatorBox","LocatorBoxOptions","LocatorCentering","LocatorPane","LocatorPaneBox","LocatorPaneBoxOptions","LocatorRegion","Locked","Log","Log10","Log2","LogBarnesG","LogGamma","LogGammaDistribution","LogicalExpand","LogIntegral","LogisticDistribution","LogisticSigmoid","LogitModelFit","LogLikelihood","LogLinearPlot","LogLogisticDistribution","LogLogPlot","LogMultinormalDistribution","LogNormalDistribution","LogPlot","LogRankTest","LogSeriesDistribution","LongEqual","Longest","LongestCommonSequence","LongestCommonSequencePositions","LongestCommonSubsequence","LongestCommonSubsequencePositions","LongestMatch","LongestOrderedSequence","LongForm","Longitude","LongLeftArrow","LongLeftRightArrow","LongRightArrow","LongShortTermMemoryLayer","Lookup","Loopback","LoopFreeGraphQ","Looping","LossFunction","LowerCaseQ","LowerLeftArrow","LowerRightArrow","LowerTriangularize","LowerTriangularMatrixQ","LowpassFilter","LQEstimatorGains","LQGRegulator","LQOutputRegulatorGains","LQRegulatorGains","LUBackSubstitution","LucasL","LuccioSamiComponents","LUDecomposition","LunarEclipse","LUVColor","LyapunovSolve","LyonsGroupLy","MachineID","MachineName","MachineNumberQ","MachinePrecision","MacintoshSystemPageSetup","Magenta","Magnification","Magnify","MailAddressValidation","MailExecute","MailFolder","MailItem","MailReceiverFunction","MailResponseFunction","MailSearch","MailServerConnect","MailServerConnection","MailSettings","MainSolve","MaintainDynamicCaches","Majority","MakeBoxes","MakeExpression","MakeRules","ManagedLibraryExpressionID","ManagedLibraryExpressionQ","MandelbrotSetBoettcher","MandelbrotSetDistance","MandelbrotSetIterationCount","MandelbrotSetMemberQ","MandelbrotSetPlot","MangoldtLambda","ManhattanDistance","Manipulate","Manipulator","MannedSpaceMissionData","MannWhitneyTest","MantissaExponent","Manual","Map","MapAll","MapAt","MapIndexed","MAProcess","MapThread","MarchenkoPasturDistribution","MarcumQ","MardiaCombinedTest","MardiaKurtosisTest","MardiaSkewnessTest","MarginalDistribution","MarkovProcessProperties","Masking","MatchingDissimilarity","MatchLocalNameQ","MatchLocalNames","MatchQ","Material","MathematicalFunctionData","MathematicaNotation","MathieuC","MathieuCharacteristicA","MathieuCharacteristicB","MathieuCharacteristicExponent","MathieuCPrime","MathieuGroupM11","MathieuGroupM12","MathieuGroupM22","MathieuGroupM23","MathieuGroupM24","MathieuS","MathieuSPrime","MathMLForm","MathMLText","Matrices","MatrixExp","MatrixForm","MatrixFunction","MatrixLog","MatrixNormalDistribution","MatrixPlot","MatrixPower","MatrixPropertyDistribution","MatrixQ","MatrixRank","MatrixTDistribution","Max","MaxBend","MaxCellMeasure","MaxColorDistance","MaxDate","MaxDetect","MaxDuration","MaxExtraBandwidths","MaxExtraConditions","MaxFeatureDisplacement","MaxFeatures","MaxFilter","MaximalBy","Maximize","MaxItems","MaxIterations","MaxLimit","MaxMemoryUsed","MaxMixtureKernels","MaxOverlapFraction","MaxPlotPoints","MaxPoints","MaxRecursion","MaxStableDistribution","MaxStepFraction","MaxSteps","MaxStepSize","MaxTrainingRounds","MaxValue","MaxwellDistribution","MaxWordGap","McLaughlinGroupMcL","Mean","MeanAbsoluteLossLayer","MeanAround","MeanClusteringCoefficient","MeanDegreeConnectivity","MeanDeviation","MeanFilter","MeanGraphDistance","MeanNeighborDegree","MeanShift","MeanShiftFilter","MeanSquaredLossLayer","Median","MedianDeviation","MedianFilter","MedicalTestData","Medium","MeijerG","MeijerGReduce","MeixnerDistribution","MellinConvolve","MellinTransform","MemberQ","MemoryAvailable","MemoryConstrained","MemoryConstraint","MemoryInUse","MengerMesh","Menu","MenuAppearance","MenuCommandKey","MenuEvaluator","MenuItem","MenuList","MenuPacket","MenuSortingValue","MenuStyle","MenuView","Merge","MergeDifferences","MergingFunction","MersennePrimeExponent","MersennePrimeExponentQ","Mesh","MeshCellCentroid","MeshCellCount","MeshCellHighlight","MeshCellIndex","MeshCellLabel","MeshCellMarker","MeshCellMeasure","MeshCellQuality","MeshCells","MeshCellShapeFunction","MeshCellStyle","MeshConnectivityGraph","MeshCoordinates","MeshFunctions","MeshPrimitives","MeshQualityGoal","MeshRange","MeshRefinementFunction","MeshRegion","MeshRegionQ","MeshShading","MeshStyle","Message","MessageDialog","MessageList","MessageName","MessageObject","MessageOptions","MessagePacket","Messages","MessagesNotebook","MetaCharacters","MetaInformation","MeteorShowerData","Method","MethodOptions","MexicanHatWavelet","MeyerWavelet","Midpoint","Min","MinColorDistance","MinDate","MinDetect","MineralData","MinFilter","MinimalBy","MinimalPolynomial","MinimalStateSpaceModel","Minimize","MinimumTimeIncrement","MinIntervalSize","MinkowskiQuestionMark","MinLimit","MinMax","MinorPlanetData","Minors","MinRecursion","MinSize","MinStableDistribution","Minus","MinusPlus","MinValue","Missing","MissingBehavior","MissingDataMethod","MissingDataRules","MissingQ","MissingString","MissingStyle","MissingValuePattern","MittagLefflerE","MixedFractionParts","MixedGraphQ","MixedMagnitude","MixedRadix","MixedRadixQuantity","MixedUnit","MixtureDistribution","Mod","Modal","Mode","Modular","ModularInverse","ModularLambda","Module","Modulus","MoebiusMu","Molecule","MoleculeContainsQ","MoleculeEquivalentQ","MoleculeGraph","MoleculeModify","MoleculePattern","MoleculePlot","MoleculePlot3D","MoleculeProperty","MoleculeQ","MoleculeRecognize","MoleculeValue","Moment","Momentary","MomentConvert","MomentEvaluate","MomentGeneratingFunction","MomentOfInertia","Monday","Monitor","MonomialList","MonomialOrder","MonsterGroupM","MoonPhase","MoonPosition","MorletWavelet","MorphologicalBinarize","MorphologicalBranchPoints","MorphologicalComponents","MorphologicalEulerNumber","MorphologicalGraph","MorphologicalPerimeter","MorphologicalTransform","MortalityData","Most","MountainData","MouseAnnotation","MouseAppearance","MouseAppearanceTag","MouseButtons","Mouseover","MousePointerNote","MousePosition","MovieData","MovingAverage","MovingMap","MovingMedian","MoyalDistribution","Multicolumn","MultiedgeStyle","MultigraphQ","MultilaunchWarning","MultiLetterItalics","MultiLetterStyle","MultilineFunction","Multinomial","MultinomialDistribution","MultinormalDistribution","MultiplicativeOrder","Multiplicity","MultiplySides","Multiselection","MultivariateHypergeometricDistribution","MultivariatePoissonDistribution","MultivariateTDistribution","N","NakagamiDistribution","NameQ","Names","NamespaceBox","NamespaceBoxOptions","Nand","NArgMax","NArgMin","NBernoulliB","NBodySimulation","NBodySimulationData","NCache","NDEigensystem","NDEigenvalues","NDSolve","NDSolveValue","Nearest","NearestFunction","NearestMeshCells","NearestNeighborGraph","NearestTo","NebulaData","NeedCurrentFrontEndPackagePacket","NeedCurrentFrontEndSymbolsPacket","NeedlemanWunschSimilarity","Needs","Negative","NegativeBinomialDistribution","NegativeDefiniteMatrixQ","NegativeIntegers","NegativeMultinomialDistribution","NegativeRationals","NegativeReals","NegativeSemidefiniteMatrixQ","NeighborhoodData","NeighborhoodGraph","Nest","NestedGreaterGreater","NestedLessLess","NestedScriptRules","NestGraph","NestList","NestWhile","NestWhileList","NetAppend","NetBidirectionalOperator","NetChain","NetDecoder","NetDelete","NetDrop","NetEncoder","NetEvaluationMode","NetExtract","NetFlatten","NetFoldOperator","NetGANOperator","NetGraph","NetInformation","NetInitialize","NetInsert","NetInsertSharedArrays","NetJoin","NetMapOperator","NetMapThreadOperator","NetMeasurements","NetModel","NetNestOperator","NetPairEmbeddingOperator","NetPort","NetPortGradient","NetPrepend","NetRename","NetReplace","NetReplacePart","NetSharedArray","NetStateObject","NetTake","NetTrain","NetTrainResultsObject","NetworkPacketCapture","NetworkPacketRecording","NetworkPacketRecordingDuring","NetworkPacketTrace","NeumannValue","NevilleThetaC","NevilleThetaD","NevilleThetaN","NevilleThetaS","NewPrimitiveStyle","NExpectation","Next","NextCell","NextDate","NextPrime","NextScheduledTaskTime","NHoldAll","NHoldFirst","NHoldRest","NicholsGridLines","NicholsPlot","NightHemisphere","NIntegrate","NMaximize","NMaxValue","NMinimize","NMinValue","NominalVariables","NonAssociative","NoncentralBetaDistribution","NoncentralChiSquareDistribution","NoncentralFRatioDistribution","NoncentralStudentTDistribution","NonCommutativeMultiply","NonConstants","NondimensionalizationTransform","None","NoneTrue","NonlinearModelFit","NonlinearStateSpaceModel","NonlocalMeansFilter","NonNegative","NonNegativeIntegers","NonNegativeRationals","NonNegativeReals","NonPositive","NonPositiveIntegers","NonPositiveRationals","NonPositiveReals","Nor","NorlundB","Norm","Normal","NormalDistribution","NormalGrouping","NormalizationLayer","Normalize","Normalized","NormalizedSquaredEuclideanDistance","NormalMatrixQ","NormalsFunction","NormFunction","Not","NotCongruent","NotCupCap","NotDoubleVerticalBar","Notebook","NotebookApply","NotebookAutoSave","NotebookClose","NotebookConvertSettings","NotebookCreate","NotebookCreateReturnObject","NotebookDefault","NotebookDelete","NotebookDirectory","NotebookDynamicExpression","NotebookEvaluate","NotebookEventActions","NotebookFileName","NotebookFind","NotebookFindReturnObject","NotebookGet","NotebookGetLayoutInformationPacket","NotebookGetMisspellingsPacket","NotebookImport","NotebookInformation","NotebookInterfaceObject","NotebookLocate","NotebookObject","NotebookOpen","NotebookOpenReturnObject","NotebookPath","NotebookPrint","NotebookPut","NotebookPutReturnObject","NotebookRead","NotebookResetGeneratedCells","Notebooks","NotebookSave","NotebookSaveAs","NotebookSelection","NotebookSetupLayoutInformationPacket","NotebooksMenu","NotebookTemplate","NotebookWrite","NotElement","NotEqualTilde","NotExists","NotGreater","NotGreaterEqual","NotGreaterFullEqual","NotGreaterGreater","NotGreaterLess","NotGreaterSlantEqual","NotGreaterTilde","Nothing","NotHumpDownHump","NotHumpEqual","NotificationFunction","NotLeftTriangle","NotLeftTriangleBar","NotLeftTriangleEqual","NotLess","NotLessEqual","NotLessFullEqual","NotLessGreater","NotLessLess","NotLessSlantEqual","NotLessTilde","NotNestedGreaterGreater","NotNestedLessLess","NotPrecedes","NotPrecedesEqual","NotPrecedesSlantEqual","NotPrecedesTilde","NotReverseElement","NotRightTriangle","NotRightTriangleBar","NotRightTriangleEqual","NotSquareSubset","NotSquareSubsetEqual","NotSquareSuperset","NotSquareSupersetEqual","NotSubset","NotSubsetEqual","NotSucceeds","NotSucceedsEqual","NotSucceedsSlantEqual","NotSucceedsTilde","NotSuperset","NotSupersetEqual","NotTilde","NotTildeEqual","NotTildeFullEqual","NotTildeTilde","NotVerticalBar","Now","NoWhitespace","NProbability","NProduct","NProductFactors","NRoots","NSolve","NSum","NSumTerms","NuclearExplosionData","NuclearReactorData","Null","NullRecords","NullSpace","NullWords","Number","NumberCompose","NumberDecompose","NumberExpand","NumberFieldClassNumber","NumberFieldDiscriminant","NumberFieldFundamentalUnits","NumberFieldIntegralBasis","NumberFieldNormRepresentatives","NumberFieldRegulator","NumberFieldRootsOfUnity","NumberFieldSignature","NumberForm","NumberFormat","NumberLinePlot","NumberMarks","NumberMultiplier","NumberPadding","NumberPoint","NumberQ","NumberSeparator","NumberSigns","NumberString","Numerator","NumeratorDenominator","NumericalOrder","NumericalSort","NumericArray","NumericArrayQ","NumericArrayType","NumericFunction","NumericQ","NuttallWindow","NValues","NyquistGridLines","NyquistPlot","O","ObservabilityGramian","ObservabilityMatrix","ObservableDecomposition","ObservableModelQ","OceanData","Octahedron","OddQ","Off","Offset","OLEData","On","ONanGroupON","Once","OneIdentity","Opacity","OpacityFunction","OpacityFunctionScaling","Open","OpenAppend","Opener","OpenerBox","OpenerBoxOptions","OpenerView","OpenFunctionInspectorPacket","Opening","OpenRead","OpenSpecialOptions","OpenTemporary","OpenWrite","Operate","OperatingSystem","OperatorApplied","OptimumFlowData","Optional","OptionalElement","OptionInspectorSettings","OptionQ","Options","OptionsPacket","OptionsPattern","OptionValue","OptionValueBox","OptionValueBoxOptions","Or","Orange","Order","OrderDistribution","OrderedQ","Ordering","OrderingBy","OrderingLayer","Orderless","OrderlessPatternSequence","OrnsteinUhlenbeckProcess","Orthogonalize","OrthogonalMatrixQ","Out","Outer","OuterPolygon","OuterPolyhedron","OutputAutoOverwrite","OutputControllabilityMatrix","OutputControllableModelQ","OutputForm","OutputFormData","OutputGrouping","OutputMathEditExpression","OutputNamePacket","OutputResponse","OutputSizeLimit","OutputStream","Over","OverBar","OverDot","Overflow","OverHat","Overlaps","Overlay","OverlayBox","OverlayBoxOptions","Overscript","OverscriptBox","OverscriptBoxOptions","OverTilde","OverVector","OverwriteTarget","OwenT","OwnValues","Package","PackingMethod","PackPaclet","PacletDataRebuild","PacletDirectoryAdd","PacletDirectoryLoad","PacletDirectoryRemove","PacletDirectoryUnload","PacletDisable","PacletEnable","PacletFind","PacletFindRemote","PacletInformation","PacletInstall","PacletInstallSubmit","PacletNewerQ","PacletObject","PacletObjectQ","PacletSite","PacletSiteObject","PacletSiteRegister","PacletSites","PacletSiteUnregister","PacletSiteUpdate","PacletUninstall","PacletUpdate","PaddedForm","Padding","PaddingLayer","PaddingSize","PadeApproximant","PadLeft","PadRight","PageBreakAbove","PageBreakBelow","PageBreakWithin","PageFooterLines","PageFooters","PageHeaderLines","PageHeaders","PageHeight","PageRankCentrality","PageTheme","PageWidth","Pagination","PairedBarChart","PairedHistogram","PairedSmoothHistogram","PairedTTest","PairedZTest","PaletteNotebook","PalettePath","PalindromeQ","Pane","PaneBox","PaneBoxOptions","Panel","PanelBox","PanelBoxOptions","Paneled","PaneSelector","PaneSelectorBox","PaneSelectorBoxOptions","PaperWidth","ParabolicCylinderD","ParagraphIndent","ParagraphSpacing","ParallelArray","ParallelCombine","ParallelDo","Parallelepiped","ParallelEvaluate","Parallelization","Parallelize","ParallelMap","ParallelNeeds","Parallelogram","ParallelProduct","ParallelSubmit","ParallelSum","ParallelTable","ParallelTry","Parameter","ParameterEstimator","ParameterMixtureDistribution","ParameterVariables","ParametricFunction","ParametricNDSolve","ParametricNDSolveValue","ParametricPlot","ParametricPlot3D","ParametricRampLayer","ParametricRegion","ParentBox","ParentCell","ParentConnect","ParentDirectory","ParentForm","Parenthesize","ParentList","ParentNotebook","ParetoDistribution","ParetoPickandsDistribution","ParkData","Part","PartBehavior","PartialCorrelationFunction","PartialD","ParticleAcceleratorData","ParticleData","Partition","PartitionGranularity","PartitionsP","PartitionsQ","PartLayer","PartOfSpeech","PartProtection","ParzenWindow","PascalDistribution","PassEventsDown","PassEventsUp","Paste","PasteAutoQuoteCharacters","PasteBoxFormInlineCells","PasteButton","Path","PathGraph","PathGraphQ","Pattern","PatternFilling","PatternSequence","PatternTest","PauliMatrix","PaulWavelet","Pause","PausedTime","PDF","PeakDetect","PeanoCurve","PearsonChiSquareTest","PearsonCorrelationTest","PearsonDistribution","PercentForm","PerfectNumber","PerfectNumberQ","PerformanceGoal","Perimeter","PeriodicBoundaryCondition","PeriodicInterpolation","Periodogram","PeriodogramArray","Permanent","Permissions","PermissionsGroup","PermissionsGroupMemberQ","PermissionsGroups","PermissionsKey","PermissionsKeys","PermutationCycles","PermutationCyclesQ","PermutationGroup","PermutationLength","PermutationList","PermutationListQ","PermutationMax","PermutationMin","PermutationOrder","PermutationPower","PermutationProduct","PermutationReplace","Permutations","PermutationSupport","Permute","PeronaMalikFilter","Perpendicular","PerpendicularBisector","PersistenceLocation","PersistenceTime","PersistentObject","PersistentObjects","PersistentValue","PersonData","PERTDistribution","PetersenGraph","PhaseMargins","PhaseRange","PhysicalSystemData","Pi","Pick","PIDData","PIDDerivativeFilter","PIDFeedforward","PIDTune","Piecewise","PiecewiseExpand","PieChart","PieChart3D","PillaiTrace","PillaiTraceTest","PingTime","Pink","PitchRecognize","Pivoting","PixelConstrained","PixelValue","PixelValuePositions","Placed","Placeholder","PlaceholderReplace","Plain","PlanarAngle","PlanarGraph","PlanarGraphQ","PlanckRadiationLaw","PlaneCurveData","PlanetaryMoonData","PlanetData","PlantData","Play","PlayRange","Plot","Plot3D","Plot3Matrix","PlotDivision","PlotJoined","PlotLabel","PlotLabels","PlotLayout","PlotLegends","PlotMarkers","PlotPoints","PlotRange","PlotRangeClipping","PlotRangeClipPlanesStyle","PlotRangePadding","PlotRegion","PlotStyle","PlotTheme","Pluralize","Plus","PlusMinus","Pochhammer","PodStates","PodWidth","Point","Point3DBox","Point3DBoxOptions","PointBox","PointBoxOptions","PointFigureChart","PointLegend","PointSize","PoissonConsulDistribution","PoissonDistribution","PoissonProcess","PoissonWindow","PolarAxes","PolarAxesOrigin","PolarGridLines","PolarPlot","PolarTicks","PoleZeroMarkers","PolyaAeppliDistribution","PolyGamma","Polygon","Polygon3DBox","Polygon3DBoxOptions","PolygonalNumber","PolygonAngle","PolygonBox","PolygonBoxOptions","PolygonCoordinates","PolygonDecomposition","PolygonHoleScale","PolygonIntersections","PolygonScale","Polyhedron","PolyhedronAngle","PolyhedronCoordinates","PolyhedronData","PolyhedronDecomposition","PolyhedronGenus","PolyLog","PolynomialExtendedGCD","PolynomialForm","PolynomialGCD","PolynomialLCM","PolynomialMod","PolynomialQ","PolynomialQuotient","PolynomialQuotientRemainder","PolynomialReduce","PolynomialRemainder","Polynomials","PoolingLayer","PopupMenu","PopupMenuBox","PopupMenuBoxOptions","PopupView","PopupWindow","Position","PositionIndex","Positive","PositiveDefiniteMatrixQ","PositiveIntegers","PositiveRationals","PositiveReals","PositiveSemidefiniteMatrixQ","PossibleZeroQ","Postfix","PostScript","Power","PowerDistribution","PowerExpand","PowerMod","PowerModList","PowerRange","PowerSpectralDensity","PowersRepresentations","PowerSymmetricPolynomial","Precedence","PrecedenceForm","Precedes","PrecedesEqual","PrecedesSlantEqual","PrecedesTilde","Precision","PrecisionGoal","PreDecrement","Predict","PredictionRoot","PredictorFunction","PredictorInformation","PredictorMeasurements","PredictorMeasurementsObject","PreemptProtect","PreferencesPath","Prefix","PreIncrement","Prepend","PrependLayer","PrependTo","PreprocessingRules","PreserveColor","PreserveImageOptions","Previous","PreviousCell","PreviousDate","PriceGraphDistribution","PrimaryPlaceholder","Prime","PrimeNu","PrimeOmega","PrimePi","PrimePowerQ","PrimeQ","Primes","PrimeZetaP","PrimitivePolynomialQ","PrimitiveRoot","PrimitiveRootList","PrincipalComponents","PrincipalValue","Print","PrintableASCIIQ","PrintAction","PrintForm","PrintingCopies","PrintingOptions","PrintingPageRange","PrintingStartingPageNumber","PrintingStyleEnvironment","Printout3D","Printout3DPreviewer","PrintPrecision","PrintTemporary","Prism","PrismBox","PrismBoxOptions","PrivateCellOptions","PrivateEvaluationOptions","PrivateFontOptions","PrivateFrontEndOptions","PrivateKey","PrivateNotebookOptions","PrivatePaths","Probability","ProbabilityDistribution","ProbabilityPlot","ProbabilityPr","ProbabilityScalePlot","ProbitModelFit","ProcessConnection","ProcessDirectory","ProcessEnvironment","Processes","ProcessEstimator","ProcessInformation","ProcessObject","ProcessParameterAssumptions","ProcessParameterQ","ProcessStateDomain","ProcessStatus","ProcessTimeDomain","Product","ProductDistribution","ProductLog","ProgressIndicator","ProgressIndicatorBox","ProgressIndicatorBoxOptions","Projection","Prolog","PromptForm","ProofObject","Properties","Property","PropertyList","PropertyValue","Proportion","Proportional","Protect","Protected","ProteinData","Pruning","PseudoInverse","PsychrometricPropertyData","PublicKey","PublisherID","PulsarData","PunctuationCharacter","Purple","Put","PutAppend","Pyramid","PyramidBox","PyramidBoxOptions","QBinomial","QFactorial","QGamma","QHypergeometricPFQ","QnDispersion","QPochhammer","QPolyGamma","QRDecomposition","QuadraticIrrationalQ","QuadraticOptimization","Quantile","QuantilePlot","Quantity","QuantityArray","QuantityDistribution","QuantityForm","QuantityMagnitude","QuantityQ","QuantityUnit","QuantityVariable","QuantityVariableCanonicalUnit","QuantityVariableDimensions","QuantityVariableIdentifier","QuantityVariablePhysicalQuantity","Quartics","QuartileDeviation","Quartiles","QuartileSkewness","Query","QueueingNetworkProcess","QueueingProcess","QueueProperties","Quiet","Quit","Quotient","QuotientRemainder","RadialGradientImage","RadialityCentrality","RadicalBox","RadicalBoxOptions","RadioButton","RadioButtonBar","RadioButtonBox","RadioButtonBoxOptions","Radon","RadonTransform","RamanujanTau","RamanujanTauL","RamanujanTauTheta","RamanujanTauZ","Ramp","Random","RandomChoice","RandomColor","RandomComplex","RandomEntity","RandomFunction","RandomGeoPosition","RandomGraph","RandomImage","RandomInstance","RandomInteger","RandomPermutation","RandomPoint","RandomPolygon","RandomPolyhedron","RandomPrime","RandomReal","RandomSample","RandomSeed","RandomSeeding","RandomVariate","RandomWalkProcess","RandomWord","Range","RangeFilter","RangeSpecification","RankedMax","RankedMin","RarerProbability","Raster","Raster3D","Raster3DBox","Raster3DBoxOptions","RasterArray","RasterBox","RasterBoxOptions","Rasterize","RasterSize","Rational","RationalFunctions","Rationalize","Rationals","Ratios","RawArray","RawBoxes","RawData","RawMedium","RayleighDistribution","Re","Read","ReadByteArray","ReadLine","ReadList","ReadProtected","ReadString","Real","RealAbs","RealBlockDiagonalForm","RealDigits","RealExponent","Reals","RealSign","Reap","RebuildPacletData","RecognitionPrior","RecognitionThreshold","Record","RecordLists","RecordSeparators","Rectangle","RectangleBox","RectangleBoxOptions","RectangleChart","RectangleChart3D","RectangularRepeatingElement","RecurrenceFilter","RecurrenceTable","RecurringDigitsForm","Red","Reduce","RefBox","ReferenceLineStyle","ReferenceMarkers","ReferenceMarkerStyle","Refine","ReflectionMatrix","ReflectionTransform","Refresh","RefreshRate","Region","RegionBinarize","RegionBoundary","RegionBoundaryStyle","RegionBounds","RegionCentroid","RegionDifference","RegionDimension","RegionDisjoint","RegionDistance","RegionDistanceFunction","RegionEmbeddingDimension","RegionEqual","RegionFillingStyle","RegionFunction","RegionImage","RegionIntersection","RegionMeasure","RegionMember","RegionMemberFunction","RegionMoment","RegionNearest","RegionNearestFunction","RegionPlot","RegionPlot3D","RegionProduct","RegionQ","RegionResize","RegionSize","RegionSymmetricDifference","RegionUnion","RegionWithin","RegisterExternalEvaluator","RegularExpression","Regularization","RegularlySampledQ","RegularPolygon","ReIm","ReImLabels","ReImPlot","ReImStyle","Reinstall","RelationalDatabase","RelationGraph","Release","ReleaseHold","ReliabilityDistribution","ReliefImage","ReliefPlot","RemoteAuthorizationCaching","RemoteConnect","RemoteConnectionObject","RemoteFile","RemoteRun","RemoteRunProcess","Remove","RemoveAlphaChannel","RemoveAsynchronousTask","RemoveAudioStream","RemoveBackground","RemoveChannelListener","RemoveChannelSubscribers","Removed","RemoveDiacritics","RemoveInputStreamMethod","RemoveOutputStreamMethod","RemoveProperty","RemoveScheduledTask","RemoveUsers","RemoveVideoStream","RenameDirectory","RenameFile","RenderAll","RenderingOptions","RenewalProcess","RenkoChart","RepairMesh","Repeated","RepeatedNull","RepeatedString","RepeatedTiming","RepeatingElement","Replace","ReplaceAll","ReplaceHeldPart","ReplaceImageValue","ReplaceList","ReplacePart","ReplacePixelValue","ReplaceRepeated","ReplicateLayer","RequiredPhysicalQuantities","Resampling","ResamplingAlgorithmData","ResamplingMethod","Rescale","RescalingTransform","ResetDirectory","ResetMenusPacket","ResetScheduledTask","ReshapeLayer","Residue","ResizeLayer","Resolve","ResourceAcquire","ResourceData","ResourceFunction","ResourceObject","ResourceRegister","ResourceRemove","ResourceSearch","ResourceSubmissionObject","ResourceSubmit","ResourceSystemBase","ResourceSystemPath","ResourceUpdate","ResourceVersion","ResponseForm","Rest","RestartInterval","Restricted","Resultant","ResumePacket","Return","ReturnEntersInput","ReturnExpressionPacket","ReturnInputFormPacket","ReturnPacket","ReturnReceiptFunction","ReturnTextPacket","Reverse","ReverseApplied","ReverseBiorthogonalSplineWavelet","ReverseElement","ReverseEquilibrium","ReverseGraph","ReverseSort","ReverseSortBy","ReverseUpEquilibrium","RevolutionAxis","RevolutionPlot3D","RGBColor","RiccatiSolve","RiceDistribution","RidgeFilter","RiemannR","RiemannSiegelTheta","RiemannSiegelZ","RiemannXi","Riffle","Right","RightArrow","RightArrowBar","RightArrowLeftArrow","RightComposition","RightCosetRepresentative","RightDownTeeVector","RightDownVector","RightDownVectorBar","RightTee","RightTeeArrow","RightTeeVector","RightTriangle","RightTriangleBar","RightTriangleEqual","RightUpDownVector","RightUpTeeVector","RightUpVector","RightUpVectorBar","RightVector","RightVectorBar","RiskAchievementImportance","RiskReductionImportance","RogersTanimotoDissimilarity","RollPitchYawAngles","RollPitchYawMatrix","RomanNumeral","Root","RootApproximant","RootIntervals","RootLocusPlot","RootMeanSquare","RootOfUnityQ","RootReduce","Roots","RootSum","Rotate","RotateLabel","RotateLeft","RotateRight","RotationAction","RotationBox","RotationBoxOptions","RotationMatrix","RotationTransform","Round","RoundImplies","RoundingRadius","Row","RowAlignments","RowBackgrounds","RowBox","RowHeights","RowLines","RowMinHeight","RowReduce","RowsEqual","RowSpacings","RSolve","RSolveValue","RudinShapiro","RudvalisGroupRu","Rule","RuleCondition","RuleDelayed","RuleForm","RulePlot","RulerUnits","Run","RunProcess","RunScheduledTask","RunThrough","RuntimeAttributes","RuntimeOptions","RussellRaoDissimilarity","SameQ","SameTest","SameTestProperties","SampledEntityClass","SampleDepth","SampledSoundFunction","SampledSoundList","SampleRate","SamplingPeriod","SARIMAProcess","SARMAProcess","SASTriangle","SatelliteData","SatisfiabilityCount","SatisfiabilityInstances","SatisfiableQ","Saturday","Save","Saveable","SaveAutoDelete","SaveConnection","SaveDefinitions","SavitzkyGolayMatrix","SawtoothWave","Scale","Scaled","ScaleDivisions","ScaledMousePosition","ScaleOrigin","ScalePadding","ScaleRanges","ScaleRangeStyle","ScalingFunctions","ScalingMatrix","ScalingTransform","Scan","ScheduledTask","ScheduledTaskActiveQ","ScheduledTaskInformation","ScheduledTaskInformationData","ScheduledTaskObject","ScheduledTasks","SchurDecomposition","ScientificForm","ScientificNotationThreshold","ScorerGi","ScorerGiPrime","ScorerHi","ScorerHiPrime","ScreenRectangle","ScreenStyleEnvironment","ScriptBaselineShifts","ScriptForm","ScriptLevel","ScriptMinSize","ScriptRules","ScriptSizeMultipliers","Scrollbars","ScrollingOptions","ScrollPosition","SearchAdjustment","SearchIndexObject","SearchIndices","SearchQueryString","SearchResultObject","Sec","Sech","SechDistribution","SecondOrderConeOptimization","SectionGrouping","SectorChart","SectorChart3D","SectorOrigin","SectorSpacing","SecuredAuthenticationKey","SecuredAuthenticationKeys","SeedRandom","Select","Selectable","SelectComponents","SelectedCells","SelectedNotebook","SelectFirst","Selection","SelectionAnimate","SelectionCell","SelectionCellCreateCell","SelectionCellDefaultStyle","SelectionCellParentStyle","SelectionCreateCell","SelectionDebuggerTag","SelectionDuplicateCell","SelectionEvaluate","SelectionEvaluateCreateCell","SelectionMove","SelectionPlaceholder","SelectionSetStyle","SelectWithContents","SelfLoops","SelfLoopStyle","SemanticImport","SemanticImportString","SemanticInterpretation","SemialgebraicComponentInstances","SemidefiniteOptimization","SendMail","SendMessage","Sequence","SequenceAlignment","SequenceAttentionLayer","SequenceCases","SequenceCount","SequenceFold","SequenceFoldList","SequenceForm","SequenceHold","SequenceLastLayer","SequenceMostLayer","SequencePosition","SequencePredict","SequencePredictorFunction","SequenceReplace","SequenceRestLayer","SequenceReverseLayer","SequenceSplit","Series","SeriesCoefficient","SeriesData","SeriesTermGoal","ServiceConnect","ServiceDisconnect","ServiceExecute","ServiceObject","ServiceRequest","ServiceResponse","ServiceSubmit","SessionSubmit","SessionTime","Set","SetAccuracy","SetAlphaChannel","SetAttributes","Setbacks","SetBoxFormNamesPacket","SetCloudDirectory","SetCookies","SetDelayed","SetDirectory","SetEnvironment","SetEvaluationNotebook","SetFileDate","SetFileLoadingContext","SetNotebookStatusLine","SetOptions","SetOptionsPacket","SetPermissions","SetPrecision","SetProperty","SetSecuredAuthenticationKey","SetSelectedNotebook","SetSharedFunction","SetSharedVariable","SetSpeechParametersPacket","SetStreamPosition","SetSystemModel","SetSystemOptions","Setter","SetterBar","SetterBox","SetterBoxOptions","Setting","SetUsers","SetValue","Shading","Shallow","ShannonWavelet","ShapiroWilkTest","Share","SharingList","Sharpen","ShearingMatrix","ShearingTransform","ShellRegion","ShenCastanMatrix","ShiftedGompertzDistribution","ShiftRegisterSequence","Short","ShortDownArrow","Shortest","ShortestMatch","ShortestPathFunction","ShortLeftArrow","ShortRightArrow","ShortTimeFourier","ShortTimeFourierData","ShortUpArrow","Show","ShowAutoConvert","ShowAutoSpellCheck","ShowAutoStyles","ShowCellBracket","ShowCellLabel","ShowCellTags","ShowClosedCellArea","ShowCodeAssist","ShowContents","ShowControls","ShowCursorTracker","ShowGroupOpenCloseIcon","ShowGroupOpener","ShowInvisibleCharacters","ShowPageBreaks","ShowPredictiveInterface","ShowSelection","ShowShortBoxForm","ShowSpecialCharacters","ShowStringCharacters","ShowSyntaxStyles","ShrinkingDelay","ShrinkWrapBoundingBox","SiderealTime","SiegelTheta","SiegelTukeyTest","SierpinskiCurve","SierpinskiMesh","Sign","Signature","SignedRankTest","SignedRegionDistance","SignificanceLevel","SignPadding","SignTest","SimilarityRules","SimpleGraph","SimpleGraphQ","SimplePolygonQ","SimplePolyhedronQ","Simplex","Simplify","Sin","Sinc","SinghMaddalaDistribution","SingleEvaluation","SingleLetterItalics","SingleLetterStyle","SingularValueDecomposition","SingularValueList","SingularValuePlot","SingularValues","Sinh","SinhIntegral","SinIntegral","SixJSymbol","Skeleton","SkeletonTransform","SkellamDistribution","Skewness","SkewNormalDistribution","SkinStyle","Skip","SliceContourPlot3D","SliceDensityPlot3D","SliceDistribution","SliceVectorPlot3D","Slider","Slider2D","Slider2DBox","Slider2DBoxOptions","SliderBox","SliderBoxOptions","SlideView","Slot","SlotSequence","Small","SmallCircle","Smaller","SmithDecomposition","SmithDelayCompensator","SmithWatermanSimilarity","SmoothDensityHistogram","SmoothHistogram","SmoothHistogram3D","SmoothKernelDistribution","SnDispersion","Snippet","SnubPolyhedron","SocialMediaData","Socket","SocketConnect","SocketListen","SocketListener","SocketObject","SocketOpen","SocketReadMessage","SocketReadyQ","Sockets","SocketWaitAll","SocketWaitNext","SoftmaxLayer","SokalSneathDissimilarity","SolarEclipse","SolarSystemFeatureData","SolidAngle","SolidData","SolidRegionQ","Solve","SolveAlways","SolveDelayed","Sort","SortBy","SortedBy","SortedEntityClass","Sound","SoundAndGraphics","SoundNote","SoundVolume","SourceLink","Sow","Space","SpaceCurveData","SpaceForm","Spacer","Spacings","Span","SpanAdjustments","SpanCharacterRounding","SpanFromAbove","SpanFromBoth","SpanFromLeft","SpanLineThickness","SpanMaxSize","SpanMinSize","SpanningCharacters","SpanSymmetric","SparseArray","SpatialGraphDistribution","SpatialMedian","SpatialTransformationLayer","Speak","SpeakerMatchQ","SpeakTextPacket","SpearmanRankTest","SpearmanRho","SpeciesData","SpecificityGoal","SpectralLineData","Spectrogram","SpectrogramArray","Specularity","SpeechCases","SpeechInterpreter","SpeechRecognize","SpeechSynthesize","SpellingCorrection","SpellingCorrectionList","SpellingDictionaries","SpellingDictionariesPath","SpellingOptions","SpellingSuggestionsPacket","Sphere","SphereBox","SpherePoints","SphericalBesselJ","SphericalBesselY","SphericalHankelH1","SphericalHankelH2","SphericalHarmonicY","SphericalPlot3D","SphericalRegion","SphericalShell","SpheroidalEigenvalue","SpheroidalJoiningFactor","SpheroidalPS","SpheroidalPSPrime","SpheroidalQS","SpheroidalQSPrime","SpheroidalRadialFactor","SpheroidalS1","SpheroidalS1Prime","SpheroidalS2","SpheroidalS2Prime","Splice","SplicedDistribution","SplineClosed","SplineDegree","SplineKnots","SplineWeights","Split","SplitBy","SpokenString","Sqrt","SqrtBox","SqrtBoxOptions","Square","SquaredEuclideanDistance","SquareFreeQ","SquareIntersection","SquareMatrixQ","SquareRepeatingElement","SquaresR","SquareSubset","SquareSubsetEqual","SquareSuperset","SquareSupersetEqual","SquareUnion","SquareWave","SSSTriangle","StabilityMargins","StabilityMarginsStyle","StableDistribution","Stack","StackBegin","StackComplete","StackedDateListPlot","StackedListPlot","StackInhibit","StadiumShape","StandardAtmosphereData","StandardDeviation","StandardDeviationFilter","StandardForm","Standardize","Standardized","StandardOceanData","StandbyDistribution","Star","StarClusterData","StarData","StarGraph","StartAsynchronousTask","StartExternalSession","StartingStepSize","StartOfLine","StartOfString","StartProcess","StartScheduledTask","StartupSound","StartWebSession","StateDimensions","StateFeedbackGains","StateOutputEstimator","StateResponse","StateSpaceModel","StateSpaceRealization","StateSpaceTransform","StateTransformationLinearize","StationaryDistribution","StationaryWaveletPacketTransform","StationaryWaveletTransform","StatusArea","StatusCentrality","StepMonitor","StereochemistryElements","StieltjesGamma","StippleShading","StirlingS1","StirlingS2","StopAsynchronousTask","StoppingPowerData","StopScheduledTask","StrataVariables","StratonovichProcess","StreamColorFunction","StreamColorFunctionScaling","StreamDensityPlot","StreamMarkers","StreamPlot","StreamPoints","StreamPosition","Streams","StreamScale","StreamStyle","String","StringBreak","StringByteCount","StringCases","StringContainsQ","StringCount","StringDelete","StringDrop","StringEndsQ","StringExpression","StringExtract","StringForm","StringFormat","StringFreeQ","StringInsert","StringJoin","StringLength","StringMatchQ","StringPadLeft","StringPadRight","StringPart","StringPartition","StringPosition","StringQ","StringRepeat","StringReplace","StringReplaceList","StringReplacePart","StringReverse","StringRiffle","StringRotateLeft","StringRotateRight","StringSkeleton","StringSplit","StringStartsQ","StringTake","StringTemplate","StringToByteArray","StringToStream","StringTrim","StripBoxes","StripOnInput","StripWrapperBoxes","StrokeForm","StructuralImportance","StructuredArray","StructuredArrayHeadQ","StructuredSelection","StruveH","StruveL","Stub","StudentTDistribution","Style","StyleBox","StyleBoxAutoDelete","StyleData","StyleDefinitions","StyleForm","StyleHints","StyleKeyMapping","StyleMenuListing","StyleNameDialogSettings","StyleNames","StylePrint","StyleSheetPath","Subdivide","Subfactorial","Subgraph","SubMinus","SubPlus","SubresultantPolynomialRemainders","SubresultantPolynomials","Subresultants","Subscript","SubscriptBox","SubscriptBoxOptions","Subscripted","Subsequences","Subset","SubsetCases","SubsetCount","SubsetEqual","SubsetMap","SubsetPosition","SubsetQ","SubsetReplace","Subsets","SubStar","SubstitutionSystem","Subsuperscript","SubsuperscriptBox","SubsuperscriptBoxOptions","SubtitleEncoding","SubtitleTracks","Subtract","SubtractFrom","SubtractSides","SubValues","Succeeds","SucceedsEqual","SucceedsSlantEqual","SucceedsTilde","Success","SuchThat","Sum","SumConvergence","SummationLayer","Sunday","SunPosition","Sunrise","Sunset","SuperDagger","SuperMinus","SupernovaData","SuperPlus","Superscript","SuperscriptBox","SuperscriptBoxOptions","Superset","SupersetEqual","SuperStar","Surd","SurdForm","SurfaceAppearance","SurfaceArea","SurfaceColor","SurfaceData","SurfaceGraphics","SurvivalDistribution","SurvivalFunction","SurvivalModel","SurvivalModelFit","SuspendPacket","SuzukiDistribution","SuzukiGroupSuz","SwatchLegend","Switch","Symbol","SymbolName","SymletWavelet","Symmetric","SymmetricGroup","SymmetricKey","SymmetricMatrixQ","SymmetricPolynomial","SymmetricReduction","Symmetrize","SymmetrizedArray","SymmetrizedArrayRules","SymmetrizedDependentComponents","SymmetrizedIndependentComponents","SymmetrizedReplacePart","SynchronousInitialization","SynchronousUpdating","Synonyms","Syntax","SyntaxForm","SyntaxInformation","SyntaxLength","SyntaxPacket","SyntaxQ","SynthesizeMissingValues","SystemCredential","SystemCredentialData","SystemCredentialKey","SystemCredentialKeys","SystemCredentialStoreObject","SystemDialogInput","SystemException","SystemGet","SystemHelpPath","SystemInformation","SystemInformationData","SystemInstall","SystemModel","SystemModeler","SystemModelExamples","SystemModelLinearize","SystemModelParametricSimulate","SystemModelPlot","SystemModelProgressReporting","SystemModelReliability","SystemModels","SystemModelSimulate","SystemModelSimulateSensitivity","SystemModelSimulationData","SystemOpen","SystemOptions","SystemProcessData","SystemProcesses","SystemsConnectionsModel","SystemsModelDelay","SystemsModelDelayApproximate","SystemsModelDelete","SystemsModelDimensions","SystemsModelExtract","SystemsModelFeedbackConnect","SystemsModelLabels","SystemsModelLinearity","SystemsModelMerge","SystemsModelOrder","SystemsModelParallelConnect","SystemsModelSeriesConnect","SystemsModelStateFeedbackConnect","SystemsModelVectorRelativeOrders","SystemStub","SystemTest","Tab","TabFilling","Table","TableAlignments","TableDepth","TableDirections","TableForm","TableHeadings","TableSpacing","TableView","TableViewBox","TableViewBoxBackground","TableViewBoxItemSize","TableViewBoxOptions","TabSpacings","TabView","TabViewBox","TabViewBoxOptions","TagBox","TagBoxNote","TagBoxOptions","TaggingRules","TagSet","TagSetDelayed","TagStyle","TagUnset","Take","TakeDrop","TakeLargest","TakeLargestBy","TakeList","TakeSmallest","TakeSmallestBy","TakeWhile","Tally","Tan","Tanh","TargetDevice","TargetFunctions","TargetSystem","TargetUnits","TaskAbort","TaskExecute","TaskObject","TaskRemove","TaskResume","Tasks","TaskSuspend","TaskWait","TautologyQ","TelegraphProcess","TemplateApply","TemplateArgBox","TemplateBox","TemplateBoxOptions","TemplateEvaluate","TemplateExpression","TemplateIf","TemplateObject","TemplateSequence","TemplateSlot","TemplateSlotSequence","TemplateUnevaluated","TemplateVerbatim","TemplateWith","TemporalData","TemporalRegularity","Temporary","TemporaryVariable","TensorContract","TensorDimensions","TensorExpand","TensorProduct","TensorQ","TensorRank","TensorReduce","TensorSymmetry","TensorTranspose","TensorWedge","TestID","TestReport","TestReportObject","TestResultObject","Tetrahedron","TetrahedronBox","TetrahedronBoxOptions","TeXForm","TeXSave","Text","Text3DBox","Text3DBoxOptions","TextAlignment","TextBand","TextBoundingBox","TextBox","TextCases","TextCell","TextClipboardType","TextContents","TextData","TextElement","TextForm","TextGrid","TextJustification","TextLine","TextPacket","TextParagraph","TextPosition","TextRecognize","TextSearch","TextSearchReport","TextSentences","TextString","TextStructure","TextStyle","TextTranslation","Texture","TextureCoordinateFunction","TextureCoordinateScaling","TextWords","Therefore","ThermodynamicData","ThermometerGauge","Thick","Thickness","Thin","Thinning","ThisLink","ThompsonGroupTh","Thread","ThreadingLayer","ThreeJSymbol","Threshold","Through","Throw","ThueMorse","Thumbnail","Thursday","Ticks","TicksStyle","TideData","Tilde","TildeEqual","TildeFullEqual","TildeTilde","TimeConstrained","TimeConstraint","TimeDirection","TimeFormat","TimeGoal","TimelinePlot","TimeObject","TimeObjectQ","TimeRemaining","Times","TimesBy","TimeSeries","TimeSeriesAggregate","TimeSeriesForecast","TimeSeriesInsert","TimeSeriesInvertibility","TimeSeriesMap","TimeSeriesMapThread","TimeSeriesModel","TimeSeriesModelFit","TimeSeriesResample","TimeSeriesRescale","TimeSeriesShift","TimeSeriesThread","TimeSeriesWindow","TimeUsed","TimeValue","TimeWarpingCorrespondence","TimeWarpingDistance","TimeZone","TimeZoneConvert","TimeZoneOffset","Timing","Tiny","TitleGrouping","TitsGroupT","ToBoxes","ToCharacterCode","ToColor","ToContinuousTimeModel","ToDate","Today","ToDiscreteTimeModel","ToEntity","ToeplitzMatrix","ToExpression","ToFileName","Together","Toggle","ToggleFalse","Toggler","TogglerBar","TogglerBox","TogglerBoxOptions","ToHeldExpression","ToInvertibleTimeSeries","TokenWords","Tolerance","ToLowerCase","Tomorrow","ToNumberField","TooBig","Tooltip","TooltipBox","TooltipBoxOptions","TooltipDelay","TooltipStyle","ToonShading","Top","TopHatTransform","ToPolarCoordinates","TopologicalSort","ToRadicals","ToRules","ToSphericalCoordinates","ToString","Total","TotalHeight","TotalLayer","TotalVariationFilter","TotalWidth","TouchPosition","TouchscreenAutoZoom","TouchscreenControlPlacement","ToUpperCase","Tr","Trace","TraceAbove","TraceAction","TraceBackward","TraceDepth","TraceDialog","TraceForward","TraceInternal","TraceLevel","TraceOff","TraceOn","TraceOriginal","TracePrint","TraceScan","TrackedSymbols","TrackingFunction","TracyWidomDistribution","TradingChart","TraditionalForm","TraditionalFunctionNotation","TraditionalNotation","TraditionalOrder","TrainingProgressCheckpointing","TrainingProgressFunction","TrainingProgressMeasurements","TrainingProgressReporting","TrainingStoppingCriterion","TrainingUpdateSchedule","TransferFunctionCancel","TransferFunctionExpand","TransferFunctionFactor","TransferFunctionModel","TransferFunctionPoles","TransferFunctionTransform","TransferFunctionZeros","TransformationClass","TransformationFunction","TransformationFunctions","TransformationMatrix","TransformedDistribution","TransformedField","TransformedProcess","TransformedRegion","TransitionDirection","TransitionDuration","TransitionEffect","TransitiveClosureGraph","TransitiveReductionGraph","Translate","TranslationOptions","TranslationTransform","Transliterate","Transparent","TransparentColor","Transpose","TransposeLayer","TrapSelection","TravelDirections","TravelDirectionsData","TravelDistance","TravelDistanceList","TravelMethod","TravelTime","TreeForm","TreeGraph","TreeGraphQ","TreePlot","TrendStyle","Triangle","TriangleCenter","TriangleConstruct","TriangleMeasurement","TriangleWave","TriangularDistribution","TriangulateMesh","Trig","TrigExpand","TrigFactor","TrigFactorList","Trigger","TrigReduce","TrigToExp","TrimmedMean","TrimmedVariance","TropicalStormData","True","TrueQ","TruncatedDistribution","TruncatedPolyhedron","TsallisQExponentialDistribution","TsallisQGaussianDistribution","TTest","Tube","TubeBezierCurveBox","TubeBezierCurveBoxOptions","TubeBox","TubeBoxOptions","TubeBSplineCurveBox","TubeBSplineCurveBoxOptions","Tuesday","TukeyLambdaDistribution","TukeyWindow","TunnelData","Tuples","TuranGraph","TuringMachine","TuttePolynomial","TwoWayRule","Typed","TypeSpecifier","UnateQ","Uncompress","UnconstrainedParameters","Undefined","UnderBar","Underflow","Underlined","Underoverscript","UnderoverscriptBox","UnderoverscriptBoxOptions","Underscript","UnderscriptBox","UnderscriptBoxOptions","UnderseaFeatureData","UndirectedEdge","UndirectedGraph","UndirectedGraphQ","UndoOptions","UndoTrackedVariables","Unequal","UnequalTo","Unevaluated","UniformDistribution","UniformGraphDistribution","UniformPolyhedron","UniformSumDistribution","Uninstall","Union","UnionedEntityClass","UnionPlus","Unique","UnitaryMatrixQ","UnitBox","UnitConvert","UnitDimensions","Unitize","UnitRootTest","UnitSimplify","UnitStep","UnitSystem","UnitTriangle","UnitVector","UnitVectorLayer","UnityDimensions","UniverseModelData","UniversityData","UnixTime","Unprotect","UnregisterExternalEvaluator","UnsameQ","UnsavedVariables","Unset","UnsetShared","UntrackedVariables","Up","UpArrow","UpArrowBar","UpArrowDownArrow","Update","UpdateDynamicObjects","UpdateDynamicObjectsSynchronous","UpdateInterval","UpdatePacletSites","UpdateSearchIndex","UpDownArrow","UpEquilibrium","UpperCaseQ","UpperLeftArrow","UpperRightArrow","UpperTriangularize","UpperTriangularMatrixQ","Upsample","UpSet","UpSetDelayed","UpTee","UpTeeArrow","UpTo","UpValues","URL","URLBuild","URLDecode","URLDispatcher","URLDownload","URLDownloadSubmit","URLEncode","URLExecute","URLExpand","URLFetch","URLFetchAsynchronous","URLParse","URLQueryDecode","URLQueryEncode","URLRead","URLResponseTime","URLSave","URLSaveAsynchronous","URLShorten","URLSubmit","UseGraphicsRange","UserDefinedWavelet","Using","UsingFrontEnd","UtilityFunction","V2Get","ValenceErrorHandling","ValidationLength","ValidationSet","Value","ValueBox","ValueBoxOptions","ValueDimensions","ValueForm","ValuePreprocessingFunction","ValueQ","Values","ValuesData","Variables","Variance","VarianceEquivalenceTest","VarianceEstimatorFunction","VarianceGammaDistribution","VarianceTest","VectorAngle","VectorAround","VectorAspectRatio","VectorColorFunction","VectorColorFunctionScaling","VectorDensityPlot","VectorGlyphData","VectorGreater","VectorGreaterEqual","VectorLess","VectorLessEqual","VectorMarkers","VectorPlot","VectorPlot3D","VectorPoints","VectorQ","VectorRange","Vectors","VectorScale","VectorScaling","VectorSizes","VectorStyle","Vee","Verbatim","Verbose","VerboseConvertToPostScriptPacket","VerificationTest","VerifyConvergence","VerifyDerivedKey","VerifyDigitalSignature","VerifyFileSignature","VerifyInterpretation","VerifySecurityCertificates","VerifySolutions","VerifyTestAssumptions","Version","VersionedPreferences","VersionNumber","VertexAdd","VertexCapacity","VertexColors","VertexComponent","VertexConnectivity","VertexContract","VertexCoordinateRules","VertexCoordinates","VertexCorrelationSimilarity","VertexCosineSimilarity","VertexCount","VertexCoverQ","VertexDataCoordinates","VertexDegree","VertexDelete","VertexDiceSimilarity","VertexEccentricity","VertexInComponent","VertexInDegree","VertexIndex","VertexJaccardSimilarity","VertexLabeling","VertexLabels","VertexLabelStyle","VertexList","VertexNormals","VertexOutComponent","VertexOutDegree","VertexQ","VertexRenderingFunction","VertexReplace","VertexShape","VertexShapeFunction","VertexSize","VertexStyle","VertexTextureCoordinates","VertexWeight","VertexWeightedGraphQ","Vertical","VerticalBar","VerticalForm","VerticalGauge","VerticalSeparator","VerticalSlider","VerticalTilde","Video","VideoEncoding","VideoExtractFrames","VideoFrameList","VideoFrameMap","VideoPause","VideoPlay","VideoQ","VideoStop","VideoStream","VideoStreams","VideoTimeSeries","VideoTracks","VideoTrim","ViewAngle","ViewCenter","ViewMatrix","ViewPoint","ViewPointSelectorSettings","ViewPort","ViewProjection","ViewRange","ViewVector","ViewVertical","VirtualGroupData","Visible","VisibleCell","VoiceStyleData","VoigtDistribution","VolcanoData","Volume","VonMisesDistribution","VoronoiMesh","WaitAll","WaitAsynchronousTask","WaitNext","WaitUntil","WakebyDistribution","WalleniusHypergeometricDistribution","WaringYuleDistribution","WarpingCorrespondence","WarpingDistance","WatershedComponents","WatsonUSquareTest","WattsStrogatzGraphDistribution","WaveletBestBasis","WaveletFilterCoefficients","WaveletImagePlot","WaveletListPlot","WaveletMapIndexed","WaveletMatrixPlot","WaveletPhi","WaveletPsi","WaveletScale","WaveletScalogram","WaveletThreshold","WeaklyConnectedComponents","WeaklyConnectedGraphComponents","WeaklyConnectedGraphQ","WeakStationarity","WeatherData","WeatherForecastData","WebAudioSearch","WebElementObject","WeberE","WebExecute","WebImage","WebImageSearch","WebSearch","WebSessionObject","WebSessions","WebWindowObject","Wedge","Wednesday","WeibullDistribution","WeierstrassE1","WeierstrassE2","WeierstrassE3","WeierstrassEta1","WeierstrassEta2","WeierstrassEta3","WeierstrassHalfPeriods","WeierstrassHalfPeriodW1","WeierstrassHalfPeriodW2","WeierstrassHalfPeriodW3","WeierstrassInvariantG2","WeierstrassInvariantG3","WeierstrassInvariants","WeierstrassP","WeierstrassPPrime","WeierstrassSigma","WeierstrassZeta","WeightedAdjacencyGraph","WeightedAdjacencyMatrix","WeightedData","WeightedGraphQ","Weights","WelchWindow","WheelGraph","WhenEvent","Which","While","White","WhiteNoiseProcess","WhitePoint","Whitespace","WhitespaceCharacter","WhittakerM","WhittakerW","WienerFilter","WienerProcess","WignerD","WignerSemicircleDistribution","WikidataData","WikidataSearch","WikipediaData","WikipediaSearch","WilksW","WilksWTest","WindDirectionData","WindingCount","WindingPolygon","WindowClickSelect","WindowElements","WindowFloating","WindowFrame","WindowFrameElements","WindowMargins","WindowMovable","WindowOpacity","WindowPersistentStyles","WindowSelected","WindowSize","WindowStatusArea","WindowTitle","WindowToolbars","WindowWidth","WindSpeedData","WindVectorData","WinsorizedMean","WinsorizedVariance","WishartMatrixDistribution","With","WolframAlpha","WolframAlphaDate","WolframAlphaQuantity","WolframAlphaResult","WolframLanguageData","Word","WordBoundary","WordCharacter","WordCloud","WordCount","WordCounts","WordData","WordDefinition","WordFrequency","WordFrequencyData","WordList","WordOrientation","WordSearch","WordSelectionFunction","WordSeparators","WordSpacings","WordStem","WordTranslation","WorkingPrecision","WrapAround","Write","WriteLine","WriteString","Wronskian","XMLElement","XMLObject","XMLTemplate","Xnor","Xor","XYZColor","Yellow","Yesterday","YuleDissimilarity","ZernikeR","ZeroSymmetric","ZeroTest","ZeroWidthTimes","Zeta","ZetaZero","ZIPCodeData","ZipfDistribution","ZoomCenter","ZoomFactor","ZTest","ZTransform","$Aborted","$ActivationGroupID","$ActivationKey","$ActivationUserRegistered","$AddOnsDirectory","$AllowDataUpdates","$AllowExternalChannelFunctions","$AllowInternet","$AssertFunction","$Assumptions","$AsynchronousTask","$AudioDecoders","$AudioEncoders","$AudioInputDevices","$AudioOutputDevices","$BaseDirectory","$BasePacletsDirectory","$BatchInput","$BatchOutput","$BlockchainBase","$BoxForms","$ByteOrdering","$CacheBaseDirectory","$Canceled","$ChannelBase","$CharacterEncoding","$CharacterEncodings","$CloudAccountName","$CloudBase","$CloudConnected","$CloudConnection","$CloudCreditsAvailable","$CloudEvaluation","$CloudExpressionBase","$CloudObjectNameFormat","$CloudObjectURLType","$CloudRootDirectory","$CloudSymbolBase","$CloudUserID","$CloudUserUUID","$CloudVersion","$CloudVersionNumber","$CloudWolframEngineVersionNumber","$CommandLine","$CompilationTarget","$ConditionHold","$ConfiguredKernels","$Context","$ContextPath","$ControlActiveSetting","$Cookies","$CookieStore","$CreationDate","$CurrentLink","$CurrentTask","$CurrentWebSession","$DataStructures","$DateStringFormat","$DefaultAudioInputDevice","$DefaultAudioOutputDevice","$DefaultFont","$DefaultFrontEnd","$DefaultImagingDevice","$DefaultLocalBase","$DefaultMailbox","$DefaultNetworkInterface","$DefaultPath","$DefaultProxyRules","$DefaultSystemCredentialStore","$Display","$DisplayFunction","$DistributedContexts","$DynamicEvaluation","$Echo","$EmbedCodeEnvironments","$EmbeddableServices","$EntityStores","$Epilog","$EvaluationCloudBase","$EvaluationCloudObject","$EvaluationEnvironment","$ExportFormats","$ExternalIdentifierTypes","$ExternalStorageBase","$Failed","$FinancialDataSource","$FontFamilies","$FormatType","$FrontEnd","$FrontEndSession","$GeoEntityTypes","$GeoLocation","$GeoLocationCity","$GeoLocationCountry","$GeoLocationPrecision","$GeoLocationSource","$HistoryLength","$HomeDirectory","$HTMLExportRules","$HTTPCookies","$HTTPRequest","$IgnoreEOF","$ImageFormattingWidth","$ImageResolution","$ImagingDevice","$ImagingDevices","$ImportFormats","$IncomingMailSettings","$InitialDirectory","$Initialization","$InitializationContexts","$Input","$InputFileName","$InputStreamMethods","$Inspector","$InstallationDate","$InstallationDirectory","$InterfaceEnvironment","$InterpreterTypes","$IterationLimit","$KernelCount","$KernelID","$Language","$LaunchDirectory","$LibraryPath","$LicenseExpirationDate","$LicenseID","$LicenseProcesses","$LicenseServer","$LicenseSubprocesses","$LicenseType","$Line","$Linked","$LinkSupported","$LoadedFiles","$LocalBase","$LocalSymbolBase","$MachineAddresses","$MachineDomain","$MachineDomains","$MachineEpsilon","$MachineID","$MachineName","$MachinePrecision","$MachineType","$MaxExtraPrecision","$MaxLicenseProcesses","$MaxLicenseSubprocesses","$MaxMachineNumber","$MaxNumber","$MaxPiecewiseCases","$MaxPrecision","$MaxRootDegree","$MessageGroups","$MessageList","$MessagePrePrint","$Messages","$MinMachineNumber","$MinNumber","$MinorReleaseNumber","$MinPrecision","$MobilePhone","$ModuleNumber","$NetworkConnected","$NetworkInterfaces","$NetworkLicense","$NewMessage","$NewSymbol","$NotebookInlineStorageLimit","$Notebooks","$NoValue","$NumberMarks","$Off","$OperatingSystem","$Output","$OutputForms","$OutputSizeLimit","$OutputStreamMethods","$Packages","$ParentLink","$ParentProcessID","$PasswordFile","$PatchLevelID","$Path","$PathnameSeparator","$PerformanceGoal","$Permissions","$PermissionsGroupBase","$PersistenceBase","$PersistencePath","$PipeSupported","$PlotTheme","$Post","$Pre","$PreferencesDirectory","$PreInitialization","$PrePrint","$PreRead","$PrintForms","$PrintLiteral","$Printout3DPreviewer","$ProcessID","$ProcessorCount","$ProcessorType","$ProductInformation","$ProgramName","$PublisherID","$RandomState","$RecursionLimit","$RegisteredDeviceClasses","$RegisteredUserName","$ReleaseNumber","$RequesterAddress","$RequesterWolframID","$RequesterWolframUUID","$RootDirectory","$ScheduledTask","$ScriptCommandLine","$ScriptInputString","$SecuredAuthenticationKeyTokens","$ServiceCreditsAvailable","$Services","$SessionID","$SetParentLink","$SharedFunctions","$SharedVariables","$SoundDisplay","$SoundDisplayFunction","$SourceLink","$SSHAuthentication","$SubtitleDecoders","$SubtitleEncoders","$SummaryBoxDataSizeLimit","$SuppressInputFormHeads","$SynchronousEvaluation","$SyntaxHandler","$System","$SystemCharacterEncoding","$SystemCredentialStore","$SystemID","$SystemMemory","$SystemShell","$SystemTimeZone","$SystemWordLength","$TemplatePath","$TemporaryDirectory","$TemporaryPrefix","$TestFileName","$TextStyle","$TimedOut","$TimeUnit","$TimeZone","$TimeZoneEntity","$TopDirectory","$TraceOff","$TraceOn","$TracePattern","$TracePostAction","$TracePreAction","$UnitSystem","$Urgent","$UserAddOnsDirectory","$UserAgentLanguages","$UserAgentMachine","$UserAgentName","$UserAgentOperatingSystem","$UserAgentString","$UserAgentVersion","$UserBaseDirectory","$UserBasePacletsDirectory","$UserDocumentsDirectory","$Username","$UserName","$UserURLBase","$Version","$VersionNumber","$VideoDecoders","$VideoEncoders","$VoiceStyles","$WolframDocumentsDirectory","$WolframID","$WolframUUID"];function SS(e){return e?"string"==typeof e?e:e.source:null}function bS(e){return TS("(",e,")?")}function TS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return SS(e)})).join("");return a}function fS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return SS(e)})).join("|")+")";return a}var CS=function(e){var t=fS(TS(/([2-9]|[1-2]\d|[3][0-5])\^\^/,/(\w*\.\w+|\w+\.\w*|\w+)/),/(\d*\.\d+|\d+\.\d*|\d+)/),n={className:"number",relevance:0,begin:TS(t,bS(fS(/``[+-]?(\d*\.\d+|\d+\.\d*|\d+)/,/`([+-]?(\d*\.\d+|\d+\.\d*|\d+))?/)),bS(/\*\^[+-]?\d+/))},a=/[a-zA-Z$][a-zA-Z0-9$]*/,r=new Set(ES),i={variants:[{className:"builtin-symbol",begin:a,"on:begin":function(e,t){r.has(e[0])||t.ignoreMatch()}},{className:"symbol",relevance:0,begin:a}]},o={className:"message-name",relevance:0,begin:TS("::",a)};return{name:"Mathematica",aliases:["mma","wl"],classNameAliases:{brace:"punctuation",pattern:"type",slot:"type",symbol:"variable","named-character":"variable","builtin-symbol":"built_in","message-name":"string"},contains:[e.COMMENT(/\(\*/,/\*\)/,{contains:["self"]}),{className:"pattern",relevance:0,begin:/([a-zA-Z$][a-zA-Z0-9$]*)?_+([a-zA-Z$][a-zA-Z0-9$]*)?/},{className:"slot",relevance:0,begin:/#[a-zA-Z$][a-zA-Z0-9$]*|#+[0-9]?/},o,i,{className:"named-character",begin:/\\\[[$a-zA-Z][$a-zA-Z0-9]+\]/},e.QUOTE_STRING_MODE,n,{className:"operator",relevance:0,begin:/[+\-*/,;.:@~=><&|_`'^?!%]+/},{className:"brace",relevance:0,begin:/[[\](){}]/}]}};var NS=function(e){var t="('|\\.')+",n={relevance:0,contains:[{begin:t}]};return{name:"Matlab",keywords:{keyword:"arguments break case catch classdef continue else elseif end enumeration events for function global if methods otherwise parfor persistent properties return spmd switch try while",built_in:"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i|0 inf nan isnan isinf isfinite j|0 why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson max min nanmax nanmin mean nanmean type table readtable writetable sortrows sort figure plot plot3 scatter scatter3 cellfun legend intersect ismember procrustes hold num2cell "},illegal:'(//|"|#|/\\*|\\s+/\\w+)',contains:[{className:"function",beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}]}]},{className:"built_in",begin:/true|false/,relevance:0,starts:n},{begin:"[a-zA-Z][a-zA-Z_0-9]*('|\\.')+",relevance:0},{className:"number",begin:e.C_NUMBER_RE,relevance:0,starts:n},{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{begin:"''"}]},{begin:/\]|\}|\)/,relevance:0,starts:n},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE,{begin:'""'}],starts:n},e.COMMENT("^\\s*%\\{\\s*$","^\\s*%\\}\\s*$"),e.COMMENT("%","$")]}};var RS=function(e){return{name:"Maxima",keywords:{$pattern:"[A-Za-z_%][0-9A-Za-z_%]*",keyword:"if then else elseif for thru do while unless step in and or not",literal:"true false unknown inf minf ind und %e %i %pi %phi %gamma",built_in:" abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type alias allroots alphacharp alphanumericp amortization %and annuity_fv annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2 applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method av average_degree backtrace bars barsplot barsplot_description base64 base64_decode bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description break bug_report build_info|10 buildq build_sample burn cabs canform canten cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2 charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps chinese cholesky christof chromatic_index chromatic_number cint circulant_graph clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse collectterms columnop columnspace columnswap columnvector combination combine comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph complete_graph complex_number_p components compose_functions concan concat conjugate conmetderiv connected_components connect_vertices cons constant constantp constituent constvalue cont2part content continuous_freq contortion contour_plot contract contract_edge contragrad contrib_ode convert coord copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1 covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate declare declare_constvalue declare_dimensions declare_fundamental_dimensions declare_fundamental_units declare_qty declare_translated declare_unit_conversion declare_units declare_weights decsym defcon define define_alt_display define_variable defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten delta demo demoivre denom depends derivdegree derivlist describe desolve determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export dimacs_import dimension dimensionless dimensions dimensions_as_list direct directory discrete_freq disjoin disjointp disolate disp dispcon dispform dispfun dispJordan display disprule dispterms distrib divide divisors divsum dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors euler ev eval_string evenp every evolution evolution2d evundiff example exp expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li expintegral_shi expintegral_si explicit explose exponentialize express expt exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge file_search file_type fillarray findde find_root find_root_abs find_root_error find_root_rel first fix flatten flength float floatnump floor flower_snark flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string get_pixel get_plot_option get_tex_environment get_tex_environment_default get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart imetric implicit implicit_derivative implicit_plot indexed_tensor indices induced_subgraph inferencep inference_result infix info_display init_atensor init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions integrate intersect intersection intervalp intopois intosum invariant1 invariant2 inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2 kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit Lindstedt linear linearinterpol linear_program linear_regression line_graph linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country make_polygon make_random_state make_rgb_picture makeset make_string_input_stream make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker max max_clique max_degree max_flow maximize_lp max_independent_set max_matching maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext newdet new_graph newline newton new_variable next_prime nicedummies niceindices ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst nthroot nullity nullspace num numbered_boundaries numberp number_to_octets num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin oid_to_octets op opena opena_binary openr openr_binary openw openw_binary operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface parg parGosper parse_string parse_timedate part part2cont partfrac partition partition_set partpol path_digraph path_graph pathname_directory pathname_name pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod powerseries powerset prefix prev_prime primep primes principal_components print printf printfile print_graph printpois printprops prodrac product properties propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2 quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan radius random random_bernoulli random_beta random_binomial random_bipartite_graph random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform random_exp random_f random_gamma random_general_finite_discrete random_geometric random_graph random_graph1 random_gumbel random_hypergeometric random_laplace random_logistic random_lognormal random_negative_binomial random_network random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto random_permutation random_poisson random_rayleigh random_regular_graph random_student_t random_tournament random_tree random_weibull range rank rat ratcoef ratdenom ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus rem remainder remarray rembox remcomps remcon remcoord remfun remfunction remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions remove_fundamental_units remove_plot_option remove_vertex rempart remrule remsym remvalue rename rename_file reset reset_displays residue resolvante resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann rinvariant risch rk rmdir rncombine romberg room rootscontract round row rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1 spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot starplot_description status std std1 std_bernoulli std_beta std_binomial std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull stemplot stirling stirling1 stirling2 strim striml strimr string stringout stringp strong_components struve_h struve_l sublis sublist sublist_indices submatrix subsample subset subsetp subst substinpart subst_parallel substpart substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext symbolp symmdifference symmetricp system take_channel take_inference tan tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference test_normality test_proportion test_proportions_difference test_rank_sum test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep totalfourier totient tpartpol trace tracematrix trace_options transform_sample translate translate_file transpose treefale tree_reduce treillis treinat triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget ultraspherical underlying_graph undiff union unique uniteigenvectors unitp units unit_step unitvector unorder unsum untellrat untimer untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table absboxchar activecontexts adapt_depth additive adim aform algebraic algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top azimuth background background_color backsubst berlefact bernstein_explicit besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest border boundaries_array box boxchar breakup %c capping cauchysum cbrange cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics colorbox columns commutative complex cone context contexts contour contour_levels cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp cube current_let_rule_package cylinder data_file_name debugmode decreasing default_let_rule_package delay dependencies derivabbrev derivsubst detout diagmetric diff dim dimensions dispflag display2d|10 display_format_internal distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart edge_color edge_coloring edge_partition edge_type edge_width %edispflag elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine factlim factorflag factorial_expand factors_only fb feature features file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10 file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color fill_density filled_func fixed_vertices flipflag float2bf font font_size fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both head_length head_type height hypergeometric_representation %iargs ibase icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued integrate_use_rootsof integration_constant integration_constant_counter interpolate_color intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10 maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties opsubst optimprefix optionset orientation origin orthopoly_returns_intervals outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart png_file pochhammer_max_index points pointsize point_size points_joined point_type poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list poly_secondary_elimination_order poly_top_reduction_only posfun position powerdisp pred prederror primep_number_of_tests product_use_gamma program programmode promote_float_to_bigfloat prompt proportional_axes props psexpand ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type show_vertices show_weight simp simplified_output simplify_products simpproduct simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch tr track transcompile transform transform_xy translate_fast_arrays transparent transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest",symbol:"_ __ %|0 %%|0"},contains:[{className:"comment",begin:"/\\*",end:"\\*/",contains:["self"]},e.QUOTE_STRING_MODE,{className:"number",relevance:0,variants:[{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b"},{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Bb][-+]?\\d+\\b",relevance:10},{begin:"\\b(\\.\\d+|\\d+\\.\\d+)\\b"},{begin:"\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b"}]}],illegal:/@/}};var vS=function(e){return{name:"MEL",keywords:"int float string vector matrix if else switch case default while do for in break continue global proc return about abs addAttr addAttributeEditorNodeHelp addDynamic addNewShelfTab addPP addPanelCategory addPrefixToName advanceToNextDrivenKey affectedNet affects aimConstraint air alias aliasAttr align alignCtx alignCurve alignSurface allViewFit ambientLight angle angleBetween animCone animCurveEditor animDisplay animView annotate appendStringArray applicationName applyAttrPreset applyTake arcLenDimContext arcLengthDimension arclen arrayMapper art3dPaintCtx artAttrCtx artAttrPaintVertexCtx artAttrSkinPaintCtx artAttrTool artBuildPaintMenu artFluidAttrCtx artPuttyCtx artSelectCtx artSetPaintCtx artUserPaintCtx assignCommand assignInputDevice assignViewportFactories attachCurve attachDeviceAttr attachSurface attrColorSliderGrp attrCompatibility attrControlGrp attrEnumOptionMenu attrEnumOptionMenuGrp attrFieldGrp attrFieldSliderGrp attrNavigationControlGrp attrPresetEditWin attributeExists attributeInfo attributeMenu attributeQuery autoKeyframe autoPlace bakeClip bakeFluidShading bakePartialHistory bakeResults bakeSimulation basename basenameEx batchRender bessel bevel bevelPlus binMembership bindSkin blend2 blendShape blendShapeEditor blendShapePanel blendTwoAttr blindDataType boneLattice boundary boxDollyCtx boxZoomCtx bufferCurve buildBookmarkMenu buildKeyframeMenu button buttonManip CBG cacheFile cacheFileCombine cacheFileMerge cacheFileTrack camera cameraView canCreateManip canvas capitalizeString catch catchQuiet ceil changeSubdivComponentDisplayLevel changeSubdivRegion channelBox character characterMap characterOutlineEditor characterize chdir checkBox checkBoxGrp checkDefaultRenderGlobals choice circle circularFillet clamp clear clearCache clip clipEditor clipEditorCurrentTimeCtx clipSchedule clipSchedulerOutliner clipTrimBefore closeCurve closeSurface cluster cmdFileOutput cmdScrollFieldExecuter cmdScrollFieldReporter cmdShell coarsenSubdivSelectionList collision color colorAtPoint colorEditor colorIndex colorIndexSliderGrp colorSliderButtonGrp colorSliderGrp columnLayout commandEcho commandLine commandPort compactHairSystem componentEditor compositingInterop computePolysetVolume condition cone confirmDialog connectAttr connectControl connectDynamic connectJoint connectionInfo constrain constrainValue constructionHistory container containsMultibyte contextInfo control convertFromOldLayers convertIffToPsd convertLightmap convertSolidTx convertTessellation convertUnit copyArray copyFlexor copyKey copySkinWeights cos cpButton cpCache cpClothSet cpCollision cpConstraint cpConvClothToMesh cpForces cpGetSolverAttr cpPanel cpProperty cpRigidCollisionFilter cpSeam cpSetEdit cpSetSolverAttr cpSolver cpSolverTypes cpTool cpUpdateClothUVs createDisplayLayer createDrawCtx createEditor createLayeredPsdFile createMotionField createNewShelf createNode createRenderLayer createSubdivRegion cross crossProduct ctxAbort ctxCompletion ctxEditMode ctxTraverse currentCtx currentTime currentTimeCtx currentUnit curve curveAddPtCtx curveCVCtx curveEPCtx curveEditorCtx curveIntersect curveMoveEPCtx curveOnSurface curveSketchCtx cutKey cycleCheck cylinder dagPose date defaultLightListCheckBox defaultNavigation defineDataServer defineVirtualDevice deformer deg_to_rad delete deleteAttr deleteShadingGroupsAndMaterials deleteShelfTab deleteUI deleteUnusedBrushes delrandstr detachCurve detachDeviceAttr detachSurface deviceEditor devicePanel dgInfo dgdirty dgeval dgtimer dimWhen directKeyCtx directionalLight dirmap dirname disable disconnectAttr disconnectJoint diskCache displacementToPoly displayAffected displayColor displayCull displayLevelOfDetail displayPref displayRGBColor displaySmoothness displayStats displayString displaySurface distanceDimContext distanceDimension doBlur dolly dollyCtx dopeSheetEditor dot dotProduct doubleProfileBirailSurface drag dragAttrContext draggerContext dropoffLocator duplicate duplicateCurve duplicateSurface dynCache dynControl dynExport dynExpression dynGlobals dynPaintEditor dynParticleCtx dynPref dynRelEdPanel dynRelEditor dynamicLoad editAttrLimits editDisplayLayerGlobals editDisplayLayerMembers editRenderLayerAdjustment editRenderLayerGlobals editRenderLayerMembers editor editorTemplate effector emit emitter enableDevice encodeString endString endsWith env equivalent equivalentTol erf error eval evalDeferred evalEcho event exactWorldBoundingBox exclusiveLightCheckBox exec executeForEachObject exists exp expression expressionEditorListen extendCurve extendSurface extrude fcheck fclose feof fflush fgetline fgetword file fileBrowserDialog fileDialog fileExtension fileInfo filetest filletCurve filter filterCurve filterExpand filterStudioImport findAllIntersections findAnimCurves findKeyframe findMenuItem findRelatedSkinCluster finder firstParentOf fitBspline flexor floatEq floatField floatFieldGrp floatScrollBar floatSlider floatSlider2 floatSliderButtonGrp floatSliderGrp floor flow fluidCacheInfo fluidEmitter fluidVoxelInfo flushUndo fmod fontDialog fopen formLayout format fprint frameLayout fread freeFormFillet frewind fromNativePath fwrite gamma gauss geometryConstraint getApplicationVersionAsFloat getAttr getClassification getDefaultBrush getFileList getFluidAttr getInputDeviceRange getMayaPanelTypes getModifiers getPanel getParticleAttr getPluginResource getenv getpid glRender glRenderEditor globalStitch gmatch goal gotoBindPose grabColor gradientControl gradientControlNoAttr graphDollyCtx graphSelectContext graphTrackCtx gravity grid gridLayout group groupObjectsByName HfAddAttractorToAS HfAssignAS HfBuildEqualMap HfBuildFurFiles HfBuildFurImages HfCancelAFR HfConnectASToHF HfCreateAttractor HfDeleteAS HfEditAS HfPerformCreateAS HfRemoveAttractorFromAS HfSelectAttached HfSelectAttractors HfUnAssignAS hardenPointCurve hardware hardwareRenderPanel headsUpDisplay headsUpMessage help helpLine hermite hide hilite hitTest hotBox hotkey hotkeyCheck hsv_to_rgb hudButton hudSlider hudSliderButton hwReflectionMap hwRender hwRenderLoad hyperGraph hyperPanel hyperShade hypot iconTextButton iconTextCheckBox iconTextRadioButton iconTextRadioCollection iconTextScrollList iconTextStaticLabel ikHandle ikHandleCtx ikHandleDisplayScale ikSolver ikSplineHandleCtx ikSystem ikSystemInfo ikfkDisplayMethod illustratorCurves image imfPlugins inheritTransform insertJoint insertJointCtx insertKeyCtx insertKnotCurve insertKnotSurface instance instanceable instancer intField intFieldGrp intScrollBar intSlider intSliderGrp interToUI internalVar intersect iprEngine isAnimCurve isConnected isDirty isParentOf isSameObject isTrue isValidObjectName isValidString isValidUiName isolateSelect itemFilter itemFilterAttr itemFilterRender itemFilterType joint jointCluster jointCtx jointDisplayScale jointLattice keyTangent keyframe keyframeOutliner keyframeRegionCurrentTimeCtx keyframeRegionDirectKeyCtx keyframeRegionDollyCtx keyframeRegionInsertKeyCtx keyframeRegionMoveKeyCtx keyframeRegionScaleKeyCtx keyframeRegionSelectKeyCtx keyframeRegionSetKeyCtx keyframeRegionTrackCtx keyframeStats lassoContext lattice latticeDeformKeyCtx launch launchImageEditor layerButton layeredShaderPort layeredTexturePort layout layoutDialog lightList lightListEditor lightListPanel lightlink lineIntersection linearPrecision linstep listAnimatable listAttr listCameras listConnections listDeviceAttachments listHistory listInputDeviceAxes listInputDeviceButtons listInputDevices listMenuAnnotation listNodeTypes listPanelCategories listRelatives listSets listTransforms listUnselected listerEditor loadFluid loadNewShelf loadPlugin loadPluginLanguageResources loadPrefObjects localizedPanelLabel lockNode loft log longNameOf lookThru ls lsThroughFilter lsType lsUI Mayatomr mag makeIdentity makeLive makePaintable makeRoll makeSingleSurface makeTubeOn makebot manipMoveContext manipMoveLimitsCtx manipOptions manipRotateContext manipRotateLimitsCtx manipScaleContext manipScaleLimitsCtx marker match max memory menu menuBarLayout menuEditor menuItem menuItemToShelf menuSet menuSetPref messageLine min minimizeApp mirrorJoint modelCurrentTimeCtx modelEditor modelPanel mouse movIn movOut move moveIKtoFK moveKeyCtx moveVertexAlongDirection multiProfileBirailSurface mute nParticle nameCommand nameField namespace namespaceInfo newPanelItems newton nodeCast nodeIconButton nodeOutliner nodePreset nodeType noise nonLinear normalConstraint normalize nurbsBoolean nurbsCopyUVSet nurbsCube nurbsEditUV nurbsPlane nurbsSelect nurbsSquare nurbsToPoly nurbsToPolygonsPref nurbsToSubdiv nurbsToSubdivPref nurbsUVSet nurbsViewDirectionVector objExists objectCenter objectLayer objectType objectTypeUI obsoleteProc oceanNurbsPreviewPlane offsetCurve offsetCurveOnSurface offsetSurface openGLExtension openMayaPref optionMenu optionMenuGrp optionVar orbit orbitCtx orientConstraint outlinerEditor outlinerPanel overrideModifier paintEffectsDisplay pairBlend palettePort paneLayout panel panelConfiguration panelHistory paramDimContext paramDimension paramLocator parent parentConstraint particle particleExists particleInstancer particleRenderInfo partition pasteKey pathAnimation pause pclose percent performanceOptions pfxstrokes pickWalk picture pixelMove planarSrf plane play playbackOptions playblast plugAttr plugNode pluginInfo pluginResourceUtil pointConstraint pointCurveConstraint pointLight pointMatrixMult pointOnCurve pointOnSurface pointPosition poleVectorConstraint polyAppend polyAppendFacetCtx polyAppendVertex polyAutoProjection polyAverageNormal polyAverageVertex polyBevel polyBlendColor polyBlindData polyBoolOp polyBridgeEdge polyCacheMonitor polyCheck polyChipOff polyClipboard polyCloseBorder polyCollapseEdge polyCollapseFacet polyColorBlindData polyColorDel polyColorPerVertex polyColorSet polyCompare polyCone polyCopyUV polyCrease polyCreaseCtx polyCreateFacet polyCreateFacetCtx polyCube polyCut polyCutCtx polyCylinder polyCylindricalProjection polyDelEdge polyDelFacet polyDelVertex polyDuplicateAndConnect polyDuplicateEdge polyEditUV polyEditUVShell polyEvaluate polyExtrudeEdge polyExtrudeFacet polyExtrudeVertex polyFlipEdge polyFlipUV polyForceUV polyGeoSampler polyHelix polyInfo polyInstallAction polyLayoutUV polyListComponentConversion polyMapCut polyMapDel polyMapSew polyMapSewMove polyMergeEdge polyMergeEdgeCtx polyMergeFacet polyMergeFacetCtx polyMergeUV polyMergeVertex polyMirrorFace polyMoveEdge polyMoveFacet polyMoveFacetUV polyMoveUV polyMoveVertex polyNormal polyNormalPerVertex polyNormalizeUV polyOptUvs polyOptions polyOutput polyPipe polyPlanarProjection polyPlane polyPlatonicSolid polyPoke polyPrimitive polyPrism polyProjection polyPyramid polyQuad polyQueryBlindData polyReduce polySelect polySelectConstraint polySelectConstraintMonitor polySelectCtx polySelectEditCtx polySeparate polySetToFaceNormal polySewEdge polyShortestPathCtx polySmooth polySoftEdge polySphere polySphericalProjection polySplit polySplitCtx polySplitEdge polySplitRing polySplitVertex polyStraightenUVBorder polySubdivideEdge polySubdivideFacet polyToSubdiv polyTorus polyTransfer polyTriangulate polyUVSet polyUnite polyWedgeFace popen popupMenu pose pow preloadRefEd print progressBar progressWindow projFileViewer projectCurve projectTangent projectionContext projectionManip promptDialog propModCtx propMove psdChannelOutliner psdEditTextureFile psdExport psdTextureFile putenv pwd python querySubdiv quit rad_to_deg radial radioButton radioButtonGrp radioCollection radioMenuItemCollection rampColorPort rand randomizeFollicles randstate rangeControl readTake rebuildCurve rebuildSurface recordAttr recordDevice redo reference referenceEdit referenceQuery refineSubdivSelectionList refresh refreshAE registerPluginResource rehash reloadImage removeJoint removeMultiInstance removePanelCategory rename renameAttr renameSelectionList renameUI render renderGlobalsNode renderInfo renderLayerButton renderLayerParent renderLayerPostProcess renderLayerUnparent renderManip renderPartition renderQualityNode renderSettings renderThumbnailUpdate renderWindowEditor renderWindowSelectContext renderer reorder reorderDeformers requires reroot resampleFluid resetAE resetPfxToPolyCamera resetTool resolutionNode retarget reverseCurve reverseSurface revolve rgb_to_hsv rigidBody rigidSolver roll rollCtx rootOf rot rotate rotationInterpolation roundConstantRadius rowColumnLayout rowLayout runTimeCommand runup sampleImage saveAllShelves saveAttrPreset saveFluid saveImage saveInitialState saveMenu savePrefObjects savePrefs saveShelf saveToolSettings scale scaleBrushBrightness scaleComponents scaleConstraint scaleKey scaleKeyCtx sceneEditor sceneUIReplacement scmh scriptCtx scriptEditorInfo scriptJob scriptNode scriptTable scriptToShelf scriptedPanel scriptedPanelType scrollField scrollLayout sculpt searchPathArray seed selLoadSettings select selectContext selectCurveCV selectKey selectKeyCtx selectKeyframeRegionCtx selectMode selectPref selectPriority selectType selectedNodes selectionConnection separator setAttr setAttrEnumResource setAttrMapping setAttrNiceNameResource setConstraintRestPosition setDefaultShadingGroup setDrivenKeyframe setDynamic setEditCtx setEditor setFluidAttr setFocus setInfinity setInputDeviceMapping setKeyCtx setKeyPath setKeyframe setKeyframeBlendshapeTargetWts setMenuMode setNodeNiceNameResource setNodeTypeFlag setParent setParticleAttr setPfxToPolyCamera setPluginResource setProject setStampDensity setStartupMessage setState setToolTo setUITemplate setXformManip sets shadingConnection shadingGeometryRelCtx shadingLightRelCtx shadingNetworkCompare shadingNode shapeCompare shelfButton shelfLayout shelfTabLayout shellField shortNameOf showHelp showHidden showManipCtx showSelectionInTitle showShadingGroupAttrEditor showWindow sign simplify sin singleProfileBirailSurface size sizeBytes skinCluster skinPercent smoothCurve smoothTangentSurface smoothstep snap2to2 snapKey snapMode snapTogetherCtx snapshot soft softMod softModCtx sort sound soundControl source spaceLocator sphere sphrand spotLight spotLightPreviewPort spreadSheetEditor spring sqrt squareSurface srtContext stackTrace startString startsWith stitchAndExplodeShell stitchSurface stitchSurfacePoints strcmp stringArrayCatenate stringArrayContains stringArrayCount stringArrayInsertAtIndex stringArrayIntersector stringArrayRemove stringArrayRemoveAtIndex stringArrayRemoveDuplicates stringArrayRemoveExact stringArrayToString stringToStringArray strip stripPrefixFromName stroke subdAutoProjection subdCleanTopology subdCollapse subdDuplicateAndConnect subdEditUV subdListComponentConversion subdMapCut subdMapSewMove subdMatchTopology subdMirror subdToBlind subdToPoly subdTransferUVsToCache subdiv subdivCrease subdivDisplaySmoothness substitute substituteAllString substituteGeometry substring surface surfaceSampler surfaceShaderList swatchDisplayPort switchTable symbolButton symbolCheckBox sysFile system tabLayout tan tangentConstraint texLatticeDeformContext texManipContext texMoveContext texMoveUVShellContext texRotateContext texScaleContext texSelectContext texSelectShortestPathCtx texSmudgeUVContext texWinToolCtx text textCurves textField textFieldButtonGrp textFieldGrp textManip textScrollList textToShelf textureDisplacePlane textureHairColor texturePlacementContext textureWindow threadCount threePointArcCtx timeControl timePort timerX toNativePath toggle toggleAxis toggleWindowVisibility tokenize tokenizeList tolerance tolower toolButton toolCollection toolDropped toolHasOptions toolPropertyWindow torus toupper trace track trackCtx transferAttributes transformCompare transformLimits translator trim trunc truncateFluidCache truncateHairCache tumble tumbleCtx turbulence twoPointArcCtx uiRes uiTemplate unassignInputDevice undo undoInfo ungroup uniform unit unloadPlugin untangleUV untitledFileName untrim upAxis updateAE userCtx uvLink uvSnapshot validateShelfName vectorize view2dToolCtx viewCamera viewClipPlane viewFit viewHeadOn viewLookAt viewManip viewPlace viewSet visor volumeAxis vortex waitCursor warning webBrowser webBrowserPrefs whatIs window windowPref wire wireContext workspace wrinkle wrinkleContext writeTake xbmLangPathList xform",illegal:"</",contains:[e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/[$%@](\^\w\b|#\w+|[^\s\w{]|\{\w+\}|\w+)/},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var OS=function(e){var t=e.COMMENT("%","$"),n=e.inherit(e.APOS_STRING_MODE,{relevance:0}),a=e.inherit(e.QUOTE_STRING_MODE,{relevance:0});return a.contains=a.contains.slice(),a.contains.push({className:"subst",begin:"\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]",relevance:0}),{name:"Mercury",aliases:["m","moo"],keywords:{keyword:"module use_module import_module include_module end_module initialise mutable initialize finalize finalise interface implementation pred mode func type inst solver any_pred any_func is semidet det nondet multi erroneous failure cc_nondet cc_multi typeclass instance where pragma promise external trace atomic or_else require_complete_switch require_det require_semidet require_multi require_nondet require_cc_multi require_cc_nondet require_erroneous require_failure",meta:"inline no_inline type_spec source_file fact_table obsolete memo loop_check minimal_model terminates does_not_terminate check_termination promise_equivalent_clauses foreign_proc foreign_decl foreign_code foreign_type foreign_import_module foreign_export_enum foreign_export foreign_enum may_call_mercury will_not_call_mercury thread_safe not_thread_safe maybe_thread_safe promise_pure promise_semipure tabled_for_io local untrailed trailed attach_to_io_state can_pass_as_mercury_type stable will_not_throw_exception may_modify_trail will_not_modify_trail may_duplicate may_not_duplicate affects_liveness does_not_affect_liveness doesnt_affect_liveness no_sharing unknown_sharing sharing",built_in:"some all not if then else true fail false try catch catch_any semidet_true semidet_false semidet_fail impure_true impure semipure"},contains:[{className:"built_in",variants:[{begin:"<=>"},{begin:"<=",relevance:0},{begin:"=>",relevance:0},{begin:"/\\\\"},{begin:"\\\\/"}]},{className:"built_in",variants:[{begin:":-\\|--\x3e"},{begin:"=",relevance:0}]},t,e.C_BLOCK_COMMENT_MODE,{className:"number",begin:"0'.\\|0[box][0-9a-fA-F]*"},e.NUMBER_MODE,n,a,{begin:/:-/},{begin:/\.$/}]}};var hS=function(e){return{name:"MIPS Assembly",case_insensitive:!0,aliases:["mips"],keywords:{$pattern:"\\.?"+e.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .ltorg ",built_in:"$0 $1 $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 $31 zero at v0 v1 a0 a1 a2 a3 a4 a5 a6 a7 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 s0 s1 s2 s3 s4 s5 s6 s7 s8 k0 k1 gp sp fp ra $f0 $f1 $f2 $f2 $f4 $f5 $f6 $f7 $f8 $f9 $f10 $f11 $f12 $f13 $f14 $f15 $f16 $f17 $f18 $f19 $f20 $f21 $f22 $f23 $f24 $f25 $f26 $f27 $f28 $f29 $f30 $f31 Context Random EntryLo0 EntryLo1 Context PageMask Wired EntryHi HWREna BadVAddr Count Compare SR IntCtl SRSCtl SRSMap Cause EPC PRId EBase Config Config1 Config2 Config3 LLAddr Debug DEPC DESAVE CacheErr ECC ErrorEPC TagLo DataLo TagHi DataHi WatchLo WatchHi PerfCtl PerfCnt "},contains:[{className:"keyword",begin:"\\b(addi?u?|andi?|b(al)?|beql?|bgez(al)?l?|bgtzl?|blezl?|bltz(al)?l?|bnel?|cl[oz]|divu?|ext|ins|j(al)?|jalr(\\.hb)?|jr(\\.hb)?|lbu?|lhu?|ll|lui|lw[lr]?|maddu?|mfhi|mflo|movn|movz|move|msubu?|mthi|mtlo|mul|multu?|nop|nor|ori?|rotrv?|sb|sc|se[bh]|sh|sllv?|slti?u?|srav?|srlv?|subu?|sw[lr]?|xori?|wsbh|abs\\.[sd]|add\\.[sd]|alnv.ps|bc1[ft]l?|c\\.(s?f|un|u?eq|[ou]lt|[ou]le|ngle?|seq|l[et]|ng[et])\\.[sd]|(ceil|floor|round|trunc)\\.[lw]\\.[sd]|cfc1|cvt\\.d\\.[lsw]|cvt\\.l\\.[dsw]|cvt\\.ps\\.s|cvt\\.s\\.[dlw]|cvt\\.s\\.p[lu]|cvt\\.w\\.[dls]|div\\.[ds]|ldx?c1|luxc1|lwx?c1|madd\\.[sd]|mfc1|mov[fntz]?\\.[ds]|msub\\.[sd]|mth?c1|mul\\.[ds]|neg\\.[ds]|nmadd\\.[ds]|nmsub\\.[ds]|p[lu][lu]\\.ps|recip\\.fmt|r?sqrt\\.[ds]|sdx?c1|sub\\.[ds]|suxc1|swx?c1|break|cache|d?eret|[de]i|ehb|mfc0|mtc0|pause|prefx?|rdhwr|rdpgpr|sdbbp|ssnop|synci?|syscall|teqi?|tgei?u?|tlb(p|r|w[ir])|tlti?u?|tnei?|wait|wrpgpr)",end:"\\s"},e.COMMENT("[;#](?!\\s*$)","$"),e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"0x[0-9a-f]+"},{begin:"\\b-?\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^\\s*[0-9]+:"},{begin:"[0-9]+[bf]"}],relevance:0}],illegal:/\//}};var yS=function(e){return{name:"Mizar",keywords:"environ vocabularies notations constructors definitions registrations theorems schemes requirements begin end definition registration cluster existence pred func defpred deffunc theorem proof let take assume then thus hence ex for st holds consider reconsider such that and in provided of as from be being by means equals implies iff redefine define now not or attr is mode suppose per cases set thesis contradiction scheme reserve struct correctness compatibility coherence symmetry assymetry reflexivity irreflexivity connectedness uniqueness commutativity idempotence involutiveness projectivity",contains:[e.COMMENT("::","$")]}};function IS(e){return e?"string"==typeof e?e:e.source:null}function AS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return IS(e)})).join("");return a}function DS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return IS(e)})).join("|")+")";return a}var MS=function(e){var t=/[dualxmsipngr]{0,12}/,n={$pattern:/[\w.]+/,keyword:["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"].join(" ")},a={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:n},r={begin:/->\{/,end:/\}/},i={variants:[{begin:/\$\d/},{begin:AS(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@][^\s\w{]/,relevance:0}]},o=[e.BACKSLASH_ESCAPE,a,i],s=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],l=function(e,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"\\1",r="\\1"===a?a:AS(a,n);return AS(AS("(?:",e,")"),n,/(?:\\.|[^\\\/])*?/,r,/(?:\\.|[^\\\/])*?/,a,t)},c=function(e,n,a){return AS(AS("(?:",e,")"),n,/(?:\\.|[^\\\/])*?/,a,t)},_=[i,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),r,{className:"string",contains:o,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:l("s|tr|y",DS.apply(void 0,s))},{begin:l("s|tr|y","\\(","\\)")},{begin:l("s|tr|y","\\[","\\]")},{begin:l("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:c("(?:m|qr)?",/\//,/\//)},{begin:c("m|qr",DS.apply(void 0,s),/\1/)},{begin:c("m|qr",/\(/,/\)/)},{begin:c("m|qr",/\[/,/\]/)},{begin:c("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return a.contains=_,r.contains=_,{name:"Perl",aliases:["pl","pm"],keywords:n,contains:_}};var LS=function(e){return{name:"Mojolicious",subLanguage:"xml",contains:[{className:"meta",begin:"^__(END|DATA)__$"},{begin:"^\\s*%{1,2}={0,2}",end:"$",subLanguage:"perl"},{begin:"<%{1,2}={0,2}",end:"={0,1}%>",subLanguage:"perl",excludeBegin:!0,excludeEnd:!0}]}};var wS=function(e){var t={className:"number",relevance:0,variants:[{begin:"[$][a-fA-F0-9]+"},e.NUMBER_MODE]};return{name:"Monkey",case_insensitive:!0,keywords:{keyword:"public private property continue exit extern new try catch eachin not abstract final select case default const local global field end if then else elseif endif while wend repeat until forever for to step next return module inline throw import",built_in:"DebugLog DebugStop Error Print ACos ACosr ASin ASinr ATan ATan2 ATan2r ATanr Abs Abs Ceil Clamp Clamp Cos Cosr Exp Floor Log Max Max Min Min Pow Sgn Sgn Sin Sinr Sqrt Tan Tanr Seed PI HALFPI TWOPI",literal:"true false null and or shl shr mod"},illegal:/\/\*/,contains:[e.COMMENT("#rem","#end"),e.COMMENT("'","$",{relevance:0}),{className:"function",beginKeywords:"function method",end:"[(=:]|$",illegal:/\n/,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"class",beginKeywords:"class interface",end:"$",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{className:"built_in",begin:"\\b(self|super)\\b"},{className:"meta",begin:"\\s*#",end:"$",keywords:{"meta-keyword":"if else elseif endif end then"}},{className:"meta",begin:"^\\s*strict\\b"},{beginKeywords:"alias",end:"=",contains:[e.UNDERSCORE_TITLE_MODE]},e.QUOTE_STRING_MODE,t]}};var xS=function(e){var t={keyword:"if then not for in while do return else elseif break continue switch and or unless when class extends super local import export from using",literal:"true false nil",built_in:"_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug io math os package string table"},n="[A-Za-z$_][0-9A-Za-z$_]*",a={className:"subst",begin:/#\{/,end:/\}/,keywords:t},r=[e.inherit(e.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a]}]},{className:"built_in",begin:"@__"+e.IDENT_RE},{begin:"@"+e.IDENT_RE},{begin:e.IDENT_RE+"\\\\"+e.IDENT_RE}];a.contains=r;var i=e.inherit(e.TITLE_MODE,{begin:n}),o="(\\(.*\\)\\s*)?\\B[-=]>",s={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(r)}]};return{name:"MoonScript",aliases:["moon"],keywords:t,illegal:/\/\*/,contains:r.concat([e.COMMENT("--","$"),{className:"function",begin:"^\\s*"+n+"\\s*=\\s*"+o,end:"[-=]>",returnBegin:!0,contains:[i,s]},{begin:/[\(,:=]\s*/,relevance:0,contains:[{className:"function",begin:o,end:"[-=]>",returnBegin:!0,contains:[s]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[i]},i]},{className:"name",begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};var PS=function(e){return{name:"N1QL",case_insensitive:!0,contains:[{beginKeywords:"build create index delete drop explain infer|10 insert merge prepare select update upsert|10",end:/;/,endsWithParent:!0,keywords:{keyword:"all alter analyze and any array as asc begin between binary boolean break bucket build by call case cast cluster collate collection commit connect continue correlate cover create database dataset datastore declare decrement delete derived desc describe distinct do drop each element else end every except exclude execute exists explain fetch first flatten for force from function grant group gsi having if ignore ilike in include increment index infer inline inner insert intersect into is join key keys keyspace known last left let letting like limit lsm map mapping matched materialized merge minus namespace nest not number object offset on option or order outer over parse partition password path pool prepare primary private privilege procedure public raw realm reduce rename return returning revoke right role rollback satisfies schema select self semi set show some start statistics string system then to transaction trigger truncate under union unique unknown unnest unset update upsert use user using validate value valued values via view when where while with within work xor",literal:"true false null missing|5",built_in:"array_agg array_append array_concat array_contains array_count array_distinct array_ifnull array_length array_max array_min array_position array_prepend array_put array_range array_remove array_repeat array_replace array_reverse array_sort array_sum avg count max min sum greatest least ifmissing ifmissingornull ifnull missingif nullif ifinf ifnan ifnanorinf naninf neginfif posinfif clock_millis clock_str date_add_millis date_add_str date_diff_millis date_diff_str date_part_millis date_part_str date_trunc_millis date_trunc_str duration_to_str millis str_to_millis millis_to_str millis_to_utc millis_to_zone_name now_millis now_str str_to_duration str_to_utc str_to_zone_name decode_json encode_json encoded_size poly_length base64 base64_encode base64_decode meta uuid abs acos asin atan atan2 ceil cos degrees e exp ln log floor pi power radians random round sign sin sqrt tan trunc object_length object_names object_pairs object_inner_pairs object_values object_inner_values object_add object_put object_remove object_unwrap regexp_contains regexp_like regexp_position regexp_replace contains initcap length lower ltrim position repeat replace rtrim split substr title trim upper isarray isatom isboolean isnumber isobject isstring type toarray toatom toboolean tonumber toobject tostring"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE],relevance:2},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE]}};var kS=function(e){var t={className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{/,end:/\}/},{begin:/[$@]/+e.UNDERSCORE_IDENT_RE}]},n={endsWithParent:!0,keywords:{$pattern:"[a-z/_]+",literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[t]},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:"\\s\\^",end:"\\s|\\{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|\\{|;",returnEnd:!0},{begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number",begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{className:"number",begin:"\\b\\d+[kKmMgGdshdwy]*\\b",relevance:0},t]};return{name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{begin:e.UNDERSCORE_IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\{/,contains:[{className:"section",begin:e.UNDERSCORE_IDENT_RE}],relevance:0},{begin:e.UNDERSCORE_IDENT_RE+"\\s",end:";|\\{",returnBegin:!0,contains:[{className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:n}],relevance:0}],illegal:"[^\\s\\}]"}};var US=function(e){return{name:"Nim",keywords:{keyword:"addr and as asm bind block break case cast const continue converter discard distinct div do elif else end enum except export finally for from func generic if import in include interface is isnot iterator let macro method mixin mod nil not notin object of or out proc ptr raise ref return shl shr static template try tuple type using var when while with without xor yield",literal:"shared guarded stdin stdout stderr result true false",built_in:"int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float float32 float64 bool char string cstring pointer expr stmt void auto any range array openarray varargs seq set clong culong cchar cschar cshort cint csize clonglong cfloat cdouble clongdouble cuchar cushort cuint culonglong cstringarray semistatic"},contains:[{className:"meta",begin:/\{\./,end:/\.\}/,relevance:10},{className:"string",begin:/[a-zA-Z]\w*"/,end:/"/,contains:[{begin:/""/}]},{className:"string",begin:/([a-zA-Z]\w*)?"""/,end:/"""/},e.QUOTE_STRING_MODE,{className:"type",begin:/\b[A-Z]\w+\b/,relevance:0},{className:"number",relevance:0,variants:[{begin:/\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/},{begin:/\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/}]},e.HASH_COMMENT_MODE]}};var FS=function(e){var t={keyword:"rec with let in inherit assert if else then",literal:"true false or and null",built_in:"import abort baseNameOf dirOf isNull builtins map removeAttrs throw toString derivation"},n={className:"subst",begin:/\$\{/,end:/\}/,keywords:t},a={className:"string",contains:[n],variants:[{begin:"''",end:"''"},{begin:'"',end:'"'}]},r=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/\S+/}]}];return n.contains=r,{name:"Nix",aliases:["nixos"],keywords:t,contains:r}};var BS=function(e){return{name:"Node REPL",contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"javascript"}},variants:[{begin:/^>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}};var GS=function(e){var t={className:"variable",begin:/\$+\{[\w.:-]+\}/},n={className:"variable",begin:/\$+\w+/,illegal:/\(\)\{\}/},a={className:"variable",begin:/\$+\([\w^.:-]+\)/},r={className:"string",variants:[{begin:'"',end:'"'},{begin:"'",end:"'"},{begin:"`",end:"`"}],illegal:/\n/,contains:[{className:"meta",begin:/\$(\\[nrt]|\$)/},{className:"variable",begin:/\$(ADMINTOOLS|APPDATA|CDBURN_AREA|CMDLINE|COMMONFILES32|COMMONFILES64|COMMONFILES|COOKIES|DESKTOP|DOCUMENTS|EXEDIR|EXEFILE|EXEPATH|FAVORITES|FONTS|HISTORY|HWNDPARENT|INSTDIR|INTERNET_CACHE|LANGUAGE|LOCALAPPDATA|MUSIC|NETHOOD|OUTDIR|PICTURES|PLUGINSDIR|PRINTHOOD|PROFILE|PROGRAMFILES32|PROGRAMFILES64|PROGRAMFILES|QUICKLAUNCH|RECENT|RESOURCES_LOCALIZED|RESOURCES|SENDTO|SMPROGRAMS|SMSTARTUP|STARTMENU|SYSDIR|TEMP|TEMPLATES|VIDEOS|WINDIR)/},t,n,a]};return{name:"NSIS",case_insensitive:!1,keywords:{keyword:"Abort AddBrandingImage AddSize AllowRootDirInstall AllowSkipFiles AutoCloseWindow BGFont BGGradient BrandingText BringToFront Call CallInstDLL Caption ChangeUI CheckBitmap ClearErrors CompletedText ComponentText CopyFiles CRCCheck CreateDirectory CreateFont CreateShortCut Delete DeleteINISec DeleteINIStr DeleteRegKey DeleteRegValue DetailPrint DetailsButtonText DirText DirVar DirVerify EnableWindow EnumRegKey EnumRegValue Exch Exec ExecShell ExecShellWait ExecWait ExpandEnvStrings File FileBufSize FileClose FileErrorText FileOpen FileRead FileReadByte FileReadUTF16LE FileReadWord FileWriteUTF16LE FileSeek FileWrite FileWriteByte FileWriteWord FindClose FindFirst FindNext FindWindow FlushINI GetCurInstType GetCurrentAddress GetDlgItem GetDLLVersion GetDLLVersionLocal GetErrorLevel GetFileTime GetFileTimeLocal GetFullPathName GetFunctionAddress GetInstDirError GetKnownFolderPath GetLabelAddress GetTempFileName Goto HideWindow Icon IfAbort IfErrors IfFileExists IfRebootFlag IfRtlLanguage IfShellVarContextAll IfSilent InitPluginsDir InstallButtonText InstallColors InstallDir InstallDirRegKey InstProgressFlags InstType InstTypeGetText InstTypeSetText Int64Cmp Int64CmpU Int64Fmt IntCmp IntCmpU IntFmt IntOp IntPtrCmp IntPtrCmpU IntPtrOp IsWindow LangString LicenseBkColor LicenseData LicenseForceSelection LicenseLangString LicenseText LoadAndSetImage LoadLanguageFile LockWindow LogSet LogText ManifestDPIAware ManifestLongPathAware ManifestMaxVersionTested ManifestSupportedOS MessageBox MiscButtonText Name Nop OutFile Page PageCallbacks PEAddResource PEDllCharacteristics PERemoveResource PESubsysVer Pop Push Quit ReadEnvStr ReadINIStr ReadRegDWORD ReadRegStr Reboot RegDLL Rename RequestExecutionLevel ReserveFile Return RMDir SearchPath SectionGetFlags SectionGetInstTypes SectionGetSize SectionGetText SectionIn SectionSetFlags SectionSetInstTypes SectionSetSize SectionSetText SendMessage SetAutoClose SetBrandingImage SetCompress SetCompressor SetCompressorDictSize SetCtlColors SetCurInstType SetDatablockOptimize SetDateSave SetDetailsPrint SetDetailsView SetErrorLevel SetErrors SetFileAttributes SetFont SetOutPath SetOverwrite SetRebootFlag SetRegView SetShellVarContext SetSilent ShowInstDetails ShowUninstDetails ShowWindow SilentInstall SilentUnInstall Sleep SpaceTexts StrCmp StrCmpS StrCpy StrLen SubCaption Unicode UninstallButtonText UninstallCaption UninstallIcon UninstallSubCaption UninstallText UninstPage UnRegDLL Var VIAddVersionKey VIFileVersion VIProductVersion WindowIcon WriteINIStr WriteRegBin WriteRegDWORD WriteRegExpandStr WriteRegMultiStr WriteRegNone WriteRegStr WriteUninstaller XPStyle",literal:"admin all auto both bottom bzip2 colored components current custom directory false force hide highest ifdiff ifnewer instfiles lastused leave left license listonly lzma nevershow none normal notset off on open print right show silent silentlog smooth textonly top true try un.components un.custom un.directory un.instfiles un.license uninstConfirm user Win10 Win7 Win8 WinVista zlib"},contains:[e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(";","$",{relevance:0}),{className:"function",beginKeywords:"Function PageEx Section SectionGroup",end:"$"},r,{className:"keyword",begin:/!(addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|if|ifdef|ifmacrodef|ifmacrondef|ifndef|include|insertmacro|macro|macroend|makensis|packhdr|searchparse|searchreplace|system|tempfile|undef|verbose|warning)/},t,n,a,{className:"params",begin:"(ARCHIVE|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_OFFLINE|FILE_ATTRIBUTE_READONLY|FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_TEMPORARY|HKCR|HKCU|HKDD|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_DYN_DATA|HKEY_LOCAL_MACHINE|HKEY_PERFORMANCE_DATA|HKEY_USERS|HKLM|HKPD|HKU|IDABORT|IDCANCEL|IDIGNORE|IDNO|IDOK|IDRETRY|IDYES|MB_ABORTRETRYIGNORE|MB_DEFBUTTON1|MB_DEFBUTTON2|MB_DEFBUTTON3|MB_DEFBUTTON4|MB_ICONEXCLAMATION|MB_ICONINFORMATION|MB_ICONQUESTION|MB_ICONSTOP|MB_OK|MB_OKCANCEL|MB_RETRYCANCEL|MB_RIGHT|MB_RTLREADING|MB_SETFOREGROUND|MB_TOPMOST|MB_USERICON|MB_YESNO|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY)"},{className:"class",begin:/\w+::\w+/},e.NUMBER_MODE]}};var YS=function(e){var t=/[a-zA-Z@][a-zA-Z0-9_]*/,n={$pattern:t,keyword:"@interface @class @protocol @implementation"};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:{$pattern:t,keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},illegal:"</",contains:[{className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+n.keyword.split(" ").join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:n,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}};var HS=function(e){return{name:"OCaml",aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?",keyword:"and as assert asr begin class constraint do done downto else end exception external for fun function functor if in include inherit! inherit initializer land lazy let lor lsl lsr lxor match method!|10 method mod module mutable new object of open! open or private rec sig struct then to try type val! val virtual when while with parser value",built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 string unit in_channel out_channel ref",literal:"true false"},illegal:/\/\/|>>/,contains:[{className:"literal",begin:"\\[(\\|\\|)?\\]|\\(\\)",relevance:0},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*",relevance:0},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",relevance:0},{begin:/->/}]}};var VS=function(e){var t={className:"keyword",begin:"\\$(f[asn]|t|vp[rtd]|children)"},n={className:"number",begin:"\\b\\d+(\\.\\d+)?(e-?\\d+)?",relevance:0},a=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),r={className:"function",beginKeywords:"module function",end:/=|\{/,contains:[{className:"params",begin:"\\(",end:"\\)",contains:["self",n,a,t,{className:"literal",begin:"false|true|PI|undef"}]},e.UNDERSCORE_TITLE_MODE]};return{name:"OpenSCAD",aliases:["scad"],keywords:{keyword:"function module include use for intersection_for if else \\%",literal:"false true PI undef",built_in:"circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"meta",keywords:{"meta-keyword":"include use"},begin:"include|use <",end:">"},a,t,{begin:"[*!#%]",relevance:0},r]}};var qS=function(e){var t={$pattern:/\.?\w+/,keyword:"abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained"},n=e.COMMENT(/\{/,/\}/,{relevance:0}),a=e.COMMENT("\\(\\*","\\*\\)",{relevance:10}),r={className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},i={className:"string",begin:"(#\\d+)+"},o={className:"function",beginKeywords:"function constructor destructor procedure method",end:"[:;]",keywords:"function constructor|10 destructor|10 procedure|10 method|10",contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",keywords:t,contains:[r,i]},n,a]};return{name:"Oxygene",case_insensitive:!0,keywords:t,illegal:'("|\\$[G-Zg-z]|\\/\\*|</|=>|->)',contains:[n,a,e.C_LINE_COMMENT_MODE,r,i,e.NUMBER_MODE,o,{className:"class",begin:"=\\bclass\\b",end:"end;",keywords:t,contains:[r,i,n,a,e.C_LINE_COMMENT_MODE,o]}]}};var zS=function(e){var t=e.COMMENT(/\{/,/\}/,{contains:["self"]});return{name:"Parser3",subLanguage:"xml",relevance:0,contains:[e.COMMENT("^#","$"),e.COMMENT(/\^rem\{/,/\}/,{relevance:10,contains:[t]}),{className:"meta",begin:"^@(?:BASE|USE|CLASS|OPTIONS)$",relevance:10},{className:"title",begin:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{className:"variable",begin:/\$\{?[\w\-.:]+\}?/},{className:"keyword",begin:/\^[\w\-.:]+/},{className:"number",begin:"\\^#[0-9a-fA-F]+"},e.C_NUMBER_MODE]}};var WS=function(e){return{name:"Packet Filter config",aliases:["pf.conf"],keywords:{$pattern:/[a-z0-9_<>-]+/,built_in:"block match pass load anchor|5 antispoof|10 set table",keyword:"in out log quick on rdomain inet inet6 proto from port os to route allow-opts divert-packet divert-reply divert-to flags group icmp-type icmp6-type label once probability recieved-on rtable prio queue tos tag tagged user keep fragment for os drop af-to|10 binat-to|10 nat-to|10 rdr-to|10 bitmask least-stats random round-robin source-hash static-port dup-to reply-to route-to parent bandwidth default min max qlimit block-policy debug fingerprints hostid limit loginterface optimization reassemble ruleset-optimization basic none profile skip state-defaults state-policy timeout const counters persist no modulate synproxy state|5 floating if-bound no-sync pflow|10 sloppy source-track global rule max-src-nodes max-src-states max-src-conn max-src-conn-rate overload flush scrub|5 max-mss min-ttl no-df|10 random-id",literal:"all any no-route self urpf-failed egress|5 unknown"},contains:[e.HASH_COMMENT_MODE,e.NUMBER_MODE,e.QUOTE_STRING_MODE,{className:"variable",begin:/\$[\w\d#@][\w\d_]*/},{className:"variable",begin:/<(?!\/)/,end:/>/}]}};var $S=function(e){var t=e.COMMENT("--","$"),n="\\$([a-zA-Z_]?|[a-zA-Z_][a-zA-Z_0-9]*)\\$",a="BIGINT INT8 BIGSERIAL SERIAL8 BIT VARYING VARBIT BOOLEAN BOOL BOX BYTEA CHARACTER CHAR VARCHAR CIDR CIRCLE DATE DOUBLE PRECISION FLOAT8 FLOAT INET INTEGER INT INT4 INTERVAL JSON JSONB LINE LSEG|10 MACADDR MACADDR8 MONEY NUMERIC DEC DECIMAL PATH POINT POLYGON REAL FLOAT4 SMALLINT INT2 SMALLSERIAL|10 SERIAL2|10 SERIAL|10 SERIAL4|10 TEXT TIME ZONE TIMETZ|10 TIMESTAMP TIMESTAMPTZ|10 TSQUERY|10 TSVECTOR|10 TXID_SNAPSHOT|10 UUID XML NATIONAL NCHAR INT4RANGE|10 INT8RANGE|10 NUMRANGE|10 TSRANGE|10 TSTZRANGE|10 DATERANGE|10 ANYELEMENT ANYARRAY ANYNONARRAY ANYENUM ANYRANGE CSTRING INTERNAL RECORD PG_DDL_COMMAND VOID UNKNOWN OPAQUE REFCURSOR NAME OID REGPROC|10 REGPROCEDURE|10 REGOPER|10 REGOPERATOR|10 REGCLASS|10 REGTYPE|10 REGROLE|10 REGNAMESPACE|10 REGCONFIG|10 REGDICTIONARY|10 ",r=a.trim().split(" ").map((function(e){return e.split("|")[0]})).join("|"),i="ARRAY_AGG AVG BIT_AND BIT_OR BOOL_AND BOOL_OR COUNT EVERY JSON_AGG JSONB_AGG JSON_OBJECT_AGG JSONB_OBJECT_AGG MAX MIN MODE STRING_AGG SUM XMLAGG CORR COVAR_POP COVAR_SAMP REGR_AVGX REGR_AVGY REGR_COUNT REGR_INTERCEPT REGR_R2 REGR_SLOPE REGR_SXX REGR_SXY REGR_SYY STDDEV STDDEV_POP STDDEV_SAMP VARIANCE VAR_POP VAR_SAMP PERCENTILE_CONT PERCENTILE_DISC ROW_NUMBER RANK DENSE_RANK PERCENT_RANK CUME_DIST NTILE LAG LEAD FIRST_VALUE LAST_VALUE NTH_VALUE NUM_NONNULLS NUM_NULLS ABS CBRT CEIL CEILING DEGREES DIV EXP FLOOR LN LOG MOD PI POWER RADIANS ROUND SCALE SIGN SQRT TRUNC WIDTH_BUCKET RANDOM SETSEED ACOS ACOSD ASIN ASIND ATAN ATAND ATAN2 ATAN2D COS COSD COT COTD SIN SIND TAN TAND BIT_LENGTH CHAR_LENGTH CHARACTER_LENGTH LOWER OCTET_LENGTH OVERLAY POSITION SUBSTRING TREAT TRIM UPPER ASCII BTRIM CHR CONCAT CONCAT_WS CONVERT CONVERT_FROM CONVERT_TO DECODE ENCODE INITCAP LEFT LENGTH LPAD LTRIM MD5 PARSE_IDENT PG_CLIENT_ENCODING QUOTE_IDENT|10 QUOTE_LITERAL|10 QUOTE_NULLABLE|10 REGEXP_MATCH REGEXP_MATCHES REGEXP_REPLACE REGEXP_SPLIT_TO_ARRAY REGEXP_SPLIT_TO_TABLE REPEAT REPLACE REVERSE RIGHT RPAD RTRIM SPLIT_PART STRPOS SUBSTR TO_ASCII TO_HEX TRANSLATE OCTET_LENGTH GET_BIT GET_BYTE SET_BIT SET_BYTE TO_CHAR TO_DATE TO_NUMBER TO_TIMESTAMP AGE CLOCK_TIMESTAMP|10 DATE_PART DATE_TRUNC ISFINITE JUSTIFY_DAYS JUSTIFY_HOURS JUSTIFY_INTERVAL MAKE_DATE MAKE_INTERVAL|10 MAKE_TIME MAKE_TIMESTAMP|10 MAKE_TIMESTAMPTZ|10 NOW STATEMENT_TIMESTAMP|10 TIMEOFDAY TRANSACTION_TIMESTAMP|10 ENUM_FIRST ENUM_LAST ENUM_RANGE AREA CENTER DIAMETER HEIGHT ISCLOSED ISOPEN NPOINTS PCLOSE POPEN RADIUS WIDTH BOX BOUND_BOX CIRCLE LINE LSEG PATH POLYGON ABBREV BROADCAST HOST HOSTMASK MASKLEN NETMASK NETWORK SET_MASKLEN TEXT INET_SAME_FAMILY INET_MERGE MACADDR8_SET7BIT ARRAY_TO_TSVECTOR GET_CURRENT_TS_CONFIG NUMNODE PLAINTO_TSQUERY PHRASETO_TSQUERY WEBSEARCH_TO_TSQUERY QUERYTREE SETWEIGHT STRIP TO_TSQUERY TO_TSVECTOR JSON_TO_TSVECTOR JSONB_TO_TSVECTOR TS_DELETE TS_FILTER TS_HEADLINE TS_RANK TS_RANK_CD TS_REWRITE TSQUERY_PHRASE TSVECTOR_TO_ARRAY TSVECTOR_UPDATE_TRIGGER TSVECTOR_UPDATE_TRIGGER_COLUMN XMLCOMMENT XMLCONCAT XMLELEMENT XMLFOREST XMLPI XMLROOT XMLEXISTS XML_IS_WELL_FORMED XML_IS_WELL_FORMED_DOCUMENT XML_IS_WELL_FORMED_CONTENT XPATH XPATH_EXISTS XMLTABLE XMLNAMESPACES TABLE_TO_XML TABLE_TO_XMLSCHEMA TABLE_TO_XML_AND_XMLSCHEMA QUERY_TO_XML QUERY_TO_XMLSCHEMA QUERY_TO_XML_AND_XMLSCHEMA CURSOR_TO_XML CURSOR_TO_XMLSCHEMA SCHEMA_TO_XML SCHEMA_TO_XMLSCHEMA SCHEMA_TO_XML_AND_XMLSCHEMA DATABASE_TO_XML DATABASE_TO_XMLSCHEMA DATABASE_TO_XML_AND_XMLSCHEMA XMLATTRIBUTES TO_JSON TO_JSONB ARRAY_TO_JSON ROW_TO_JSON JSON_BUILD_ARRAY JSONB_BUILD_ARRAY JSON_BUILD_OBJECT JSONB_BUILD_OBJECT JSON_OBJECT JSONB_OBJECT JSON_ARRAY_LENGTH JSONB_ARRAY_LENGTH JSON_EACH JSONB_EACH JSON_EACH_TEXT JSONB_EACH_TEXT JSON_EXTRACT_PATH JSONB_EXTRACT_PATH JSON_OBJECT_KEYS JSONB_OBJECT_KEYS JSON_POPULATE_RECORD JSONB_POPULATE_RECORD JSON_POPULATE_RECORDSET JSONB_POPULATE_RECORDSET JSON_ARRAY_ELEMENTS JSONB_ARRAY_ELEMENTS JSON_ARRAY_ELEMENTS_TEXT JSONB_ARRAY_ELEMENTS_TEXT JSON_TYPEOF JSONB_TYPEOF JSON_TO_RECORD JSONB_TO_RECORD JSON_TO_RECORDSET JSONB_TO_RECORDSET JSON_STRIP_NULLS JSONB_STRIP_NULLS JSONB_SET JSONB_INSERT JSONB_PRETTY CURRVAL LASTVAL NEXTVAL SETVAL COALESCE NULLIF GREATEST LEAST ARRAY_APPEND ARRAY_CAT ARRAY_NDIMS ARRAY_DIMS ARRAY_FILL ARRAY_LENGTH ARRAY_LOWER ARRAY_POSITION ARRAY_POSITIONS ARRAY_PREPEND ARRAY_REMOVE ARRAY_REPLACE ARRAY_TO_STRING ARRAY_UPPER CARDINALITY STRING_TO_ARRAY UNNEST ISEMPTY LOWER_INC UPPER_INC LOWER_INF UPPER_INF RANGE_MERGE GENERATE_SERIES GENERATE_SUBSCRIPTS CURRENT_DATABASE CURRENT_QUERY CURRENT_SCHEMA|10 CURRENT_SCHEMAS|10 INET_CLIENT_ADDR INET_CLIENT_PORT INET_SERVER_ADDR INET_SERVER_PORT ROW_SECURITY_ACTIVE FORMAT_TYPE TO_REGCLASS TO_REGPROC TO_REGPROCEDURE TO_REGOPER TO_REGOPERATOR TO_REGTYPE TO_REGNAMESPACE TO_REGROLE COL_DESCRIPTION OBJ_DESCRIPTION SHOBJ_DESCRIPTION TXID_CURRENT TXID_CURRENT_IF_ASSIGNED TXID_CURRENT_SNAPSHOT TXID_SNAPSHOT_XIP TXID_SNAPSHOT_XMAX TXID_SNAPSHOT_XMIN TXID_VISIBLE_IN_SNAPSHOT TXID_STATUS CURRENT_SETTING SET_CONFIG BRIN_SUMMARIZE_NEW_VALUES BRIN_SUMMARIZE_RANGE BRIN_DESUMMARIZE_RANGE GIN_CLEAN_PENDING_LIST SUPPRESS_REDUNDANT_UPDATES_TRIGGER LO_FROM_BYTEA LO_PUT LO_GET LO_CREAT LO_CREATE LO_UNLINK LO_IMPORT LO_EXPORT LOREAD LOWRITE GROUPING CAST ".trim().split(" ").map((function(e){return e.split("|")[0]})).join("|");return{name:"PostgreSQL",aliases:["postgres","postgresql"],case_insensitive:!0,keywords:{keyword:"ABORT ALTER ANALYZE BEGIN CALL CHECKPOINT|10 CLOSE CLUSTER COMMENT COMMIT COPY CREATE DEALLOCATE DECLARE DELETE DISCARD DO DROP END EXECUTE EXPLAIN FETCH GRANT IMPORT INSERT LISTEN LOAD LOCK MOVE NOTIFY PREPARE REASSIGN|10 REFRESH REINDEX RELEASE RESET REVOKE ROLLBACK SAVEPOINT SECURITY SELECT SET SHOW START TRUNCATE UNLISTEN|10 UPDATE VACUUM|10 VALUES AGGREGATE COLLATION CONVERSION|10 DATABASE DEFAULT PRIVILEGES DOMAIN TRIGGER EXTENSION FOREIGN WRAPPER|10 TABLE FUNCTION GROUP LANGUAGE LARGE OBJECT MATERIALIZED VIEW OPERATOR CLASS FAMILY POLICY PUBLICATION|10 ROLE RULE SCHEMA SEQUENCE SERVER STATISTICS SUBSCRIPTION SYSTEM TABLESPACE CONFIGURATION DICTIONARY PARSER TEMPLATE TYPE USER MAPPING PREPARED ACCESS METHOD CAST AS TRANSFORM TRANSACTION OWNED TO INTO SESSION AUTHORIZATION INDEX PROCEDURE ASSERTION ALL ANALYSE AND ANY ARRAY ASC ASYMMETRIC|10 BOTH CASE CHECK COLLATE COLUMN CONCURRENTLY|10 CONSTRAINT CROSS DEFERRABLE RANGE DESC DISTINCT ELSE EXCEPT FOR FREEZE|10 FROM FULL HAVING ILIKE IN INITIALLY INNER INTERSECT IS ISNULL JOIN LATERAL LEADING LIKE LIMIT NATURAL NOT NOTNULL NULL OFFSET ON ONLY OR ORDER OUTER OVERLAPS PLACING PRIMARY REFERENCES RETURNING SIMILAR SOME SYMMETRIC TABLESAMPLE THEN TRAILING UNION UNIQUE USING VARIADIC|10 VERBOSE WHEN WHERE WINDOW WITH BY RETURNS INOUT OUT SETOF|10 IF STRICT CURRENT CONTINUE OWNER LOCATION OVER PARTITION WITHIN BETWEEN ESCAPE EXTERNAL INVOKER DEFINER WORK RENAME VERSION CONNECTION CONNECT TABLES TEMP TEMPORARY FUNCTIONS SEQUENCES TYPES SCHEMAS OPTION CASCADE RESTRICT ADD ADMIN EXISTS VALID VALIDATE ENABLE DISABLE REPLICA|10 ALWAYS PASSING COLUMNS PATH REF VALUE OVERRIDING IMMUTABLE STABLE VOLATILE BEFORE AFTER EACH ROW PROCEDURAL ROUTINE NO HANDLER VALIDATOR OPTIONS STORAGE OIDS|10 WITHOUT INHERIT DEPENDS CALLED INPUT LEAKPROOF|10 COST ROWS NOWAIT SEARCH UNTIL ENCRYPTED|10 PASSWORD CONFLICT|10 INSTEAD INHERITS CHARACTERISTICS WRITE CURSOR ALSO STATEMENT SHARE EXCLUSIVE INLINE ISOLATION REPEATABLE READ COMMITTED SERIALIZABLE UNCOMMITTED LOCAL GLOBAL SQL PROCEDURES RECURSIVE SNAPSHOT ROLLUP CUBE TRUSTED|10 INCLUDE FOLLOWING PRECEDING UNBOUNDED RANGE GROUPS UNENCRYPTED|10 SYSID FORMAT DELIMITER HEADER QUOTE ENCODING FILTER OFF FORCE_QUOTE FORCE_NOT_NULL FORCE_NULL COSTS BUFFERS TIMING SUMMARY DISABLE_PAGE_SKIPPING RESTART CYCLE GENERATED IDENTITY DEFERRED IMMEDIATE LEVEL LOGGED UNLOGGED OF NOTHING NONE EXCLUDE ATTRIBUTE USAGE ROUTINES TRUE FALSE NAN INFINITY ALIAS BEGIN CONSTANT DECLARE END EXCEPTION RETURN PERFORM|10 RAISE GET DIAGNOSTICS STACKED|10 FOREACH LOOP ELSIF EXIT WHILE REVERSE SLICE DEBUG LOG INFO NOTICE WARNING ASSERT OPEN SUPERUSER NOSUPERUSER CREATEDB NOCREATEDB CREATEROLE NOCREATEROLE INHERIT NOINHERIT LOGIN NOLOGIN REPLICATION NOREPLICATION BYPASSRLS NOBYPASSRLS ",built_in:"CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURRENT_CATALOG|10 CURRENT_DATE LOCALTIME LOCALTIMESTAMP CURRENT_ROLE|10 CURRENT_SCHEMA|10 SESSION_USER PUBLIC FOUND NEW OLD TG_NAME|10 TG_WHEN|10 TG_LEVEL|10 TG_OP|10 TG_RELID|10 TG_RELNAME|10 TG_TABLE_NAME|10 TG_TABLE_SCHEMA|10 TG_NARGS|10 TG_ARGV|10 TG_EVENT|10 TG_TAG|10 ROW_COUNT RESULT_OID|10 PG_CONTEXT|10 RETURNED_SQLSTATE COLUMN_NAME CONSTRAINT_NAME PG_DATATYPE_NAME|10 MESSAGE_TEXT TABLE_NAME SCHEMA_NAME PG_EXCEPTION_DETAIL|10 PG_EXCEPTION_HINT|10 PG_EXCEPTION_CONTEXT|10 SQLSTATE SQLERRM|10 SUCCESSFUL_COMPLETION WARNING DYNAMIC_RESULT_SETS_RETURNED IMPLICIT_ZERO_BIT_PADDING NULL_VALUE_ELIMINATED_IN_SET_FUNCTION PRIVILEGE_NOT_GRANTED PRIVILEGE_NOT_REVOKED STRING_DATA_RIGHT_TRUNCATION DEPRECATED_FEATURE NO_DATA NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED SQL_STATEMENT_NOT_YET_COMPLETE CONNECTION_EXCEPTION CONNECTION_DOES_NOT_EXIST CONNECTION_FAILURE SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION TRANSACTION_RESOLUTION_UNKNOWN PROTOCOL_VIOLATION TRIGGERED_ACTION_EXCEPTION FEATURE_NOT_SUPPORTED INVALID_TRANSACTION_INITIATION LOCATOR_EXCEPTION INVALID_LOCATOR_SPECIFICATION INVALID_GRANTOR INVALID_GRANT_OPERATION INVALID_ROLE_SPECIFICATION DIAGNOSTICS_EXCEPTION STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER CASE_NOT_FOUND CARDINALITY_VIOLATION DATA_EXCEPTION ARRAY_SUBSCRIPT_ERROR CHARACTER_NOT_IN_REPERTOIRE DATETIME_FIELD_OVERFLOW DIVISION_BY_ZERO ERROR_IN_ASSIGNMENT ESCAPE_CHARACTER_CONFLICT INDICATOR_OVERFLOW INTERVAL_FIELD_OVERFLOW INVALID_ARGUMENT_FOR_LOGARITHM INVALID_ARGUMENT_FOR_NTILE_FUNCTION INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION INVALID_ARGUMENT_FOR_POWER_FUNCTION INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION INVALID_CHARACTER_VALUE_FOR_CAST INVALID_DATETIME_FORMAT INVALID_ESCAPE_CHARACTER INVALID_ESCAPE_OCTET INVALID_ESCAPE_SEQUENCE NONSTANDARD_USE_OF_ESCAPE_CHARACTER INVALID_INDICATOR_PARAMETER_VALUE INVALID_PARAMETER_VALUE INVALID_REGULAR_EXPRESSION INVALID_ROW_COUNT_IN_LIMIT_CLAUSE INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE INVALID_TABLESAMPLE_ARGUMENT INVALID_TABLESAMPLE_REPEAT INVALID_TIME_ZONE_DISPLACEMENT_VALUE INVALID_USE_OF_ESCAPE_CHARACTER MOST_SPECIFIC_TYPE_MISMATCH NULL_VALUE_NOT_ALLOWED NULL_VALUE_NO_INDICATOR_PARAMETER NUMERIC_VALUE_OUT_OF_RANGE SEQUENCE_GENERATOR_LIMIT_EXCEEDED STRING_DATA_LENGTH_MISMATCH STRING_DATA_RIGHT_TRUNCATION SUBSTRING_ERROR TRIM_ERROR UNTERMINATED_C_STRING ZERO_LENGTH_CHARACTER_STRING FLOATING_POINT_EXCEPTION INVALID_TEXT_REPRESENTATION INVALID_BINARY_REPRESENTATION BAD_COPY_FILE_FORMAT UNTRANSLATABLE_CHARACTER NOT_AN_XML_DOCUMENT INVALID_XML_DOCUMENT INVALID_XML_CONTENT INVALID_XML_COMMENT INVALID_XML_PROCESSING_INSTRUCTION INTEGRITY_CONSTRAINT_VIOLATION RESTRICT_VIOLATION NOT_NULL_VIOLATION FOREIGN_KEY_VIOLATION UNIQUE_VIOLATION CHECK_VIOLATION EXCLUSION_VIOLATION INVALID_CURSOR_STATE INVALID_TRANSACTION_STATE ACTIVE_SQL_TRANSACTION BRANCH_TRANSACTION_ALREADY_ACTIVE HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION READ_ONLY_SQL_TRANSACTION SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED NO_ACTIVE_SQL_TRANSACTION IN_FAILED_SQL_TRANSACTION IDLE_IN_TRANSACTION_SESSION_TIMEOUT INVALID_SQL_STATEMENT_NAME TRIGGERED_DATA_CHANGE_VIOLATION INVALID_AUTHORIZATION_SPECIFICATION INVALID_PASSWORD DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST DEPENDENT_OBJECTS_STILL_EXIST INVALID_TRANSACTION_TERMINATION SQL_ROUTINE_EXCEPTION FUNCTION_EXECUTED_NO_RETURN_STATEMENT MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED INVALID_CURSOR_NAME EXTERNAL_ROUTINE_EXCEPTION CONTAINING_SQL_NOT_PERMITTED MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED EXTERNAL_ROUTINE_INVOCATION_EXCEPTION INVALID_SQLSTATE_RETURNED NULL_VALUE_NOT_ALLOWED TRIGGER_PROTOCOL_VIOLATED SRF_PROTOCOL_VIOLATED EVENT_TRIGGER_PROTOCOL_VIOLATED SAVEPOINT_EXCEPTION INVALID_SAVEPOINT_SPECIFICATION INVALID_CATALOG_NAME INVALID_SCHEMA_NAME TRANSACTION_ROLLBACK TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION SERIALIZATION_FAILURE STATEMENT_COMPLETION_UNKNOWN DEADLOCK_DETECTED SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION SYNTAX_ERROR INSUFFICIENT_PRIVILEGE CANNOT_COERCE GROUPING_ERROR WINDOWING_ERROR INVALID_RECURSION INVALID_FOREIGN_KEY INVALID_NAME NAME_TOO_LONG RESERVED_NAME DATATYPE_MISMATCH INDETERMINATE_DATATYPE COLLATION_MISMATCH INDETERMINATE_COLLATION WRONG_OBJECT_TYPE GENERATED_ALWAYS UNDEFINED_COLUMN UNDEFINED_FUNCTION UNDEFINED_TABLE UNDEFINED_PARAMETER UNDEFINED_OBJECT DUPLICATE_COLUMN DUPLICATE_CURSOR DUPLICATE_DATABASE DUPLICATE_FUNCTION DUPLICATE_PREPARED_STATEMENT DUPLICATE_SCHEMA DUPLICATE_TABLE DUPLICATE_ALIAS DUPLICATE_OBJECT AMBIGUOUS_COLUMN AMBIGUOUS_FUNCTION AMBIGUOUS_PARAMETER AMBIGUOUS_ALIAS INVALID_COLUMN_REFERENCE INVALID_COLUMN_DEFINITION INVALID_CURSOR_DEFINITION INVALID_DATABASE_DEFINITION INVALID_FUNCTION_DEFINITION INVALID_PREPARED_STATEMENT_DEFINITION INVALID_SCHEMA_DEFINITION INVALID_TABLE_DEFINITION INVALID_OBJECT_DEFINITION WITH_CHECK_OPTION_VIOLATION INSUFFICIENT_RESOURCES DISK_FULL OUT_OF_MEMORY TOO_MANY_CONNECTIONS CONFIGURATION_LIMIT_EXCEEDED PROGRAM_LIMIT_EXCEEDED STATEMENT_TOO_COMPLEX TOO_MANY_COLUMNS TOO_MANY_ARGUMENTS OBJECT_NOT_IN_PREREQUISITE_STATE OBJECT_IN_USE CANT_CHANGE_RUNTIME_PARAM LOCK_NOT_AVAILABLE OPERATOR_INTERVENTION QUERY_CANCELED ADMIN_SHUTDOWN CRASH_SHUTDOWN CANNOT_CONNECT_NOW DATABASE_DROPPED SYSTEM_ERROR IO_ERROR UNDEFINED_FILE DUPLICATE_FILE SNAPSHOT_TOO_OLD CONFIG_FILE_ERROR LOCK_FILE_EXISTS FDW_ERROR FDW_COLUMN_NAME_NOT_FOUND FDW_DYNAMIC_PARAMETER_VALUE_NEEDED FDW_FUNCTION_SEQUENCE_ERROR FDW_INCONSISTENT_DESCRIPTOR_INFORMATION FDW_INVALID_ATTRIBUTE_VALUE FDW_INVALID_COLUMN_NAME FDW_INVALID_COLUMN_NUMBER FDW_INVALID_DATA_TYPE FDW_INVALID_DATA_TYPE_DESCRIPTORS FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER FDW_INVALID_HANDLE FDW_INVALID_OPTION_INDEX FDW_INVALID_OPTION_NAME FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH FDW_INVALID_STRING_FORMAT FDW_INVALID_USE_OF_NULL_POINTER FDW_TOO_MANY_HANDLES FDW_OUT_OF_MEMORY FDW_NO_SCHEMAS FDW_OPTION_NAME_NOT_FOUND FDW_REPLY_HANDLE FDW_SCHEMA_NOT_FOUND FDW_TABLE_NOT_FOUND FDW_UNABLE_TO_CREATE_EXECUTION FDW_UNABLE_TO_CREATE_REPLY FDW_UNABLE_TO_ESTABLISH_CONNECTION PLPGSQL_ERROR RAISE_EXCEPTION NO_DATA_FOUND TOO_MANY_ROWS ASSERT_FAILURE INTERNAL_ERROR DATA_CORRUPTED INDEX_CORRUPTED "},illegal:/:==|\W\s*\(\*|(^|\s)\$[a-z]|\{\{|[a-z]:\s*$|\.\.\.|TO:|DO:/,contains:[{className:"keyword",variants:[{begin:/\bTEXT\s*SEARCH\b/},{begin:/\b(PRIMARY|FOREIGN|FOR(\s+NO)?)\s+KEY\b/},{begin:/\bPARALLEL\s+(UNSAFE|RESTRICTED|SAFE)\b/},{begin:/\bSTORAGE\s+(PLAIN|EXTERNAL|EXTENDED|MAIN)\b/},{begin:/\bMATCH\s+(FULL|PARTIAL|SIMPLE)\b/},{begin:/\bNULLS\s+(FIRST|LAST)\b/},{begin:/\bEVENT\s+TRIGGER\b/},{begin:/\b(MAPPING|OR)\s+REPLACE\b/},{begin:/\b(FROM|TO)\s+(PROGRAM|STDIN|STDOUT)\b/},{begin:/\b(SHARE|EXCLUSIVE)\s+MODE\b/},{begin:/\b(LEFT|RIGHT)\s+(OUTER\s+)?JOIN\b/},{begin:/\b(FETCH|MOVE)\s+(NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE|FORWARD|BACKWARD)\b/},{begin:/\bPRESERVE\s+ROWS\b/},{begin:/\bDISCARD\s+PLANS\b/},{begin:/\bREFERENCING\s+(OLD|NEW)\b/},{begin:/\bSKIP\s+LOCKED\b/},{begin:/\bGROUPING\s+SETS\b/},{begin:/\b(BINARY|INSENSITIVE|SCROLL|NO\s+SCROLL)\s+(CURSOR|FOR)\b/},{begin:/\b(WITH|WITHOUT)\s+HOLD\b/},{begin:/\bWITH\s+(CASCADED|LOCAL)\s+CHECK\s+OPTION\b/},{begin:/\bEXCLUDE\s+(TIES|NO\s+OTHERS)\b/},{begin:/\bFORMAT\s+(TEXT|XML|JSON|YAML)\b/},{begin:/\bSET\s+((SESSION|LOCAL)\s+)?NAMES\b/},{begin:/\bIS\s+(NOT\s+)?UNKNOWN\b/},{begin:/\bSECURITY\s+LABEL\b/},{begin:/\bSTANDALONE\s+(YES|NO|NO\s+VALUE)\b/},{begin:/\bWITH\s+(NO\s+)?DATA\b/},{begin:/\b(FOREIGN|SET)\s+DATA\b/},{begin:/\bSET\s+(CATALOG|CONSTRAINTS)\b/},{begin:/\b(WITH|FOR)\s+ORDINALITY\b/},{begin:/\bIS\s+(NOT\s+)?DOCUMENT\b/},{begin:/\bXML\s+OPTION\s+(DOCUMENT|CONTENT)\b/},{begin:/\b(STRIP|PRESERVE)\s+WHITESPACE\b/},{begin:/\bNO\s+(ACTION|MAXVALUE|MINVALUE)\b/},{begin:/\bPARTITION\s+BY\s+(RANGE|LIST|HASH)\b/},{begin:/\bAT\s+TIME\s+ZONE\b/},{begin:/\bGRANTED\s+BY\b/},{begin:/\bRETURN\s+(QUERY|NEXT)\b/},{begin:/\b(ATTACH|DETACH)\s+PARTITION\b/},{begin:/\bFORCE\s+ROW\s+LEVEL\s+SECURITY\b/},{begin:/\b(INCLUDING|EXCLUDING)\s+(COMMENTS|CONSTRAINTS|DEFAULTS|IDENTITY|INDEXES|STATISTICS|STORAGE|ALL)\b/},{begin:/\bAS\s+(ASSIGNMENT|IMPLICIT|PERMISSIVE|RESTRICTIVE|ENUM|RANGE)\b/}]},{begin:/\b(FORMAT|FAMILY|VERSION)\s*\(/},{begin:/\bINCLUDE\s*\(/,keywords:"INCLUDE"},{begin:/\bRANGE(?!\s*(BETWEEN|UNBOUNDED|CURRENT|[-0-9]+))/},{begin:/\b(VERSION|OWNER|TEMPLATE|TABLESPACE|CONNECTION\s+LIMIT|PROCEDURE|RESTRICT|JOIN|PARSER|COPY|START|END|COLLATION|INPUT|ANALYZE|STORAGE|LIKE|DEFAULT|DELIMITER|ENCODING|COLUMN|CONSTRAINT|TABLE|SCHEMA)\s*=/},{begin:/\b(PG_\w+?|HAS_[A-Z_]+_PRIVILEGE)\b/,relevance:10},{begin:/\bEXTRACT\s*\(/,end:/\bFROM\b/,returnEnd:!0,keywords:{type:"CENTURY DAY DECADE DOW DOY EPOCH HOUR ISODOW ISOYEAR MICROSECONDS MILLENNIUM MILLISECONDS MINUTE MONTH QUARTER SECOND TIMEZONE TIMEZONE_HOUR TIMEZONE_MINUTE WEEK YEAR"}},{begin:/\b(XMLELEMENT|XMLPI)\s*\(\s*NAME/,keywords:{keyword:"NAME"}},{begin:/\b(XMLPARSE|XMLSERIALIZE)\s*\(\s*(DOCUMENT|CONTENT)/,keywords:{keyword:"DOCUMENT CONTENT"}},{beginKeywords:"CACHE INCREMENT MAXVALUE MINVALUE",end:e.C_NUMBER_RE,returnEnd:!0,keywords:"BY CACHE INCREMENT MAXVALUE MINVALUE"},{className:"type",begin:/\b(WITH|WITHOUT)\s+TIME\s+ZONE\b/},{className:"type",begin:/\bINTERVAL\s+(YEAR|MONTH|DAY|HOUR|MINUTE|SECOND)(\s+TO\s+(MONTH|HOUR|MINUTE|SECOND))?\b/},{begin:/\bRETURNS\s+(LANGUAGE_HANDLER|TRIGGER|EVENT_TRIGGER|FDW_HANDLER|INDEX_AM_HANDLER|TSM_HANDLER)\b/,keywords:{keyword:"RETURNS",type:"LANGUAGE_HANDLER TRIGGER EVENT_TRIGGER FDW_HANDLER INDEX_AM_HANDLER TSM_HANDLER"}},{begin:"\\b("+i+")\\s*\\("},{begin:"\\.("+r+")\\b"},{begin:"\\b("+r+")\\s+PATH\\b",keywords:{keyword:"PATH",type:a.replace("PATH ","")}},{className:"type",begin:"\\b("+r+")\\b"},{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:"(e|E|u&|U&)'",end:"'",contains:[{begin:"\\\\."}],relevance:10},e.END_SAME_AS_BEGIN({begin:n,end:n,contains:[{subLanguage:["pgsql","perl","python","tcl","r","lua","java","php","ruby","bash","scheme","xml","json"],endsWithParent:!0}]}),{begin:'"',end:'"',contains:[{begin:'""'}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,{className:"meta",variants:[{begin:"%(ROW)?TYPE",relevance:10},{begin:"\\$\\d+"},{begin:"^#\\w",end:"$"}]},{className:"symbol",begin:"<<\\s*[a-zA-Z_][a-zA-Z_0-9$]*\\s*>>",relevance:10}]}};var QS=function(e){var t={className:"variable",begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*(?![A-Za-z0-9])(?![$])"},n={className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},a={className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},r=e.inherit(e.APOS_STRING_MODE,{illegal:null}),i=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(a)}),o=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(a)}),s={className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[e.inherit(r,{begin:"b'",end:"'"}),e.inherit(i,{begin:'b"',end:'"'}),i,r,o]},l={className:"number",variants:[{begin:"\\b0b[01]+(?:_[01]+)*\\b"},{begin:"\\b0o[0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0x[\\da-f]+(?:_[\\da-f]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:e[+-]?\\d+)?"}],relevance:0},c={keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile enum eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list match|0 mixed new object or private protected public real return string switch throw trait try unset use var void while xor yield",literal:"false null true",built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException UnhandledMatchError ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Stringable Throwable Traversable WeakReference WeakMap Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass"};return{aliases:["php3","php4","php5","php6","php7","php8"],case_insensitive:!0,keywords:c,contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[n]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler"}),n,{className:"keyword",begin:/\$this\b/},t,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{className:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:c,contains:["self",t,e.C_BLOCK_COMMENT_MODE,s,l]}]},{className:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",relevance:0,end:";",contains:[e.UNDERSCORE_TITLE_MODE]},s,l]}};var KS=function(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}};var jS=function(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}};var XS=function(e){return{name:"Pony",keywords:{keyword:"actor addressof and as be break class compile_error compile_intrinsic consume continue delegate digestof do else elseif embed end error for fun if ifdef in interface is isnt lambda let match new not object or primitive recover repeat return struct then trait try type until use var where while with xor",meta:"iso val tag trn box ref",literal:"this false true"},contains:[{className:"type",begin:"\\b_?[A-Z][\\w]*",relevance:0},{className:"string",begin:'"""',end:'"""',relevance:10},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE],relevance:0},{begin:e.IDENT_RE+"'",relevance:0},{className:"number",begin:"(-?)(\\b0[xX][a-fA-F0-9]+|\\b0[bB][01]+|(\\b\\d+(_\\d+)?(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",relevance:0},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var ZS=function(e){var t={$pattern:/-?[A-z\.\-]+\b/,keyword:"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter",built_in:"ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write"},n={begin:"`[\\s\\S]",relevance:0},a={className:"variable",variants:[{begin:/\$\B/},{className:"keyword",begin:/\$this/},{begin:/\$[\w\d][\w\d_:]*/}]},r={className:"string",variants:[{begin:/"/,end:/"/},{begin:/@"/,end:/^"@/}],contains:[n,a,{className:"variable",begin:/\$[A-z]/,end:/[^A-z]/}]},i={className:"string",variants:[{begin:/'/,end:/'/},{begin:/@'/,end:/^'@/}]},o=e.inherit(e.COMMENT(null,null),{variants:[{begin:/#/,end:/$/},{begin:/<#/,end:/#>/}],contains:[{className:"doctag",variants:[{begin:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{begin:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/}]}]}),s={className:"built_in",variants:[{begin:"(".concat("Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|Mount|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Build|Complete|Confirm|Deny|Deploy|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where",")+(-)[\\w\\d]+")}]},l={className:"class",beginKeywords:"class enum",end:/\s*[{]/,excludeEnd:!0,relevance:0,contains:[e.TITLE_MODE]},c={className:"function",begin:/function\s+/,end:/\s*\{|$/,excludeEnd:!0,returnBegin:!0,relevance:0,contains:[{begin:"function",relevance:0,className:"keyword"},{className:"title",begin:/\w[\w\d]*((-)[\w\d]+)*/,relevance:0},{begin:/\(/,end:/\)/,className:"params",relevance:0,contains:[a]}]},_={begin:/using\s/,end:/$/,returnBegin:!0,contains:[r,i,{className:"keyword",begin:/(using|assembly|command|module|namespace|type)/}]},d={variants:[{className:"operator",begin:"(".concat("-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor",")\\b")},{className:"literal",begin:/(-)[\w\d]+/,relevance:0}]},u={className:"function",begin:/\[.*\]\s*[\w]+[ ]??\(/,end:/$/,returnBegin:!0,relevance:0,contains:[{className:"keyword",begin:"(".concat(t.keyword.toString().replace(/\s/g,"|"),")\\b"),endsParent:!0,relevance:0},e.inherit(e.TITLE_MODE,{endsParent:!0})]},m=[u,o,n,e.NUMBER_MODE,r,i,s,a,{className:"literal",begin:/\$(null|true|false)\b/},{className:"selector-tag",begin:/@\B/,relevance:0}],p={begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[].concat("self",m,{begin:"("+["string","char","byte","int","long","bool","decimal","single","double","DateTime","xml","array","hashtable","void"].join("|")+")",className:"built_in",relevance:0},{className:"type",begin:/[\.\w\d]+/,relevance:0})};return u.contains.unshift(p),{name:"PowerShell",aliases:["ps","ps1"],case_insensitive:!0,keywords:t,contains:m.concat(l,c,_,d,p)}};var JS=function(e){return{name:"Processing",keywords:{keyword:"BufferedReader PVector PFont PImage PGraphics HashMap boolean byte char color double float int long String Array FloatDict FloatList IntDict IntList JSONArray JSONObject Object StringDict StringList Table TableRow XML false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private",literal:"P2D P3D HALF_PI PI QUARTER_PI TAU TWO_PI",title:"setup draw",built_in:"displayHeight displayWidth mouseY mouseX mousePressed pmouseX pmouseY key keyCode pixels focused frameCount frameRate height width size createGraphics beginDraw createShape loadShape PShape arc ellipse line point quad rect triangle bezier bezierDetail bezierPoint bezierTangent curve curveDetail curvePoint curveTangent curveTightness shape shapeMode beginContour beginShape bezierVertex curveVertex endContour endShape quadraticVertex vertex ellipseMode noSmooth rectMode smooth strokeCap strokeJoin strokeWeight mouseClicked mouseDragged mouseMoved mousePressed mouseReleased mouseWheel keyPressed keyPressedkeyReleased keyTyped print println save saveFrame day hour millis minute month second year background clear colorMode fill noFill noStroke stroke alpha blue brightness color green hue lerpColor red saturation modelX modelY modelZ screenX screenY screenZ ambient emissive shininess specular add createImage beginCamera camera endCamera frustum ortho perspective printCamera printProjection cursor frameRate noCursor exit loop noLoop popStyle pushStyle redraw binary boolean byte char float hex int str unbinary unhex join match matchAll nf nfc nfp nfs split splitTokens trim append arrayCopy concat expand reverse shorten sort splice subset box sphere sphereDetail createInput createReader loadBytes loadJSONArray loadJSONObject loadStrings loadTable loadXML open parseXML saveTable selectFolder selectInput beginRaw beginRecord createOutput createWriter endRaw endRecord PrintWritersaveBytes saveJSONArray saveJSONObject saveStream saveStrings saveXML selectOutput popMatrix printMatrix pushMatrix resetMatrix rotate rotateX rotateY rotateZ scale shearX shearY translate ambientLight directionalLight lightFalloff lights lightSpecular noLights normal pointLight spotLight image imageMode loadImage noTint requestImage tint texture textureMode textureWrap blend copy filter get loadPixels set updatePixels blendMode loadShader PShaderresetShader shader createFont loadFont text textFont textAlign textLeading textMode textSize textWidth textAscent textDescent abs ceil constrain dist exp floor lerp log mag map max min norm pow round sq sqrt acos asin atan atan2 cos degrees radians sin tan noise noiseDetail noiseSeed random randomGaussian randomSeed"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};var eb=function(e){return{name:"Python profiler",contains:[e.C_NUMBER_MODE,{begin:"[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}",end:":",excludeEnd:!0},{begin:"(ncalls|tottime|cumtime)",end:"$",keywords:"ncalls tottime|10 cumtime|10 filename",relevance:10},{begin:"function calls",end:"$",contains:[e.C_NUMBER_MODE],relevance:10},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"\\(",end:"\\)$",excludeBegin:!0,excludeEnd:!0,relevance:0}]}};var tb=function(e){var t={begin:/\(/,end:/\)/,relevance:0},n={begin:/\[/,end:/\]/},a={className:"comment",begin:/%/,end:/$/,contains:[e.PHRASAL_WORDS_MODE]},r={className:"string",begin:/`/,end:/`/,contains:[e.BACKSLASH_ESCAPE]},i=[{begin:/[a-z][A-Za-z0-9_]*/,relevance:0},{className:"symbol",variants:[{begin:/[A-Z][a-zA-Z0-9_]*/},{begin:/_[A-Za-z0-9_]*/}],relevance:0},t,{begin:/:-/},n,a,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,r,{className:"string",begin:/0'(\\'|.)/},{className:"string",begin:/0'\\s/},e.C_NUMBER_MODE];return t.contains=i,n.contains=i,{name:"Prolog",contains:i.concat([{begin:/\.$/}])}};var nb=function(e){var t="[ \\t\\f]*",n=t+"[:=]"+t,a="[ \\t\\f]+",r="("+n+"|"+"[ \\t\\f]+)",i="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",o="([^\\\\:= \\t\\f\\n]|\\\\.)+",s={end:r,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\\\"},{begin:"\\\\\\n"}]}};return{name:".properties",case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{returnBegin:!0,variants:[{begin:i+n,relevance:1},{begin:i+a,relevance:0}],contains:[{className:"attr",begin:i,endsParent:!0,relevance:0}],starts:s},{begin:o+r,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:o,endsParent:!0,relevance:0}],starts:s},{className:"attr",relevance:0,begin:o+t+"$"}]}};var ab=function(e){return{name:"Protocol Buffers",keywords:{keyword:"package import option optional required repeated group oneof",built_in:"double float int32 int64 uint32 uint64 sint32 sint64 fixed32 fixed64 sfixed32 sfixed64 bool string bytes",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"message enum service",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"function",beginKeywords:"rpc",end:/[{;]/,excludeEnd:!0,keywords:"rpc returns"},{begin:/^\s*[A-Z_]+(?=\s*=[^\n]+;$)/}]}};var rb=function(e){var t=e.COMMENT("#","$"),n="([A-Za-z_]|::)(\\w|::)*",a=e.inherit(e.TITLE_MODE,{begin:n}),r={className:"variable",begin:"\\$"+n},i={className:"string",contains:[e.BACKSLASH_ESCAPE,r],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/}]};return{name:"Puppet",aliases:["pp"],contains:[t,r,i,{beginKeywords:"class",end:"\\{|;",illegal:/=/,contains:[a,t]},{beginKeywords:"define",end:/\{/,contains:[{className:"section",begin:e.IDENT_RE,endsParent:!0}]},{begin:e.IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\S/,contains:[{className:"keyword",begin:e.IDENT_RE},{begin:/\{/,end:/\}/,keywords:{keyword:"and case default else elsif false if in import enherits node or true undef unless main settings $string ",literal:"alias audit before loglevel noop require subscribe tag owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check en_address ip_address realname command environment hour monute month monthday special target weekday creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options device fstype enable hasrestart directory present absent link atboot blockdevice device dump pass remounts poller_tag use message withpath adminfile allow_virtual allowcdrom category configfiles flavor install_options instance package_settings platform responsefile status uninstall_options vendor unless_system_user unless_uid binary control flags hasstatus manifest pattern restart running start stop allowdupe auths expiry gid groups home iterations key_membership keys managehome membership password password_max_age password_min_age profile_membership profiles project purge_ssh_keys role_membership roles salt shell uid baseurl cost descr enabled enablegroups exclude failovermethod gpgcheck gpgkey http_caching include includepkgs keepalive metadata_expire metalink mirrorlist priority protect proxy proxy_password proxy_username repo_gpgcheck s3_enabled skip_if_unavailable sslcacert sslclientcert sslclientkey sslverify mounted",built_in:"architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version"},relevance:0,contains:[i,t,{begin:"[a-zA-Z_]+\\s*=>",returnBegin:!0,end:"=>",contains:[{className:"attr",begin:e.IDENT_RE}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},r]}],relevance:0}]}};var ib=function(e){return{name:"PureBASIC",aliases:["pb","pbi"],keywords:"Align And Array As Break CallDebugger Case CompilerCase CompilerDefault CompilerElse CompilerElseIf CompilerEndIf CompilerEndSelect CompilerError CompilerIf CompilerSelect CompilerWarning Continue Data DataSection Debug DebugLevel Declare DeclareC DeclareCDLL DeclareDLL DeclareModule Default Define Dim DisableASM DisableDebugger DisableExplicit Else ElseIf EnableASM EnableDebugger EnableExplicit End EndDataSection EndDeclareModule EndEnumeration EndIf EndImport EndInterface EndMacro EndModule EndProcedure EndSelect EndStructure EndStructureUnion EndWith Enumeration EnumerationBinary Extends FakeReturn For ForEach ForEver Global Gosub Goto If Import ImportC IncludeBinary IncludeFile IncludePath Interface List Macro MacroExpandedCount Map Module NewList NewMap Next Not Or Procedure ProcedureC ProcedureCDLL ProcedureDLL ProcedureReturn Protected Prototype PrototypeC ReDim Read Repeat Restore Return Runtime Select Shared Static Step Structure StructureUnion Swap Threaded To UndefineMacro Until Until UnuseModule UseModule Wend While With XIncludeFile XOr",contains:[e.COMMENT(";","$",{relevance:0}),{className:"function",begin:"\\b(Procedure|Declare)(C|CDLL|DLL)?\\b",end:"\\(",excludeEnd:!0,returnBegin:!0,contains:[{className:"keyword",begin:"(Procedure|Declare)(C|CDLL|DLL)?",excludeEnd:!0},{className:"type",begin:"\\.\\w*"},e.UNDERSCORE_TITLE_MODE]},{className:"string",begin:'(~)?"',end:'"',illegal:"\\n"},{className:"symbol",begin:"#[a-zA-Z_]\\w*\\$?"}]}};function ob(e){return e?"string"==typeof e?e:e.source:null}function sb(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return ob(e)})).join("")}("(?=",e,")")}var lb=function(e){var t={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:["and","as","assert","async","await","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},n={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:t,illegal:/#/},r={begin:/\{\{/,relevance:0},i={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,n],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,n],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,n,r,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,n,r,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,r,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},o="[0-9](_?[0-9])*",s="(\\b(".concat(o,"))?\\.(").concat(o,")|\\b(").concat(o,")\\."),l={className:"number",relevance:0,variants:[{begin:"(\\b(".concat(o,")|(").concat(s,"))[eE][+-]?(").concat(o,")[jJ]?\\b")},{begin:"(".concat(s,")[jJ]?")},{begin:"\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?\\b"},{begin:"\\b0[bB](_?[01])+[lL]?\\b"},{begin:"\\b0[oO](_?[0-7])+[lL]?\\b"},{begin:"\\b0[xX](_?[0-9a-fA-F])+[lL]?\\b"},{begin:"\\b(".concat(o,")[jJ]\\b")}]},c={className:"comment",begin:sb(/# type:/),end:/$/,keywords:t,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},_={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:["self",n,l,i,e.HASH_COMMENT_MODE]}]};return a.contains=[i,l,n],{name:"Python",aliases:["py","gyp","ipython"],keywords:t,illegal:/(<\/|->|\?)|=>/,contains:[n,l,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},i,c,e.HASH_COMMENT_MODE,{variants:[{className:"function",beginKeywords:"def"},{className:"class",beginKeywords:"class"}],end:/:/,illegal:/[${=;\n,]/,contains:[e.UNDERSCORE_TITLE_MODE,_,{begin:/->/,endsWithParent:!0,keywords:t}]},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[l,_,i]}]}};var cb=function(e){return{aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}};var _b=function(e){return{name:"Q",aliases:["k","kdb"],keywords:{$pattern:/(`?)[A-Za-z0-9_]+\b/,keyword:"do while select delete by update from",literal:"0b 1b",built_in:"neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum",type:"`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid"},contains:[e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};function db(e){return e?"string"==typeof e?e:e.source:null}function ub(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return db(e)})).join("");return a}var mb=function(e){var t="[a-zA-Z_][a-zA-Z0-9\\._]*",n={className:"attribute",begin:"\\bid\\s*:",starts:{className:"string",end:t,returnEnd:!1}},a={begin:t+"\\s*:",returnBegin:!0,contains:[{className:"attribute",begin:t,end:"\\s*:",excludeEnd:!0,relevance:0}],relevance:0},r={begin:ub(t,/\s*\{/),end:/\{/,returnBegin:!0,relevance:0,contains:[e.inherit(e.TITLE_MODE,{begin:t})]};return{name:"QML",aliases:["qt"],case_insensitive:!1,keywords:{keyword:"in of on if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await import",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Behavior bool color coordinate date double enumeration font geocircle georectangle geoshape int list matrix4x4 parent point quaternion real rect size string url variant vector2d vector3d vector4d Promise"},contains:[{className:"meta",begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{begin:/</,end:/>\s*[);\]]/,relevance:0,subLanguage:"xml"}],relevance:0},{className:"keyword",begin:"\\bsignal\\b",starts:{className:"string",end:"(\\(|:|=|;|,|//|/\\*|$)",returnEnd:!0}},{className:"keyword",begin:"\\bproperty\\b",starts:{className:"string",end:"(:|=|;|,|//|/\\*|$)",returnEnd:!0}},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}],illegal:/\[|%/},{begin:"\\."+e.IDENT_RE,relevance:0},n,a,r],illegal:/#/}};function pb(e){return e?"string"==typeof e?e:e.source:null}function gb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return pb(e)})).join("");return a}var Eb=function(e){var t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/;return{name:"R",illegal:/->/,keywords:{$pattern:t,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},compilerExtensions:[function(e,t){if(e.beforeMatch){if(e.starts)throw new Error("beforeMatch cannot be used with starts");var n=Object.assign({},e);Object.keys(e).forEach((function(t){delete e[t]})),e.begin=gb(n.beforeMatch,gb("(?=",n.begin,")")),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch}}],contains:[e.COMMENT(/#'/,/$/,{contains:[{className:"doctag",begin:"@examples",starts:{contains:[{begin:/\n/},{begin:/#'\s*(?=@[a-zA-Z]+)/,endsParent:!0},{begin:/#'/,end:/$/,excludeBegin:!0}]}},{className:"doctag",begin:"@param",end:/$/,contains:[{className:"variable",variants:[{begin:t},{begin:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{className:"doctag",begin:/@[a-zA-Z]+/},{className:"meta-keyword",begin:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{className:"number",relevance:0,beforeMatch:/([^a-zA-Z0-9._])/,variants:[{match:/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/},{match:/0[xX][0-9a-fA-F]+([pP][+-]?\d+)?[Li]?/},{match:/(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?[Li]?/}]},{begin:"%",end:"%"},{begin:gb(/[a-zA-Z][a-zA-Z_0-9]*/,"\\s+<-\\s+")},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}};var Sb=function(e){var t="~?[a-z$_][0-9a-zA-Z$_]*",n="`?[A-Z$_][0-9a-zA-Z$_]*",a="("+(["||","++","**","+.","*","/","*.","/.","..."].map((function(e){return e.split("").map((function(e){return"\\"+e})).join("")})).join("|")+"|\\|>|&&|==|===)"),r="\\s+"+a+"\\s+",i={keyword:"and as asr assert begin class constraint do done downto else end exception external for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new nonrec object of open or private rec sig struct then to try type val virtual when while with",built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 ref string unit ",literal:"true false"},o="\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",s={className:"number",relevance:0,variants:[{begin:o},{begin:"\\(-"+o+"\\)"}]},l={className:"operator",relevance:0,begin:a},c=[{className:"identifier",relevance:0,begin:t},l,s],_=[e.QUOTE_STRING_MODE,l,{className:"module",begin:"\\b"+n,returnBegin:!0,end:".",contains:[{className:"identifier",begin:n,relevance:0}]}],d=[{className:"module",begin:"\\b"+n,returnBegin:!0,end:".",relevance:0,contains:[{className:"identifier",begin:n,relevance:0}]}],u={className:"function",relevance:0,keywords:i,variants:[{begin:"\\s(\\(\\.?.*?\\)|"+t+")\\s*=>",end:"\\s*=>",returnBegin:!0,relevance:0,contains:[{className:"params",variants:[{begin:t},{begin:"~?[a-z$_][0-9a-zA-Z$_]*(\\s*:\\s*[a-z$_][0-9a-z$_]*(\\(\\s*('?[a-z$_][0-9a-z$_]*\\s*(,'?[a-z$_][0-9a-z$_]*\\s*)*)?\\))?){0,2}"},{begin:/\(\s*\)/}]}]},{begin:"\\s\\(\\.?[^;\\|]*\\)\\s*=>",end:"\\s=>",returnBegin:!0,relevance:0,contains:[{className:"params",relevance:0,variants:[{begin:t,end:"(,|\\n|\\))",relevance:0,contains:[l,{className:"typing",begin:":",end:"(,|\\n)",returnBegin:!0,relevance:0,contains:d}]}]}]},{begin:"\\(\\.\\s"+t+"\\)\\s*=>"}]};_.push(u);var m={className:"constructor",begin:n+"\\(",end:"\\)",illegal:"\\n",keywords:i,contains:[e.QUOTE_STRING_MODE,l,{className:"params",begin:"\\b"+t}]},p={className:"pattern-match",begin:"\\|",returnBegin:!0,keywords:i,end:"=>",relevance:0,contains:[m,l,{relevance:0,className:"constructor",begin:n}]},g={className:"module-access",keywords:i,returnBegin:!0,variants:[{begin:"\\b("+n+"\\.)+"+t},{begin:"\\b("+n+"\\.)+\\(",end:"\\)",returnBegin:!0,contains:[u,{begin:"\\(",end:"\\)",skip:!0}].concat(_)},{begin:"\\b("+n+"\\.)+\\{",end:/\}/}],contains:_};return d.push(g),{name:"ReasonML",aliases:["re"],keywords:i,illegal:"(:-|:=|\\$\\{|\\+=)",contains:[e.COMMENT("/\\*","\\*/",{illegal:"^(#,\\/\\/)"}),{className:"character",begin:"'(\\\\[^']+|[^'])'",illegal:"\\n",relevance:0},e.QUOTE_STRING_MODE,{className:"literal",begin:"\\(\\)",relevance:0},{className:"literal",begin:"\\[\\|",end:"\\|\\]",relevance:0,contains:c},{className:"literal",begin:"\\[",end:"\\]",relevance:0,contains:c},m,{className:"operator",begin:r,illegal:"--\x3e",relevance:0},s,e.C_LINE_COMMENT_MODE,p,u,{className:"module-def",begin:"\\bmodule\\s+"+t+"\\s+"+n+"\\s+=\\s+\\{",end:/\}/,returnBegin:!0,keywords:i,relevance:0,contains:[{className:"module",relevance:0,begin:n},{begin:/\{/,end:/\}/,skip:!0}].concat(_)},g]}};var bb=function(e){return{name:"RenderMan RIB",keywords:"ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry Hider Hyperboloid Identity Illuminate Imager Interior LightSource MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd TransformPoints Translate TrimCurve WorldBegin WorldEnd",illegal:"</",contains:[e.HASH_COMMENT_MODE,e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}};var Tb=function(e){var t="[a-zA-Z-_][^\\n{]+\\{",n={className:"attribute",begin:/[a-zA-Z-_]+/,end:/\s*:/,excludeEnd:!0,starts:{end:";",relevance:0,contains:[{className:"variable",begin:/\.[a-zA-Z-_]+/},{className:"keyword",begin:/\(optional\)/}]}};return{name:"Roboconf",aliases:["graph","instances"],case_insensitive:!0,keywords:"import",contains:[{begin:"^facet "+t,end:/\}/,keywords:"facet",contains:[n,e.HASH_COMMENT_MODE]},{begin:"^\\s*instance of "+t,end:/\}/,keywords:"name count channels instance-data instance-state instance of",illegal:/\S/,contains:["self",n,e.HASH_COMMENT_MODE]},{begin:"^"+t,end:/\}/,contains:[n,e.HASH_COMMENT_MODE]},e.HASH_COMMENT_MODE]}};var fb=function(e){var t="foreach do while for if from to step else on-error and or not in",n="true false yes no nothing nil null",a={className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},r={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a,{className:"variable",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]}]},i={className:"string",begin:/'/,end:/'/};return{name:"Microtik RouterOS script",aliases:["mikrotik"],case_insensitive:!0,keywords:{$pattern:/:?[\w-]+/,literal:n,keyword:t+" :"+t.split(" ").join(" :")+" :"+"global local beep delay put len typeof pick log time set find environment terminal error execute parse resolve toarray tobool toid toip toip6 tonum tostr totime".split(" ").join(" :")},contains:[{variants:[{begin:/\/\*/,end:/\*\//},{begin:/\/\//,end:/$/},{begin:/<\//,end:/>/}],illegal:/./},e.COMMENT("^#","$"),r,i,a,{begin:/[\w-]+=([^\s{}[\]()>]+)/,relevance:0,returnBegin:!0,contains:[{className:"attribute",begin:/[^=]+/},{begin:/=/,endsWithParent:!0,relevance:0,contains:[r,i,a,{className:"literal",begin:"\\b("+n.split(" ").join("|")+")\\b"},{begin:/("[^"]*"|[^\s{}[\]]+)/}]}]},{className:"number",begin:/\*[0-9a-fA-F]+/},{begin:"\\b("+"add remove enable disable set get print export edit find run debug error info warning".split(" ").join("|")+")([\\s[(\\]|])",returnBegin:!0,contains:[{className:"builtin-name",begin:/\w+/}]},{className:"built_in",variants:[{begin:"(\\.\\./|/|\\s)(("+"traffic-flow traffic-generator firewall scheduler aaa accounting address-list address align area bandwidth-server bfd bgp bridge client clock community config connection console customer default dhcp-client dhcp-server discovery dns e-mail ethernet filter firmware gps graphing group hardware health hotspot identity igmp-proxy incoming instance interface ip ipsec ipv6 irq l2tp-server lcd ldp logging mac-server mac-winbox mangle manual mirror mme mpls nat nd neighbor network note ntp ospf ospf-v3 ovpn-server page peer pim ping policy pool port ppp pppoe-client pptp-server prefix profile proposal proxy queue radius resource rip ripng route routing screen script security-profiles server service service-port settings shares smb sms sniffer snmp snooper socks sstp-server system tool tracking type upgrade upnp user-manager users user vlan secret vrrp watchdog web-access wireless pptp pppoe lan wan layer7-protocol lease simple raw".split(" ").join("|")+");?\\s)+"},{begin:/\.\./,relevance:0}]}]}};var Cb=function(e){return{name:"RenderMan RSL",keywords:{keyword:"float color point normal vector matrix while for if do return else break extern continue",built_in:"abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp faceforward filterstep floor format fresnel incident length lightsource log match max min mod noise normalize ntransform opposite option phong pnoise pow printf ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan texture textureinfo trace transform vtransform xcomp ycomp zcomp"},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"},{className:"class",beginKeywords:"surface displacement light volume imager",end:"\\("},{beginKeywords:"illuminate illuminance gather",end:"\\("}]}};var Nb=function(e){return{name:"Oracle Rules Language",keywords:{keyword:"BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM NUMDAYS READ_DATE STAGING",built_in:"IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"literal",variants:[{begin:"#\\s+",relevance:0},{begin:"#[a-zA-Z .]+"}]}]}};var Rb=function(e){var t="([ui](8|16|32|64|128|size)|f(32|64))?",n="drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!";return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",keyword:"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield",literal:"true false Some None Ok Err",built_in:n},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"string",variants:[{begin:/r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/}]},{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*/},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+t}],relevance:0},{className:"function",beginKeywords:"fn",end:"(\\(|<)",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"meta-string",begin:/"/,end:/"/}]},{className:"class",beginKeywords:"type",end:";",contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{endsParent:!0})],illegal:"\\S"},{className:"class",beginKeywords:"trait enum struct union",end:/\{/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{endsParent:!0})],illegal:"[\\w\\d]"},{begin:e.IDENT_RE+"::",keywords:{built_in:n}},{begin:"->"}]}};var vb=function(e){return{name:"SAS",case_insensitive:!0,keywords:{literal:"null missing _all_ _automatic_ _character_ _infile_ _n_ _name_ _null_ _numeric_ _user_ _webout_",meta:"do if then else end until while abort array attrib by call cards cards4 catname continue datalines datalines4 delete delim delimiter display dm drop endsas error file filename footnote format goto in infile informat input keep label leave length libname link list lostcard merge missing modify options output out page put redirect remove rename replace retain return select set skip startsas stop title update waitsas where window x systask add and alter as cascade check create delete describe distinct drop foreign from group having index insert into in key like message modify msgtype not null on or order primary references reset restrict select set table unique update validate view where"},contains:[{className:"keyword",begin:/^\s*(proc [\w\d_]+|data|run|quit)[\s;]/},{className:"variable",begin:/&[a-zA-Z_&][a-zA-Z0-9_]*\.?/},{className:"emphasis",begin:/^\s*datalines|cards.*;/,end:/^\s*;\s*$/},{className:"built_in",begin:"%(bquote|nrbquote|cmpres|qcmpres|compstor|datatyp|display|do|else|end|eval|global|goto|if|index|input|keydef|label|left|length|let|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qcmpres|qleft|qlowcase|qscan|qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|substr|superq|syscall|sysevalf|sysexec|sysfunc|sysget|syslput|sysprod|sysrc|sysrput|then|to|trim|unquote|until|upcase|verify|while|window)"},{className:"name",begin:/%[a-zA-Z_][a-zA-Z_0-9]*/},{className:"meta",begin:"[^%](abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|cexist|cinv|close|cnonct|collate|compbl|compound|compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|filename|fileref|finfo|finv|fipname|fipnamel|fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|hms|hosthelp|hour|ibessel|index|indexc|indexw|input|inputc|inputn|int|intck|intnx|intrr|irr|jbessel|juldate|kurtosis|lag|lbound|left|length|lgamma|libname|libref|log|log10|log2|logpdf|logpmf|logsdf|lowcase|max|mdy|mean|min|minute|mod|month|mopen|mort|n|netpv|nmiss|normal|note|npv|open|ordinal|pathname|pdf|peek|peekc|pmf|point|poisson|poke|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probt|put|putc|putn|qtr|quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|rewind|right|round|saving|scan|sdf|second|sign|sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|stfips|stname|stnamel|substr|sum|symget|sysget|sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|tinv|tnonct|today|translate|tranwrd|trigamma|trim|trimn|trunc|uniform|upcase|uss|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|zipnamel|zipstate)[(]"},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.COMMENT("\\*",";"),e.C_BLOCK_COMMENT_MODE]}};var Ob=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:/\$\{/,end:/\}/}]},n={className:"string",variants:[{begin:'"""',end:'"""'},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'[a-z]+"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t]},{className:"string",begin:'[a-z]+"""',end:'"""',contains:[t],relevance:10}]},a={className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},r={className:"title",begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,relevance:0},i={className:"class",beginKeywords:"class object trait type",end:/[:={\[\n;]/,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a]},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a]},r]},o={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[r]};return{name:"Scala",keywords:{literal:"true false null",keyword:"type yield lazy override def with val var sealed abstract private trait object if forSome for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"symbol",begin:"'\\w[\\w\\d_]*(?!')"},a,o,i,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}};var hb=function(e){var t="[^\\(\\)\\[\\]\\{\\}\",'`;#|\\\\\\s]+",n="(-|\\+)?\\d+([./]\\d+)?",a={$pattern:t,"builtin-name":"case-lambda call/cc class define-class exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules ' * + , ,@ - ... / ; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci<? string-ci=? string-ci>=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string<? string=? string>=? string>? string? substring symbol->string symbol? tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"},r={className:"literal",begin:"(#t|#f|#\\\\"+t+"|#\\\\.)"},i={className:"number",variants:[{begin:n,relevance:0},{begin:"(-|\\+)?\\d+([./]\\d+)?[+\\-](-|\\+)?\\d+([./]\\d+)?i",relevance:0},{begin:"#b[0-1]+(/[0-1]+)?"},{begin:"#o[0-7]+(/[0-7]+)?"},{begin:"#x[0-9a-f]+(/[0-9a-f]+)?"}]},o=e.QUOTE_STRING_MODE,s=[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#\\|","\\|#")],l={begin:t,relevance:0},c={className:"symbol",begin:"'"+t},_={endsWithParent:!0,relevance:0},d={variants:[{begin:/'/},{begin:"`"}],contains:[{begin:"\\(",end:"\\)",contains:["self",r,o,i,l,c]}]},u={className:"name",relevance:0,begin:t,keywords:a},m={variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}],contains:[{begin:/lambda/,endsWithParent:!0,returnBegin:!0,contains:[u,{endsParent:!0,variants:[{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/}],contains:[l]}]},u,_]};return _.contains=[r,i,o,l,c,d,m].concat(s),{name:"Scheme",illegal:/\S/,contains:[e.SHEBANG(),i,o,c,d,m].concat(s)}};var yb=function(e){var t=[e.C_NUMBER_MODE,{className:"string",begin:"'|\"",end:"'|\"",contains:[e.BACKSLASH_ESCAPE,{begin:"''"}]}];return{name:"Scilab",aliases:["sci"],keywords:{$pattern:/%?\w+/,keyword:"abort break case clear catch continue do elseif else endfunction end for function global if pause return resume select try then while",literal:"%f %F %t %T %pi %eps %inf %nan %e %i %z %s",built_in:"abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan type typename warning zeros matrix"},illegal:'("|#|/\\*|\\s+/\\w+)',contains:[{className:"function",beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{begin:"[a-zA-Z_][a-zA-Z_0-9]*[\\.']+",relevance:0},{begin:"\\[",end:"\\][\\.']*",relevance:0,contains:t},e.COMMENT("//","$")].concat(t)}},Ib=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Ab=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],Db=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],Mb=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],Lb=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();var wb=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=Mb,a=Db,r="@[a-z-]+",i={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ib.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+a.join("|")+")"},{className:"selector-pseudo",begin:"::("+n.join("|")+")"},i,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},{className:"attribute",begin:"\\b("+Lb.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[i,t.HEXCOLOR,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT]},{begin:"@(page|font-face)",lexemes:r,keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Ab.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},i,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,e.CSS_NUMBER_MODE]}]}};var xb=function(e){return{name:"Shell Session",aliases:["console"],contains:[{className:"meta",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#]/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}};var Pb=function(e){var t=["add","and","cmp","cmpg","cmpl","const","div","double","float","goto","if","int","long","move","mul","neg","new","nop","not","or","rem","return","shl","shr","sput","sub","throw","ushr","xor"];return{name:"Smali",contains:[{className:"string",begin:'"',end:'"',relevance:0},e.COMMENT("#","$",{relevance:0}),{className:"keyword",variants:[{begin:"\\s*\\.end\\s[a-zA-Z0-9]*"},{begin:"^[ ]*\\.[a-zA-Z]*",relevance:0},{begin:"\\s:[a-zA-Z_0-9]*",relevance:0},{begin:"\\s("+["transient","constructor","abstract","final","synthetic","public","private","protected","static","bridge","system"].join("|")+")"}]},{className:"built_in",variants:[{begin:"\\s("+t.join("|")+")\\s"},{begin:"\\s("+t.join("|")+")((-|/)[a-zA-Z0-9]+)+\\s",relevance:10},{begin:"\\s("+["aget","aput","array","check","execute","fill","filled","goto/16","goto/32","iget","instance","invoke","iput","monitor","packed","sget","sparse"].join("|")+")((-|/)[a-zA-Z0-9]+)*\\s",relevance:10}]},{className:"class",begin:"L[^(;:\n]*;",relevance:0},{begin:"[vp][0-9]+"}]}};var kb=function(e){var t="[a-z][a-zA-Z0-9_]*",n={className:"string",begin:"\\$.{1}"},a={className:"symbol",begin:"#"+e.UNDERSCORE_IDENT_RE};return{name:"Smalltalk",aliases:["st"],keywords:"self super nil true false thisContext",contains:[e.COMMENT('"','"'),e.APOS_STRING_MODE,{className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},{begin:t+":",relevance:0},e.C_NUMBER_MODE,a,n,{begin:"\\|[ ]*"+t+"([ ]+"+t+")*[ ]*\\|",returnBegin:!0,end:/\|/,illegal:/\S/,contains:[{begin:"(\\|[ ]*)?"+t}]},{begin:"#\\(",end:"\\)",contains:[e.APOS_STRING_MODE,n,e.C_NUMBER_MODE,a]}]}};var Ub=function(e){return{name:"SML (Standard ML)",aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?",keyword:"abstype and andalso as case datatype do else end eqtype exception fn fun functor handle if in include infix infixr let local nonfix of op open orelse raise rec sharing sig signature struct structure then type val with withtype where while",built_in:"array bool char exn int list option order real ref string substring vector unit word",literal:"true false NONE SOME LESS EQUAL GREATER nil"},illegal:/\/\/|>>/,contains:[{className:"literal",begin:/\[(\|\|)?\]|\(\)/,relevance:0},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*"},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",relevance:0},{begin:/[-=]>/}]}};var Fb=function(e){var t={className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]},{begin:"'",end:"'",contains:[{begin:"''",relevance:0}]}]},n={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"define undef ifdef ifndef else endif include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(t,{className:"meta-string"}),{className:"meta-string",begin:/<[^\n>]*>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]};return{name:"SQF",case_insensitive:!0,keywords:{keyword:"case catch default do else exit exitWith for forEach from if private switch then throw to try waitUntil while with",built_in:"abs accTime acos action actionIDs actionKeys actionKeysImages actionKeysNames actionKeysNamesArray actionName actionParams activateAddons activatedAddons activateKey add3DENConnection add3DENEventHandler add3DENLayer addAction addBackpack addBackpackCargo addBackpackCargoGlobal addBackpackGlobal addCamShake addCuratorAddons addCuratorCameraArea addCuratorEditableObjects addCuratorEditingArea addCuratorPoints addEditorObject addEventHandler addForce addGoggles addGroupIcon addHandgunItem addHeadgear addItem addItemCargo addItemCargoGlobal addItemPool addItemToBackpack addItemToUniform addItemToVest addLiveStats addMagazine addMagazineAmmoCargo addMagazineCargo addMagazineCargoGlobal addMagazineGlobal addMagazinePool addMagazines addMagazineTurret addMenu addMenuItem addMissionEventHandler addMPEventHandler addMusicEventHandler addOwnedMine addPlayerScores addPrimaryWeaponItem addPublicVariableEventHandler addRating addResources addScore addScoreSide addSecondaryWeaponItem addSwitchableUnit addTeamMember addToRemainsCollector addTorque addUniform addVehicle addVest addWaypoint addWeapon addWeaponCargo addWeaponCargoGlobal addWeaponGlobal addWeaponItem addWeaponPool addWeaponTurret admin agent agents AGLToASL aimedAtTarget aimPos airDensityRTD airplaneThrottle airportSide AISFinishHeal alive all3DENEntities allAirports allControls allCurators allCutLayers allDead allDeadMen allDisplays allGroups allMapMarkers allMines allMissionObjects allow3DMode allowCrewInImmobile allowCuratorLogicIgnoreAreas allowDamage allowDammage allowFileOperations allowFleeing allowGetIn allowSprint allPlayers allSimpleObjects allSites allTurrets allUnits allUnitsUAV allVariables ammo ammoOnPylon and animate animateBay animateDoor animatePylon animateSource animationNames animationPhase animationSourcePhase animationState append apply armoryPoints arrayIntersect asin ASLToAGL ASLToATL assert assignAsCargo assignAsCargoIndex assignAsCommander assignAsDriver assignAsGunner assignAsTurret assignCurator assignedCargo assignedCommander assignedDriver assignedGunner assignedItems assignedTarget assignedTeam assignedVehicle assignedVehicleRole assignItem assignTeam assignToAirport atan atan2 atg ATLToASL attachedObject attachedObjects attachedTo attachObject attachTo attackEnabled backpack backpackCargo backpackContainer backpackItems backpackMagazines backpackSpaceFor behaviour benchmark binocular boundingBox boundingBoxReal boundingCenter breakOut breakTo briefingName buildingExit buildingPos buttonAction buttonSetAction cadetMode call callExtension camCommand camCommit camCommitPrepared camCommitted camConstuctionSetParams camCreate camDestroy cameraEffect cameraEffectEnableHUD cameraInterest cameraOn cameraView campaignConfigFile camPreload camPreloaded camPrepareBank camPrepareDir camPrepareDive camPrepareFocus camPrepareFov camPrepareFovRange camPreparePos camPrepareRelPos camPrepareTarget camSetBank camSetDir camSetDive camSetFocus camSetFov camSetFovRange camSetPos camSetRelPos camSetTarget camTarget camUseNVG canAdd canAddItemToBackpack canAddItemToUniform canAddItemToVest cancelSimpleTaskDestination canFire canMove canSlingLoad canStand canSuspend canTriggerDynamicSimulation canUnloadInCombat canVehicleCargo captive captiveNum cbChecked cbSetChecked ceil channelEnabled cheatsEnabled checkAIFeature checkVisibility className clearAllItemsFromBackpack clearBackpackCargo clearBackpackCargoGlobal clearGroupIcons clearItemCargo clearItemCargoGlobal clearItemPool clearMagazineCargo clearMagazineCargoGlobal clearMagazinePool clearOverlay clearRadio clearWeaponCargo clearWeaponCargoGlobal clearWeaponPool clientOwner closeDialog closeDisplay closeOverlay collapseObjectTree collect3DENHistory collectiveRTD combatMode commandArtilleryFire commandChat commander commandFire commandFollow commandFSM commandGetOut commandingMenu commandMove commandRadio commandStop commandSuppressiveFire commandTarget commandWatch comment commitOverlay compile compileFinal completedFSM composeText configClasses configFile configHierarchy configName configProperties configSourceAddonList configSourceMod configSourceModList confirmSensorTarget connectTerminalToUAV controlsGroupCtrl copyFromClipboard copyToClipboard copyWaypoints cos count countEnemy countFriendly countSide countType countUnknown create3DENComposition create3DENEntity createAgent createCenter createDialog createDiaryLink createDiaryRecord createDiarySubject createDisplay createGearDialog createGroup createGuardedPoint createLocation createMarker createMarkerLocal createMenu createMine createMissionDisplay createMPCampaignDisplay createSimpleObject createSimpleTask createSite createSoundSource createTask createTeam createTrigger createUnit createVehicle createVehicleCrew createVehicleLocal crew ctAddHeader ctAddRow ctClear ctCurSel ctData ctFindHeaderRows ctFindRowHeader ctHeaderControls ctHeaderCount ctRemoveHeaders ctRemoveRows ctrlActivate ctrlAddEventHandler ctrlAngle ctrlAutoScrollDelay ctrlAutoScrollRewind ctrlAutoScrollSpeed ctrlChecked ctrlClassName ctrlCommit ctrlCommitted ctrlCreate ctrlDelete ctrlEnable ctrlEnabled ctrlFade ctrlHTMLLoaded ctrlIDC ctrlIDD ctrlMapAnimAdd ctrlMapAnimClear ctrlMapAnimCommit ctrlMapAnimDone ctrlMapCursor ctrlMapMouseOver ctrlMapScale ctrlMapScreenToWorld ctrlMapWorldToScreen ctrlModel ctrlModelDirAndUp ctrlModelScale ctrlParent ctrlParentControlsGroup ctrlPosition ctrlRemoveAllEventHandlers ctrlRemoveEventHandler ctrlScale ctrlSetActiveColor ctrlSetAngle ctrlSetAutoScrollDelay ctrlSetAutoScrollRewind ctrlSetAutoScrollSpeed ctrlSetBackgroundColor ctrlSetChecked ctrlSetEventHandler ctrlSetFade ctrlSetFocus ctrlSetFont ctrlSetFontH1 ctrlSetFontH1B ctrlSetFontH2 ctrlSetFontH2B ctrlSetFontH3 ctrlSetFontH3B ctrlSetFontH4 ctrlSetFontH4B ctrlSetFontH5 ctrlSetFontH5B ctrlSetFontH6 ctrlSetFontH6B ctrlSetFontHeight ctrlSetFontHeightH1 ctrlSetFontHeightH2 ctrlSetFontHeightH3 ctrlSetFontHeightH4 ctrlSetFontHeightH5 ctrlSetFontHeightH6 ctrlSetFontHeightSecondary ctrlSetFontP ctrlSetFontPB ctrlSetFontSecondary ctrlSetForegroundColor ctrlSetModel ctrlSetModelDirAndUp ctrlSetModelScale ctrlSetPixelPrecision ctrlSetPosition ctrlSetScale ctrlSetStructuredText ctrlSetText ctrlSetTextColor ctrlSetTooltip ctrlSetTooltipColorBox ctrlSetTooltipColorShade ctrlSetTooltipColorText ctrlShow ctrlShown ctrlText ctrlTextHeight ctrlTextWidth ctrlType ctrlVisible ctRowControls ctRowCount ctSetCurSel ctSetData ctSetHeaderTemplate ctSetRowTemplate ctSetValue ctValue curatorAddons curatorCamera curatorCameraArea curatorCameraAreaCeiling curatorCoef curatorEditableObjects curatorEditingArea curatorEditingAreaType curatorMouseOver curatorPoints curatorRegisteredObjects curatorSelected curatorWaypointCost current3DENOperation currentChannel currentCommand currentMagazine currentMagazineDetail currentMagazineDetailTurret currentMagazineTurret currentMuzzle currentNamespace currentTask currentTasks currentThrowable currentVisionMode currentWaypoint currentWeapon currentWeaponMode currentWeaponTurret currentZeroing cursorObject cursorTarget customChat customRadio cutFadeOut cutObj cutRsc cutText damage date dateToNumber daytime deActivateKey debriefingText debugFSM debugLog deg delete3DENEntities deleteAt deleteCenter deleteCollection deleteEditorObject deleteGroup deleteGroupWhenEmpty deleteIdentity deleteLocation deleteMarker deleteMarkerLocal deleteRange deleteResources deleteSite deleteStatus deleteTeam deleteVehicle deleteVehicleCrew deleteWaypoint detach detectedMines diag_activeMissionFSMs diag_activeScripts diag_activeSQFScripts diag_activeSQSScripts diag_captureFrame diag_captureFrameToFile diag_captureSlowFrame diag_codePerformance diag_drawMode diag_enable diag_enabled diag_fps diag_fpsMin diag_frameNo diag_lightNewLoad diag_list diag_log diag_logSlowFrame diag_mergeConfigFile diag_recordTurretLimits diag_setLightNew diag_tickTime diag_toggle dialog diarySubjectExists didJIP didJIPOwner difficulty difficultyEnabled difficultyEnabledRTD difficultyOption direction directSay disableAI disableCollisionWith disableConversation disableDebriefingStats disableMapIndicators disableNVGEquipment disableRemoteSensors disableSerialization disableTIEquipment disableUAVConnectability disableUserInput displayAddEventHandler displayCtrl displayParent displayRemoveAllEventHandlers displayRemoveEventHandler displaySetEventHandler dissolveTeam distance distance2D distanceSqr distributionRegion do3DENAction doArtilleryFire doFire doFollow doFSM doGetOut doMove doorPhase doStop doSuppressiveFire doTarget doWatch drawArrow drawEllipse drawIcon drawIcon3D drawLine drawLine3D drawLink drawLocation drawPolygon drawRectangle drawTriangle driver drop dynamicSimulationDistance dynamicSimulationDistanceCoef dynamicSimulationEnabled dynamicSimulationSystemEnabled echo edit3DENMissionAttributes editObject editorSetEventHandler effectiveCommander emptyPositions enableAI enableAIFeature enableAimPrecision enableAttack enableAudioFeature enableAutoStartUpRTD enableAutoTrimRTD enableCamShake enableCaustics enableChannel enableCollisionWith enableCopilot enableDebriefingStats enableDiagLegend enableDynamicSimulation enableDynamicSimulationSystem enableEndDialog enableEngineArtillery enableEnvironment enableFatigue enableGunLights enableInfoPanelComponent enableIRLasers enableMimics enablePersonTurret enableRadio enableReload enableRopeAttach enableSatNormalOnDetail enableSaving enableSentences enableSimulation enableSimulationGlobal enableStamina enableTeamSwitch enableTraffic enableUAVConnectability enableUAVWaypoints enableVehicleCargo enableVehicleSensor enableWeaponDisassembly endLoadingScreen endMission engineOn enginesIsOnRTD enginesRpmRTD enginesTorqueRTD entities environmentEnabled estimatedEndServerTime estimatedTimeLeft evalObjectArgument everyBackpack everyContainer exec execEditorScript execFSM execVM exp expectedDestination exportJIPMessages eyeDirection eyePos face faction fadeMusic fadeRadio fadeSound fadeSpeech failMission fillWeaponsFromPool find findCover findDisplay findEditorObject findEmptyPosition findEmptyPositionReady findIf findNearestEnemy finishMissionInit finite fire fireAtTarget firstBackpack flag flagAnimationPhase flagOwner flagSide flagTexture fleeing floor flyInHeight flyInHeightASL fog fogForecast fogParams forceAddUniform forcedMap forceEnd forceFlagTexture forceFollowRoad forceMap forceRespawn forceSpeed forceWalk forceWeaponFire forceWeatherChange forEachMember forEachMemberAgent forEachMemberTeam forgetTarget format formation formationDirection formationLeader formationMembers formationPosition formationTask formatText formLeader freeLook fromEditor fuel fullCrew gearIDCAmmoCount gearSlotAmmoCount gearSlotData get3DENActionState get3DENAttribute get3DENCamera get3DENConnections get3DENEntity get3DENEntityID get3DENGrid get3DENIconsVisible get3DENLayerEntities get3DENLinesVisible get3DENMissionAttribute get3DENMouseOver get3DENSelected getAimingCoef getAllEnvSoundControllers getAllHitPointsDamage getAllOwnedMines getAllSoundControllers getAmmoCargo getAnimAimPrecision getAnimSpeedCoef getArray getArtilleryAmmo getArtilleryComputerSettings getArtilleryETA getAssignedCuratorLogic getAssignedCuratorUnit getBackpackCargo getBleedingRemaining getBurningValue getCameraViewDirection getCargoIndex getCenterOfMass getClientState getClientStateNumber getCompatiblePylonMagazines getConnectedUAV getContainerMaxLoad getCursorObjectParams getCustomAimCoef getDammage getDescription getDir getDirVisual getDLCAssetsUsage getDLCAssetsUsageByName getDLCs getEditorCamera getEditorMode getEditorObjectScope getElevationOffset getEnvSoundController getFatigue getForcedFlagTexture getFriend getFSMVariable getFuelCargo getGroupIcon getGroupIconParams getGroupIcons getHideFrom getHit getHitIndex getHitPointDamage getItemCargo getMagazineCargo getMarkerColor getMarkerPos getMarkerSize getMarkerType getMass getMissionConfig getMissionConfigValue getMissionDLCs getMissionLayerEntities getModelInfo getMousePosition getMusicPlayedTime getNumber getObjectArgument getObjectChildren getObjectDLC getObjectMaterials getObjectProxy getObjectTextures getObjectType getObjectViewDistance getOxygenRemaining getPersonUsedDLCs getPilotCameraDirection getPilotCameraPosition getPilotCameraRotation getPilotCameraTarget getPlateNumber getPlayerChannel getPlayerScores getPlayerUID getPos getPosASL getPosASLVisual getPosASLW getPosATL getPosATLVisual getPosVisual getPosWorld getPylonMagazines getRelDir getRelPos getRemoteSensorsDisabled getRepairCargo getResolution getShadowDistance getShotParents getSlingLoad getSoundController getSoundControllerResult getSpeed getStamina getStatValue getSuppression getTerrainGrid getTerrainHeightASL getText getTotalDLCUsageTime getUnitLoadout getUnitTrait getUserMFDText getUserMFDvalue getVariable getVehicleCargo getWeaponCargo getWeaponSway getWingsOrientationRTD getWingsPositionRTD getWPPos glanceAt globalChat globalRadio goggles goto group groupChat groupFromNetId groupIconSelectable groupIconsVisible groupId groupOwner groupRadio groupSelectedUnits groupSelectUnit gunner gusts halt handgunItems handgunMagazine handgunWeapon handsHit hasInterface hasPilotCamera hasWeapon hcAllGroups hcGroupParams hcLeader hcRemoveAllGroups hcRemoveGroup hcSelected hcSelectGroup hcSetGroup hcShowBar hcShownBar headgear hideBody hideObject hideObjectGlobal hideSelection hint hintC hintCadet hintSilent hmd hostMission htmlLoad HUDMovementLevels humidity image importAllGroups importance in inArea inAreaArray incapacitatedState inflame inflamed infoPanel infoPanelComponentEnabled infoPanelComponents infoPanels inGameUISetEventHandler inheritsFrom initAmbientLife inPolygon inputAction inRangeOfArtillery insertEditorObject intersect is3DEN is3DENMultiplayer isAbleToBreathe isAgent isArray isAutoHoverOn isAutonomous isAutotest isBleeding isBurning isClass isCollisionLightOn isCopilotEnabled isDamageAllowed isDedicated isDLCAvailable isEngineOn isEqualTo isEqualType isEqualTypeAll isEqualTypeAny isEqualTypeArray isEqualTypeParams isFilePatchingEnabled isFlashlightOn isFlatEmpty isForcedWalk isFormationLeader isGroupDeletedWhenEmpty isHidden isInRemainsCollector isInstructorFigureEnabled isIRLaserOn isKeyActive isKindOf isLaserOn isLightOn isLocalized isManualFire isMarkedForCollection isMultiplayer isMultiplayerSolo isNil isNull isNumber isObjectHidden isObjectRTD isOnRoad isPipEnabled isPlayer isRealTime isRemoteExecuted isRemoteExecutedJIP isServer isShowing3DIcons isSimpleObject isSprintAllowed isStaminaEnabled isSteamMission isStreamFriendlyUIEnabled isText isTouchingGround isTurnedOut isTutHintsEnabled isUAVConnectable isUAVConnected isUIContext isUniformAllowed isVehicleCargo isVehicleRadarOn isVehicleSensorEnabled isWalking isWeaponDeployed isWeaponRested itemCargo items itemsWithMagazines join joinAs joinAsSilent joinSilent joinString kbAddDatabase kbAddDatabaseTargets kbAddTopic kbHasTopic kbReact kbRemoveTopic kbTell kbWasSaid keyImage keyName knowsAbout land landAt landResult language laserTarget lbAdd lbClear lbColor lbColorRight lbCurSel lbData lbDelete lbIsSelected lbPicture lbPictureRight lbSelection lbSetColor lbSetColorRight lbSetCurSel lbSetData lbSetPicture lbSetPictureColor lbSetPictureColorDisabled lbSetPictureColorSelected lbSetPictureRight lbSetPictureRightColor lbSetPictureRightColorDisabled lbSetPictureRightColorSelected lbSetSelectColor lbSetSelectColorRight lbSetSelected lbSetText lbSetTextRight lbSetTooltip lbSetValue lbSize lbSort lbSortByValue lbText lbTextRight lbValue leader leaderboardDeInit leaderboardGetRows leaderboardInit leaderboardRequestRowsFriends leaderboardsRequestUploadScore leaderboardsRequestUploadScoreKeepBest leaderboardState leaveVehicle libraryCredits libraryDisclaimers lifeState lightAttachObject lightDetachObject lightIsOn lightnings limitSpeed linearConversion lineIntersects lineIntersectsObjs lineIntersectsSurfaces lineIntersectsWith linkItem list listObjects listRemoteTargets listVehicleSensors ln lnbAddArray lnbAddColumn lnbAddRow lnbClear lnbColor lnbCurSelRow lnbData lnbDeleteColumn lnbDeleteRow lnbGetColumnsPosition lnbPicture lnbSetColor lnbSetColumnsPos lnbSetCurSelRow lnbSetData lnbSetPicture lnbSetText lnbSetValue lnbSize lnbSort lnbSortByValue lnbText lnbValue load loadAbs loadBackpack loadFile loadGame loadIdentity loadMagazine loadOverlay loadStatus loadUniform loadVest local localize locationPosition lock lockCameraTo lockCargo lockDriver locked lockedCargo lockedDriver lockedTurret lockIdentity lockTurret lockWP log logEntities logNetwork logNetworkTerminate lookAt lookAtPos magazineCargo magazines magazinesAllTurrets magazinesAmmo magazinesAmmoCargo magazinesAmmoFull magazinesDetail magazinesDetailBackpack magazinesDetailUniform magazinesDetailVest magazinesTurret magazineTurretAmmo mapAnimAdd mapAnimClear mapAnimCommit mapAnimDone mapCenterOnCamera mapGridPosition markAsFinishedOnSteam markerAlpha markerBrush markerColor markerDir markerPos markerShape markerSize markerText markerType max members menuAction menuAdd menuChecked menuClear menuCollapse menuData menuDelete menuEnable menuEnabled menuExpand menuHover menuPicture menuSetAction menuSetCheck menuSetData menuSetPicture menuSetValue menuShortcut menuShortcutText menuSize menuSort menuText menuURL menuValue min mineActive mineDetectedBy missionConfigFile missionDifficulty missionName missionNamespace missionStart missionVersion mod modelToWorld modelToWorldVisual modelToWorldVisualWorld modelToWorldWorld modParams moonIntensity moonPhase morale move move3DENCamera moveInAny moveInCargo moveInCommander moveInDriver moveInGunner moveInTurret moveObjectToEnd moveOut moveTime moveTo moveToCompleted moveToFailed musicVolume name nameSound nearEntities nearestBuilding nearestLocation nearestLocations nearestLocationWithDubbing nearestObject nearestObjects nearestTerrainObjects nearObjects nearObjectsReady nearRoads nearSupplies nearTargets needReload netId netObjNull newOverlay nextMenuItemIndex nextWeatherChange nMenuItems not numberOfEnginesRTD numberToDate objectCurators objectFromNetId objectParent objStatus onBriefingGroup onBriefingNotes onBriefingPlan onBriefingTeamSwitch onCommandModeChanged onDoubleClick onEachFrame onGroupIconClick onGroupIconOverEnter onGroupIconOverLeave onHCGroupSelectionChanged onMapSingleClick onPlayerConnected onPlayerDisconnected onPreloadFinished onPreloadStarted onShowNewObject onTeamSwitch openCuratorInterface openDLCPage openMap openSteamApp openYoutubeVideo or orderGetIn overcast overcastForecast owner param params parseNumber parseSimpleArray parseText parsingNamespace particlesQuality pickWeaponPool pitch pixelGrid pixelGridBase pixelGridNoUIScale pixelH pixelW playableSlotsNumber playableUnits playAction playActionNow player playerRespawnTime playerSide playersNumber playGesture playMission playMove playMoveNow playMusic playScriptedMission playSound playSound3D position positionCameraToWorld posScreenToWorld posWorldToScreen ppEffectAdjust ppEffectCommit ppEffectCommitted ppEffectCreate ppEffectDestroy ppEffectEnable ppEffectEnabled ppEffectForceInNVG precision preloadCamera preloadObject preloadSound preloadTitleObj preloadTitleRsc preprocessFile preprocessFileLineNumbers primaryWeapon primaryWeaponItems primaryWeaponMagazine priority processDiaryLink productVersion profileName profileNamespace profileNameSteam progressLoadingScreen progressPosition progressSetPosition publicVariable publicVariableClient publicVariableServer pushBack pushBackUnique putWeaponPool queryItemsPool queryMagazinePool queryWeaponPool rad radioChannelAdd radioChannelCreate radioChannelRemove radioChannelSetCallSign radioChannelSetLabel radioVolume rain rainbow random rank rankId rating rectangular registeredTasks registerTask reload reloadEnabled remoteControl remoteExec remoteExecCall remoteExecutedOwner remove3DENConnection remove3DENEventHandler remove3DENLayer removeAction removeAll3DENEventHandlers removeAllActions removeAllAssignedItems removeAllContainers removeAllCuratorAddons removeAllCuratorCameraAreas removeAllCuratorEditingAreas removeAllEventHandlers removeAllHandgunItems removeAllItems removeAllItemsWithMagazines removeAllMissionEventHandlers removeAllMPEventHandlers removeAllMusicEventHandlers removeAllOwnedMines removeAllPrimaryWeaponItems removeAllWeapons removeBackpack removeBackpackGlobal removeCuratorAddons removeCuratorCameraArea removeCuratorEditableObjects removeCuratorEditingArea removeDrawIcon removeDrawLinks removeEventHandler removeFromRemainsCollector removeGoggles removeGroupIcon removeHandgunItem removeHeadgear removeItem removeItemFromBackpack removeItemFromUniform removeItemFromVest removeItems removeMagazine removeMagazineGlobal removeMagazines removeMagazinesTurret removeMagazineTurret removeMenuItem removeMissionEventHandler removeMPEventHandler removeMusicEventHandler removeOwnedMine removePrimaryWeaponItem removeSecondaryWeaponItem removeSimpleTask removeSwitchableUnit removeTeamMember removeUniform removeVest removeWeapon removeWeaponAttachmentCargo removeWeaponCargo removeWeaponGlobal removeWeaponTurret reportRemoteTarget requiredVersion resetCamShake resetSubgroupDirection resize resources respawnVehicle restartEditorCamera reveal revealMine reverse reversedMouseY roadAt roadsConnectedTo roleDescription ropeAttachedObjects ropeAttachedTo ropeAttachEnabled ropeAttachTo ropeCreate ropeCut ropeDestroy ropeDetach ropeEndPosition ropeLength ropes ropeUnwind ropeUnwound rotorsForcesRTD rotorsRpmRTD round runInitScript safeZoneH safeZoneW safeZoneWAbs safeZoneX safeZoneXAbs safeZoneY save3DENInventory saveGame saveIdentity saveJoysticks saveOverlay saveProfileNamespace saveStatus saveVar savingEnabled say say2D say3D scopeName score scoreSide screenshot screenToWorld scriptDone scriptName scudState secondaryWeapon secondaryWeaponItems secondaryWeaponMagazine select selectBestPlaces selectDiarySubject selectedEditorObjects selectEditorObject selectionNames selectionPosition selectLeader selectMax selectMin selectNoPlayer selectPlayer selectRandom selectRandomWeighted selectWeapon selectWeaponTurret sendAUMessage sendSimpleCommand sendTask sendTaskResult sendUDPMessage serverCommand serverCommandAvailable serverCommandExecutable serverName serverTime set set3DENAttribute set3DENAttributes set3DENGrid set3DENIconsVisible set3DENLayer set3DENLinesVisible set3DENLogicType set3DENMissionAttribute set3DENMissionAttributes set3DENModelsVisible set3DENObjectType set3DENSelected setAccTime setActualCollectiveRTD setAirplaneThrottle setAirportSide setAmmo setAmmoCargo setAmmoOnPylon setAnimSpeedCoef setAperture setApertureNew setArmoryPoints setAttributes setAutonomous setBehaviour setBleedingRemaining setBrakesRTD setCameraInterest setCamShakeDefParams setCamShakeParams setCamUseTI setCaptive setCenterOfMass setCollisionLight setCombatMode setCompassOscillation setConvoySeparation setCuratorCameraAreaCeiling setCuratorCoef setCuratorEditingAreaType setCuratorWaypointCost setCurrentChannel setCurrentTask setCurrentWaypoint setCustomAimCoef setCustomWeightRTD setDamage setDammage setDate setDebriefingText setDefaultCamera setDestination setDetailMapBlendPars setDir setDirection setDrawIcon setDriveOnPath setDropInterval setDynamicSimulationDistance setDynamicSimulationDistanceCoef setEditorMode setEditorObjectScope setEffectCondition setEngineRPMRTD setFace setFaceAnimation setFatigue setFeatureType setFlagAnimationPhase setFlagOwner setFlagSide setFlagTexture setFog setFormation setFormationTask setFormDir setFriend setFromEditor setFSMVariable setFuel setFuelCargo setGroupIcon setGroupIconParams setGroupIconsSelectable setGroupIconsVisible setGroupId setGroupIdGlobal setGroupOwner setGusts setHideBehind setHit setHitIndex setHitPointDamage setHorizonParallaxCoef setHUDMovementLevels setIdentity setImportance setInfoPanel setLeader setLightAmbient setLightAttenuation setLightBrightness setLightColor setLightDayLight setLightFlareMaxDistance setLightFlareSize setLightIntensity setLightnings setLightUseFlare setLocalWindParams setMagazineTurretAmmo setMarkerAlpha setMarkerAlphaLocal setMarkerBrush setMarkerBrushLocal setMarkerColor setMarkerColorLocal setMarkerDir setMarkerDirLocal setMarkerPos setMarkerPosLocal setMarkerShape setMarkerShapeLocal setMarkerSize setMarkerSizeLocal setMarkerText setMarkerTextLocal setMarkerType setMarkerTypeLocal setMass setMimic setMousePosition setMusicEffect setMusicEventHandler setName setNameSound setObjectArguments setObjectMaterial setObjectMaterialGlobal setObjectProxy setObjectTexture setObjectTextureGlobal setObjectViewDistance setOvercast setOwner setOxygenRemaining setParticleCircle setParticleClass setParticleFire setParticleParams setParticleRandom setPilotCameraDirection setPilotCameraRotation setPilotCameraTarget setPilotLight setPiPEffect setPitch setPlateNumber setPlayable setPlayerRespawnTime setPos setPosASL setPosASL2 setPosASLW setPosATL setPosition setPosWorld setPylonLoadOut setPylonsPriority setRadioMsg setRain setRainbow setRandomLip setRank setRectangular setRepairCargo setRotorBrakeRTD setShadowDistance setShotParents setSide setSimpleTaskAlwaysVisible setSimpleTaskCustomData setSimpleTaskDescription setSimpleTaskDestination setSimpleTaskTarget setSimpleTaskType setSimulWeatherLayers setSize setSkill setSlingLoad setSoundEffect setSpeaker setSpeech setSpeedMode setStamina setStaminaScheme setStatValue setSuppression setSystemOfUnits setTargetAge setTaskMarkerOffset setTaskResult setTaskState setTerrainGrid setText setTimeMultiplier setTitleEffect setTrafficDensity setTrafficDistance setTrafficGap setTrafficSpeed setTriggerActivation setTriggerArea setTriggerStatements setTriggerText setTriggerTimeout setTriggerType setType setUnconscious setUnitAbility setUnitLoadout setUnitPos setUnitPosWeak setUnitRank setUnitRecoilCoefficient setUnitTrait setUnloadInCombat setUserActionText setUserMFDText setUserMFDvalue setVariable setVectorDir setVectorDirAndUp setVectorUp setVehicleAmmo setVehicleAmmoDef setVehicleArmor setVehicleCargo setVehicleId setVehicleLock setVehiclePosition setVehicleRadar setVehicleReceiveRemoteTargets setVehicleReportOwnPosition setVehicleReportRemoteTargets setVehicleTIPars setVehicleVarName setVelocity setVelocityModelSpace setVelocityTransformation setViewDistance setVisibleIfTreeCollapsed setWantedRPMRTD setWaves setWaypointBehaviour setWaypointCombatMode setWaypointCompletionRadius setWaypointDescription setWaypointForceBehaviour setWaypointFormation setWaypointHousePosition setWaypointLoiterRadius setWaypointLoiterType setWaypointName setWaypointPosition setWaypointScript setWaypointSpeed setWaypointStatements setWaypointTimeout setWaypointType setWaypointVisible setWeaponReloadingTime setWind setWindDir setWindForce setWindStr setWingForceScaleRTD setWPPos show3DIcons showChat showCinemaBorder showCommandingMenu showCompass showCuratorCompass showGPS showHUD showLegend showMap shownArtilleryComputer shownChat shownCompass shownCuratorCompass showNewEditorObject shownGPS shownHUD shownMap shownPad shownRadio shownScoretable shownUAVFeed shownWarrant shownWatch showPad showRadio showScoretable showSubtitles showUAVFeed showWarrant showWatch showWaypoint showWaypoints side sideChat sideEnemy sideFriendly sideRadio simpleTasks simulationEnabled simulCloudDensity simulCloudOcclusion simulInClouds simulWeatherSync sin size sizeOf skill skillFinal skipTime sleep sliderPosition sliderRange sliderSetPosition sliderSetRange sliderSetSpeed sliderSpeed slingLoadAssistantShown soldierMagazines someAmmo sort soundVolume spawn speaker speed speedMode splitString sqrt squadParams stance startLoadingScreen step stop stopEngineRTD stopped str sunOrMoon supportInfo suppressFor surfaceIsWater surfaceNormal surfaceType swimInDepth switchableUnits switchAction switchCamera switchGesture switchLight switchMove synchronizedObjects synchronizedTriggers synchronizedWaypoints synchronizeObjectsAdd synchronizeObjectsRemove synchronizeTrigger synchronizeWaypoint systemChat systemOfUnits tan targetKnowledge targets targetsAggregate targetsQuery taskAlwaysVisible taskChildren taskCompleted taskCustomData taskDescription taskDestination taskHint taskMarkerOffset taskParent taskResult taskState taskType teamMember teamName teams teamSwitch teamSwitchEnabled teamType terminate terrainIntersect terrainIntersectASL terrainIntersectAtASL text textLog textLogFormat tg time timeMultiplier titleCut titleFadeOut titleObj titleRsc titleText toArray toFixed toLower toString toUpper triggerActivated triggerActivation triggerArea triggerAttachedVehicle triggerAttachObject triggerAttachVehicle triggerDynamicSimulation triggerStatements triggerText triggerTimeout triggerTimeoutCurrent triggerType turretLocal turretOwner turretUnit tvAdd tvClear tvCollapse tvCollapseAll tvCount tvCurSel tvData tvDelete tvExpand tvExpandAll tvPicture tvSetColor tvSetCurSel tvSetData tvSetPicture tvSetPictureColor tvSetPictureColorDisabled tvSetPictureColorSelected tvSetPictureRight tvSetPictureRightColor tvSetPictureRightColorDisabled tvSetPictureRightColorSelected tvSetText tvSetTooltip tvSetValue tvSort tvSortByValue tvText tvTooltip tvValue type typeName typeOf UAVControl uiNamespace uiSleep unassignCurator unassignItem unassignTeam unassignVehicle underwater uniform uniformContainer uniformItems uniformMagazines unitAddons unitAimPosition unitAimPositionVisual unitBackpack unitIsUAV unitPos unitReady unitRecoilCoefficient units unitsBelowHeight unlinkItem unlockAchievement unregisterTask updateDrawIcon updateMenuItem updateObjectTree useAISteeringComponent useAudioTimeForMoves userInputDisabled vectorAdd vectorCos vectorCrossProduct vectorDiff vectorDir vectorDirVisual vectorDistance vectorDistanceSqr vectorDotProduct vectorFromTo vectorMagnitude vectorMagnitudeSqr vectorModelToWorld vectorModelToWorldVisual vectorMultiply vectorNormalized vectorUp vectorUpVisual vectorWorldToModel vectorWorldToModelVisual vehicle vehicleCargoEnabled vehicleChat vehicleRadio vehicleReceiveRemoteTargets vehicleReportOwnPosition vehicleReportRemoteTargets vehicles vehicleVarName velocity velocityModelSpace verifySignature vest vestContainer vestItems vestMagazines viewDistance visibleCompass visibleGPS visibleMap visiblePosition visiblePositionASL visibleScoretable visibleWatch waves waypointAttachedObject waypointAttachedVehicle waypointAttachObject waypointAttachVehicle waypointBehaviour waypointCombatMode waypointCompletionRadius waypointDescription waypointForceBehaviour waypointFormation waypointHousePosition waypointLoiterRadius waypointLoiterType waypointName waypointPosition waypoints waypointScript waypointsEnabledUAV waypointShow waypointSpeed waypointStatements waypointTimeout waypointTimeoutCurrent waypointType waypointVisible weaponAccessories weaponAccessoriesCargo weaponCargo weaponDirection weaponInertia weaponLowered weapons weaponsItems weaponsItemsCargo weaponState weaponsTurret weightRTD WFSideText wind ",literal:"blufor civilian configNull controlNull displayNull east endl false grpNull independent lineBreak locationNull nil objNull opfor pi resistance scriptNull sideAmbientLife sideEmpty sideLogic sideUnknown taskNull teamMemberNull true west"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.NUMBER_MODE,{className:"variable",begin:/\b_+[a-zA-Z]\w*/},{className:"title",begin:/[a-zA-Z][a-zA-Z0-9]+_fnc_\w*/},t,n],illegal:/#|^\$ /}};var Bb=function(e){var t=e.COMMENT("--","$");return{name:"SQL (more)",aliases:["mysql","oracle"],disableAutodetect:!0,case_insensitive:!0,illegal:/[<>{}*]/,contains:[{beginKeywords:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with",end:/;/,endsWithParent:!0,keywords:{$pattern:/[\w\.]+/,keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varchar2 varying void"},contains:[{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:'"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:"`",end:"`"},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]}};function Gb(e){return e?"string"==typeof e?e:e.source:null}function Yb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Gb(e)})).join("");return a}function Hb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return Gb(e)})).join("|")+")";return a}var Vb=function(e){var t=e.COMMENT("--","$"),n=["true","false","unknown"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],r=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],i=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],o=r,s=[].concat(["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update ","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],["add","asc","collation","desc","final","first","last","view"]).filter((function(e){return!r.includes(e)})),l={begin:Yb(/\b/,Hb.apply(void 0,o),/\s*\(/),keywords:{built_in:o}};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.exceptions,a=t.when,r=a;return n=n||[],e.map((function(e){return e.match(/\|\d+$/)||n.includes(e)?e:r(e)?"".concat(e,"|0"):e}))}(s,{when:function(e){return e.length<3}}),literal:n,type:a,built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{begin:Hb.apply(void 0,i),keywords:{$pattern:/[\w\.]+/,keyword:s.concat(i),literal:n,type:a}},{className:"type",begin:Hb.apply(void 0,["double precision","large object","with timezone","without timezone"])},l,{className:"variable",begin:/@[a-z0-9]+/},{className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/"/,end:/"/,contains:[{begin:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,{className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}};var qb=function(e){return{name:"Stan",aliases:["stanfuncs"],keywords:{$pattern:e.IDENT_RE,title:["functions","model","data","parameters","quantities","transformed","generated"],keyword:["for","in","if","else","while","break","continue","return"].concat(["int","real","vector","ordered","positive_ordered","simplex","unit_vector","row_vector","matrix","cholesky_factor_corr|10","cholesky_factor_cov|10","corr_matrix|10","cov_matrix|10","void"]).concat(["print","reject","increment_log_prob|10","integrate_ode|10","integrate_ode_rk45|10","integrate_ode_bdf|10","algebra_solver"]),built_in:["Phi","Phi_approx","abs","acos","acosh","algebra_solver","append_array","append_col","append_row","asin","asinh","atan","atan2","atanh","bernoulli_cdf","bernoulli_lccdf","bernoulli_lcdf","bernoulli_logit_lpmf","bernoulli_logit_rng","bernoulli_lpmf","bernoulli_rng","bessel_first_kind","bessel_second_kind","beta_binomial_cdf","beta_binomial_lccdf","beta_binomial_lcdf","beta_binomial_lpmf","beta_binomial_rng","beta_cdf","beta_lccdf","beta_lcdf","beta_lpdf","beta_rng","binary_log_loss","binomial_cdf","binomial_coefficient_log","binomial_lccdf","binomial_lcdf","binomial_logit_lpmf","binomial_lpmf","binomial_rng","block","categorical_logit_lpmf","categorical_logit_rng","categorical_lpmf","categorical_rng","cauchy_cdf","cauchy_lccdf","cauchy_lcdf","cauchy_lpdf","cauchy_rng","cbrt","ceil","chi_square_cdf","chi_square_lccdf","chi_square_lcdf","chi_square_lpdf","chi_square_rng","cholesky_decompose","choose","col","cols","columns_dot_product","columns_dot_self","cos","cosh","cov_exp_quad","crossprod","csr_extract_u","csr_extract_v","csr_extract_w","csr_matrix_times_vector","csr_to_dense_matrix","cumulative_sum","determinant","diag_matrix","diag_post_multiply","diag_pre_multiply","diagonal","digamma","dims","dirichlet_lpdf","dirichlet_rng","distance","dot_product","dot_self","double_exponential_cdf","double_exponential_lccdf","double_exponential_lcdf","double_exponential_lpdf","double_exponential_rng","e","eigenvalues_sym","eigenvectors_sym","erf","erfc","exp","exp2","exp_mod_normal_cdf","exp_mod_normal_lccdf","exp_mod_normal_lcdf","exp_mod_normal_lpdf","exp_mod_normal_rng","expm1","exponential_cdf","exponential_lccdf","exponential_lcdf","exponential_lpdf","exponential_rng","fabs","falling_factorial","fdim","floor","fma","fmax","fmin","fmod","frechet_cdf","frechet_lccdf","frechet_lcdf","frechet_lpdf","frechet_rng","gamma_cdf","gamma_lccdf","gamma_lcdf","gamma_lpdf","gamma_p","gamma_q","gamma_rng","gaussian_dlm_obs_lpdf","get_lp","gumbel_cdf","gumbel_lccdf","gumbel_lcdf","gumbel_lpdf","gumbel_rng","head","hypergeometric_lpmf","hypergeometric_rng","hypot","inc_beta","int_step","integrate_ode","integrate_ode_bdf","integrate_ode_rk45","inv","inv_Phi","inv_chi_square_cdf","inv_chi_square_lccdf","inv_chi_square_lcdf","inv_chi_square_lpdf","inv_chi_square_rng","inv_cloglog","inv_gamma_cdf","inv_gamma_lccdf","inv_gamma_lcdf","inv_gamma_lpdf","inv_gamma_rng","inv_logit","inv_sqrt","inv_square","inv_wishart_lpdf","inv_wishart_rng","inverse","inverse_spd","is_inf","is_nan","lbeta","lchoose","lgamma","lkj_corr_cholesky_lpdf","lkj_corr_cholesky_rng","lkj_corr_lpdf","lkj_corr_rng","lmgamma","lmultiply","log","log10","log1m","log1m_exp","log1m_inv_logit","log1p","log1p_exp","log2","log_determinant","log_diff_exp","log_falling_factorial","log_inv_logit","log_mix","log_rising_factorial","log_softmax","log_sum_exp","logistic_cdf","logistic_lccdf","logistic_lcdf","logistic_lpdf","logistic_rng","logit","lognormal_cdf","lognormal_lccdf","lognormal_lcdf","lognormal_lpdf","lognormal_rng","machine_precision","matrix_exp","max","mdivide_left_spd","mdivide_left_tri_low","mdivide_right_spd","mdivide_right_tri_low","mean","min","modified_bessel_first_kind","modified_bessel_second_kind","multi_gp_cholesky_lpdf","multi_gp_lpdf","multi_normal_cholesky_lpdf","multi_normal_cholesky_rng","multi_normal_lpdf","multi_normal_prec_lpdf","multi_normal_rng","multi_student_t_lpdf","multi_student_t_rng","multinomial_lpmf","multinomial_rng","multiply_log","multiply_lower_tri_self_transpose","neg_binomial_2_cdf","neg_binomial_2_lccdf","neg_binomial_2_lcdf","neg_binomial_2_log_lpmf","neg_binomial_2_log_rng","neg_binomial_2_lpmf","neg_binomial_2_rng","neg_binomial_cdf","neg_binomial_lccdf","neg_binomial_lcdf","neg_binomial_lpmf","neg_binomial_rng","negative_infinity","normal_cdf","normal_lccdf","normal_lcdf","normal_lpdf","normal_rng","not_a_number","num_elements","ordered_logistic_lpmf","ordered_logistic_rng","owens_t","pareto_cdf","pareto_lccdf","pareto_lcdf","pareto_lpdf","pareto_rng","pareto_type_2_cdf","pareto_type_2_lccdf","pareto_type_2_lcdf","pareto_type_2_lpdf","pareto_type_2_rng","pi","poisson_cdf","poisson_lccdf","poisson_lcdf","poisson_log_lpmf","poisson_log_rng","poisson_lpmf","poisson_rng","positive_infinity","pow","print","prod","qr_Q","qr_R","quad_form","quad_form_diag","quad_form_sym","rank","rayleigh_cdf","rayleigh_lccdf","rayleigh_lcdf","rayleigh_lpdf","rayleigh_rng","reject","rep_array","rep_matrix","rep_row_vector","rep_vector","rising_factorial","round","row","rows","rows_dot_product","rows_dot_self","scaled_inv_chi_square_cdf","scaled_inv_chi_square_lccdf","scaled_inv_chi_square_lcdf","scaled_inv_chi_square_lpdf","scaled_inv_chi_square_rng","sd","segment","sin","singular_values","sinh","size","skew_normal_cdf","skew_normal_lccdf","skew_normal_lcdf","skew_normal_lpdf","skew_normal_rng","softmax","sort_asc","sort_desc","sort_indices_asc","sort_indices_desc","sqrt","sqrt2","square","squared_distance","step","student_t_cdf","student_t_lccdf","student_t_lcdf","student_t_lpdf","student_t_rng","sub_col","sub_row","sum","tail","tan","tanh","target","tcrossprod","tgamma","to_array_1d","to_array_2d","to_matrix","to_row_vector","to_vector","trace","trace_gen_quad_form","trace_quad_form","trigamma","trunc","uniform_cdf","uniform_lccdf","uniform_lcdf","uniform_lpdf","uniform_rng","variance","von_mises_lpdf","von_mises_rng","weibull_cdf","weibull_lccdf","weibull_lcdf","weibull_lpdf","weibull_rng","wiener_lpdf","wishart_lpdf","wishart_rng"]},contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/#/,/$/,{relevance:0,keywords:{"meta-keyword":"include"}}),e.COMMENT(/\/\*/,/\*\//,{relevance:0,contains:[{className:"doctag",begin:/@(return|param)/}]}),{begin:/<\s*lower\s*=/,keywords:"lower"},{begin:/[<,]\s*upper\s*=/,keywords:"upper"},{className:"keyword",begin:/\btarget\s*\+=/,relevance:10},{begin:"~\\s*("+e.IDENT_RE+")\\s*\\(",keywords:["bernoulli","bernoulli_logit","beta","beta_binomial","binomial","binomial_logit","categorical","categorical_logit","cauchy","chi_square","dirichlet","double_exponential","exp_mod_normal","exponential","frechet","gamma","gaussian_dlm_obs","gumbel","hypergeometric","inv_chi_square","inv_gamma","inv_wishart","lkj_corr","lkj_corr_cholesky","logistic","lognormal","multi_gp","multi_gp_cholesky","multi_normal","multi_normal_cholesky","multi_normal_prec","multi_student_t","multinomial","neg_binomial","neg_binomial_2","neg_binomial_2_log","normal","ordered_logistic","pareto","pareto_type_2","poisson","poisson_log","rayleigh","scaled_inv_chi_square","skew_normal","student_t","uniform","von_mises","weibull","wiener","wishart"]},{className:"number",variants:[{begin:/\b\d+(?:\.\d*)?(?:[eE][+-]?\d+)?/},{begin:/\.\d+(?:[eE][+-]?\d+)?\b/}],relevance:0},{className:"string",begin:'"',end:'"',relevance:0}]}};var zb=function(e){return{name:"Stata",aliases:["do","ado"],case_insensitive:!0,keywords:"if else in foreach for forv forva forval forvalu forvalue forvalues by bys bysort xi quietly qui capture about ac ac_7 acprplot acprplot_7 adjust ado adopath adoupdate alpha ameans an ano anov anova anova_estat anova_terms anovadef aorder ap app appe appen append arch arch_dr arch_estat arch_p archlm areg areg_p args arima arima_dr arima_estat arima_p as asmprobit asmprobit_estat asmprobit_lf asmprobit_mfx__dlg asmprobit_p ass asse asser assert avplot avplot_7 avplots avplots_7 bcskew0 bgodfrey bias binreg bip0_lf biplot bipp_lf bipr_lf bipr_p biprobit bitest bitesti bitowt blogit bmemsize boot bootsamp bootstrap bootstrap_8 boxco_l boxco_p boxcox boxcox_6 boxcox_p bprobit br break brier bro brow brows browse brr brrstat bs bs_7 bsampl_w bsample bsample_7 bsqreg bstat bstat_7 bstat_8 bstrap bstrap_7 bubble bubbleplot ca ca_estat ca_p cabiplot camat canon canon_8 canon_8_p canon_estat canon_p cap caprojection capt captu captur capture cat cc cchart cchart_7 cci cd censobs_table centile cf char chdir checkdlgfiles checkestimationsample checkhlpfiles checksum chelp ci cii cl class classutil clear cli clis clist clo clog clog_lf clog_p clogi clogi_sw clogit clogit_lf clogit_p clogitp clogl_sw cloglog clonevar clslistarray cluster cluster_measures cluster_stop cluster_tree cluster_tree_8 clustermat cmdlog cnr cnre cnreg cnreg_p cnreg_sw cnsreg codebook collaps4 collapse colormult_nb colormult_nw compare compress conf confi confir confirm conren cons const constr constra constrai constrain constraint continue contract copy copyright copysource cor corc corr corr2data corr_anti corr_kmo corr_smc corre correl correla correlat correlate corrgram cou coun count cox cox_p cox_sw coxbase coxhaz coxvar cprplot cprplot_7 crc cret cretu cretur creturn cross cs cscript cscript_log csi ct ct_is ctset ctst_5 ctst_st cttost cumsp cumsp_7 cumul cusum cusum_7 cutil d|0 datasig datasign datasigna datasignat datasignatu datasignatur datasignature datetof db dbeta de dec deco decod decode deff des desc descr descri describ describe destring dfbeta dfgls dfuller di di_g dir dirstats dis discard disp disp_res disp_s displ displa display distinct do doe doed doedi doedit dotplot dotplot_7 dprobit drawnorm drop ds ds_util dstdize duplicates durbina dwstat dydx e|0 ed edi edit egen eivreg emdef en enc enco encod encode eq erase ereg ereg_lf ereg_p ereg_sw ereghet ereghet_glf ereghet_glf_sh ereghet_gp ereghet_ilf ereghet_ilf_sh ereghet_ip eret eretu eretur ereturn err erro error esize est est_cfexist est_cfname est_clickable est_expand est_hold est_table est_unhold est_unholdok estat estat_default estat_summ estat_vce_only esti estimates etodow etof etomdy ex exi exit expand expandcl fac fact facto factor factor_estat factor_p factor_pca_rotated factor_rotate factormat fcast fcast_compute fcast_graph fdades fdadesc fdadescr fdadescri fdadescrib fdadescribe fdasav fdasave fdause fh_st file open file read file close file filefilter fillin find_hlp_file findfile findit findit_7 fit fl fli flis flist for5_0 forest forestplot form forma format fpredict frac_154 frac_adj frac_chk frac_cox frac_ddp frac_dis frac_dv frac_in frac_mun frac_pp frac_pq frac_pv frac_wgt frac_xo fracgen fracplot fracplot_7 fracpoly fracpred fron_ex fron_hn fron_p fron_tn fron_tn2 frontier ftodate ftoe ftomdy ftowdate funnel funnelplot g|0 gamhet_glf gamhet_gp gamhet_ilf gamhet_ip gamma gamma_d2 gamma_p gamma_sw gammahet gdi_hexagon gdi_spokes ge gen gene gener genera generat generate genrank genstd genvmean gettoken gl gladder gladder_7 glim_l01 glim_l02 glim_l03 glim_l04 glim_l05 glim_l06 glim_l07 glim_l08 glim_l09 glim_l10 glim_l11 glim_l12 glim_lf glim_mu glim_nw1 glim_nw2 glim_nw3 glim_p glim_v1 glim_v2 glim_v3 glim_v4 glim_v5 glim_v6 glim_v7 glm glm_6 glm_p glm_sw glmpred glo glob globa global glogit glogit_8 glogit_p gmeans gnbre_lf gnbreg gnbreg_5 gnbreg_p gomp_lf gompe_sw gomper_p gompertz gompertzhet gomphet_glf gomphet_glf_sh gomphet_gp gomphet_ilf gomphet_ilf_sh gomphet_ip gphdot gphpen gphprint gprefs gprobi_p gprobit gprobit_8 gr gr7 gr_copy gr_current gr_db gr_describe gr_dir gr_draw gr_draw_replay gr_drop gr_edit gr_editviewopts gr_example gr_example2 gr_export gr_print gr_qscheme gr_query gr_read gr_rename gr_replay gr_save gr_set gr_setscheme gr_table gr_undo gr_use graph graph7 grebar greigen greigen_7 greigen_8 grmeanby grmeanby_7 gs_fileinfo gs_filetype gs_graphinfo gs_stat gsort gwood h|0 hadimvo hareg hausman haver he heck_d2 heckma_p heckman heckp_lf heckpr_p heckprob hel help hereg hetpr_lf hetpr_p hetprob hettest hexdump hilite hist hist_7 histogram hlogit hlu hmeans hotel hotelling hprobit hreg hsearch icd9 icd9_ff icd9p iis impute imtest inbase include inf infi infil infile infix inp inpu input ins insheet insp inspe inspec inspect integ inten intreg intreg_7 intreg_p intrg2_ll intrg_ll intrg_ll2 ipolate iqreg ir irf irf_create irfm iri is_svy is_svysum isid istdize ivprob_1_lf ivprob_lf ivprobit ivprobit_p ivreg ivreg_footnote ivtob_1_lf ivtob_lf ivtobit ivtobit_p jackknife jacknife jknife jknife_6 jknife_8 jkstat joinby kalarma1 kap kap_3 kapmeier kappa kapwgt kdensity kdensity_7 keep ksm ksmirnov ktau kwallis l|0 la lab labbe labbeplot labe label labelbook ladder levels levelsof leverage lfit lfit_p li lincom line linktest lis list lloghet_glf lloghet_glf_sh lloghet_gp lloghet_ilf lloghet_ilf_sh lloghet_ip llogi_sw llogis_p llogist llogistic llogistichet lnorm_lf lnorm_sw lnorma_p lnormal lnormalhet lnormhet_glf lnormhet_glf_sh lnormhet_gp lnormhet_ilf lnormhet_ilf_sh lnormhet_ip lnskew0 loadingplot loc loca local log logi logis_lf logistic logistic_p logit logit_estat logit_p loglogs logrank loneway lookfor lookup lowess lowess_7 lpredict lrecomp lroc lroc_7 lrtest ls lsens lsens_7 lsens_x lstat ltable ltable_7 ltriang lv lvr2plot lvr2plot_7 m|0 ma mac macr macro makecns man manova manova_estat manova_p manovatest mantel mark markin markout marksample mat mat_capp mat_order mat_put_rr mat_rapp mata mata_clear mata_describe mata_drop mata_matdescribe mata_matsave mata_matuse mata_memory mata_mlib mata_mosave mata_rename mata_which matalabel matcproc matlist matname matr matri matrix matrix_input__dlg matstrik mcc mcci md0_ md1_ md1debug_ md2_ md2debug_ mds mds_estat mds_p mdsconfig mdslong mdsmat mdsshepard mdytoe mdytof me_derd mean means median memory memsize menl meqparse mer merg merge meta mfp mfx mhelp mhodds minbound mixed_ll mixed_ll_reparm mkassert mkdir mkmat mkspline ml ml_5 ml_adjs ml_bhhhs ml_c_d ml_check ml_clear ml_cnt ml_debug ml_defd ml_e0 ml_e0_bfgs ml_e0_cycle ml_e0_dfp ml_e0i ml_e1 ml_e1_bfgs ml_e1_bhhh ml_e1_cycle ml_e1_dfp ml_e2 ml_e2_cycle ml_ebfg0 ml_ebfr0 ml_ebfr1 ml_ebh0q ml_ebhh0 ml_ebhr0 ml_ebr0i ml_ecr0i ml_edfp0 ml_edfr0 ml_edfr1 ml_edr0i ml_eds ml_eer0i ml_egr0i ml_elf ml_elf_bfgs ml_elf_bhhh ml_elf_cycle ml_elf_dfp ml_elfi ml_elfs ml_enr0i ml_enrr0 ml_erdu0 ml_erdu0_bfgs ml_erdu0_bhhh ml_erdu0_bhhhq ml_erdu0_cycle ml_erdu0_dfp ml_erdu0_nrbfgs ml_exde ml_footnote ml_geqnr ml_grad0 ml_graph ml_hbhhh ml_hd0 ml_hold ml_init ml_inv ml_log ml_max ml_mlout ml_mlout_8 ml_model ml_nb0 ml_opt ml_p ml_plot ml_query ml_rdgrd ml_repor ml_s_e ml_score ml_searc ml_technique ml_unhold mleval mlf_ mlmatbysum mlmatsum mlog mlogi mlogit mlogit_footnote mlogit_p mlopts mlsum mlvecsum mnl0_ mor more mov move mprobit mprobit_lf mprobit_p mrdu0_ mrdu1_ mvdecode mvencode mvreg mvreg_estat n|0 nbreg nbreg_al nbreg_lf nbreg_p nbreg_sw nestreg net newey newey_7 newey_p news nl nl_7 nl_9 nl_9_p nl_p nl_p_7 nlcom nlcom_p nlexp2 nlexp2_7 nlexp2a nlexp2a_7 nlexp3 nlexp3_7 nlgom3 nlgom3_7 nlgom4 nlgom4_7 nlinit nllog3 nllog3_7 nllog4 nllog4_7 nlog_rd nlogit nlogit_p nlogitgen nlogittree nlpred no nobreak noi nois noisi noisil noisily note notes notes_dlg nptrend numlabel numlist odbc old_ver olo olog ologi ologi_sw ologit ologit_p ologitp on one onew onewa oneway op_colnm op_comp op_diff op_inv op_str opr opro oprob oprob_sw oprobi oprobi_p oprobit oprobitp opts_exclusive order orthog orthpoly ou out outf outfi outfil outfile outs outsh outshe outshee outsheet ovtest pac pac_7 palette parse parse_dissim pause pca pca_8 pca_display pca_estat pca_p pca_rotate pcamat pchart pchart_7 pchi pchi_7 pcorr pctile pentium pergram pergram_7 permute permute_8 personal peto_st pkcollapse pkcross pkequiv pkexamine pkexamine_7 pkshape pksumm pksumm_7 pl plo plot plugin pnorm pnorm_7 poisgof poiss_lf poiss_sw poisso_p poisson poisson_estat post postclose postfile postutil pperron pr prais prais_e prais_e2 prais_p predict predictnl preserve print pro prob probi probit probit_estat probit_p proc_time procoverlay procrustes procrustes_estat procrustes_p profiler prog progr progra program prop proportion prtest prtesti pwcorr pwd q\\s qby qbys qchi qchi_7 qladder qladder_7 qnorm qnorm_7 qqplot qqplot_7 qreg qreg_c qreg_p qreg_sw qu quadchk quantile quantile_7 que quer query range ranksum ratio rchart rchart_7 rcof recast reclink recode reg reg3 reg3_p regdw regr regre regre_p2 regres regres_p regress regress_estat regriv_p remap ren rena renam rename renpfix repeat replace report reshape restore ret retu retur return rm rmdir robvar roccomp roccomp_7 roccomp_8 rocf_lf rocfit rocfit_8 rocgold rocplot rocplot_7 roctab roctab_7 rolling rologit rologit_p rot rota rotat rotate rotatemat rreg rreg_p ru run runtest rvfplot rvfplot_7 rvpplot rvpplot_7 sa safesum sample sampsi sav save savedresults saveold sc sca scal scala scalar scatter scm_mine sco scob_lf scob_p scobi_sw scobit scor score scoreplot scoreplot_help scree screeplot screeplot_help sdtest sdtesti se search separate seperate serrbar serrbar_7 serset set set_defaults sfrancia sh she shel shell shewhart shewhart_7 signestimationsample signrank signtest simul simul_7 simulate simulate_8 sktest sleep slogit slogit_d2 slogit_p smooth snapspan so sor sort spearman spikeplot spikeplot_7 spikeplt spline_x split sqreg sqreg_p sret sretu sretur sreturn ssc st st_ct st_hc st_hcd st_hcd_sh st_is st_issys st_note st_promo st_set st_show st_smpl st_subid stack statsby statsby_8 stbase stci stci_7 stcox stcox_estat stcox_fr stcox_fr_ll stcox_p stcox_sw stcoxkm stcoxkm_7 stcstat stcurv stcurve stcurve_7 stdes stem stepwise stereg stfill stgen stir stjoin stmc stmh stphplot stphplot_7 stphtest stphtest_7 stptime strate strate_7 streg streg_sw streset sts sts_7 stset stsplit stsum sttocc sttoct stvary stweib su suest suest_8 sum summ summa summar summari summariz summarize sunflower sureg survcurv survsum svar svar_p svmat svy svy_disp svy_dreg svy_est svy_est_7 svy_estat svy_get svy_gnbreg_p svy_head svy_header svy_heckman_p svy_heckprob_p svy_intreg_p svy_ivreg_p svy_logistic_p svy_logit_p svy_mlogit_p svy_nbreg_p svy_ologit_p svy_oprobit_p svy_poisson_p svy_probit_p svy_regress_p svy_sub svy_sub_7 svy_x svy_x_7 svy_x_p svydes svydes_8 svygen svygnbreg svyheckman svyheckprob svyintreg svyintreg_7 svyintrg svyivreg svylc svylog_p svylogit svymarkout svymarkout_8 svymean svymlog svymlogit svynbreg svyolog svyologit svyoprob svyoprobit svyopts svypois svypois_7 svypoisson svyprobit svyprobt svyprop svyprop_7 svyratio svyreg svyreg_p svyregress svyset svyset_7 svyset_8 svytab svytab_7 svytest svytotal sw sw_8 swcnreg swcox swereg swilk swlogis swlogit swologit swoprbt swpois swprobit swqreg swtobit swweib symmetry symmi symplot symplot_7 syntax sysdescribe sysdir sysuse szroeter ta tab tab1 tab2 tab_or tabd tabdi tabdis tabdisp tabi table tabodds tabodds_7 tabstat tabu tabul tabula tabulat tabulate te tempfile tempname tempvar tes test testnl testparm teststd tetrachoric time_it timer tis tob tobi tobit tobit_p tobit_sw token tokeni tokeniz tokenize tostring total translate translator transmap treat_ll treatr_p treatreg trim trimfill trnb_cons trnb_mean trpoiss_d2 trunc_ll truncr_p truncreg tsappend tset tsfill tsline tsline_ex tsreport tsrevar tsrline tsset tssmooth tsunab ttest ttesti tut_chk tut_wait tutorial tw tware_st two twoway twoway__fpfit_serset twoway__function_gen twoway__histogram_gen twoway__ipoint_serset twoway__ipoints_serset twoway__kdensity_gen twoway__lfit_serset twoway__normgen_gen twoway__pci_serset twoway__qfit_serset twoway__scatteri_serset twoway__sunflower_gen twoway_ksm_serset ty typ type typeof u|0 unab unabbrev unabcmd update us use uselabel var var_mkcompanion var_p varbasic varfcast vargranger varirf varirf_add varirf_cgraph varirf_create varirf_ctable varirf_describe varirf_dir varirf_drop varirf_erase varirf_graph varirf_ograph varirf_rename varirf_set varirf_table varlist varlmar varnorm varsoc varstable varstable_w varstable_w2 varwle vce vec vec_fevd vec_mkphi vec_p vec_p_w vecirf_create veclmar veclmar_w vecnorm vecnorm_w vecrank vecstable verinst vers versi versio version view viewsource vif vwls wdatetof webdescribe webseek webuse weib1_lf weib2_lf weib_lf weib_lf0 weibhet_glf weibhet_glf_sh weibhet_glfa weibhet_glfa_sh weibhet_gp weibhet_ilf weibhet_ilf_sh weibhet_ilfa weibhet_ilfa_sh weibhet_ip weibu_sw weibul_p weibull weibull_c weibull_s weibullhet wh whelp whi which whil while wilc_st wilcoxon win wind windo window winexec wntestb wntestb_7 wntestq xchart xchart_7 xcorr xcorr_7 xi xi_6 xmlsav xmlsave xmluse xpose xsh xshe xshel xshell xt_iis xt_tis xtab_p xtabond xtbin_p xtclog xtcloglog xtcloglog_8 xtcloglog_d2 xtcloglog_pa_p xtcloglog_re_p xtcnt_p xtcorr xtdata xtdes xtfront_p xtfrontier xtgee xtgee_elink xtgee_estat xtgee_makeivar xtgee_p xtgee_plink xtgls xtgls_p xthaus xthausman xtht_p xthtaylor xtile xtint_p xtintreg xtintreg_8 xtintreg_d2 xtintreg_p xtivp_1 xtivp_2 xtivreg xtline xtline_ex xtlogit xtlogit_8 xtlogit_d2 xtlogit_fe_p xtlogit_pa_p xtlogit_re_p xtmixed xtmixed_estat xtmixed_p xtnb_fe xtnb_lf xtnbreg xtnbreg_pa_p xtnbreg_refe_p xtpcse xtpcse_p xtpois xtpoisson xtpoisson_d2 xtpoisson_pa_p xtpoisson_refe_p xtpred xtprobit xtprobit_8 xtprobit_d2 xtprobit_re_p xtps_fe xtps_lf xtps_ren xtps_ren_8 xtrar_p xtrc xtrc_p xtrchh xtrefe_p xtreg xtreg_be xtreg_fe xtreg_ml xtreg_pa_p xtreg_re xtregar xtrere_p xtset xtsf_ll xtsf_llti xtsum xttab xttest0 xttobit xttobit_8 xttobit_p xttrans yx yxview__barlike_draw yxview_area_draw yxview_bar_draw yxview_dot_draw yxview_dropline_draw yxview_function_draw yxview_iarrow_draw yxview_ilabels_draw yxview_normal_draw yxview_pcarrow_draw yxview_pcbarrow_draw yxview_pccapsym_draw yxview_pcscatter_draw yxview_pcspike_draw yxview_rarea_draw yxview_rbar_draw yxview_rbarm_draw yxview_rcap_draw yxview_rcapsym_draw yxview_rconnected_draw yxview_rline_draw yxview_rscatter_draw yxview_rspike_draw yxview_spike_draw yxview_sunflower_draw zap_s zinb zinb_llf zinb_plf zip zip_llf zip_p zip_plf zt_ct_5 zt_hc_5 zt_hcd_5 zt_is_5 zt_iss_5 zt_sho_5 zt_smp_5 ztbase_5 ztcox_5 ztdes_5 ztereg_5 ztfill_5 ztgen_5 ztir_5 ztjoin_5 ztnb ztnb_p ztp ztp_p zts_5 ztset_5 ztspli_5 ztsum_5 zttoct_5 ztvary_5 ztweib_5",contains:[{className:"symbol",begin:/`[a-zA-Z0-9_]+'/},{className:"variable",begin:/\$\{?[a-zA-Z0-9_]+\}?/},{className:"string",variants:[{begin:'`"[^\r\n]*?"\''},{begin:'"[^\r\n"]*"'}]},{className:"built_in",variants:[{begin:"\\b(abs|acos|asin|atan|atan2|atanh|ceil|cloglog|comb|cos|digamma|exp|floor|invcloglog|invlogit|ln|lnfact|lnfactorial|lngamma|log|log10|max|min|mod|reldif|round|sign|sin|sqrt|sum|tan|tanh|trigamma|trunc|betaden|Binomial|binorm|binormal|chi2|chi2tail|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|F|Fden|Ftail|gammaden|gammap|ibeta|invbinomial|invchi2|invchi2tail|invF|invFtail|invgammap|invibeta|invnchi2|invnFtail|invnibeta|invnorm|invnormal|invttail|nbetaden|nchi2|nFden|nFtail|nibeta|norm|normal|normalden|normd|npnchi2|tden|ttail|uniform|abbrev|char|index|indexnot|length|lower|ltrim|match|plural|proper|real|regexm|regexr|regexs|reverse|rtrim|string|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrtrim|strtrim|strupper|subinstr|subinword|substr|trim|upper|word|wordcount|_caller|autocode|byteorder|chop|clip|cond|e|epsdouble|epsfloat|group|inlist|inrange|irecode|matrix|maxbyte|maxdouble|maxfloat|maxint|maxlong|mi|minbyte|mindouble|minfloat|minint|minlong|missing|r|recode|replay|return|s|scalar|d|date|day|dow|doy|halfyear|mdy|month|quarter|week|year|d|daily|dofd|dofh|dofm|dofq|dofw|dofy|h|halfyearly|hofd|m|mofd|monthly|q|qofd|quarterly|tin|twithin|w|weekly|wofd|y|yearly|yh|ym|yofd|yq|yw|cholesky|colnumb|colsof|corr|det|diag|diag0cnt|el|get|hadamard|I|inv|invsym|issym|issymmetric|J|matmissing|matuniform|mreldif|nullmat|rownumb|rowsof|sweep|syminv|trace|vec|vecdiag)(?=\\()"}]},e.COMMENT("^[ \t]*\\*.*$",!1),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var Wb=function(e){return{name:"STEP Part 21",aliases:["p21","step","stp"],case_insensitive:!0,keywords:{$pattern:"[A-Z_][A-Z0-9_.]*",keyword:"HEADER ENDSEC DATA"},contains:[{className:"meta",begin:"ISO-10303-21;",relevance:10},{className:"meta",begin:"END-ISO-10303-21;",relevance:10},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#",end:"\\d+",illegal:"\\W"}]}]}},$b=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Qb=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],Kb=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],jb=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],Xb=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();var Zb=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n={className:"variable",begin:"\\$"+e.IDENT_RE},a="(?=[.\\s\\n[:,(])";return{name:"Stylus",aliases:["styl"],case_insensitive:!1,keywords:"if else for in",illegal:"("+["\\?","(\\bReturn\\b)","(\\bEnd\\b)","(\\bend\\b)","(\\bdef\\b)",";","#\\s","\\*\\s","===\\s","\\|","%"].join("|")+")",contains:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.HEXCOLOR,{begin:"\\.[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-class"},{begin:"#[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-id"},{begin:"\\b("+$b.join("|")+")"+a,className:"selector-tag"},{className:"selector-pseudo",begin:"&?:("+Kb.join("|")+")"+a},{className:"selector-pseudo",begin:"&?::("+jb.join("|")+")"+a},t.ATTRIBUTE_SELECTOR_MODE,{className:"keyword",begin:/@media/,starts:{end:/[{;}]/,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Qb.join(" ")},contains:[e.CSS_NUMBER_MODE]}},{className:"keyword",begin:"@((-(o|moz|ms|webkit)-)?("+["charset","css","debug","extend","font-face","for","import","include","keyframes","media","mixin","page","warn","while"].join("|")+"))\\b"},n,e.CSS_NUMBER_MODE,{className:"function",begin:"^[a-zA-Z][a-zA-Z0-9_-]*\\(.*\\)",illegal:"[\\n]",returnBegin:!0,contains:[{className:"title",begin:"\\b[a-zA-Z][a-zA-Z0-9_-]*"},{className:"params",begin:/\(/,end:/\)/,contains:[t.HEXCOLOR,n,e.APOS_STRING_MODE,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE]}]},{className:"attribute",begin:"\\b("+Xb.join("|")+")\\b",starts:{end:/;|$/,contains:[t.HEXCOLOR,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t.IMPORTANT],illegal:/\./,relevance:0}}]}};var Jb=function(e){return{name:"SubUnit",case_insensitive:!0,contains:[{className:"string",begin:"\\[\n(multipart)?",end:"\\]\n"},{className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z"},{className:"string",begin:"(\\+|-)\\d+"},{className:"keyword",relevance:10,variants:[{begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?"},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]}]}};function eT(e){return e?"string"==typeof e?e:e.source:null}function tT(e){return nT("(?=",e,")")}function nT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return eT(e)})).join("");return a}function aT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return eT(e)})).join("|")+")";return a}var rT=function(e){return nT(/\b/,e,/\w$/.test(e)?/\b/:/\B/)},iT=["Protocol","Type"].map(rT),oT=["init","self"].map(rT),sT=["Any","Self"],lT=["associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],cT=["false","nil","true"],_T=["assignment","associativity","higherThan","left","lowerThan","none","right"],dT=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],uT=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],mT=aT(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),pT=aT(mT,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),gT=nT(mT,pT,"*"),ET=aT(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),ST=aT(ET,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),bT=nT(ET,ST,"*"),TT=nT(/[A-Z]/,ST,"*"),fT=["autoclosure",nT(/convention\(/,aT("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",nT(/objc\(/,bT,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","testable","UIApplicationMain","unknown","usableFromInline"],CT=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];var NT=function(e){var t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a=[e.C_LINE_COMMENT_MODE,n],r={className:"keyword",begin:nT(/\./,tT(aT.apply(void 0,c(iT).concat(c(oT))))),end:aT.apply(void 0,c(iT).concat(c(oT))),excludeBegin:!0},i={match:nT(/\./,aT.apply(void 0,lT)),relevance:0},o=lT.filter((function(e){return"string"==typeof e})).concat(["_|0"]),s=lT.filter((function(e){return"string"!=typeof e})).concat(sT).map(rT),l={variants:[{className:"keyword",match:aT.apply(void 0,c(s).concat(c(oT)))}]},d={$pattern:aT(/\b\w+/,/#\w+/),keyword:o.concat(dT),literal:cT},u=[r,i,l],m=[{match:nT(/\./,aT.apply(void 0,uT)),relevance:0},{className:"built_in",match:nT(/\b/,aT.apply(void 0,uT),/(?=\()/)}],p={match:/->/,relevance:0},g=[p,{className:"operator",relevance:0,variants:[{match:gT},{match:"\\.(\\.|".concat(pT,")+")}]}],E="([0-9]_*)+",S="([0-9a-fA-F]_*)+",b={className:"number",relevance:0,variants:[{match:"\\b(".concat(E,")(\\.(").concat(E,"))?")+"([eE][+-]?(".concat(E,"))?\\b")},{match:"\\b0x(".concat(S,")(\\.(").concat(S,"))?")+"([pP][+-]?(".concat(E,"))?\\b")},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},T=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",variants:[{match:nT(/\\/,e,/[0\\tnr"']/)},{match:nT(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}},f=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",match:nT(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}},C=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",label:"interpol",begin:nT(/\\/,e,/\(/),end:/\)/}},N=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{begin:nT(e,/"""/),end:nT(/"""/,e),contains:[T(e),f(e),C(e)]}},R=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{begin:nT(e,/"/),end:nT(/"/,e),contains:[T(e),C(e)]}},v={className:"string",variants:[N(),N("#"),N("##"),N("###"),R(),R("#"),R("##"),R("###")]},O={match:nT(/`/,bT,/`/)},h=[O,{className:"variable",match:/\$\d+/},{className:"variable",match:"\\$".concat(ST,"+")}],y=[{match:/(@|#)available/,className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:CT,contains:[].concat(g,[b,v])}]}},{className:"keyword",match:nT(/@/,aT.apply(void 0,fT))},{className:"meta",match:nT(/@/,bT)}],I={match:tT(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:nT(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,ST,"+")},{className:"type",match:TT,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:nT(/\s+&\s+/,tT(TT)),relevance:0}]},A={begin:/</,end:/>/,keywords:d,contains:[].concat(a,u,y,[p,I])};I.contains.push(A);var D,M={begin:/\(/,end:/\)/,relevance:0,keywords:d,contains:["self",{match:nT(bT,/\s*:/),keywords:"_|0",relevance:0}].concat(a,u,m,g,[b,v],h,y,[I])},L={beginKeywords:"func",contains:[{className:"title",match:aT(O.match,bT,gT),endsParent:!0,relevance:0},t]},w={begin:/</,end:/>/,contains:[].concat(a,[I])},x={begin:/\(/,end:/\)/,keywords:d,contains:[{begin:aT(tT(nT(bT,/\s*:/)),tT(nT(bT,/\s+/,bT,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:bT}]}].concat(a,u,g,[b,v],y,[I,M]),endsParent:!0,illegal:/["']/},P={className:"function",match:tT(/\bfunc\b/),contains:[L,w,x,t],illegal:[/\[/,/%/]},k={className:"function",match:/\b(subscript|init[?!]?)\s*(?=[<(])/,keywords:{keyword:"subscript init init? init!",$pattern:/\w+[?!]?/},contains:[w,x,t],illegal:/\[|%/},U={beginKeywords:"operator",end:e.MATCH_NOTHING_RE,contains:[{className:"title",match:gT,endsParent:!0,relevance:0}]},F={beginKeywords:"precedencegroup",end:e.MATCH_NOTHING_RE,contains:[{className:"title",match:TT,relevance:0},{begin:/{/,end:/}/,relevance:0,endsParent:!0,keywords:[].concat(_T,cT),contains:[I]}]},B=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=_(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,r=function(){};return{s:r,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw i}}}}(v.variants);try{for(B.s();!(D=B.n()).done;){var G=D.value.contains.find((function(e){return"interpol"===e.label}));G.keywords=d;var Y=[].concat(u,m,g,[b,v],h);G.contains=[].concat(c(Y),[{begin:/\(/,end:/\)/,contains:["self"].concat(c(Y))}])}}catch(e){B.e(e)}finally{B.f()}return{name:"Swift",keywords:d,contains:[].concat(a,[P,k,{className:"class",beginKeywords:"struct protocol class extension enum",end:"\\{",excludeEnd:!0,keywords:d,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})].concat(u)},U,F,{beginKeywords:"import",end:/$/,contains:[].concat(a),relevance:0}],u,m,g,[b,v],h,y,[I,M])}};var RT=function(e){return{name:"Tagger Script",contains:[{className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\(/,end:/\)/,contains:["self",{begin:/\\./}]}],relevance:10},{className:"keyword",begin:/\$(?!noop)[a-zA-Z][_a-zA-Z0-9]*/,end:/\(/,excludeEnd:!0},{className:"variable",begin:/%[_a-zA-Z0-9:]*/,end:"%"},{className:"symbol",begin:/\\./}]}};var vT=function(e){var t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},r=e.inherit(a,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i={className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},o={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},s={begin:/\{/,end:/\}/,contains:[o],illegal:"\\n",relevance:0},l={begin:"\\[",end:"\\]",contains:[o],illegal:"\\n",relevance:0},c=[{className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},i,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},s,l,a],_=[].concat(c);return _.pop(),_.push(r),o.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:c}};var OT=function(e){return{name:"Test Anything Protocol",case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:/---$/,end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number",begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}]}]}};function hT(e){return e?"string"==typeof e?e:e.source:null}function yT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return hT(e)})).join("");return a}var IT=function(e){var t,n=/[a-zA-Z_][a-zA-Z0-9_]*/,a={className:"number",variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"Tcl",aliases:["tk"],keywords:"after append apply array auto_execok auto_import auto_load auto_mkindex auto_mkindex_old auto_qualify auto_reset bgerror binary break catch cd chan clock close concat continue dde dict encoding eof error eval exec exit expr fblocked fconfigure fcopy file fileevent filename flush for foreach format gets glob global history http if incr info interp join lappend|10 lassign|10 lindex|10 linsert|10 list llength|10 load lrange|10 lrepeat|10 lreplace|10 lreverse|10 lsearch|10 lset|10 lsort|10 mathfunc mathop memory msgcat namespace open package parray pid pkg::create pkg_mkIndex platform platform::shell proc puts pwd read refchan regexp registry regsub|10 rename return safe scan seek set socket source split string subst switch tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord tcl_wordBreakAfter tcl_wordBreakBefore tcltest tclvars tell time tm trace unknown unload unset update uplevel upvar variable vwait while",contains:[e.COMMENT(";[ \\t]*#","$"),e.COMMENT("^[ \\t]*#","$"),{beginKeywords:"proc",end:"[\\{]",excludeEnd:!0,contains:[{className:"title",begin:"[ \\t\\n\\r]+(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"[ \\t\\n\\r]",endsWithParent:!0,excludeEnd:!0}]},{className:"variable",variants:[{begin:yT(/\$/,(t=/::/,yT("(",t,")?")),n,"(::",n,")*")},{begin:"\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"\\}",contains:[a]}]},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},a]}};var AT=function(e){var t="bool byte i16 i32 i64 double string binary";return{name:"Thrift",keywords:{keyword:"namespace const typedef struct enum service exception void oneway set list map required optional",built_in:t,literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"struct enum service exception",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{begin:"\\b(set|list|map)\\s*<",end:">",keywords:t,contains:["self"]}]}};var DT=function(e){var t={className:"number",begin:"[1-9][0-9]*",relevance:0},n={className:"symbol",begin:":[^\\]]+"};return{name:"TP",keywords:{keyword:"ABORT ACC ADJUST AND AP_LD BREAK CALL CNT COL CONDITION CONFIG DA DB DIV DETECT ELSE END ENDFOR ERR_NUM ERROR_PROG FINE FOR GP GUARD INC IF JMP LINEAR_MAX_SPEED LOCK MOD MONITOR OFFSET Offset OR OVERRIDE PAUSE PREG PTH RT_LD RUN SELECT SKIP Skip TA TB TO TOOL_OFFSET Tool_Offset UF UT UFRAME_NUM UTOOL_NUM UNLOCK WAIT X Y Z W P R STRLEN SUBSTR FINDSTR VOFFSET PROG ATTR MN POS",literal:"ON OFF max_speed LPOS JPOS ENABLE DISABLE START STOP RESET"},contains:[{className:"built_in",begin:"(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[",end:"\\]",contains:["self",t,n]},{className:"built_in",begin:"(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[",end:"\\]",contains:["self",t,e.QUOTE_STRING_MODE,n]},{className:"keyword",begin:"/(PROG|ATTR|MN|POS|END)\\b"},{className:"keyword",begin:"(CALL|RUN|POINT_LOGIC|LBL)\\b"},{className:"keyword",begin:"\\b(ACC|CNT|Skip|Offset|PSPD|RT_LD|AP_LD|Tool_Offset)"},{className:"number",begin:"\\d+(sec|msec|mm/sec|cm/min|inch/min|deg/sec|mm|in|cm)?\\b",relevance:0},e.COMMENT("//","[;$]"),e.COMMENT("!","[;$]"),e.COMMENT("--eg:","$"),e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"'"},e.C_NUMBER_MODE,{className:"variable",begin:"\\$[A-Za-z0-9_]+"}]}};var MT=function(e){var t="attribute block constant cycle date dump include max min parent random range source template_from_string",n={beginKeywords:t,keywords:{name:t},relevance:0,contains:[{className:"params",begin:"\\(",end:"\\)"}]},a={begin:/\|[A-Za-z_]+:?/,keywords:"abs batch capitalize column convert_encoding date date_modify default escape filter first format inky_to_html inline_css join json_encode keys last length lower map markdown merge nl2br number_format raw reduce replace reverse round slice sort spaceless split striptags title trim upper url_encode",contains:[n]},r="apply autoescape block deprecated do embed extends filter flush for from if import include macro sandbox set use verbatim with";return r=r+" "+r.split(" ").map((function(e){return"end"+e})).join(" "),{name:"Twig",aliases:["craftcms"],case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{#/,/#\}/),{className:"template-tag",begin:/\{%/,end:/%\}/,contains:[{className:"name",begin:/\w+/,keywords:r,starts:{endsWithParent:!0,contains:[a,n],relevance:0}}]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:["self",a,n]}]}},LT="[A-Za-z$_][0-9A-Za-z$_]*",wT=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],xT=["true","false","null","undefined","NaN","Infinity"],PT=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function kT(e){return e?"string"==typeof e?e:e.source:null}function UT(e){return FT("(?=",e,")")}function FT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return kT(e)})).join("");return a}var BT=function(e){var t={$pattern:LT,keyword:wT.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]),literal:xT,built_in:PT.concat(["any","void","number","boolean","string","object","never","enum"])},n={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},a=function(e,t,n){var a=e.contains.findIndex((function(e){return e.label===t}));if(-1===a)throw new Error("can not find mode to replace");e.contains.splice(a,1,n)},r=function(e){var t=LT,n="<>",a="</>",r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:function(e,t){var n=e[0].length+e.index,a=e.input[n];"<"!==a?">"===a&&(function(e,t){var n=t.after,a="</"+e[0].slice(1);return-1!==e.input.indexOf(a,n)}(e,{after:n})||t.ignoreMatch()):t.ignoreMatch()}},i={$pattern:LT,keyword:wT,literal:xT,built_in:PT},o="[0-9](_?[0-9])*",s="\\.(".concat(o,")"),l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:"(\\b(".concat(l,")((").concat(s,")|\\.)?|(").concat(s,"))")+"[eE][+-]?(".concat(o,")\\b")},{begin:"\\b(".concat(l,")\\b((").concat(s,")\\b|\\.)?|(").concat(s,")\\b")},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},_={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"xml"}},u={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"css"}},m={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,_]},p={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},g=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,c,e.REGEXP_MODE];_.contains=g.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(g)});var E=[].concat(p,_.contains),S=E.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(E)}]),b={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:S},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,p,c,{begin:FT(/[{,\n]\s*/,UT(FT(/(((\/\/.*$)|(\/\*(\*[^/]|[^*])*\*\/))\s*)*/,t+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:t+UT("\\s*:"),relevance:0}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[p,e.REGEXP_MODE,{className:"function",begin:"(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:n,end:a},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:i,contains:["self",e.inherit(e.TITLE_MODE,{begin:t}),b],illegal:/%/},{beginKeywords:"while if switch catch for"},{className:"function",begin:e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,contains:[b,e.inherit(e.TITLE_MODE,{begin:t})]},{variants:[{begin:"\\."+t},{begin:"\\$"+t}],relevance:0},{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/,end:/[{;]/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),"self",b]},{begin:"(get|set)\\s+(?="+t+"\\()",end:/\{/,keywords:"get set",contains:[e.inherit(e.TITLE_MODE,{begin:t}),{begin:/\(\)/},b]},{begin:/\$[(.]/}]}}(e);return Object.assign(r.keywords,t),r.exports.PARAMS_CONTAINS.push(n),r.contains=r.contains.concat([n,{beginKeywords:"namespace",end:/\{/,excludeEnd:!0},{beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"}]),a(r,"shebang",e.SHEBANG()),a(r,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),r.contains.find((function(e){return"function"===e.className})).relevance=0,Object.assign(r,{name:"TypeScript",aliases:["ts","tsx"]}),r};var GT=function(e){return{name:"Vala",keywords:{keyword:"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override virtual delegate if while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var",built_in:"DBus GLib CCode Gee Object Gtk Posix",literal:"false true null"},contains:[{className:"class",beginKeywords:"class interface namespace",end:/\{/,excludeEnd:!0,illegal:"[^,:\\n\\s\\.]",contains:[e.UNDERSCORE_TITLE_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:'"""',end:'"""',relevance:5},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"^#",end:"$",relevance:2}]}};function YT(e){return e?"string"==typeof e?e:e.source:null}function HT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return YT(e)})).join("");return a}function VT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return YT(e)})).join("|")+")";return a}var qT=function(e){var t=/\d{1,2}\/\d{1,2}\/\d{4}/,n=/\d{4}-\d{1,2}-\d{1,2}/,a=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,r=/\d{1,2}(:\d{1,2}){1,2}/,i={className:"literal",variants:[{begin:HT(/# */,VT(n,t),/ *#/)},{begin:HT(/# */,r,/ *#/)},{begin:HT(/# */,a,/ *#/)},{begin:HT(/# */,VT(n,t),/ +/,VT(a,r),/ *#/)}]},o=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),s=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[{className:"string",begin:/"(""|[^/n])"C\b/},{className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i,{className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},{className:"label",begin:/^\w+:/},o,s,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{"meta-keyword":"const disable else elseif enable end externalsource if region then"},contains:[s]}]}};function zT(e){return e?"string"==typeof e?e:e.source:null}function WT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return zT(e)})).join("");return a}function $T(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return zT(e)})).join("|")+")";return a}var QT=function(e){var t="lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid split cint sin datepart ltrim sqr time derived eval date formatpercent exp inputbox left ascw chrw regexp cstr err".split(" ");return{name:"VBScript",aliases:["vbs"],case_insensitive:!0,keywords:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:["server","response","request","scriptengine","scriptenginebuildversion","scriptengineminorversion","scriptenginemajorversion"],literal:"true false null nothing empty"},illegal:"//",contains:[{begin:WT($T.apply(void 0,c(t)),"\\s*\\("),relevance:0,keywords:{built_in:t}},e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT(/'/,/$/,{relevance:0}),e.C_NUMBER_MODE]}};var KT=function(e){return{name:"VBScript in HTML",subLanguage:"xml",contains:[{begin:"<%",end:"%>",subLanguage:"vbscript"}]}};var jT=function(e){return{name:"Verilog",aliases:["v","sv","svh"],case_insensitive:!1,keywords:{$pattern:/[\w\$]+/,keyword:"accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf|0 bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate|5 genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor",literal:"null",built_in:"$finish $stop $exit $fatal $error $warning $info $realtime $time $printtimescale $bitstoreal $bitstoshortreal $itor $signed $cast $bits $stime $timeformat $realtobits $shortrealtobits $rtoi $unsigned $asserton $assertkill $assertpasson $assertfailon $assertnonvacuouson $assertoff $assertcontrol $assertpassoff $assertfailoff $assertvacuousoff $isunbounded $sampled $fell $changed $past_gclk $fell_gclk $changed_gclk $rising_gclk $steady_gclk $coverage_control $coverage_get $coverage_save $set_coverage_db_name $rose $stable $past $rose_gclk $stable_gclk $future_gclk $falling_gclk $changing_gclk $display $coverage_get_max $coverage_merge $get_coverage $load_coverage_db $typename $unpacked_dimensions $left $low $increment $clog2 $ln $log10 $exp $sqrt $pow $floor $ceil $sin $cos $tan $countbits $onehot $isunknown $fatal $warning $dimensions $right $high $size $asin $acos $atan $atan2 $hypot $sinh $cosh $tanh $asinh $acosh $atanh $countones $onehot0 $error $info $random $dist_chi_square $dist_erlang $dist_exponential $dist_normal $dist_poisson $dist_t $dist_uniform $q_initialize $q_remove $q_exam $async$and$array $async$nand$array $async$or$array $async$nor$array $sync$and$array $sync$nand$array $sync$or$array $sync$nor$array $q_add $q_full $psprintf $async$and$plane $async$nand$plane $async$or$plane $async$nor$plane $sync$and$plane $sync$nand$plane $sync$or$plane $sync$nor$plane $system $display $displayb $displayh $displayo $strobe $strobeb $strobeh $strobeo $write $readmemb $readmemh $writememh $value$plusargs $dumpvars $dumpon $dumplimit $dumpports $dumpportson $dumpportslimit $writeb $writeh $writeo $monitor $monitorb $monitorh $monitoro $writememb $dumpfile $dumpoff $dumpall $dumpflush $dumpportsoff $dumpportsall $dumpportsflush $fclose $fdisplay $fdisplayb $fdisplayh $fdisplayo $fstrobe $fstrobeb $fstrobeh $fstrobeo $swrite $swriteb $swriteh $swriteo $fscanf $fread $fseek $fflush $feof $fopen $fwrite $fwriteb $fwriteh $fwriteo $fmonitor $fmonitorb $fmonitorh $fmonitoro $sformat $sformatf $fgetc $ungetc $fgets $sscanf $rewind $ftell $ferror"},contains:[e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"number",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"\\b((\\d+'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)"},{begin:"\\B(('(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)"},{begin:"\\b([0-9_])+",relevance:0}]},{className:"variable",variants:[{begin:"#\\((?!parameter).+\\)"},{begin:"\\.\\w+",relevance:0}]},{className:"meta",begin:"`",end:"$",keywords:{"meta-keyword":"define __FILE__ __LINE__ begin_keywords celldefine default_nettype define else elsif end_keywords endcelldefine endif ifdef ifndef include line nounconnected_drive pragma resetall timescale unconnected_drive undef undefineall"},relevance:0}]}};var XT=function(e){return{name:"VHDL",case_insensitive:!0,keywords:{keyword:"abs access after alias all and architecture array assert assume assume_guarantee attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package parameter port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable view vmode vprop vunit wait when while with xnor xor",built_in:"boolean bit character integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_logic std_logic_vector unsigned signed boolean_vector integer_vector std_ulogic std_ulogic_vector unresolved_unsigned u_unsigned unresolved_signed u_signed real_vector time_vector",literal:"false true note warning error failure line text side width"},illegal:/\{/,contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT("--","$"),e.QUOTE_STRING_MODE,{className:"number",begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)",relevance:0},{className:"string",begin:"'(U|X|0|1|Z|W|L|H|-)'",contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"'[A-Za-z](_?[A-Za-z0-9])*",contains:[e.BACKSLASH_ESCAPE]}]}};var ZT=function(e){return{name:"Vim Script",keywords:{$pattern:/[!#@\w]+/,keyword:"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank",built_in:"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp"},illegal:/;/,contains:[e.NUMBER_MODE,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:/"(\\"|\n\\|[^"\n])*"/},e.COMMENT('"',"$"),{className:"variable",begin:/[bwtglsav]:[\w\d_]*/},{className:"function",beginKeywords:"function function!",end:"$",relevance:0,contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{className:"symbol",begin:/<[\w-]+>/}]}};var JT=function(e){return{name:"Intel x86 Assembly",case_insensitive:!0,keywords:{$pattern:"[.%]?"+e.IDENT_RE,keyword:"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63",built_in:"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7 xmm8 xmm9 xmm10 xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0 ymm1 ymm2 ymm3 ymm4 ymm5 ymm6 ymm7 ymm8 ymm9 ymm10 ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0 zmm1 zmm2 zmm3 zmm4 zmm5 zmm6 zmm7 zmm8 zmm9 zmm10 zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr",meta:"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__ __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__ __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"number",variants:[{begin:"\\b(?:([0-9][0-9_]*)?\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*(\\.[0-9_]*)?(?:[pP](?:[+-]?[0-9_]+)?)?)\\b",relevance:0},{begin:"\\$[0-9][0-9A-Fa-f]*",relevance:0},{begin:"\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b"},{begin:"\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b"}]},e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:"'",end:"[^\\\\]'"},{begin:"`",end:"[^\\\\]`"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)"},{begin:"^\\s*%%[A-Za-z0-9_$#@~.?]*:"}],relevance:0},{className:"subst",begin:"%[0-9]+",relevance:0},{className:"subst",begin:"%!S+",relevance:0},{className:"meta",begin:/^\s*\.[\w_-]+/}]}};var ef=function(e){var t={$pattern:/[a-zA-Z][a-zA-Z0-9_?]*/,keyword:"if then else do while until for loop import with is as where when by data constant integer real text name boolean symbol infix prefix postfix block tree",literal:"true false nil",built_in:"in mod rem and or xor not abs sign floor ceil sqrt sin cos tan asin acos atan exp expm1 log log2 log10 log1p pi at text_length text_range text_find text_replace contains page slide basic_slide title_slide title subtitle fade_in fade_out fade_at clear_color color line_color line_width texture_wrap texture_transform texture scale_?x scale_?y scale_?z? translate_?x translate_?y translate_?z? rotate_?x rotate_?y rotate_?z? rectangle circle ellipse sphere path line_to move_to quad_to curve_to theme background contents locally time mouse_?x mouse_?y mouse_buttons ObjectLoader Animate MovieCredits Slides Filters Shading Materials LensFlare Mapping VLCAudioVideo StereoDecoder PointCloud NetworkAccess RemoteControl RegExp ChromaKey Snowfall NodeJS Speech Charts"},n={className:"string",begin:'"',end:'"',illegal:"\\n"},a={beginKeywords:"import",end:"$",keywords:t,contains:[n]},r={className:"function",begin:/[a-z][^\n]*->/,returnBegin:!0,end:/->/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,keywords:t}})]};return{name:"XL",aliases:["tao"],keywords:t,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:"<<",end:">>"},r,a,{className:"number",begin:"[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?"},e.NUMBER_MODE]}};var tf=function(e){return{name:"XQuery",aliases:["xpath","xq"],case_insensitive:!1,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{$pattern:/[a-zA-Z$][a-zA-Z0-9_:-]*/,keyword:"module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit declare import option function validate variable for at in let where order group by return if then else tumbling sliding window start when only end previous next stable ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch and or to union intersect instance of treat as castable cast map array delete insert into replace value rename copy modify update",type:"item document-node node attribute document element comment namespace namespace-node processing-instruction text construction xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration",literal:"eq ne lt le gt ge is self:: child:: descendant:: descendant-or-self:: attribute:: following:: following-sibling:: parent:: ancestor:: ancestor-or-self:: preceding:: preceding-sibling:: NaN"},contains:[{className:"variable",begin:/[$][\w\-:]+/},{className:"built_in",variants:[{begin:/\barray:/,end:/(?:append|filter|flatten|fold-(?:left|right)|for-each(?:-pair)?|get|head|insert-before|join|put|remove|reverse|size|sort|subarray|tail)\b/},{begin:/\bmap:/,end:/(?:contains|entry|find|for-each|get|keys|merge|put|remove|size)\b/},{begin:/\bmath:/,end:/(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/},{begin:/\bop:/,end:/\(/,excludeEnd:!0},{begin:/\bfn:/,end:/\(/,excludeEnd:!0},{begin:/[^</$:'"-]\b(?:abs|accumulator-(?:after|before)|adjust-(?:date(?:Time)?|time)-to-timezone|analyze-string|apply|available-(?:environment-variables|system-properties)|avg|base-uri|boolean|ceiling|codepoints?-(?:equal|to-string)|collation-key|collection|compare|concat|contains(?:-token)?|copy-of|count|current(?:-)?(?:date(?:Time)?|time|group(?:ing-key)?|output-uri|merge-(?:group|key))?data|dateTime|days?-from-(?:date(?:Time)?|duration)|deep-equal|default-(?:collation|language)|distinct-values|document(?:-uri)?|doc(?:-available)?|element-(?:available|with-id)|empty|encode-for-uri|ends-with|environment-variable|error|escape-html-uri|exactly-one|exists|false|filter|floor|fold-(?:left|right)|for-each(?:-pair)?|format-(?:date(?:Time)?|time|integer|number)|function-(?:arity|available|lookup|name)|generate-id|has-children|head|hours-from-(?:dateTime|duration|time)|id(?:ref)?|implicit-timezone|in-scope-prefixes|index-of|innermost|insert-before|iri-to-uri|json-(?:doc|to-xml)|key|lang|last|load-xquery-module|local-name(?:-from-QName)?|(?:lower|upper)-case|matches|max|minutes-from-(?:dateTime|duration|time)|min|months?-from-(?:date(?:Time)?|duration)|name(?:space-uri-?(?:for-prefix|from-QName)?)?|nilled|node-name|normalize-(?:space|unicode)|not|number|one-or-more|outermost|parse-(?:ietf-date|json)|path|position|(?:prefix-from-)?QName|random-number-generator|regex-group|remove|replace|resolve-(?:QName|uri)|reverse|root|round(?:-half-to-even)?|seconds-from-(?:dateTime|duration|time)|snapshot|sort|starts-with|static-base-uri|stream-available|string-?(?:join|length|to-codepoints)?|subsequence|substring-?(?:after|before)?|sum|system-property|tail|timezone-from-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type-available|unordered|unparsed-(?:entity|text)?-?(?:public-id|uri|available|lines)?|uri-collection|xml-to-json|years?-from-(?:date(?:Time)?|duration)|zero-or-one)\b/},{begin:/\blocal:/,end:/\(/,excludeEnd:!0},{begin:/\bzip:/,end:/(?:zip-file|(?:xml|html|text|binary)-entry| (?:update-)?entries)\b/},{begin:/\b(?:util|db|functx|app|xdmp|xmldb):/,end:/\(/,excludeEnd:!0}]},{className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},{className:"number",begin:/(\b0[0-7_]+)|(\b0x[0-9a-fA-F_]+)|(\b[1-9][0-9_]*(\.[0-9_]+)?)|[0_]\b/,relevance:0},{className:"comment",begin:/\(:/,end:/:\)/,relevance:10,contains:[{className:"doctag",begin:/@\w+/}]},{className:"meta",begin:/%[\w\-:]+/},{className:"title",begin:/\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/,end:/;/},{beginKeywords:"element attribute comment document processing-instruction",end:/\{/,excludeEnd:!0},{begin:/<([\w._:-]+)(\s+\S*=('|").*('|"))?>/,end:/(\/[\w._:-]+>)/,subLanguage:"xml",contains:[{begin:/\{/,end:/\}/,subLanguage:"xquery"},"self"]}]}};var nf=function(e){var t={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},n=e.UNDERSCORE_TITLE_MODE,a={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]},r="namespace class interface use extends function return abstract final public protected private static deprecated throw try catch Exception echo empty isset instanceof unset let var new const self require if else elseif switch case default do while loop for continue break likely unlikely __LINE__ __FILE__ __DIR__ __FUNCTION__ __CLASS__ __TRAIT__ __METHOD__ __NAMESPACE__ array boolean float double integer object resource string char long unsigned bool int uint ulong uchar true false null undefined";return{name:"Zephir",aliases:["zep"],keywords:r,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/\/\*/,/\*\//,{contains:[{className:"doctag",begin:/@[A-Za-z]+/}]}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;/,contains:[e.BACKSLASH_ESCAPE]},{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function fn",end:/[;{]/,excludeEnd:!0,illegal:/\$|\[|%/,contains:[n,{className:"params",begin:/\(/,end:/\)/,keywords:r,contains:["self",e.C_BLOCK_COMMENT_MODE,t,a]}]},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,illegal:/[:($"]/,contains:[{beginKeywords:"extends implements"},n]},{beginKeywords:"namespace",end:/;/,illegal:/[.']/,contains:[n]},{beginKeywords:"use",end:/;/,contains:[n]},{begin:/=>/},t,a]}},af=Pm;af.registerLanguage("1c",km),af.registerLanguage("abnf",Bm),af.registerLanguage("accesslog",Vm),af.registerLanguage("actionscript",Wm),af.registerLanguage("ada",$m),af.registerLanguage("angelscript",Qm),af.registerLanguage("apache",Km),af.registerLanguage("applescript",Jm),af.registerLanguage("arcade",ep),af.registerLanguage("arduino",rp),af.registerLanguage("armasm",ip),af.registerLanguage("xml",_p),af.registerLanguage("asciidoc",mp),af.registerLanguage("aspectj",Ep),af.registerLanguage("autohotkey",Sp),af.registerLanguage("autoit",bp),af.registerLanguage("avrasm",Tp),af.registerLanguage("awk",fp),af.registerLanguage("axapta",Cp),af.registerLanguage("bash",vp),af.registerLanguage("basic",Op),af.registerLanguage("bnf",hp),af.registerLanguage("brainfuck",yp),af.registerLanguage("c-like",Mp),af.registerLanguage("c",xp),af.registerLanguage("cal",Pp),af.registerLanguage("capnproto",kp),af.registerLanguage("ceylon",Up),af.registerLanguage("clean",Fp),af.registerLanguage("clojure",Bp),af.registerLanguage("clojure-repl",Gp),af.registerLanguage("cmake",Yp),af.registerLanguage("coffeescript",zp),af.registerLanguage("coq",Wp),af.registerLanguage("cos",$p),af.registerLanguage("cpp",Xp),af.registerLanguage("crmsh",Zp),af.registerLanguage("crystal",Jp),af.registerLanguage("csharp",eg),af.registerLanguage("csp",tg),af.registerLanguage("css",cg),af.registerLanguage("d",_g),af.registerLanguage("markdown",mg),af.registerLanguage("dart",pg),af.registerLanguage("delphi",gg),af.registerLanguage("diff",Eg),af.registerLanguage("django",Sg),af.registerLanguage("dns",bg),af.registerLanguage("dockerfile",Tg),af.registerLanguage("dos",fg),af.registerLanguage("dsconfig",Cg),af.registerLanguage("dts",Ng),af.registerLanguage("dust",Rg),af.registerLanguage("ebnf",vg),af.registerLanguage("elixir",Og),af.registerLanguage("elm",hg),af.registerLanguage("ruby",Ag),af.registerLanguage("erb",Dg),af.registerLanguage("erlang-repl",wg),af.registerLanguage("erlang",xg),af.registerLanguage("excel",Pg),af.registerLanguage("fix",kg),af.registerLanguage("flix",Ug),af.registerLanguage("fortran",Gg),af.registerLanguage("fsharp",Yg),af.registerLanguage("gams",qg),af.registerLanguage("gauss",zg),af.registerLanguage("gcode",Wg),af.registerLanguage("gherkin",$g),af.registerLanguage("glsl",Qg),af.registerLanguage("gml",Kg),af.registerLanguage("go",jg),af.registerLanguage("golo",Xg),af.registerLanguage("gradle",Zg),af.registerLanguage("groovy",nE),af.registerLanguage("haml",aE),af.registerLanguage("handlebars",oE),af.registerLanguage("haskell",sE),af.registerLanguage("haxe",lE),af.registerLanguage("hsp",cE),af.registerLanguage("htmlbars",mE),af.registerLanguage("http",EE),af.registerLanguage("hy",SE),af.registerLanguage("inform7",bE),af.registerLanguage("ini",CE),af.registerLanguage("irpf90",vE),af.registerLanguage("isbl",OE),af.registerLanguage("java",AE),af.registerLanguage("javascript",kE),af.registerLanguage("jboss-cli",UE),af.registerLanguage("json",FE),af.registerLanguage("julia",BE),af.registerLanguage("julia-repl",GE),af.registerLanguage("kotlin",qE),af.registerLanguage("lasso",zE),af.registerLanguage("latex",QE),af.registerLanguage("ldif",KE),af.registerLanguage("leaf",jE),af.registerLanguage("less",aS),af.registerLanguage("lisp",rS),af.registerLanguage("livecodeserver",iS),af.registerLanguage("livescript",cS),af.registerLanguage("llvm",uS),af.registerLanguage("lsl",mS),af.registerLanguage("lua",pS),af.registerLanguage("makefile",gS),af.registerLanguage("mathematica",CS),af.registerLanguage("matlab",NS),af.registerLanguage("maxima",RS),af.registerLanguage("mel",vS),af.registerLanguage("mercury",OS),af.registerLanguage("mipsasm",hS),af.registerLanguage("mizar",yS),af.registerLanguage("perl",MS),af.registerLanguage("mojolicious",LS),af.registerLanguage("monkey",wS),af.registerLanguage("moonscript",xS),af.registerLanguage("n1ql",PS),af.registerLanguage("nginx",kS),af.registerLanguage("nim",US),af.registerLanguage("nix",FS),af.registerLanguage("node-repl",BS),af.registerLanguage("nsis",GS),af.registerLanguage("objectivec",YS),af.registerLanguage("ocaml",HS),af.registerLanguage("openscad",VS),af.registerLanguage("oxygene",qS),af.registerLanguage("parser3",zS),af.registerLanguage("pf",WS),af.registerLanguage("pgsql",$S),af.registerLanguage("php",QS),af.registerLanguage("php-template",KS),af.registerLanguage("plaintext",jS),af.registerLanguage("pony",XS),af.registerLanguage("powershell",ZS),af.registerLanguage("processing",JS),af.registerLanguage("profile",eb),af.registerLanguage("prolog",tb),af.registerLanguage("properties",nb),af.registerLanguage("protobuf",ab),af.registerLanguage("puppet",rb),af.registerLanguage("purebasic",ib),af.registerLanguage("python",lb),af.registerLanguage("python-repl",cb),af.registerLanguage("q",_b),af.registerLanguage("qml",mb),af.registerLanguage("r",Eb),af.registerLanguage("reasonml",Sb),af.registerLanguage("rib",bb),af.registerLanguage("roboconf",Tb),af.registerLanguage("routeros",fb),af.registerLanguage("rsl",Cb),af.registerLanguage("ruleslanguage",Nb),af.registerLanguage("rust",Rb),af.registerLanguage("sas",vb),af.registerLanguage("scala",Ob),af.registerLanguage("scheme",hb),af.registerLanguage("scilab",yb),af.registerLanguage("scss",wb),af.registerLanguage("shell",xb),af.registerLanguage("smali",Pb),af.registerLanguage("smalltalk",kb),af.registerLanguage("sml",Ub),af.registerLanguage("sqf",Fb),af.registerLanguage("sql_more",Bb),af.registerLanguage("sql",Vb),af.registerLanguage("stan",qb),af.registerLanguage("stata",zb),af.registerLanguage("step21",Wb),af.registerLanguage("stylus",Zb),af.registerLanguage("subunit",Jb),af.registerLanguage("swift",NT),af.registerLanguage("taggerscript",RT),af.registerLanguage("yaml",vT),af.registerLanguage("tap",OT),af.registerLanguage("tcl",IT),af.registerLanguage("thrift",AT),af.registerLanguage("tp",DT),af.registerLanguage("twig",MT),af.registerLanguage("typescript",BT),af.registerLanguage("vala",GT),af.registerLanguage("vbnet",qT),af.registerLanguage("vbscript",QT),af.registerLanguage("vbscript-html",KT),af.registerLanguage("verilog",jT),af.registerLanguage("vhdl",XT),af.registerLanguage("vim",ZT),af.registerLanguage("x86asm",JT),af.registerLanguage("xl",ef),af.registerLanguage("xquery",tf),af.registerLanguage("zephir",nf);var rf=af;!function(t,n){var a,r="hljs-ln",i="hljs-ln-code",o="hljs-ln-n",s="data-line-number",l=/\r\n|\r|\n/g;function c(e){try{var a=n.querySelectorAll("code.hljs,code.nohighlight");for(var r in a)a.hasOwnProperty(r)&&(a[r].classList.contains("nohljsln")||_(a[r],e))}catch(e){t.console.error("LineNumbers error: ",e)}}function _(t,n){"object"==e(t)&&(t.innerHTML=d(t,n))}function d(e,t){var n,a,c=(n=e,{singleLine:function(e){return!!e.singleLine&&e.singleLine}(a=(a=t)||{}),startFrom:function(e,t){var n=1;isFinite(t.startFrom)&&(n=t.startFrom);var a=function(e,t){return e.hasAttribute(t)?e.getAttribute(t):null}(e,"data-ln-start-from");return null!==a&&(n=function(e,t){if(!e)return 1;var n=Number(e);return isFinite(n)?n:1}(a)),n}(n,a)});return function e(t){var n=t.childNodes;for(var a in n){var r;n.hasOwnProperty(a)&&(0<((r=n[a]).textContent.trim().match(l)||[]).length&&(0<r.childNodes.length?e(r):u(r.parentNode)))}}(e),function(e,t){var n=m(e);if(""===n[n.length-1].trim()&&n.pop(),1<n.length||t.singleLine){for(var a="",l=0,c=n.length;l<c;l++)a+=p('<tr><td class="{0} {1}" {3}="{5}"><div class="{2}" {3}="{5}"></div></td><td class="{0} {4}" {3}="{5}">{6}</td></tr>',["hljs-ln-line","hljs-ln-numbers",o,s,i,l+t.startFrom,0<n[l].length?n[l]:" "]);return p('<table class="{0}">{1}</table>',[r,a])}return e}(e.innerHTML,c)}function u(e){var t=e.className;if(/hljs-/.test(t)){for(var n=m(e.innerHTML),a=0,r="";a<n.length;a++)r+=p('<span class="{0}">{1}</span>\n',[t,0<n[a].length?n[a]:" "]);e.innerHTML=r.trim()}}function m(e){return 0===e.length?[]:e.split(l)}function p(e,t){return e.replace(/\{(\d+)\}/g,(function(e,n){return void 0!==t[n]?t[n]:e}))}rf?(rf.initLineNumbersOnLoad=function(e){"interactive"===n.readyState||"complete"===n.readyState?c(e):t.addEventListener("DOMContentLoaded",(function(){c(e)}))},rf.lineNumbersBlock=_,rf.lineNumbersValue=function(e,t){if("string"==typeof e){var n=document.createElement("code");return n.innerHTML=e,d(n,t)}},(a=n.createElement("style")).type="text/css",a.innerHTML=p(".{0}{border-collapse:collapse}.{0} td{padding:0}.{1}:before{content:attr({2})}",[r,o,s]),n.getElementsByTagName("head")[0].appendChild(a)):t.console.error("highlight.js not detected!"),document.addEventListener("copy",(function(e){var t,n=window.getSelection();!function(e){for(var t=e;t;){if(t.className&&-1!==t.className.indexOf("hljs-ln-code"))return 1;t=t.parentNode}}(n.anchorNode)||(t=-1!==window.navigator.userAgent.indexOf("Edge")?function(e){for(var t=e.toString(),n=e.anchorNode;"TD"!==n.nodeName;)n=n.parentNode;for(var a=e.focusNode;"TD"!==a.nodeName;)a=a.parentNode;var r=parseInt(n.dataset.lineNumber),o=parseInt(a.dataset.lineNumber);if(r==o)return t;var l,c=n.textContent,_=a.textContent;for(o<r&&(l=r,r=o,o=l,l=c,c=_,_=l);0!==t.indexOf(c);)c=c.slice(1);for(;-1===t.lastIndexOf(_);)_=_.slice(0,-1);for(var d=c,u=function(e){for(var t=e;"TABLE"!==t.nodeName;)t=t.parentNode;return t}(n),m=r+1;m<o;++m){var g=p('.{0}[{1}="{2}"]',[i,s,m]);d+="\n"+u.querySelector(g).textContent}return d+"\n"+_}(n):n.toString(),e.clipboardData.setData("text/plain",t),e.preventDefault())}))}(window,document); +/*! + * reveal.js plugin that adds syntax highlight support. + */ +var of={id:"highlight",HIGHLIGHT_STEP_DELIMITER:"|",HIGHLIGHT_LINE_DELIMITER:",",HIGHLIGHT_LINE_RANGE_DELIMITER:"-",hljs:rf,init:function(e){var t=e.getConfig().highlight||{};t.highlightOnLoad="boolean"!=typeof t.highlightOnLoad||t.highlightOnLoad,t.escapeHTML="boolean"!=typeof t.escapeHTML||t.escapeHTML,Array.from(e.getRevealElement().querySelectorAll("pre code")).forEach((function(e){e.parentNode.classList.add("code-wrapper");var n=e.querySelector('script[type="text/template"]');n&&(e.textContent=n.innerHTML),e.hasAttribute("data-trim")&&"function"==typeof e.innerHTML.trim&&(e.innerHTML=function(e){function t(e){return e.replace(/^[\s\uFEFF\xA0]+/g,"")}function n(e){for(var t=e.split("\n"),n=0;n<t.length&&""===t[n].trim();n++)t.splice(n--,1);for(n=t.length-1;n>=0&&""===t[n].trim();n--)t.splice(n,1);return t.join("\n")}return function(e){var a=n(e.innerHTML).split("\n"),r=a.reduce((function(e,n){return n.length>0&&t(n).length>0&&e>n.length-t(n).length?n.length-t(n).length:e}),Number.POSITIVE_INFINITY);return a.map((function(e,t){return e.slice(r)})).join("\n")}(e)}(e)),t.escapeHTML&&!e.hasAttribute("data-noescape")&&(e.innerHTML=e.innerHTML.replace(/</g,"<").replace(/>/g,">")),e.addEventListener("focusout",(function(e){rf.highlightElement(e.currentTarget)}),!1)})),"function"==typeof t.beforeHighlight&&t.beforeHighlight(rf),t.highlightOnLoad&&Array.from(e.getRevealElement().querySelectorAll("pre code")).forEach((function(e){of.highlightBlock(e)})),e.on("pdf-ready",(function(){[].slice.call(e.getRevealElement().querySelectorAll("pre code[data-line-numbers].current-fragment")).forEach((function(e){of.scrollHighlightedLineIntoView(e,{},!0)}))}))},highlightBlock:function(e){if(rf.highlightElement(e),0!==e.innerHTML.trim().length&&e.hasAttribute("data-line-numbers")){rf.lineNumbersBlock(e,{singleLine:!0});var t={currentBlock:e},n=of.deserializeHighlightSteps(e.getAttribute("data-line-numbers"));if(n.length>1){var a=parseInt(e.getAttribute("data-fragment-index"),10);("number"!=typeof a||isNaN(a))&&(a=null),n.slice(1).forEach((function(n){var r=e.cloneNode(!0);r.setAttribute("data-line-numbers",of.serializeHighlightSteps([n])),r.classList.add("fragment"),e.parentNode.appendChild(r),of.highlightLines(r),"number"==typeof a?(r.setAttribute("data-fragment-index",a),a+=1):r.removeAttribute("data-fragment-index"),r.addEventListener("visible",of.scrollHighlightedLineIntoView.bind(of,r,t)),r.addEventListener("hidden",of.scrollHighlightedLineIntoView.bind(of,r.previousSibling,t))})),e.removeAttribute("data-fragment-index"),e.setAttribute("data-line-numbers",of.serializeHighlightSteps([n[0]]))}var r="function"==typeof e.closest?e.closest("section:not(.stack)"):null;if(r){r.addEventListener("visible",(function n(){of.scrollHighlightedLineIntoView(e,t,!0),r.removeEventListener("visible",n)}))}of.highlightLines(e)}},scrollHighlightedLineIntoView:function(e,t,n){cancelAnimationFrame(t.animationFrameID),t.currentBlock&&(e.scrollTop=t.currentBlock.scrollTop),t.currentBlock=e;var a=this.getHighlightedLineBounds(e),r=e.offsetHeight,i=getComputedStyle(e);r-=parseInt(i.paddingTop)+parseInt(i.paddingBottom);var o=e.scrollTop,s=a.top+(Math.min(a.bottom-a.top,r)-r)/2,l=e.querySelector(".hljs-ln");if(l&&(s+=l.offsetTop-parseInt(i.paddingTop)),s=Math.max(Math.min(s,e.scrollHeight-r),0),!0===n||o===s)e.scrollTop=s;else{if(e.scrollHeight<=r)return;var c=0;!function n(){c=Math.min(c+.02,1),e.scrollTop=o+(s-o)*of.easeInOutQuart(c),c<1&&(t.animationFrameID=requestAnimationFrame(n))}()}},easeInOutQuart:function(e){return e<.5?8*e*e*e*e:1-8*--e*e*e*e},getHighlightedLineBounds:function(e){var t=e.querySelectorAll(".highlight-line");if(0===t.length)return{top:0,bottom:0};var n=t[0],a=t[t.length-1];return{top:n.offsetTop,bottom:a.offsetTop+a.offsetHeight}},highlightLines:function(e,t){var n=of.deserializeHighlightSteps(t||e.getAttribute("data-line-numbers"));n.length&&n[0].forEach((function(t){var n=[];"number"==typeof t.end?n=[].slice.call(e.querySelectorAll("table tr:nth-child(n+"+t.start+"):nth-child(-n+"+t.end+")")):"number"==typeof t.start&&(n=[].slice.call(e.querySelectorAll("table tr:nth-child("+t.start+")"))),n.length&&(n.forEach((function(e){e.classList.add("highlight-line")})),e.classList.add("has-highlights"))}))},deserializeHighlightSteps:function(e){return(e=(e=e.replace(/\s/g,"")).split(of.HIGHLIGHT_STEP_DELIMITER)).map((function(e){return e.split(of.HIGHLIGHT_LINE_DELIMITER).map((function(e){if(/^[\d-]+$/.test(e)){e=e.split(of.HIGHLIGHT_LINE_RANGE_DELIMITER);var t=parseInt(e[0],10),n=parseInt(e[1],10);return isNaN(n)?{start:t}:{start:t,end:n}}return{}}))}))},serializeHighlightSteps:function(e){return e.map((function(e){return e.map((function(e){return"number"==typeof e.end?e.start+of.HIGHLIGHT_LINE_RANGE_DELIMITER+e.end:"number"==typeof e.start?e.start:""})).join(of.HIGHLIGHT_LINE_DELIMITER)})).join(of.HIGHLIGHT_STEP_DELIMITER)}};export default function(){return of} diff --git a/public/site_libs/revealjs/plugin/highlight/highlight.js b/public/site_libs/revealjs/plugin/highlight/highlight.js new file mode 100644 index 0000000..b2529bf --- /dev/null +++ b/public/site_libs/revealjs/plugin/highlight/highlight.js @@ -0,0 +1,5 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealHighlight=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 n(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function a(e,t,a){return t&&n(e.prototype,t),a&&n(e,a),e}function r(e){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,a=r(e);if(t){var i=r(this).constructor;n=Reflect.construct(a,arguments,i)}else n=a.apply(this,arguments);return o(this,n)}}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==n)return;var a,r,i=[],o=!0,s=!1;try{for(n=n.call(e);!(o=(a=n.next()).done)&&(i.push(a.value),!t||i.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{o||null==n.return||n.return()}finally{if(s)throw r}}return i}(e,t)||_(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},m=function(e){return e&&e.Math==Math&&e},p=m("object"==typeof globalThis&&globalThis)||m("object"==typeof window&&window)||m("object"==typeof self&&self)||m("object"==typeof u&&u)||function(){return this}()||Function("return this")(),g={exports:{}},E=function(e){try{return!!e()}catch(e){return!0}},S=!E((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),b={},f=function(e){return"object"==typeof e?null!==e:"function"==typeof e},T=f,C=p.document,N=T(C)&&T(C.createElement),R=function(e){return N?C.createElement(e):{}},v=R,O=!S&&!E((function(){return 7!=Object.defineProperty(v("div"),"a",{get:function(){return 7}}).a})),h=f,y=function(e){if(!h(e))throw TypeError(String(e)+" is not an object");return e},I=f,A=function(e,t){if(!I(e))return e;var n,a;if(t&&"function"==typeof(n=e.toString)&&!I(a=n.call(e)))return a;if("function"==typeof(n=e.valueOf)&&!I(a=n.call(e)))return a;if(!t&&"function"==typeof(n=e.toString)&&!I(a=n.call(e)))return a;throw TypeError("Can't convert object to primitive value")},D=S,M=O,L=y,w=A,x=Object.defineProperty;b.f=D?x:function(e,t,n){if(L(e),t=w(t,!0),L(n),M)try{return x(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var P=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},k=b,U=P,F=S?function(e,t,n){return k.f(e,t,U(1,n))}:function(e,t,n){return e[t]=n,e},B=p,G=F,Y=function(e,t){try{G(B,e,t)}catch(n){B[e]=t}return t},H=Y,V="__core-js_shared__",q=p[V]||H(V,{}),z=q;(g.exports=function(e,t){return z[e]||(z[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var W,$,Q=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},K=Q,j=function(e){return Object(K(e))},X=j,Z={}.hasOwnProperty,J=function(e,t){return Z.call(X(e),t)},ee=0,te=Math.random(),ne=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++ee+te).toString(36)},ae=p,re=ae,ie=p,oe=function(e){return"function"==typeof e?e:void 0},se=function(e,t){return arguments.length<2?oe(re[e])||oe(ie[e]):re[e]&&re[e][t]||ie[e]&&ie[e][t]},le=se("navigator","userAgent")||"",ce=p.process,_e=ce&&ce.versions,de=_e&&_e.v8;de?$=(W=de.split("."))[0]<4?1:W[0]+W[1]:le&&(!(W=le.match(/Edge\/(\d+)/))||W[1]>=74)&&(W=le.match(/Chrome\/(\d+)/))&&($=W[1]);var ue=$&&+$,me=ue,pe=E,ge=!!Object.getOwnPropertySymbols&&!pe((function(){return!String(Symbol())||!Symbol.sham&&me&&me<41})),Ee=ge&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Se=p,be=g.exports,fe=J,Te=ne,Ce=ge,Ne=Ee,Re=be("wks"),ve=Se.Symbol,Oe=Ne?ve:ve&&ve.withoutSetter||Te,he=function(e){return fe(Re,e)&&(Ce||"string"==typeof Re[e])||(Ce&&fe(ve,e)?Re[e]=ve[e]:Re[e]=Oe("Symbol."+e)),Re[e]},ye={};ye[he("toStringTag")]="z";var Ie="[object z]"===String(ye),Ae={exports:{}},De=q,Me=Function.toString;"function"!=typeof De.inspectSource&&(De.inspectSource=function(e){return Me.call(e)});var Le,we,xe,Pe=De.inspectSource,ke=Pe,Ue=p.WeakMap,Fe="function"==typeof Ue&&/native code/.test(ke(Ue)),Be=g.exports,Ge=ne,Ye=Be("keys"),He=function(e){return Ye[e]||(Ye[e]=Ge(e))},Ve={},qe=Fe,ze=f,We=F,$e=J,Qe=q,Ke=He,je=Ve,Xe="Object already initialized",Ze=p.WeakMap;if(qe||Qe.state){var Je=Qe.state||(Qe.state=new Ze),et=Je.get,tt=Je.has,nt=Je.set;Le=function(e,t){if(tt.call(Je,e))throw new TypeError(Xe);return t.facade=e,nt.call(Je,e,t),t},we=function(e){return et.call(Je,e)||{}},xe=function(e){return tt.call(Je,e)}}else{var at=Ke("state");je[at]=!0,Le=function(e,t){if($e(e,at))throw new TypeError(Xe);return t.facade=e,We(e,at,t),t},we=function(e){return $e(e,at)?e[at]:{}},xe=function(e){return $e(e,at)}}var rt={set:Le,get:we,has:xe,enforce:function(e){return xe(e)?we(e):Le(e,{})},getterFor:function(e){return function(t){var n;if(!ze(t)||(n=we(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},it=p,ot=F,st=J,lt=Y,ct=Pe,_t=rt.get,dt=rt.enforce,ut=String(String).split("String");(Ae.exports=function(e,t,n,a){var r,i=!!a&&!!a.unsafe,o=!!a&&!!a.enumerable,s=!!a&&!!a.noTargetGet;"function"==typeof n&&("string"!=typeof t||st(n,"name")||ot(n,"name",t),(r=dt(n)).source||(r.source=ut.join("string"==typeof t?t:""))),e!==it?(i?!s&&e[t]&&(o=!0):delete e[t],o?e[t]=n:ot(e,t,n)):o?e[t]=n:lt(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&_t(this).source||ct(this)}));var mt={}.toString,pt=function(e){return mt.call(e).slice(8,-1)},gt=Ie,Et=pt,St=he("toStringTag"),bt="Arguments"==Et(function(){return arguments}()),ft=gt?Et:function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),St))?n:bt?Et(t):"Object"==(a=Et(t))&&"function"==typeof t.callee?"Arguments":a},Tt=ft,Ct=Ie?{}.toString:function(){return"[object "+Tt(this)+"]"},Nt=Ie,Rt=Ae.exports,vt=Ct;Nt||Rt(Object.prototype,"toString",vt,{unsafe:!0});var Ot=y,ht=function(){var e=Ot(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},yt=Ae.exports,It=y,At=E,Dt=ht,Mt="toString",Lt=RegExp.prototype,wt=Lt.toString,xt=At((function(){return"/a/b"!=wt.call({source:"a",flags:"b"})})),Pt=wt.name!=Mt;(xt||Pt)&&yt(RegExp.prototype,Mt,(function(){var e=It(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in Lt)?Dt.call(e):n)}),{unsafe:!0});var kt={},Ut={},Ft={}.propertyIsEnumerable,Bt=Object.getOwnPropertyDescriptor,Gt=Bt&&!Ft.call({1:2},1);Ut.f=Gt?function(e){var t=Bt(this,e);return!!t&&t.enumerable}:Ft;var Yt=pt,Ht="".split,Vt=E((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==Yt(e)?Ht.call(e,""):Object(e)}:Object,qt=Vt,zt=Q,Wt=function(e){return qt(zt(e))},$t=S,Qt=Ut,Kt=P,jt=Wt,Xt=A,Zt=J,Jt=O,en=Object.getOwnPropertyDescriptor;kt.f=$t?en:function(e,t){if(e=jt(e),t=Xt(t,!0),Jt)try{return en(e,t)}catch(e){}if(Zt(e,t))return Kt(!Qt.f.call(e,t),e[t])};var tn={},nn=Math.ceil,an=Math.floor,rn=function(e){return isNaN(e=+e)?0:(e>0?an:nn)(e)},on=rn,sn=Math.min,ln=function(e){return e>0?sn(on(e),9007199254740991):0},cn=rn,_n=Math.max,dn=Math.min,un=function(e,t){var n=cn(e);return n<0?_n(n+t,0):dn(n,t)},mn=Wt,pn=ln,gn=un,En=function(e){return function(t,n,a){var r,i=mn(t),o=pn(i.length),s=gn(a,o);if(e&&n!=n){for(;o>s;)if((r=i[s++])!=r)return!0}else for(;o>s;s++)if((e||s in i)&&i[s]===n)return e||s||0;return!e&&-1}},Sn={includes:En(!0),indexOf:En(!1)},bn=J,fn=Wt,Tn=Sn.indexOf,Cn=Ve,Nn=function(e,t){var n,a=fn(e),r=0,i=[];for(n in a)!bn(Cn,n)&&bn(a,n)&&i.push(n);for(;t.length>r;)bn(a,n=t[r++])&&(~Tn(i,n)||i.push(n));return i},Rn=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],vn=Nn,On=Rn.concat("length","prototype");tn.f=Object.getOwnPropertyNames||function(e){return vn(e,On)};var hn={};hn.f=Object.getOwnPropertySymbols;var yn=tn,In=hn,An=y,Dn=se("Reflect","ownKeys")||function(e){var t=yn.f(An(e)),n=In.f;return n?t.concat(n(e)):t},Mn=J,Ln=Dn,wn=kt,xn=b,Pn=function(e,t){for(var n=Ln(t),a=xn.f,r=wn.f,i=0;i<n.length;i++){var o=n[i];Mn(e,o)||a(e,o,r(t,o))}},kn=E,Un=/#|\.prototype\./,Fn=function(e,t){var n=Gn[Bn(e)];return n==Hn||n!=Yn&&("function"==typeof t?kn(t):!!t)},Bn=Fn.normalize=function(e){return String(e).replace(Un,".").toLowerCase()},Gn=Fn.data={},Yn=Fn.NATIVE="N",Hn=Fn.POLYFILL="P",Vn=Fn,qn=p,zn=kt.f,Wn=F,$n=Ae.exports,Qn=Y,Kn=Pn,jn=Vn,Xn=function(e,t){var n,a,r,i,o,s=e.target,l=e.global,c=e.stat;if(n=l?qn:c?qn[s]||Qn(s,{}):(qn[s]||{}).prototype)for(a in t){if(i=t[a],r=e.noTargetGet?(o=zn(n,a))&&o.value:n[a],!jn(l?a:s+(c?".":"#")+a,e.forced)&&void 0!==r){if(typeof i==typeof r)continue;Kn(i,r)}(e.sham||r&&r.sham)&&Wn(i,"sham",!0),$n(n,a,i,e)}},Zn=pt,Jn=Array.isArray||function(e){return"Array"==Zn(e)},ea=A,ta=b,na=P,aa=function(e,t,n){var a=ea(t);a in e?ta.f(e,a,na(0,n)):e[a]=n},ra=E,ia=ue,oa=he("species"),sa=function(e){return ia>=51||!ra((function(){var t=[];return(t.constructor={})[oa]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},la=Xn,ca=f,_a=Jn,da=un,ua=ln,ma=Wt,pa=aa,ga=he,Ea=sa("slice"),Sa=ga("species"),ba=[].slice,fa=Math.max;la({target:"Array",proto:!0,forced:!Ea},{slice:function(e,t){var n,a,r,i=ma(this),o=ua(i.length),s=da(e,o),l=da(void 0===t?o:t,o);if(_a(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!_a(n.prototype)?ca(n)&&null===(n=n[Sa])&&(n=void 0):n=void 0,n===Array||void 0===n))return ba.call(i,s,l);for(a=new(void 0===n?Array:n)(fa(l-s,0)),r=0;s<l;s++,r++)s in i&&pa(a,r,i[s]);return a.length=r,a}});var Ta,Ca=f,Na=y,Ra=function(e){if(!Ca(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},va=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,a){return Na(n),Ra(a),t?e.call(n,a):n.__proto__=a,n}}():void 0),Oa=f,ha=va,ya=function(e,t,n){var a,r;return ha&&"function"==typeof(a=t.constructor)&&a!==n&&Oa(r=a.prototype)&&r!==n.prototype&&ha(e,r),e},Ia=Nn,Aa=Rn,Da=Object.keys||function(e){return Ia(e,Aa)},Ma=b,La=y,wa=Da,xa=S?Object.defineProperties:function(e,t){La(e);for(var n,a=wa(t),r=a.length,i=0;r>i;)Ma.f(e,n=a[i++],t[n]);return e},Pa=se("document","documentElement"),ka=y,Ua=xa,Fa=Rn,Ba=Ve,Ga=Pa,Ya=R,Ha=He("IE_PROTO"),Va=function(){},qa=function(e){return"<script>"+e+"</"+"script>"},za=function(){try{Ta=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;za=Ta?function(e){e.write(qa("")),e.close();var t=e.parentWindow.Object;return e=null,t}(Ta):((t=Ya("iframe")).style.display="none",Ga.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(qa("document.F=Object")),e.close(),e.F);for(var n=Fa.length;n--;)delete za.prototype[Fa[n]];return za()};Ba[Ha]=!0;var Wa=Object.create||function(e,t){var n;return null!==e?(Va.prototype=ka(e),n=new Va,Va.prototype=null,n[Ha]=e):n=za(),void 0===t?n:Ua(n,t)},$a="\t\n\v\f\r \u2028\u2029\ufeff",Qa=Q,Ka="[\t\n\v\f\r \u2028\u2029\ufeff]",ja=RegExp("^"+Ka+Ka+"*"),Xa=RegExp(Ka+Ka+"*$"),Za=function(e){return function(t){var n=String(Qa(t));return 1&e&&(n=n.replace(ja,"")),2&e&&(n=n.replace(Xa,"")),n}},Ja={start:Za(1),end:Za(2),trim:Za(3)},er=S,tr=p,nr=Vn,ar=Ae.exports,rr=J,ir=pt,or=ya,sr=A,lr=E,cr=Wa,_r=tn.f,dr=kt.f,ur=b.f,mr=Ja.trim,pr="Number",gr=tr.Number,Er=gr.prototype,Sr=ir(cr(Er))==pr,br=function(e){var t,n,a,r,i,o,s,l,c=sr(e,!1);if("string"==typeof c&&c.length>2)if(43===(t=(c=mr(c)).charCodeAt(0))||45===t){if(88===(n=c.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(c.charCodeAt(1)){case 66:case 98:a=2,r=49;break;case 79:case 111:a=8,r=55;break;default:return+c}for(o=(i=c.slice(2)).length,s=0;s<o;s++)if((l=i.charCodeAt(s))<48||l>r)return NaN;return parseInt(i,a)}return+c};if(nr(pr,!gr(" 0o1")||!gr("0b1")||gr("+0x1"))){for(var fr,Tr=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof Tr&&(Sr?lr((function(){Er.valueOf.call(n)})):ir(n)!=pr)?or(new gr(br(t)),n,Tr):br(t)},Cr=er?_r(gr):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","),Nr=0;Cr.length>Nr;Nr++)rr(gr,fr=Cr[Nr])&&!rr(Tr,fr)&&ur(Tr,fr,dr(gr,fr));Tr.prototype=Er,Er.constructor=Tr,ar(tr,pr,Tr)}var Rr={},vr=E;function Or(e,t){return RegExp(e,t)}Rr.UNSUPPORTED_Y=vr((function(){var e=Or("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),Rr.BROKEN_CARET=vr((function(){var e=Or("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var hr=ht,yr=Rr,Ir=g.exports,Ar=RegExp.prototype.exec,Dr=Ir("native-string-replace",String.prototype.replace),Mr=Ar,Lr=function(){var e=/a/,t=/b*/g;return Ar.call(e,"a"),Ar.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),wr=yr.UNSUPPORTED_Y||yr.BROKEN_CARET,xr=void 0!==/()??/.exec("")[1];(Lr||xr||wr)&&(Mr=function(e){var t,n,a,r,i=this,o=wr&&i.sticky,s=hr.call(i),l=i.source,c=0,_=e;return o&&(-1===(s=s.replace("y","")).indexOf("g")&&(s+="g"),_=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(l="(?: "+l+")",_=" "+_,c++),n=new RegExp("^(?:"+l+")",s)),xr&&(n=new RegExp("^"+l+"$(?!\\s)",s)),Lr&&(t=i.lastIndex),a=Ar.call(o?n:i,_),o?a?(a.input=a.input.slice(c),a[0]=a[0].slice(c),a.index=i.lastIndex,i.lastIndex+=a[0].length):i.lastIndex=0:Lr&&a&&(i.lastIndex=i.global?a.index+a[0].length:t),xr&&a&&a.length>1&&Dr.call(a[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(a[r]=void 0)})),a});var Pr=Mr;Xn({target:"RegExp",proto:!0,forced:/./.exec!==Pr},{exec:Pr});var kr=Ae.exports,Ur=Pr,Fr=E,Br=he,Gr=F,Yr=Br("species"),Hr=RegExp.prototype,Vr=!Fr((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),qr="$0"==="a".replace(/./,"$0"),zr=Br("replace"),Wr=!!/./[zr]&&""===/./[zr]("a","$0"),$r=!Fr((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Qr=function(e,t,n,a){var r=Br(e),i=!Fr((function(){var t={};return t[r]=function(){return 7},7!=""[e](t)})),o=i&&!Fr((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[Yr]=function(){return n},n.flags="",n[r]=/./[r]),n.exec=function(){return t=!0,null},n[r](""),!t}));if(!i||!o||"replace"===e&&(!Vr||!qr||Wr)||"split"===e&&!$r){var s=/./[r],l=n(r,""[e],(function(e,t,n,a,r){var o=t.exec;return o===Ur||o===Hr.exec?i&&!r?{done:!0,value:s.call(t,n,a)}:{done:!0,value:e.call(n,t,a)}:{done:!1}}),{REPLACE_KEEPS_$0:qr,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Wr}),c=l[0],_=l[1];kr(String.prototype,e,c),kr(Hr,r,2==t?function(e,t){return _.call(e,this,t)}:function(e){return _.call(e,this)})}a&&Gr(Hr[r],"sham",!0)},Kr=rn,jr=Q,Xr=function(e){return function(t,n){var a,r,i=String(jr(t)),o=Kr(n),s=i.length;return o<0||o>=s?e?"":void 0:(a=i.charCodeAt(o))<55296||a>56319||o+1===s||(r=i.charCodeAt(o+1))<56320||r>57343?e?i.charAt(o):a:e?i.slice(o,o+2):r-56320+(a-55296<<10)+65536}},Zr={codeAt:Xr(!1),charAt:Xr(!0)},Jr=Zr.charAt,ei=function(e,t,n){return t+(n?Jr(e,t).length:1)},ti=pt,ni=Pr,ai=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==ti(e))throw TypeError("RegExp#exec called on incompatible receiver");return ni.call(e,t)},ri=y,ii=ln,oi=Q,si=ei,li=ai;Qr("match",1,(function(e,t,n){return[function(t){var n=oi(this),a=null==t?void 0:t[e];return void 0!==a?a.call(t,n):new RegExp(t)[e](String(n))},function(e){var a=n(t,e,this);if(a.done)return a.value;var r=ri(e),i=String(this);if(!r.global)return li(r,i);var o=r.unicode;r.lastIndex=0;for(var s,l=[],c=0;null!==(s=li(r,i));){var _=String(s[0]);l[c]=_,""===_&&(r.lastIndex=si(i,ii(r.lastIndex),o)),c++}return 0===c?null:l}]}));var ci=E,_i=$a,di=Ja.trim;Xn({target:"String",proto:!0,forced:function(e){return ci((function(){return!!_i[e]()||" "!=" "[e]()||_i[e].name!==e}))}("trim")},{trim:function(){return di(this)}});var ui=f,mi=pt,pi=he("match"),gi=function(e){var t;return ui(e)&&(void 0!==(t=e[pi])?!!t:"RegExp"==mi(e))},Ei=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},Si=y,bi=Ei,fi=he("species"),Ti=Qr,Ci=gi,Ni=y,Ri=Q,vi=function(e,t){var n,a=Si(e).constructor;return void 0===a||null==(n=Si(a)[fi])?t:bi(n)},Oi=ei,hi=ln,yi=ai,Ii=Pr,Ai=Rr.UNSUPPORTED_Y,Di=[].push,Mi=Math.min,Li=4294967295;Ti("split",2,(function(e,t,n){var a;return a="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var a=String(Ri(this)),r=void 0===n?Li:n>>>0;if(0===r)return[];if(void 0===e)return[a];if(!Ci(e))return t.call(a,e,r);for(var i,o,s,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),_=0,d=new RegExp(e.source,c+"g");(i=Ii.call(d,a))&&!((o=d.lastIndex)>_&&(l.push(a.slice(_,i.index)),i.length>1&&i.index<a.length&&Di.apply(l,i.slice(1)),s=i[0].length,_=o,l.length>=r));)d.lastIndex===i.index&&d.lastIndex++;return _===a.length?!s&&d.test("")||l.push(""):l.push(a.slice(_)),l.length>r?l.slice(0,r):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=Ri(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,r,n):a.call(String(r),t,n)},function(e,r){var i=n(a,e,this,r,a!==t);if(i.done)return i.value;var o=Ni(e),s=String(this),l=vi(o,RegExp),c=o.unicode,_=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(Ai?"g":"y"),d=new l(Ai?"^(?:"+o.source+")":o,_),u=void 0===r?Li:r>>>0;if(0===u)return[];if(0===s.length)return null===yi(d,s)?[s]:[];for(var m=0,p=0,g=[];p<s.length;){d.lastIndex=Ai?0:p;var E,S=yi(d,Ai?s.slice(p):s);if(null===S||(E=Mi(hi(d.lastIndex+(Ai?p:0)),s.length))===m)p=Oi(s,p,c);else{if(g.push(s.slice(m,p)),g.length===u)return g;for(var b=1;b<=S.length-1;b++)if(g.push(S[b]),g.length===u)return g;p=m=E}}return g.push(s.slice(m)),g}]}),Ai);var wi=j,xi=Math.floor,Pi="".replace,ki=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Ui=/\$([$&'`]|\d{1,2})/g,Fi=Qr,Bi=y,Gi=ln,Yi=rn,Hi=Q,Vi=ei,qi=function(e,t,n,a,r,i){var o=n+e.length,s=a.length,l=Ui;return void 0!==r&&(r=wi(r),l=ki),Pi.call(i,l,(function(i,l){var c;switch(l.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(o);case"<":c=r[l.slice(1,-1)];break;default:var _=+l;if(0===_)return i;if(_>s){var d=xi(_/10);return 0===d?i:d<=s?void 0===a[d-1]?l.charAt(1):a[d-1]+l.charAt(1):i}c=a[_-1]}return void 0===c?"":c}))},zi=ai,Wi=Math.max,$i=Math.min;Fi("replace",2,(function(e,t,n,a){var r=a.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=a.REPLACE_KEEPS_$0,o=r?"$":"$0";return[function(n,a){var r=Hi(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,r,a):t.call(String(r),n,a)},function(e,a){if(!r&&i||"string"==typeof a&&-1===a.indexOf(o)){var s=n(t,e,this,a);if(s.done)return s.value}var l=Bi(e),c=String(this),_="function"==typeof a;_||(a=String(a));var d=l.global;if(d){var u=l.unicode;l.lastIndex=0}for(var m=[];;){var p=zi(l,c);if(null===p)break;if(m.push(p),!d)break;""===String(p[0])&&(l.lastIndex=Vi(c,Gi(l.lastIndex),u))}for(var g,E="",S=0,b=0;b<m.length;b++){p=m[b];for(var f=String(p[0]),T=Wi($i(Yi(p.index),c.length),0),C=[],N=1;N<p.length;N++)C.push(void 0===(g=p[N])?g:String(g));var R=p.groups;if(_){var v=[f].concat(C,T,c);void 0!==R&&v.push(R);var O=String(a.apply(void 0,v))}else O=qi(f,c,T,C,R,a);T>=S&&(E+=c.slice(S,T)+O,S=T+f.length)}return E+c.slice(S)}]}));var Qi={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Ki=Ei,ji=function(e,t,n){if(Ki(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,a){return e.call(t,n,a)};case 3:return function(n,a,r){return e.call(t,n,a,r)}}return function(){return e.apply(t,arguments)}},Xi=f,Zi=Jn,Ji=he("species"),eo=function(e,t){var n;return Zi(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!Zi(n.prototype)?Xi(n)&&null===(n=n[Ji])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},to=ji,no=Vt,ao=j,ro=ln,io=eo,oo=[].push,so=function(e){var t=1==e,n=2==e,a=3==e,r=4==e,i=6==e,o=7==e,s=5==e||i;return function(l,c,_,d){for(var u,m,p=ao(l),g=no(p),E=to(c,_,3),S=ro(g.length),b=0,f=d||io,T=t?f(l,S):n||o?f(l,0):void 0;S>b;b++)if((s||b in g)&&(m=E(u=g[b],b,p),e))if(t)T[b]=m;else if(m)switch(e){case 3:return!0;case 5:return u;case 6:return b;case 2:oo.call(T,u)}else switch(e){case 4:return!1;case 7:oo.call(T,u)}return i?-1:a||r?r:T}},lo={forEach:so(0),map:so(1),filter:so(2),some:so(3),every:so(4),find:so(5),findIndex:so(6),filterOut:so(7)},co=E,_o=function(e,t){var n=[][e];return!!n&&co((function(){n.call(null,t||function(){throw 1},1)}))},uo=lo.forEach,mo=p,po=Qi,go=_o("forEach")?[].forEach:function(e){return uo(this,e,arguments.length>1?arguments[1]:void 0)},Eo=F;for(var So in po){var bo=mo[So],fo=bo&&bo.prototype;if(fo&&fo.forEach!==go)try{Eo(fo,"forEach",go)}catch(Zm){fo.forEach=go}}var To=y,Co=function(e){var t=e.return;if(void 0!==t)return To(t.call(e)).value},No=y,Ro=Co,vo={},Oo=vo,ho=he("iterator"),yo=Array.prototype,Io=function(e){return void 0!==e&&(Oo.Array===e||yo[ho]===e)},Ao=ft,Do=vo,Mo=he("iterator"),Lo=function(e){if(null!=e)return e[Mo]||e["@@iterator"]||Do[Ao(e)]},wo=ji,xo=j,Po=function(e,t,n,a){try{return a?t(No(n)[0],n[1]):t(n)}catch(t){throw Ro(e),t}},ko=Io,Uo=ln,Fo=aa,Bo=Lo,Go=he("iterator"),Yo=!1;try{var Ho=0,Vo={next:function(){return{done:!!Ho++}},return:function(){Yo=!0}};Vo[Go]=function(){return this},Array.from(Vo,(function(){throw 2}))}catch(Zm){}var qo=function(e,t){if(!t&&!Yo)return!1;var n=!1;try{var a={};a[Go]=function(){return{next:function(){return{done:n=!0}}}},e(a)}catch(e){}return n},zo=function(e){var t,n,a,r,i,o,s=xo(e),l="function"==typeof this?this:Array,c=arguments.length,_=c>1?arguments[1]:void 0,d=void 0!==_,u=Bo(s),m=0;if(d&&(_=wo(_,c>2?arguments[2]:void 0,2)),null==u||l==Array&&ko(u))for(n=new l(t=Uo(s.length));t>m;m++)o=d?_(s[m],m):s[m],Fo(n,m,o);else for(i=(r=u.call(s)).next,n=new l;!(a=i.call(r)).done;m++)o=d?Po(r,_,[a.value,m],!0):a.value,Fo(n,m,o);return n.length=m,n};Xn({target:"Array",stat:!0,forced:!qo((function(e){Array.from(e)}))},{from:zo});var Wo,$o,Qo,Ko=!E((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),jo=J,Xo=j,Zo=Ko,Jo=He("IE_PROTO"),es=Object.prototype,ts=Zo?Object.getPrototypeOf:function(e){return e=Xo(e),jo(e,Jo)?e[Jo]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?es:null},ns=E,as=ts,rs=F,is=J,os=he("iterator"),ss=!1;[].keys&&("next"in(Qo=[].keys())?($o=as(as(Qo)))!==Object.prototype&&(Wo=$o):ss=!0),(null==Wo||ns((function(){var e={};return Wo[os].call(e)!==e})))&&(Wo={}),is(Wo,os)||rs(Wo,os,(function(){return this}));var ls={IteratorPrototype:Wo,BUGGY_SAFARI_ITERATORS:ss},cs=b.f,_s=J,ds=he("toStringTag"),us=function(e,t,n){e&&!_s(e=n?e:e.prototype,ds)&&cs(e,ds,{configurable:!0,value:t})},ms=ls.IteratorPrototype,ps=Wa,gs=P,Es=us,Ss=vo,bs=function(){return this},fs=Xn,Ts=function(e,t,n){var a=t+" Iterator";return e.prototype=ps(ms,{next:gs(1,n)}),Es(e,a,!1),Ss[a]=bs,e},Cs=ts,Ns=va,Rs=us,vs=F,Os=Ae.exports,hs=vo,ys=ls.IteratorPrototype,Is=ls.BUGGY_SAFARI_ITERATORS,As=he("iterator"),Ds="keys",Ms="values",Ls="entries",ws=function(){return this},xs=function(e,t,n,a,r,i,o){Ts(n,t,a);var s,l,c,_=function(e){if(e===r&&g)return g;if(!Is&&e in m)return m[e];switch(e){case Ds:case Ms:case Ls:return function(){return new n(this,e)}}return function(){return new n(this)}},d=t+" Iterator",u=!1,m=e.prototype,p=m[As]||m["@@iterator"]||r&&m[r],g=!Is&&p||_(r),E="Array"==t&&m.entries||p;if(E&&(s=Cs(E.call(new e)),ys!==Object.prototype&&s.next&&(Cs(s)!==ys&&(Ns?Ns(s,ys):"function"!=typeof s[As]&&vs(s,As,ws)),Rs(s,d,!0))),r==Ms&&p&&p.name!==Ms&&(u=!0,g=function(){return p.call(this)}),m[As]!==g&&vs(m,As,g),hs[t]=g,r)if(l={values:_(Ms),keys:i?g:_(Ds),entries:_(Ls)},o)for(c in l)(Is||u||!(c in m))&&Os(m,c,l[c]);else fs({target:t,proto:!0,forced:Is||u},l);return l},Ps=Zr.charAt,ks=rt,Us=xs,Fs="String Iterator",Bs=ks.set,Gs=ks.getterFor(Fs);Us(String,"String",(function(e){Bs(this,{type:Fs,string:String(e),index:0})}),(function(){var e,t=Gs(this),n=t.string,a=t.index;return a>=n.length?{value:void 0,done:!0}:(e=Ps(n,a),t.index+=e.length,{value:e,done:!1})}));var Ys=lo.map;Xn({target:"Array",proto:!0,forced:!sa("map")},{map:function(e){return Ys(this,e,arguments.length>1?arguments[1]:void 0)}});var Hs=Xn,Vs=Wt,qs=[].join,zs=Vt!=Object,Ws=_o("join",",");Hs({target:"Array",proto:!0,forced:zs||!Ws},{join:function(e){return qs.call(Vs(this),void 0===e?",":e)}});var $s=Xn,Qs=un,Ks=rn,js=ln,Xs=j,Zs=eo,Js=aa,el=sa("splice"),tl=Math.max,nl=Math.min,al=9007199254740991,rl="Maximum allowed length exceeded";$s({target:"Array",proto:!0,forced:!el},{splice:function(e,t){var n,a,r,i,o,s,l=Xs(this),c=js(l.length),_=Qs(e,c),d=arguments.length;if(0===d?n=a=0:1===d?(n=0,a=c-_):(n=d-2,a=nl(tl(Ks(t),0),c-_)),c+n-a>al)throw TypeError(rl);for(r=Zs(l,a),i=0;i<a;i++)(o=_+i)in l&&Js(r,i,l[o]);if(r.length=a,n<a){for(i=_;i<c-a;i++)s=i+n,(o=i+a)in l?l[s]=l[o]:delete l[s];for(i=c;i>c-a+n;i--)delete l[i-1]}else if(n>a)for(i=c-a;i>_;i--)s=i+n-1,(o=i+a-1)in l?l[s]=l[o]:delete l[s];for(i=0;i<n;i++)l[i+_]=arguments[i+2];return l.length=c-a+n,r}});var il=Wa,ol=b,sl=he("unscopables"),ll=Array.prototype;null==ll[sl]&&ol.f(ll,sl,{configurable:!0,value:il(null)});var cl=function(e){ll[sl][e]=!0},_l=Wt,dl=cl,ul=vo,ml=rt,pl=xs,gl="Array Iterator",El=ml.set,Sl=ml.getterFor(gl),bl=pl(Array,"Array",(function(e,t){El(this,{type:gl,target:_l(e),index:0,kind:t})}),(function(){var e=Sl(this),t=e.target,n=e.kind,a=e.index++;return!t||a>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:t[a],done:!1}:{value:[a,t[a]],done:!1}}),"values");ul.Arguments=ul.Array,dl("keys"),dl("values"),dl("entries");var fl={exports:{}},Tl=!E((function(){return Object.isExtensible(Object.preventExtensions({}))})),Cl=Ve,Nl=f,Rl=J,vl=b.f,Ol=Tl,hl=ne("meta"),yl=0,Il=Object.isExtensible||function(){return!0},Al=function(e){vl(e,hl,{value:{objectID:"O"+ ++yl,weakData:{}}})},Dl=fl.exports={REQUIRED:!1,fastKey:function(e,t){if(!Nl(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!Rl(e,hl)){if(!Il(e))return"F";if(!t)return"E";Al(e)}return e[hl].objectID},getWeakData:function(e,t){if(!Rl(e,hl)){if(!Il(e))return!0;if(!t)return!1;Al(e)}return e[hl].weakData},onFreeze:function(e){return Ol&&Dl.REQUIRED&&Il(e)&&!Rl(e,hl)&&Al(e),e}};Cl[hl]=!0;var Ml=y,Ll=Io,wl=ln,xl=ji,Pl=Lo,kl=Co,Ul=function(e,t){this.stopped=e,this.result=t},Fl=function(e,t,n){var a,r,i,o,s,l,c,_=n&&n.that,d=!(!n||!n.AS_ENTRIES),u=!(!n||!n.IS_ITERATOR),m=!(!n||!n.INTERRUPTED),p=xl(t,_,1+d+m),g=function(e){return a&&kl(a),new Ul(!0,e)},E=function(e){return d?(Ml(e),m?p(e[0],e[1],g):p(e[0],e[1])):m?p(e,g):p(e)};if(u)a=e;else{if("function"!=typeof(r=Pl(e)))throw TypeError("Target is not iterable");if(Ll(r)){for(i=0,o=wl(e.length);o>i;i++)if((s=E(e[i]))&&s instanceof Ul)return s;return new Ul(!1)}a=r.call(e)}for(l=a.next;!(c=l.call(a)).done;){try{s=E(c.value)}catch(e){throw kl(a),e}if("object"==typeof s&&s&&s instanceof Ul)return s}return new Ul(!1)},Bl=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e},Gl=Xn,Yl=p,Hl=Vn,Vl=Ae.exports,ql=fl.exports,zl=Fl,Wl=Bl,$l=f,Ql=E,Kl=qo,jl=us,Xl=ya,Zl=function(e,t,n){var a=-1!==e.indexOf("Map"),r=-1!==e.indexOf("Weak"),i=a?"set":"add",o=Yl[e],s=o&&o.prototype,l=o,c={},_=function(e){var t=s[e];Vl(s,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(r&&!$l(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return r&&!$l(e)?void 0:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(r&&!$l(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(Hl(e,"function"!=typeof o||!(r||s.forEach&&!Ql((function(){(new o).entries().next()})))))l=n.getConstructor(t,e,a,i),ql.REQUIRED=!0;else if(Hl(e,!0)){var d=new l,u=d[i](r?{}:-0,1)!=d,m=Ql((function(){d.has(1)})),p=Kl((function(e){new o(e)})),g=!r&&Ql((function(){for(var e=new o,t=5;t--;)e[i](t,t);return!e.has(-0)}));p||((l=t((function(t,n){Wl(t,l,e);var r=Xl(new o,t,l);return null!=n&&zl(n,r[i],{that:r,AS_ENTRIES:a}),r}))).prototype=s,s.constructor=l),(m||g)&&(_("delete"),_("has"),a&&_("get")),(g||u)&&_(i),r&&s.clear&&delete s.clear}return c[e]=l,Gl({global:!0,forced:l!=o},c),jl(l,e),r||n.setStrong(l,e,a),l},Jl=Ae.exports,ec=se,tc=b,nc=S,ac=he("species"),rc=function(e){var t=ec(e),n=tc.f;nc&&t&&!t[ac]&&n(t,ac,{configurable:!0,get:function(){return this}})},ic=b.f,oc=Wa,sc=function(e,t,n){for(var a in t)Jl(e,a,t[a],n);return e},lc=ji,cc=Bl,_c=Fl,dc=xs,uc=rc,mc=S,pc=fl.exports.fastKey,gc=rt.set,Ec=rt.getterFor,Sc={getConstructor:function(e,t,n,a){var r=e((function(e,i){cc(e,r,t),gc(e,{type:t,index:oc(null),first:void 0,last:void 0,size:0}),mc||(e.size=0),null!=i&&_c(i,e[a],{that:e,AS_ENTRIES:n})})),i=Ec(t),o=function(e,t,n){var a,r,o=i(e),l=s(e,t);return l?l.value=n:(o.last=l={index:r=pc(t,!0),key:t,value:n,previous:a=o.last,next:void 0,removed:!1},o.first||(o.first=l),a&&(a.next=l),mc?o.size++:e.size++,"F"!==r&&(o.index[r]=l)),e},s=function(e,t){var n,a=i(e),r=pc(t);if("F"!==r)return a.index[r];for(n=a.first;n;n=n.next)if(n.key==t)return n};return sc(r.prototype,{clear:function(){for(var e=i(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete t[n.index],n=n.next;e.first=e.last=void 0,mc?e.size=0:this.size=0},delete:function(e){var t=this,n=i(t),a=s(t,e);if(a){var r=a.next,o=a.previous;delete n.index[a.index],a.removed=!0,o&&(o.next=r),r&&(r.previous=o),n.first==a&&(n.first=r),n.last==a&&(n.last=o),mc?n.size--:t.size--}return!!a},forEach:function(e){for(var t,n=i(this),a=lc(e,arguments.length>1?arguments[1]:void 0,3);t=t?t.next:n.first;)for(a(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!s(this,e)}}),sc(r.prototype,n?{get:function(e){var t=s(this,e);return t&&t.value},set:function(e,t){return o(this,0===e?0:e,t)}}:{add:function(e){return o(this,e=0===e?0:e,e)}}),mc&&ic(r.prototype,"size",{get:function(){return i(this).size}}),r},setStrong:function(e,t,n){var a=t+" Iterator",r=Ec(t),i=Ec(a);dc(e,t,(function(e,t){gc(this,{type:a,target:e,state:r(e),kind:t,last:void 0})}),(function(){for(var e=i(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),uc(t)}};Zl("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),Sc);var bc=p,fc=Qi,Tc=bl,Cc=F,Nc=he,Rc=Nc("iterator"),vc=Nc("toStringTag"),Oc=Tc.values;for(var hc in fc){var yc=bc[hc],Ic=yc&&yc.prototype;if(Ic){if(Ic[Rc]!==Oc)try{Cc(Ic,Rc,Oc)}catch(Zm){Ic[Rc]=Oc}if(Ic[vc]||Cc(Ic,vc,hc),fc[hc])for(var Ac in Tc)if(Ic[Ac]!==Tc[Ac])try{Cc(Ic,Ac,Tc[Ac])}catch(Zm){Ic[Ac]=Tc[Ac]}}}Zl("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),Sc);var Dc=Xn,Mc=Tl,Lc=E,wc=f,xc=fl.exports.onFreeze,Pc=Object.freeze;Dc({target:"Object",stat:!0,forced:Lc((function(){Pc(1)})),sham:!Mc},{freeze:function(e){return Pc&&wc(e)?Pc(xc(e)):e}});var kc={},Uc=Wt,Fc=tn.f,Bc={}.toString,Gc="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];kc.f=function(e){return Gc&&"[object Window]"==Bc.call(e)?function(e){try{return Fc(e)}catch(e){return Gc.slice()}}(e):Fc(Uc(e))};var Yc=Xn,Hc=E,Vc=kc.f;Yc({target:"Object",stat:!0,forced:Hc((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:Vc});var qc=Xn,zc=E,Wc=f,$c=Object.isFrozen;qc({target:"Object",stat:!0,forced:zc((function(){$c(1)}))},{isFrozen:function(e){return!Wc(e)||!!$c&&$c(e)}});var Qc=Xn,Kc=E,jc=Jn,Xc=f,Zc=j,Jc=ln,e_=aa,t_=eo,n_=sa,a_=ue,r_=he("isConcatSpreadable"),i_=9007199254740991,o_="Maximum allowed index exceeded",s_=a_>=51||!Kc((function(){var e=[];return e[r_]=!1,e.concat()[0]!==e})),l_=n_("concat"),c_=function(e){if(!Xc(e))return!1;var t=e[r_];return void 0!==t?!!t:jc(e)};Qc({target:"Array",proto:!0,forced:!s_||!l_},{concat:function(e){var t,n,a,r,i,o=Zc(this),s=t_(o,0),l=0;for(t=-1,a=arguments.length;t<a;t++)if(c_(i=-1===t?o:arguments[t])){if(l+(r=Jc(i.length))>i_)throw TypeError(o_);for(n=0;n<r;n++,l++)n in i&&e_(s,l,i[n])}else{if(l>=i_)throw TypeError(o_);e_(s,l++,i)}return s.length=l,s}});var __=S,d_=p,u_=Vn,m_=ya,p_=b.f,g_=tn.f,E_=gi,S_=ht,b_=Rr,f_=Ae.exports,T_=E,C_=rt.enforce,N_=rc,R_=he("match"),v_=d_.RegExp,O_=v_.prototype,h_=/a/g,y_=/a/g,I_=new v_(h_)!==h_,A_=b_.UNSUPPORTED_Y;if(__&&u_("RegExp",!I_||A_||T_((function(){return y_[R_]=!1,v_(h_)!=h_||v_(y_)==y_||"/a/i"!=v_(h_,"i")})))){for(var D_=function(e,t){var n,a=this instanceof D_,r=E_(e),i=void 0===t;if(!a&&r&&e.constructor===D_&&i)return e;I_?r&&!i&&(e=e.source):e instanceof D_&&(i&&(t=S_.call(e)),e=e.source),A_&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var o=m_(I_?new v_(e,t):v_(e,t),a?this:O_,D_);A_&&n&&(C_(o).sticky=!0);return o},M_=function(e){e in D_||p_(D_,e,{configurable:!0,get:function(){return v_[e]},set:function(t){v_[e]=t}})},L_=g_(v_),w_=0;L_.length>w_;)M_(L_[w_++]);O_.constructor=D_,D_.prototype=O_,f_(d_,"RegExp",D_)}N_("RegExp");var x_=S,P_=E,k_=Da,U_=hn,F_=Ut,B_=j,G_=Vt,Y_=Object.assign,H_=Object.defineProperty,V_=!Y_||P_((function(){if(x_&&1!==Y_({b:1},Y_(H_({},"a",{enumerable:!0,get:function(){H_(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),a="abcdefghijklmnopqrst";return e[n]=7,a.split("").forEach((function(e){t[e]=e})),7!=Y_({},e)[n]||k_(Y_({},t)).join("")!=a}))?function(e,t){for(var n=B_(e),a=arguments.length,r=1,i=U_.f,o=F_.f;a>r;)for(var s,l=G_(arguments[r++]),c=i?k_(l).concat(i(l)):k_(l),_=c.length,d=0;_>d;)s=c[d++],x_&&!o.call(l,s)||(n[s]=l[s]);return n}:Y_;Xn({target:"Object",stat:!0,forced:Object.assign!==V_},{assign:V_});var q_=j,z_=Da;Xn({target:"Object",stat:!0,forced:E((function(){z_(1)}))},{keys:function(e){return z_(q_(e))}});var W_=Sn.includes,$_=cl;Xn({target:"Array",proto:!0},{includes:function(e){return W_(this,e,arguments.length>1?arguments[1]:void 0)}}),$_("includes");var Q_=Xn,K_=lo.findIndex,j_=cl,X_="findIndex",Z_=!0;X_ in[]&&Array(1).findIndex((function(){Z_=!1})),Q_({target:"Array",proto:!0,forced:Z_},{findIndex:function(e){return K_(this,e,arguments.length>1?arguments[1]:void 0)}}),j_(X_);var J_=gi,ed=function(e){if(J_(e))throw TypeError("The method doesn't accept regular expressions");return e},td=he("match"),nd=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[td]=!1,"/./"[e](t)}catch(e){}}return!1},ad=ed,rd=Q;Xn({target:"String",proto:!0,forced:!nd("includes")},{includes:function(e){return!!~String(rd(this)).indexOf(ad(e),arguments.length>1?arguments[1]:void 0)}});var id={},od=he;id.f=od;var sd=ae,ld=J,cd=id,_d=b.f,dd=Xn,ud=p,md=se,pd=S,gd=ge,Ed=Ee,Sd=E,bd=J,fd=Jn,Td=f,Cd=y,Nd=j,Rd=Wt,vd=A,Od=P,hd=Wa,yd=Da,Id=tn,Ad=kc,Dd=hn,Md=kt,Ld=b,wd=Ut,xd=F,Pd=Ae.exports,kd=g.exports,Ud=Ve,Fd=ne,Bd=he,Gd=id,Yd=function(e){var t=sd.Symbol||(sd.Symbol={});ld(t,e)||_d(t,e,{value:cd.f(e)})},Hd=us,Vd=rt,qd=lo.forEach,zd=He("hidden"),Wd="Symbol",$d=Bd("toPrimitive"),Qd=Vd.set,Kd=Vd.getterFor(Wd),jd=Object.prototype,Xd=ud.Symbol,Zd=md("JSON","stringify"),Jd=Md.f,eu=Ld.f,tu=Ad.f,nu=wd.f,au=kd("symbols"),ru=kd("op-symbols"),iu=kd("string-to-symbol-registry"),ou=kd("symbol-to-string-registry"),su=kd("wks"),lu=ud.QObject,cu=!lu||!lu.prototype||!lu.prototype.findChild,_u=pd&&Sd((function(){return 7!=hd(eu({},"a",{get:function(){return eu(this,"a",{value:7}).a}})).a}))?function(e,t,n){var a=Jd(jd,t);a&&delete jd[t],eu(e,t,n),a&&e!==jd&&eu(jd,t,a)}:eu,du=function(e,t){var n=au[e]=hd(Xd.prototype);return Qd(n,{type:Wd,tag:e,description:t}),pd||(n.description=t),n},uu=Ed?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof Xd},mu=function(e,t,n){e===jd&&mu(ru,t,n),Cd(e);var a=vd(t,!0);return Cd(n),bd(au,a)?(n.enumerable?(bd(e,zd)&&e[zd][a]&&(e[zd][a]=!1),n=hd(n,{enumerable:Od(0,!1)})):(bd(e,zd)||eu(e,zd,Od(1,{})),e[zd][a]=!0),_u(e,a,n)):eu(e,a,n)},pu=function(e,t){Cd(e);var n=Rd(t),a=yd(n).concat(bu(n));return qd(a,(function(t){pd&&!gu.call(n,t)||mu(e,t,n[t])})),e},gu=function(e){var t=vd(e,!0),n=nu.call(this,t);return!(this===jd&&bd(au,t)&&!bd(ru,t))&&(!(n||!bd(this,t)||!bd(au,t)||bd(this,zd)&&this[zd][t])||n)},Eu=function(e,t){var n=Rd(e),a=vd(t,!0);if(n!==jd||!bd(au,a)||bd(ru,a)){var r=Jd(n,a);return!r||!bd(au,a)||bd(n,zd)&&n[zd][a]||(r.enumerable=!0),r}},Su=function(e){var t=tu(Rd(e)),n=[];return qd(t,(function(e){bd(au,e)||bd(Ud,e)||n.push(e)})),n},bu=function(e){var t=e===jd,n=tu(t?ru:Rd(e)),a=[];return qd(n,(function(e){!bd(au,e)||t&&!bd(jd,e)||a.push(au[e])})),a};(gd||(Pd((Xd=function(){if(this instanceof Xd)throw TypeError("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,t=Fd(e),n=function(e){this===jd&&n.call(ru,e),bd(this,zd)&&bd(this[zd],t)&&(this[zd][t]=!1),_u(this,t,Od(1,e))};return pd&&cu&&_u(jd,t,{configurable:!0,set:n}),du(t,e)}).prototype,"toString",(function(){return Kd(this).tag})),Pd(Xd,"withoutSetter",(function(e){return du(Fd(e),e)})),wd.f=gu,Ld.f=mu,Md.f=Eu,Id.f=Ad.f=Su,Dd.f=bu,Gd.f=function(e){return du(Bd(e),e)},pd&&(eu(Xd.prototype,"description",{configurable:!0,get:function(){return Kd(this).description}}),Pd(jd,"propertyIsEnumerable",gu,{unsafe:!0}))),dd({global:!0,wrap:!0,forced:!gd,sham:!gd},{Symbol:Xd}),qd(yd(su),(function(e){Yd(e)})),dd({target:Wd,stat:!0,forced:!gd},{for:function(e){var t=String(e);if(bd(iu,t))return iu[t];var n=Xd(t);return iu[t]=n,ou[n]=t,n},keyFor:function(e){if(!uu(e))throw TypeError(e+" is not a symbol");if(bd(ou,e))return ou[e]},useSetter:function(){cu=!0},useSimple:function(){cu=!1}}),dd({target:"Object",stat:!0,forced:!gd,sham:!pd},{create:function(e,t){return void 0===t?hd(e):pu(hd(e),t)},defineProperty:mu,defineProperties:pu,getOwnPropertyDescriptor:Eu}),dd({target:"Object",stat:!0,forced:!gd},{getOwnPropertyNames:Su,getOwnPropertySymbols:bu}),dd({target:"Object",stat:!0,forced:Sd((function(){Dd.f(1)}))},{getOwnPropertySymbols:function(e){return Dd.f(Nd(e))}}),Zd)&&dd({target:"JSON",stat:!0,forced:!gd||Sd((function(){var e=Xd();return"[null]"!=Zd([e])||"{}"!=Zd({a:e})||"{}"!=Zd(Object(e))}))},{stringify:function(e,t,n){for(var a,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(a=t,(Td(t)||void 0!==e)&&!uu(e))return fd(t)||(t=function(e,t){if("function"==typeof a&&(t=a.call(this,e,t)),!uu(t))return t}),r[1]=t,Zd.apply(null,r)}});Xd.prototype[$d]||xd(Xd.prototype,$d,Xd.prototype.valueOf),Hd(Xd,Wd),Ud[zd]=!0;var fu=Xn,Tu=S,Cu=p,Nu=J,Ru=f,vu=b.f,Ou=Pn,hu=Cu.Symbol;if(Tu&&"function"==typeof hu&&(!("description"in hu.prototype)||void 0!==hu().description)){var yu={},Iu=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),t=this instanceof Iu?new hu(e):void 0===e?hu():hu(e);return""===e&&(yu[t]=!0),t};Ou(Iu,hu);var Au=Iu.prototype=hu.prototype;Au.constructor=Iu;var Du=Au.toString,Mu="Symbol(test)"==String(hu("test")),Lu=/^Symbol\((.*)\)[^)]+$/;vu(Au,"description",{configurable:!0,get:function(){var e=Ru(this)?this.valueOf():this,t=Du.call(e);if(Nu(yu,e))return"";var n=Mu?t.slice(7,-1):t.replace(Lu,"$1");return""===n?void 0:n}}),fu({global:!0,forced:!0},{Symbol:Iu})}var wu=Xn,xu=lo.find,Pu=cl,ku="find",Uu=!0;ku in[]&&Array(1).find((function(){Uu=!1})),wu({target:"Array",proto:!0,forced:Uu},{find:function(e){return xu(this,e,arguments.length>1?arguments[1]:void 0)}}),Pu(ku);var Fu,Bu=Xn,Gu=kt.f,Yu=ln,Hu=ed,Vu=Q,qu=nd,zu="".startsWith,Wu=Math.min,$u=qu("startsWith");Bu({target:"String",proto:!0,forced:!!($u||(Fu=Gu(String.prototype,"startsWith"),!Fu||Fu.writable))&&!$u},{startsWith:function(e){var t=String(Vu(this));Hu(e);var n=Yu(Wu(arguments.length>1?arguments[1]:void 0,t.length)),a=String(e);return zu?zu.call(t,a,n):t.slice(n,n+a.length)===a}});var Qu=lo.filter;Xn({target:"Array",proto:!0,forced:!sa("filter")},{filter:function(e){return Qu(this,e,arguments.length>1?arguments[1]:void 0)}});var Ku=S,ju=b.f,Xu=Function.prototype,Zu=Xu.toString,Ju=/^\s*function ([^ (]*)/,em="name";function tm(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((function(n){var a=t[n];"object"!=e(a)||Object.isFrozen(a)||tm(a)})),t}Ku&&!(em in Xu)&&ju(Xu,em,{configurable:!0,get:function(){try{return Zu.call(this).match(Ju)[1]}catch(e){return""}}});var nm=tm,am=tm;nm.default=am;var rm=function(){function e(n){t(this,e),void 0===n.data&&(n.data={}),this.data=n.data,this.isMatchIgnored=!1}return a(e,[{key:"ignoreMatch",value:function(){this.isMatchIgnored=!0}}]),e}();function im(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function om(e){var t=Object.create(null);for(var n in e)t[n]=e[n];for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return r.forEach((function(e){for(var n in e)t[n]=e[n]})),t}var sm=function(e){return!!e.kind},lm=function(){function e(n,a){t(this,e),this.buffer="",this.classPrefix=a.classPrefix,n.walk(this)}return a(e,[{key:"addText",value:function(e){this.buffer+=im(e)}},{key:"openNode",value:function(e){if(sm(e)){var t=e.kind;e.sublanguage||(t="".concat(this.classPrefix).concat(t)),this.span(t)}}},{key:"closeNode",value:function(e){sm(e)&&(this.buffer+="</span>")}},{key:"value",value:function(){return this.buffer}},{key:"span",value:function(e){this.buffer+='<span class="'.concat(e,'">')}}]),e}(),cm=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(r,e);var n=s(r);function r(e){var a;return t(this,r),(a=n.call(this)).options=e,a}return a(r,[{key:"addKeyword",value:function(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}},{key:"addText",value:function(e){""!==e&&this.add(e)}},{key:"addSublanguage",value:function(e,t){var n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)}},{key:"toHTML",value:function(){return new lm(this,this.options).value()}},{key:"finalize",value:function(){return!0}}]),r}(function(){function e(){t(this,e),this.rootNode={children:[]},this.stack=[this.rootNode]}return a(e,[{key:"top",get:function(){return this.stack[this.stack.length-1]}},{key:"root",get:function(){return this.rootNode}},{key:"add",value:function(e){this.top.children.push(e)}},{key:"openNode",value:function(e){var t={kind:e,children:[]};this.add(t),this.stack.push(t)}},{key:"closeNode",value:function(){if(this.stack.length>1)return this.stack.pop()}},{key:"closeAllNodes",value:function(){for(;this.closeNode(););}},{key:"toJSON",value:function(){return JSON.stringify(this.rootNode,null,4)}},{key:"walk",value:function(e){return this.constructor._walk(e,this.rootNode)}}],[{key:"_walk",value:function(e,t){var n=this;return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach((function(t){return n._walk(e,t)})),e.closeNode(t)),e}},{key:"_collapse",value:function(t){"string"!=typeof t&&t.children&&(t.children.every((function(e){return"string"==typeof e}))?t.children=[t.children.join("")]:t.children.forEach((function(t){e._collapse(t)})))}}]),e}());function _m(e){return e?"string"==typeof e?e:e.source:null}function dm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return _m(e)})).join("");return a}function um(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return _m(e)})).join("|")+")";return a}var mm=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;var pm="[a-zA-Z]\\w*",gm="[a-zA-Z_]\\w*",Em="\\b\\d+(\\.\\d+)?",Sm="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",bm="\\b(0b[01]+)",fm={begin:"\\\\[\\s\\S]",relevance:0},Tm={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[fm]},Cm={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[fm]},Nm={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Rm=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=om({className:"comment",begin:e,end:t,contains:[]},n);return a.contains.push(Nm),a.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),a},vm=Rm("//","$"),Om=Rm("/\\*","\\*/"),hm=Rm("#","$"),ym={className:"number",begin:Em,relevance:0},Im={className:"number",begin:Sm,relevance:0},Am={className:"number",begin:bm,relevance:0},Dm={className:"number",begin:Em+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},Mm={begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[fm,{begin:/\[/,end:/\]/,relevance:0,contains:[fm]}]}]},Lm={className:"title",begin:pm,relevance:0},wm={className:"title",begin:gm,relevance:0},xm={begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},Pm=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:pm,UNDERSCORE_IDENT_RE:gm,NUMBER_RE:Em,C_NUMBER_RE:Sm,BINARY_NUMBER_RE:bm,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=/^#![ ]*\//;return e.binary&&(e.begin=dm(t,/.*\b/,e.binary,/\b.*/)),om({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":function(e,t){0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:fm,APOS_STRING_MODE:Tm,QUOTE_STRING_MODE:Cm,PHRASAL_WORDS_MODE:Nm,COMMENT:Rm,C_LINE_COMMENT_MODE:vm,C_BLOCK_COMMENT_MODE:Om,HASH_COMMENT_MODE:hm,NUMBER_MODE:ym,C_NUMBER_MODE:Im,BINARY_NUMBER_MODE:Am,CSS_NUMBER_MODE:Dm,REGEXP_MODE:Mm,TITLE_MODE:Lm,UNDERSCORE_TITLE_MODE:wm,METHOD_GUARD:xm,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":function(e,t){t.data._beginMatch=e[1]},"on:end":function(e,t){t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}});function km(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function Um(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=km,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function Fm(e,t){Array.isArray(e.illegal)&&(e.illegal=um.apply(void 0,c(e.illegal)))}function Bm(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function Gm(e,t){void 0===e.relevance&&(e.relevance=1)}var Ym=["of","and","for","in","not","or","if","then","parent","list","value"],Hm="keyword";function Vm(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Hm,a={};return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((function(n){Object.assign(a,Vm(e[n],t,n))})),a;function r(e,n){t&&(n=n.map((function(e){return e.toLowerCase()}))),n.forEach((function(t){var n=t.split("|");a[n[0]]=[e,qm(n[0],n[1])]}))}}function qm(e,t){return t?Number(t):function(e){return Ym.includes(e.toLowerCase())}(e)?0:1}function zm(n,r){function i(e,t){return new RegExp(_m(e),"m"+(n.case_insensitive?"i":"")+(t?"g":""))}r.plugins;var o=function(){function e(){t(this,e),this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}return a(e,[{key:"addRule",value:function(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=function(e){return new RegExp(e.toString()+"|").exec("").length-1}(e)+1}},{key:"compile",value:function(){0===this.regexes.length&&(this.exec=function(){return null});var e=this.regexes.map((function(e){return e[1]}));this.matcherRe=i(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"|",n=0;return e.map((function(e){for(var t=n+=1,a=_m(e),r="";a.length>0;){var i=mm.exec(a);if(!i){r+=a;break}r+=a.substring(0,i.index),a=a.substring(i.index+i[0].length),"\\"===i[0][0]&&i[1]?r+="\\"+String(Number(i[1])+t):(r+=i[0],"("===i[0]&&n++)}return r})).map((function(e){return"(".concat(e,")")})).join(t)}(e),!0),this.lastIndex=0}},{key:"exec",value:function(e){this.matcherRe.lastIndex=this.lastIndex;var t=this.matcherRe.exec(e);if(!t)return null;var n=t.findIndex((function(e,t){return t>0&&void 0!==e})),a=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,a)}}]),e}(),s=function(){function e(){t(this,e),this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}return a(e,[{key:"getMatcher",value:function(e){if(this.multiRegexes[e])return this.multiRegexes[e];var t=new o;return this.rules.slice(e).forEach((function(e){var n=l(e,2),a=n[0],r=n[1];return t.addRule(a,r)})),t.compile(),this.multiRegexes[e]=t,t}},{key:"resumingScanAtSamePosition",value:function(){return 0!==this.regexIndex}},{key:"considerAll",value:function(){this.regexIndex=0}},{key:"addRule",value:function(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}},{key:"exec",value:function(e){var t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;var n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{var a=this.getMatcher(0);a.lastIndex=this.lastIndex+1,n=a.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}]),e}();if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=om(n.classNameAliases||{}),function t(a,r){var o,l=a;if(a.isCompiled)return l;[Bm].forEach((function(e){return e(a,r)})),n.compilerExtensions.forEach((function(e){return e(a,r)})),a.__beforeBegin=null,[Um,Fm,Gm].forEach((function(e){return e(a,r)})),a.isCompiled=!0;var _=null;if("object"===e(a.keywords)&&(_=a.keywords.$pattern,delete a.keywords.$pattern),a.keywords&&(a.keywords=Vm(a.keywords,n.case_insensitive)),a.lexemes&&_)throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return _=_||a.lexemes||/\w+/,l.keywordPatternRe=i(_,!0),r&&(a.begin||(a.begin=/\B|\b/),l.beginRe=i(a.begin),a.endSameAsBegin&&(a.end=a.begin),a.end||a.endsWithParent||(a.end=/\B|\b/),a.end&&(l.endRe=i(a.end)),l.terminatorEnd=_m(a.end)||"",a.endsWithParent&&r.terminatorEnd&&(l.terminatorEnd+=(a.end?"|":"")+r.terminatorEnd)),a.illegal&&(l.illegalRe=i(a.illegal)),a.contains||(a.contains=[]),a.contains=(o=[]).concat.apply(o,c(a.contains.map((function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return om(e,{variants:null},t)})));if(e.cachedVariants)return e.cachedVariants;if(Wm(e))return om(e,{starts:e.starts?om(e.starts):null});if(Object.isFrozen(e))return om(e);return e}("self"===e?a:e)})))),a.contains.forEach((function(e){t(e,l)})),a.starts&&t(a.starts,r),l.matcher=function(e){var t=new s;return e.contains.forEach((function(e){return t.addRule(e.begin,{rule:e,type:"begin"})})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(l),l}(n)}function Wm(e){return!!e&&(e.endsWithParent||Wm(e.starts))}function $m(e){var t={props:["language","code","autodetect"],data:function(){return{detectedLanguage:"",unknownLanguage:!1}},computed:{className:function(){return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted:function(){if(!this.autoDetect&&!e.getLanguage(this.language))return console.warn('The language "'.concat(this.language,'" you specified could not be found.')),this.unknownLanguage=!0,im(this.code);var t={};return this.autoDetect?(t=e.highlightAuto(this.code),this.detectedLanguage=t.language):(t=e.highlight(this.language,this.code,this.ignoreIllegals),this.detectedLanguage=this.language),t.value},autoDetect:function(){return!this.language||(e=this.autodetect,Boolean(e||""===e));var e},ignoreIllegals:function(){return!0}},render:function(e){return e("pre",{},[e("code",{class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{Component:t,VuePlugin:{install:function(e){e.component("highlightjs",t)}}}}var Qm={"after:highlightElement":function(e){var t=e.el,n=e.result,a=e.text,r=jm(t);if(r.length){var i=document.createElement("div");i.innerHTML=n.value,n.value=function(e,t,n){var a=0,r="",i=[];function o(){return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset<t[0].offset?e:t:"start"===t[0].event?e:t:e.length?e:t}function s(e){function t(e){return" "+e.nodeName+'="'+im(e.value)+'"'}r+="<"+Km(e)+[].map.call(e.attributes,t).join("")+">"}function l(e){r+="</"+Km(e)+">"}function c(e){("start"===e.event?s:l)(e.node)}for(;e.length||t.length;){var _=o();if(r+=im(n.substring(a,_[0].offset)),a=_[0].offset,_===e){i.reverse().forEach(l);do{c(_.splice(0,1)[0]),_=o()}while(_===e&&_.length&&_[0].offset===a);i.reverse().forEach(s)}else"start"===_[0].event?i.push(_[0].node):i.pop(),c(_.splice(0,1)[0])}return r+im(n.substr(a))}(r,jm(i),a)}}};function Km(e){return e.nodeName.toLowerCase()}function jm(e){var t=[];return function e(n,a){for(var r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?a+=r.nodeValue.length:1===r.nodeType&&(t.push({event:"start",offset:a,node:r}),a=e(r,a),Km(r).match(/br|hr|img|input/)||t.push({event:"stop",offset:a,node:r}));return a}(e,0),t}var Xm={},Zm=function(e){console.error(e)},Jm=function(e){for(var t,n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];(t=console).log.apply(t,["WARN: ".concat(e)].concat(a))},ep=function(e,t){Xm["".concat(e,"/").concat(t)]||(console.log("Deprecated as of ".concat(e,". ").concat(t)),Xm["".concat(e,"/").concat(t)]=!0)},tp=im,np=om,ap=Symbol("nomatch"),rp=function(t){var n=Object.create(null),a=Object.create(null),r=[],i=!0,o=/(^(<[^>]+>|\t|)+|\n)/gm,s="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]},_={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:cm};function d(e){return _.noHighlightRe.test(e)}function u(t,n,a,r){var i="",o="";"object"===e(n)?(i=t,a=n.ignoreIllegals,o=n.language,r=void 0):(ep("10.7.0","highlight(lang, code, ...args) has been deprecated."),ep("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),o=t,i=n);var s={code:i,language:o};v("before:highlight",s);var l=s.result?s.result:m(s.language,s.code,a,r);return l.code=s.code,v("after:highlight",l),l}function m(e,t,a,o){function c(e,t){var n=N.case_insensitive?t[0].toLowerCase():t[0];return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]}function d(){null!=O.subLanguage?function(){if(""!==I){var e=null;if("string"==typeof O.subLanguage){if(!n[O.subLanguage])return void y.addText(I);e=m(O.subLanguage,I,!0,h[O.subLanguage]),h[O.subLanguage]=e.top}else e=p(I,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(A+=e.relevance),y.addSublanguage(e.emitter,e.language)}}():function(){if(O.keywords){var e=0;O.keywordPatternRe.lastIndex=0;for(var t=O.keywordPatternRe.exec(I),n="";t;){n+=I.substring(e,t.index);var a=c(O,t);if(a){var r=l(a,2),i=r[0],o=r[1];if(y.addText(n),n="",A+=o,i.startsWith("_"))n+=t[0];else{var s=N.classNameAliases[i]||i;y.addKeyword(t[0],s)}}else n+=t[0];e=O.keywordPatternRe.lastIndex,t=O.keywordPatternRe.exec(I)}n+=I.substr(e),y.addText(n)}else y.addText(I)}(),I=""}function u(e){return e.className&&y.openNode(N.classNameAliases[e.className]||e.className),O=Object.create(e,{parent:{value:O}})}function g(e,t,n){var a=function(e,t){var n=e&&e.exec(t);return n&&0===n.index}(e.endRe,n);if(a){if(e["on:end"]){var r=new rm(e);e["on:end"](t,r),r.isMatchIgnored&&(a=!1)}if(a){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return g(e.parent,t,n)}function E(e){return 0===O.matcher.regexIndex?(I+=e[0],1):(L=!0,0)}function S(e){for(var t=e[0],n=e.rule,a=new rm(n),r=0,i=[n.__beforeBegin,n["on:begin"]];r<i.length;r++){var o=i[r];if(o&&(o(e,a),a.isMatchIgnored))return E(t)}return n&&n.endSameAsBegin&&(n.endRe=new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")),n.skip?I+=t:(n.excludeBegin&&(I+=t),d(),n.returnBegin||n.excludeBegin||(I=t)),u(n),n.returnBegin?0:t.length}function b(e){var n=e[0],a=t.substr(e.index),r=g(O,e,a);if(!r)return ap;var i=O;i.skip?I+=n:(i.returnEnd||i.excludeEnd||(I+=n),d(),i.excludeEnd&&(I=n));do{O.className&&y.closeNode(),O.skip||O.subLanguage||(A+=O.relevance),O=O.parent}while(O!==r.parent);return r.starts&&(r.endSameAsBegin&&(r.starts.endRe=r.endRe),u(r.starts)),i.returnEnd?0:n.length}var f={};function T(n,r){var o=r&&r[0];if(I+=n,null==o)return d(),0;if("begin"===f.type&&"end"===r.type&&f.index===r.index&&""===o){if(I+=t.slice(r.index,r.index+1),!i){var s=new Error("0 width match regex");throw s.languageName=e,s.badRule=f.rule,s}return 1}if(f=r,"begin"===r.type)return S(r);if("illegal"===r.type&&!a){var l=new Error('Illegal lexeme "'+o+'" for mode "'+(O.className||"<unnamed>")+'"');throw l.mode=O,l}if("end"===r.type){var c=b(r);if(c!==ap)return c}if("illegal"===r.type&&""===o)return 1;if(M>1e5&&M>3*r.index)throw new Error("potential infinite loop, way more iterations than matches");return I+=o,o.length}var N=C(e);if(!N)throw Zm(s.replace("{}",e)),new Error('Unknown language: "'+e+'"');var R=zm(N,{plugins:r}),v="",O=o||R,h={},y=new _.__emitter(_);!function(){for(var e=[],t=O;t!==N;t=t.parent)t.className&&e.unshift(t.className);e.forEach((function(e){return y.openNode(e)}))}();var I="",A=0,D=0,M=0,L=!1;try{for(O.matcher.considerAll();;){M++,L?L=!1:O.matcher.considerAll(),O.matcher.lastIndex=D;var w=O.matcher.exec(t);if(!w)break;var x=T(t.substring(D,w.index),w);D=w.index+x}return T(t.substr(D)),y.closeAllNodes(),y.finalize(),v=y.toHTML(),{relevance:Math.floor(A),value:v,language:e,illegal:!1,emitter:y,top:O}}catch(n){if(n.message&&n.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:n.message,context:t.slice(D-100,D+100),mode:n.mode},sofar:v,relevance:0,value:tp(t),emitter:y};if(i)return{illegal:!1,relevance:0,value:tp(t),emitter:y,language:e,top:O,errorRaised:n};throw n}}function p(e,t){t=t||_.languages||Object.keys(n);var a=function(e){var t={relevance:0,emitter:new _.__emitter(_),value:tp(e),illegal:!1,top:c};return t.emitter.addText(e),t}(e),r=t.filter(C).filter(R).map((function(t){return m(t,e,!1)}));r.unshift(a);var i=l(r.sort((function(e,t){if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(C(e.language).supersetOf===t.language)return 1;if(C(t.language).supersetOf===e.language)return-1}return 0})),2),o=i[0],s=i[1],d=o;return d.second_best=s,d}var g={"before:highlightElement":function(e){var t=e.el;_.useBR&&(t.innerHTML=t.innerHTML.replace(/\n/g,"").replace(/<br[ /]*>/g,"\n"))},"after:highlightElement":function(e){var t=e.result;_.useBR&&(t.value=t.value.replace(/\n/g,"<br>"))}},E=/^(<[^>]+>|\t)+/gm,S={"after:highlightElement":function(e){var t=e.result;_.tabReplace&&(t.value=t.value.replace(E,(function(e){return e.replace(/\t/g,_.tabReplace)})))}};function b(e){var t=function(e){var t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";var n=_.languageDetectRe.exec(t);if(n){var a=C(n[1]);return a||(Jm(s.replace("{}",n[1])),Jm("Falling back to no-highlight mode for this block.",e)),a?n[1]:"no-highlight"}return t.split(/\s+/).find((function(e){return d(e)||C(e)}))}(e);if(!d(t)){v("before:highlightElement",{el:e,language:t});var n=e.textContent,r=t?u(n,{language:t,ignoreIllegals:!0}):p(n);v("after:highlightElement",{el:e,result:r,text:n}),e.innerHTML=r.value,function(e,t,n){var r=t?a[t]:n;e.classList.add("hljs"),r&&e.classList.add(r)}(e,t,r.language),e.result={language:r.language,re:r.relevance,relavance:r.relevance},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.relevance,relavance:r.second_best.relevance})}}var f=!1;function T(){"loading"!==document.readyState?document.querySelectorAll("pre code").forEach(b):f=!0}function C(e){return e=(e||"").toLowerCase(),n[e]||n[a[e]]}function N(e,t){var n=t.languageName;"string"==typeof e&&(e=[e]),e.forEach((function(e){a[e.toLowerCase()]=n}))}function R(e){var t=C(e);return t&&!t.disableAutodetect}function v(e,t){var n=e;r.forEach((function(e){e[n]&&e[n](t)}))}for(var O in"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(function(){f&&T()}),!1),Object.assign(t,{highlight:u,highlightAuto:p,highlightAll:T,fixMarkup:function(e){return ep("10.2.0","fixMarkup will be removed entirely in v11.0"),ep("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"),function(e){return _.tabReplace||_.useBR?e.replace(o,(function(e){return"\n"===e?_.useBR?"<br>":e:_.tabReplace?e.replace(/\t/g,_.tabReplace):e})):e}(e)},highlightElement:b,highlightBlock:function(e){return ep("10.7.0","highlightBlock will be removed entirely in v12.0"),ep("10.7.0","Please use highlightElement now."),b(e)},configure:function(e){e.useBR&&(ep("10.3.0","'useBR' will be removed entirely in v11.0"),ep("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")),_=np(_,e)},initHighlighting:function e(){e.called||(e.called=!0,ep("10.6.0","initHighlighting() is deprecated. Use highlightAll() instead."),document.querySelectorAll("pre code").forEach(b))},initHighlightingOnLoad:function(){ep("10.6.0","initHighlightingOnLoad() is deprecated. Use highlightAll() instead."),f=!0},registerLanguage:function(e,a){var r=null;try{r=a(t)}catch(t){if(Zm("Language definition for '{}' could not be registered.".replace("{}",e)),!i)throw t;Zm(t),r=c}r.name||(r.name=e),n[e]=r,r.rawDefinition=a.bind(null,t),r.aliases&&N(r.aliases,{languageName:e})},unregisterLanguage:function(e){delete n[e];for(var t=0,r=Object.keys(a);t<r.length;t++){var i=r[t];a[i]===e&&delete a[i]}},listLanguages:function(){return Object.keys(n)},getLanguage:C,registerAliases:N,requireLanguage:function(e){ep("10.4.0","requireLanguage will be removed entirely in v11."),ep("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844");var t=C(e);if(t)return t;throw new Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:R,inherit:np,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=function(t){e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=function(t){e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),r.push(e)},vuePlugin:$m(t).VuePlugin}),t.debugMode=function(){i=!1},t.safeMode=function(){i=!0},t.versionString="10.7.2",Pm)"object"===e(Pm[O])&&nm(Pm[O]);return Object.assign(t,Pm),t.addPlugin(g),t.addPlugin(Qm),t.addPlugin(S),t}({});var ip=function(e){var t="[A-Za-zА-Яа-яёЁ_][A-Za-zА-Яа-яёЁ_0-9]+",n="далее возврат вызватьисключение выполнить для если и из или иначе иначеесли исключение каждого конецесли конецпопытки конеццикла не новый перейти перем по пока попытка прервать продолжить тогда цикл экспорт ",a="null истина ложь неопределено",r=e.inherit(e.NUMBER_MODE),i={className:"string",begin:'"|\\|',end:'"|$',contains:[{begin:'""'}]},o={begin:"'",end:"'",excludeBegin:!0,excludeEnd:!0,contains:[{className:"number",begin:"\\d{4}([\\.\\\\/:-]?\\d{2}){0,5}"}]},s=e.inherit(e.C_LINE_COMMENT_MODE);return{name:"1C:Enterprise",case_insensitive:!0,keywords:{$pattern:t,keyword:n,built_in:"разделительстраниц разделительстрок символтабуляции ansitooem oemtoansi ввестивидсубконто ввестиперечисление ввестипериод ввестиплансчетов выбранныйплансчетов датагод датамесяц датачисло заголовоксистемы значениевстроку значениеизстроки каталогиб каталогпользователя кодсимв конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лог лог10 максимальноеколичествосубконто названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найтиссылки началопериодаби началостандартногоинтервала начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода обработкаожидания основнойжурналрасчетов основнойплансчетов основнойязык очиститьокносообщений периодстр получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта префиксавтонумерации пропись пустоезначение разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо симв создатьобъект статусвозврата стрколичествострок сформироватьпозициюдокумента счетпокоду текущеевремя типзначения типзначениястр установитьтана установитьтапо фиксшаблон шаблон acos asin atan base64значение base64строка cos exp log log10 pow sin sqrt tan xmlзначение xmlстрока xmlтип xmlтипзнч активноеокно безопасныйрежим безопасныйрежимразделенияданных булево ввестидату ввестизначение ввестистроку ввестичисло возможностьчтенияxml вопрос восстановитьзначение врег выгрузитьжурналрегистрации выполнитьобработкуоповещения выполнитьпроверкуправдоступа вычислить год данныеформывзначение дата день деньгода деньнедели добавитьмесяц заблокироватьданныедляредактирования заблокироватьработупользователя завершитьработусистемы загрузитьвнешнююкомпоненту закрытьсправку записатьjson записатьxml записатьдатуjson записьжурналарегистрации заполнитьзначениясвойств запроситьразрешениепользователя запуститьприложение запуститьсистему зафиксироватьтранзакцию значениевданныеформы значениевстрокувнутр значениевфайл значениезаполнено значениеизстрокивнутр значениеизфайла изxmlтипа импортмоделиxdto имякомпьютера имяпользователя инициализироватьпредопределенныеданные информацияобошибке каталогбиблиотекимобильногоустройства каталогвременныхфайлов каталогдокументов каталогпрограммы кодироватьстроку кодлокализацииинформационнойбазы кодсимвола командасистемы конецгода конецдня конецквартала конецмесяца конецминуты конецнедели конецчаса конфигурациябазыданныхизмененадинамически конфигурацияизменена копироватьданныеформы копироватьфайл краткоепредставлениеошибки лев макс местноевремя месяц мин минута монопольныйрежим найти найтинедопустимыесимволыxml найтиокнопонавигационнойссылке найтипомеченныенаудаление найтипоссылкам найтифайлы началогода началодня началоквартала началомесяца началоминуты началонедели началочаса начатьзапросразрешенияпользователя начатьзапускприложения начатькопированиефайла начатьперемещениефайла начатьподключениевнешнейкомпоненты начатьподключениерасширенияработыскриптографией начатьподключениерасширенияработысфайлами начатьпоискфайлов начатьполучениекаталогавременныхфайлов начатьполучениекаталогадокументов начатьполучениерабочегокаталогаданныхпользователя начатьполучениефайлов начатьпомещениефайла начатьпомещениефайлов начатьсозданиедвоичныхданныхизфайла начатьсозданиекаталога начатьтранзакцию начатьудалениефайлов начатьустановкувнешнейкомпоненты начатьустановкурасширенияработыскриптографией начатьустановкурасширенияработысфайлами неделягода необходимостьзавершениясоединения номерсеансаинформационнойбазы номерсоединенияинформационнойбазы нрег нстр обновитьинтерфейс обновитьнумерациюобъектов обновитьповторноиспользуемыезначения обработкапрерыванияпользователя объединитьфайлы окр описаниеошибки оповестить оповеститьобизменении отключитьобработчикзапросанастроекклиенталицензирования отключитьобработчикожидания отключитьобработчикоповещения открытьзначение открытьиндекссправки открытьсодержаниесправки открытьсправку открытьформу открытьформумодально отменитьтранзакцию очиститьжурналрегистрации очиститьнастройкипользователя очиститьсообщения параметрыдоступа перейтипонавигационнойссылке переместитьфайл подключитьвнешнююкомпоненту подключитьобработчикзапросанастроекклиенталицензирования подключитьобработчикожидания подключитьобработчикоповещения подключитьрасширениеработыскриптографией подключитьрасширениеработысфайлами подробноепредставлениеошибки показатьвводдаты показатьвводзначения показатьвводстроки показатьвводчисла показатьвопрос показатьзначение показатьинформациюобошибке показатьнакарте показатьоповещениепользователя показатьпредупреждение полноеимяпользователя получитьcomобъект получитьxmlтип получитьадреспоместоположению получитьблокировкусеансов получитьвремязавершенияспящегосеанса получитьвремязасыпанияпассивногосеанса получитьвремяожиданияблокировкиданных получитьданныевыбора получитьдополнительныйпараметрклиенталицензирования получитьдопустимыекодылокализации получитьдопустимыечасовыепояса получитьзаголовокклиентскогоприложения получитьзаголовоксистемы получитьзначенияотборажурналарегистрации получитьидентификаторконфигурации получитьизвременногохранилища получитьимявременногофайла получитьимяклиенталицензирования получитьинформациюэкрановклиента получитьиспользованиежурналарегистрации получитьиспользованиесобытияжурналарегистрации получитькраткийзаголовокприложения получитьмакетоформления получитьмаскувсефайлы получитьмаскувсефайлыклиента получитьмаскувсефайлысервера получитьместоположениепоадресу получитьминимальнуюдлинупаролейпользователей получитьнавигационнуюссылку получитьнавигационнуюссылкуинформационнойбазы получитьобновлениеконфигурациибазыданных получитьобновлениепредопределенныхданныхинформационнойбазы получитьобщиймакет получитьобщуюформу получитьокна получитьоперативнуюотметкувремени получитьотключениебезопасногорежима получитьпараметрыфункциональныхопцийинтерфейса получитьполноеимяпредопределенногозначения получитьпредставлениянавигационныхссылок получитьпроверкусложностипаролейпользователей получитьразделительпути получитьразделительпутиклиента получитьразделительпутисервера получитьсеансыинформационнойбазы получитьскоростьклиентскогосоединения получитьсоединенияинформационнойбазы получитьсообщенияпользователю получитьсоответствиеобъектаиформы получитьсоставстандартногоинтерфейсаodata получитьструктурухранениябазыданных получитьтекущийсеансинформационнойбазы получитьфайл получитьфайлы получитьформу получитьфункциональнуюопцию получитьфункциональнуюопциюинтерфейса получитьчасовойпоясинформационнойбазы пользователиос поместитьвовременноехранилище поместитьфайл поместитьфайлы прав праводоступа предопределенноезначение представлениекодалокализации представлениепериода представлениеправа представлениеприложения представлениесобытияжурналарегистрации представлениечасовогопояса предупреждение прекратитьработусистемы привилегированныйрежим продолжитьвызов прочитатьjson прочитатьxml прочитатьдатуjson пустаястрока рабочийкаталогданныхпользователя разблокироватьданныедляредактирования разделитьфайл разорватьсоединениесвнешнимисточникомданных раскодироватьстроку рольдоступна секунда сигнал символ скопироватьжурналрегистрации смещениелетнеговремени смещениестандартноговремени соединитьбуферыдвоичныхданных создатькаталог создатьфабрикуxdto сокрл сокрлп сокрп сообщить состояние сохранитьзначение сохранитьнастройкипользователя сред стрдлина стрзаканчиваетсяна стрзаменить стрнайти стрначинаетсяс строка строкасоединенияинформационнойбазы стрполучитьстроку стрразделить стрсоединить стрсравнить стрчисловхождений стрчислострок стршаблон текущаядата текущаядатасеанса текущаяуниверсальнаядата текущаяуниверсальнаядатавмиллисекундах текущийвариантинтерфейсаклиентскогоприложения текущийвариантосновногошрифтаклиентскогоприложения текущийкодлокализации текущийрежимзапуска текущийязык текущийязыксистемы тип типзнч транзакцияактивна трег удалитьданныеинформационнойбазы удалитьизвременногохранилища удалитьобъекты удалитьфайлы универсальноевремя установитьбезопасныйрежим установитьбезопасныйрежимразделенияданных установитьблокировкусеансов установитьвнешнююкомпоненту установитьвремязавершенияспящегосеанса установитьвремязасыпанияпассивногосеанса установитьвремяожиданияблокировкиданных установитьзаголовокклиентскогоприложения установитьзаголовоксистемы установитьиспользованиежурналарегистрации установитьиспользованиесобытияжурналарегистрации установитькраткийзаголовокприложения установитьминимальнуюдлинупаролейпользователей установитьмонопольныйрежим установитьнастройкиклиенталицензирования установитьобновлениепредопределенныхданныхинформационнойбазы установитьотключениебезопасногорежима установитьпараметрыфункциональныхопцийинтерфейса установитьпривилегированныйрежим установитьпроверкусложностипаролейпользователей установитьрасширениеработыскриптографией установитьрасширениеработысфайлами установитьсоединениесвнешнимисточникомданных установитьсоответствиеобъектаиформы установитьсоставстандартногоинтерфейсаodata установитьчасовойпоясинформационнойбазы установитьчасовойпояссеанса формат цел час часовойпояс часовойпояссеанса число числопрописью этоадресвременногохранилища wsссылки библиотекакартинок библиотекамакетовоформлениякомпоновкиданных библиотекастилей бизнеспроцессы внешниеисточникиданных внешниеобработки внешниеотчеты встроенныепокупки главныйинтерфейс главныйстиль документы доставляемыеуведомления журналыдокументов задачи информацияобинтернетсоединении использованиерабочейдаты историяработыпользователя константы критерииотбора метаданные обработки отображениерекламы отправкадоставляемыхуведомлений отчеты панельзадачос параметрзапуска параметрысеанса перечисления планывидоврасчета планывидовхарактеристик планыобмена планысчетов полнотекстовыйпоиск пользователиинформационнойбазы последовательности проверкавстроенныхпокупок рабочаядата расширенияконфигурации регистрыбухгалтерии регистрынакопления регистрырасчета регистрысведений регламентныезадания сериализаторxdto справочники средствагеопозиционирования средствакриптографии средствамультимедиа средстваотображениярекламы средствапочты средствателефонии фабрикаxdto файловыепотоки фоновыезадания хранилищанастроек хранилищевариантовотчетов хранилищенастроекданныхформ хранилищеобщихнастроек хранилищепользовательскихнастроекдинамическихсписков хранилищепользовательскихнастроекотчетов хранилищесистемныхнастроек ",class:"webцвета windowsцвета windowsшрифты библиотекакартинок рамкистиля символы цветастиля шрифтыстиля автоматическоесохранениеданныхформывнастройках автонумерациявформе автораздвижениесерий анимациядиаграммы вариантвыравниванияэлементовизаголовков вариантуправлениявысотойтаблицы вертикальнаяпрокруткаформы вертикальноеположение вертикальноеположениеэлемента видгруппыформы виддекорацииформы виддополненияэлементаформы видизмененияданных видкнопкиформы видпереключателя видподписейкдиаграмме видполяформы видфлажка влияниеразмеранапузырекдиаграммы горизонтальноеположение горизонтальноеположениеэлемента группировкаколонок группировкаподчиненныхэлементовформы группыиэлементы действиеперетаскивания дополнительныйрежимотображения допустимыедействияперетаскивания интервалмеждуэлементамиформы использованиевывода использованиеполосыпрокрутки используемоезначениеточкибиржевойдиаграммы историявыборапривводе источникзначенийоситочекдиаграммы источникзначенияразмерапузырькадиаграммы категориягруппыкоманд максимумсерий начальноеотображениедерева начальноеотображениесписка обновлениетекстаредактирования ориентациядендрограммы ориентациядиаграммы ориентацияметокдиаграммы ориентацияметоксводнойдиаграммы ориентацияэлементаформы отображениевдиаграмме отображениевлегендедиаграммы отображениегруппыкнопок отображениезаголовкашкалыдиаграммы отображениезначенийсводнойдиаграммы отображениезначенияизмерительнойдиаграммы отображениеинтерваладиаграммыганта отображениекнопки отображениекнопкивыбора отображениеобсужденийформы отображениеобычнойгруппы отображениеотрицательныхзначенийпузырьковойдиаграммы отображениепанелипоиска отображениеподсказки отображениепредупрежденияприредактировании отображениеразметкиполосырегулирования отображениестраницформы отображениетаблицы отображениетекстазначениядиаграммыганта отображениеуправленияобычнойгруппы отображениефигурыкнопки палитрацветовдиаграммы поведениеобычнойгруппы поддержкамасштабадендрограммы поддержкамасштабадиаграммыганта поддержкамасштабасводнойдиаграммы поисквтаблицепривводе положениезаголовкаэлементаформы положениекартинкикнопкиформы положениекартинкиэлементаграфическойсхемы положениекоманднойпанелиформы положениекоманднойпанелиэлементаформы положениеопорнойточкиотрисовки положениеподписейкдиаграмме положениеподписейшкалызначенийизмерительнойдиаграммы положениесостоянияпросмотра положениестрокипоиска положениетекстасоединительнойлинии положениеуправленияпоиском положениешкалывремени порядокотображенияточекгоризонтальнойгистограммы порядоксерийвлегендедиаграммы размеркартинки расположениезаголовкашкалыдиаграммы растягиваниеповертикалидиаграммыганта режимавтоотображениясостояния режимвводастроктаблицы режимвыборанезаполненного режимвыделениядаты режимвыделениястрокитаблицы режимвыделениятаблицы режимизмененияразмера режимизменениясвязанногозначения режимиспользованиядиалогапечати режимиспользованияпараметракоманды режиммасштабированияпросмотра режимосновногоокнаклиентскогоприложения режимоткрытияокнаформы режимотображениявыделения режимотображениягеографическойсхемы режимотображениязначенийсерии режимотрисовкисеткиграфическойсхемы режимполупрозрачностидиаграммы режимпробеловдиаграммы режимразмещениянастранице режимредактированияколонки режимсглаживаниядиаграммы режимсглаживанияиндикатора режимсписказадач сквозноевыравнивание сохранениеданныхформывнастройках способзаполнениятекстазаголовкашкалыдиаграммы способопределенияограничивающегозначениядиаграммы стандартнаягруппакоманд стандартноеоформление статусоповещенияпользователя стильстрелки типаппроксимациилиниитрендадиаграммы типдиаграммы типединицышкалывремени типимпортасерийслоягеографическойсхемы типлиниигеографическойсхемы типлиниидиаграммы типмаркерагеографическойсхемы типмаркерадиаграммы типобластиоформления типорганизацииисточникаданныхгеографическойсхемы типотображениясериислоягеографическойсхемы типотображенияточечногообъектагеографическойсхемы типотображенияшкалыэлементалегендыгеографическойсхемы типпоискаобъектовгеографическойсхемы типпроекциигеографическойсхемы типразмещенияизмерений типразмещенияреквизитовизмерений типрамкиэлементауправления типсводнойдиаграммы типсвязидиаграммыганта типсоединениязначенийпосериямдиаграммы типсоединенияточекдиаграммы типсоединительнойлинии типстороныэлементаграфическойсхемы типформыотчета типшкалырадарнойдиаграммы факторлиниитрендадиаграммы фигуракнопки фигурыграфическойсхемы фиксациявтаблице форматдняшкалывремени форматкартинки ширинаподчиненныхэлементовформы виддвижениябухгалтерии виддвижениянакопления видпериодарегистрарасчета видсчета видточкимаршрутабизнеспроцесса использованиеагрегатарегистранакопления использованиегруппиэлементов использованиережимапроведения использованиесреза периодичностьагрегатарегистранакопления режимавтовремя режимзаписидокумента режимпроведениядокумента авторегистрацияизменений допустимыйномерсообщения отправкаэлементаданных получениеэлементаданных использованиерасшифровкитабличногодокумента ориентациястраницы положениеитоговколоноксводнойтаблицы положениеитоговстроксводнойтаблицы положениетекстаотносительнокартинки расположениезаголовкагруппировкитабличногодокумента способчтениязначенийтабличногодокумента типдвустороннейпечати типзаполненияобластитабличногодокумента типкурсоровтабличногодокумента типлиниирисункатабличногодокумента типлинииячейкитабличногодокумента типнаправленияпереходатабличногодокумента типотображениявыделениятабличногодокумента типотображениялинийсводнойтаблицы типразмещениятекстатабличногодокумента типрисункатабличногодокумента типсмещениятабличногодокумента типузоратабличногодокумента типфайлатабличногодокумента точностьпечати чередованиерасположениястраниц отображениевремениэлементовпланировщика типфайлаформатированногодокумента обходрезультатазапроса типзаписизапроса видзаполнениярасшифровкипостроителяотчета типдобавленияпредставлений типизмеренияпостроителяотчета типразмещенияитогов доступкфайлу режимдиалогавыборафайла режимоткрытияфайла типизмеренияпостроителязапроса видданныханализа методкластеризации типединицыинтервалавременианализаданных типзаполнениятаблицырезультатаанализаданных типиспользованиячисловыхзначенийанализаданных типисточникаданныхпоискаассоциаций типколонкианализаданныхдереворешений типколонкианализаданныхкластеризация типколонкианализаданныхобщаястатистика типколонкианализаданныхпоискассоциаций типколонкианализаданныхпоискпоследовательностей типколонкимоделипрогноза типмерырасстоянияанализаданных типотсеченияправилассоциации типполяанализаданных типстандартизациианализаданных типупорядочиванияправилассоциациианализаданных типупорядочиванияшаблоновпоследовательностейанализаданных типупрощениядереварешений wsнаправлениепараметра вариантxpathxs вариантзаписидатыjson вариантпростоготипаxs видгруппымоделиxs видфасетаxdto действиепостроителяdom завершенностьпростоготипаxs завершенностьсоставноготипаxs завершенностьсхемыxs запрещенныеподстановкиxs исключениягруппподстановкиxs категорияиспользованияатрибутаxs категорияограниченияидентичностиxs категорияограниченияпространствименxs методнаследованияxs модельсодержимогоxs назначениетипаxml недопустимыеподстановкиxs обработкапробельныхсимволовxs обработкасодержимогоxs ограничениезначенияxs параметрыотбораузловdom переносстрокjson позициявдокументеdom пробельныесимволыxml типатрибутаxml типзначенияjson типканоническогоxml типкомпонентыxs типпроверкиxml типрезультатаdomxpath типузлаdom типузлаxml формаxml формапредставленияxs форматдатыjson экранированиесимволовjson видсравнениякомпоновкиданных действиеобработкирасшифровкикомпоновкиданных направлениесортировкикомпоновкиданных расположениевложенныхэлементоврезультатакомпоновкиданных расположениеитоговкомпоновкиданных расположениегруппировкикомпоновкиданных расположениеполейгруппировкикомпоновкиданных расположениеполякомпоновкиданных расположениереквизитовкомпоновкиданных расположениересурсовкомпоновкиданных типбухгалтерскогоостаткакомпоновкиданных типвыводатекстакомпоновкиданных типгруппировкикомпоновкиданных типгруппыэлементовотборакомпоновкиданных типдополненияпериодакомпоновкиданных типзаголовкаполейкомпоновкиданных типмакетагруппировкикомпоновкиданных типмакетаобластикомпоновкиданных типостаткакомпоновкиданных типпериодакомпоновкиданных типразмещениятекстакомпоновкиданных типсвязинаборовданныхкомпоновкиданных типэлементарезультатакомпоновкиданных расположениелегендыдиаграммыкомпоновкиданных типпримененияотборакомпоновкиданных режимотображенияэлементанастройкикомпоновкиданных режимотображениянастроеккомпоновкиданных состояниеэлементанастройкикомпоновкиданных способвосстановлениянастроеккомпоновкиданных режимкомпоновкирезультата использованиепараметракомпоновкиданных автопозицияресурсовкомпоновкиданных вариантиспользованиягруппировкикомпоновкиданных расположениересурсоввдиаграммекомпоновкиданных фиксациякомпоновкиданных использованиеусловногооформлениякомпоновкиданных важностьинтернетпочтовогосообщения обработкатекстаинтернетпочтовогосообщения способкодированияинтернетпочтовоговложения способкодированиянеasciiсимволовинтернетпочтовогосообщения типтекстапочтовогосообщения протоколинтернетпочты статусразборапочтовогосообщения режимтранзакциизаписижурналарегистрации статустранзакциизаписижурналарегистрации уровеньжурналарегистрации расположениехранилищасертификатовкриптографии режимвключениясертификатовкриптографии режимпроверкисертификатакриптографии типхранилищасертификатовкриптографии кодировкаименфайловвzipфайле методсжатияzip методшифрованияzip режимвосстановленияпутейфайловzip режимобработкиподкаталоговzip режимсохраненияпутейzip уровеньсжатияzip звуковоеоповещение направлениепереходакстроке позициявпотоке порядокбайтов режимблокировкиданных режимуправленияблокировкойданных сервисвстроенныхпокупок состояниефоновогозадания типподписчикадоставляемыхуведомлений уровеньиспользованиязащищенногосоединенияftp направлениепорядкасхемызапроса типдополненияпериодамисхемызапроса типконтрольнойточкисхемызапроса типобъединениясхемызапроса типпараметрадоступнойтаблицысхемызапроса типсоединениясхемызапроса httpметод автоиспользованиеобщегореквизита автопрефиксномеразадачи вариантвстроенногоязыка видиерархии видрегистранакопления видтаблицывнешнегоисточникаданных записьдвиженийприпроведении заполнениепоследовательностей индексирование использованиебазыпланавидоврасчета использованиебыстроговыбора использованиеобщегореквизита использованиеподчинения использованиеполнотекстовогопоиска использованиеразделяемыхданныхобщегореквизита использованиереквизита назначениеиспользованияприложения назначениерасширенияконфигурации направлениепередачи обновлениепредопределенныхданных оперативноепроведение основноепредставлениевидарасчета основноепредставлениевидахарактеристики основноепредставлениезадачи основноепредставлениепланаобмена основноепредставлениесправочника основноепредставлениесчета перемещениеграницыприпроведении периодичностьномерабизнеспроцесса периодичностьномерадокумента периодичностьрегистрарасчета периодичностьрегистрасведений повторноеиспользованиевозвращаемыхзначений полнотекстовыйпоискпривводепостроке принадлежностьобъекта проведение разделениеаутентификацииобщегореквизита разделениеданныхобщегореквизита разделениерасширенийконфигурацииобщегореквизита режимавтонумерацииобъектов режимзаписирегистра режимиспользованиямодальности режимиспользованиясинхронныхвызововрасширенийплатформыивнешнихкомпонент режимповторногоиспользованиясеансов режимполученияданныхвыборапривводепостроке режимсовместимости режимсовместимостиинтерфейса режимуправленияблокировкойданныхпоумолчанию сериикодовпланавидовхарактеристик сериикодовпланасчетов сериикодовсправочника созданиепривводе способвыбора способпоискастрокипривводепостроке способредактирования типданныхтаблицывнешнегоисточникаданных типкодапланавидоврасчета типкодасправочника типмакета типномерабизнеспроцесса типномерадокумента типномеразадачи типформы удалениедвижений важностьпроблемыприменениярасширенияконфигурации вариантинтерфейсаклиентскогоприложения вариантмасштабаформклиентскогоприложения вариантосновногошрифтаклиентскогоприложения вариантстандартногопериода вариантстандартнойдатыначала видграницы видкартинки видотображенияполнотекстовогопоиска видрамки видсравнения видцвета видчисловогозначения видшрифта допустимаядлина допустимыйзнак использованиеbyteordermark использованиеметаданныхполнотекстовогопоиска источникрасширенийконфигурации клавиша кодвозвратадиалога кодировкаxbase кодировкатекста направлениепоиска направлениесортировки обновлениепредопределенныхданных обновлениеприизмененииданных отображениепанелиразделов проверказаполнения режимдиалогавопрос режимзапускаклиентскогоприложения режимокругления режимоткрытияформприложения режимполнотекстовогопоиска скоростьклиентскогосоединения состояниевнешнегоисточникаданных состояниеобновленияконфигурациибазыданных способвыборасертификатаwindows способкодированиястроки статуссообщения типвнешнейкомпоненты типплатформы типповеденияклавишиenter типэлементаинформацииовыполненииобновленияконфигурациибазыданных уровеньизоляциитранзакций хешфункция частидаты",type:"comобъект ftpсоединение httpзапрос httpсервисответ httpсоединение wsопределения wsпрокси xbase анализданных аннотацияxs блокировкаданных буфердвоичныхданных включениеxs выражениекомпоновкиданных генераторслучайныхчисел географическаясхема географическиекоординаты графическаясхема группамоделиxs данныерасшифровкикомпоновкиданных двоичныеданные дендрограмма диаграмма диаграммаганта диалогвыборафайла диалогвыборацвета диалогвыборашрифта диалограсписаниярегламентногозадания диалогредактированиястандартногопериода диапазон документdom документhtml документацияxs доставляемоеуведомление записьdom записьfastinfoset записьhtml записьjson записьxml записьzipфайла записьданных записьтекста записьузловdom запрос защищенноесоединениеopenssl значенияполейрасшифровкикомпоновкиданных извлечениетекста импортxs интернетпочта интернетпочтовоесообщение интернетпочтовыйпрофиль интернетпрокси интернетсоединение информациядляприложенияxs использованиеатрибутаxs использованиесобытияжурналарегистрации источникдоступныхнастроеккомпоновкиданных итераторузловdom картинка квалификаторыдаты квалификаторыдвоичныхданных квалификаторыстроки квалификаторычисла компоновщикмакетакомпоновкиданных компоновщикнастроеккомпоновкиданных конструктормакетаоформлениякомпоновкиданных конструкторнастроеккомпоновкиданных конструкторформатнойстроки линия макеткомпоновкиданных макетобластикомпоновкиданных макетоформлениякомпоновкиданных маскаxs менеджеркриптографии наборсхемxml настройкикомпоновкиданных настройкисериализацииjson обработкакартинок обработкарасшифровкикомпоновкиданных обходдереваdom объявлениеатрибутаxs объявлениенотацииxs объявлениеэлементаxs описаниеиспользованиясобытиядоступжурналарегистрации описаниеиспользованиясобытияотказвдоступежурналарегистрации описаниеобработкирасшифровкикомпоновкиданных описаниепередаваемогофайла описаниетипов определениегруппыатрибутовxs определениегруппымоделиxs определениеограниченияидентичностиxs определениепростоготипаxs определениесоставноготипаxs определениетипадокументаdom определенияxpathxs отборкомпоновкиданных пакетотображаемыхдокументов параметрвыбора параметркомпоновкиданных параметрызаписиjson параметрызаписиxml параметрычтенияxml переопределениеxs планировщик полеанализаданных полекомпоновкиданных построительdom построительзапроса построительотчета построительотчетаанализаданных построительсхемxml поток потоквпамяти почта почтовоесообщение преобразованиеxsl преобразованиекканоническомуxml процессорвыводарезультатакомпоновкиданныхвколлекциюзначений процессорвыводарезультатакомпоновкиданныхвтабличныйдокумент процессоркомпоновкиданных разыменовательпространствименdom рамка расписаниерегламентногозадания расширенноеимяxml результатчтенияданных своднаядиаграмма связьпараметравыбора связьпотипу связьпотипукомпоновкиданных сериализаторxdto сертификатклиентаwindows сертификатклиентафайл сертификаткриптографии сертификатыудостоверяющихцентровwindows сертификатыудостоверяющихцентровфайл сжатиеданных системнаяинформация сообщениепользователю сочетаниеклавиш сравнениезначений стандартнаядатаначала стандартныйпериод схемаxml схемакомпоновкиданных табличныйдокумент текстовыйдокумент тестируемоеприложение типданныхxml уникальныйидентификатор фабрикаxdto файл файловыйпоток фасетдлиныxs фасетколичестваразрядовдробнойчастиxs фасетмаксимальноговключающегозначенияxs фасетмаксимальногоисключающегозначенияxs фасетмаксимальнойдлиныxs фасетминимальноговключающегозначенияxs фасетминимальногоисключающегозначенияxs фасетминимальнойдлиныxs фасетобразцаxs фасетобщегоколичестваразрядовxs фасетперечисленияxs фасетпробельныхсимволовxs фильтрузловdom форматированнаястрока форматированныйдокумент фрагментxs хешированиеданных хранилищезначения цвет чтениеfastinfoset чтениеhtml чтениеjson чтениеxml чтениеzipфайла чтениеданных чтениетекста чтениеузловdom шрифт элементрезультатакомпоновкиданных comsafearray деревозначений массив соответствие списокзначений структура таблицазначений фиксированнаяструктура фиксированноесоответствие фиксированныймассив ",literal:a},contains:[{className:"meta",begin:"#|&",end:"$",keywords:{$pattern:t,"meta-keyword":n+"загрузитьизфайла вебклиент вместо внешнеесоединение клиент конецобласти мобильноеприложениеклиент мобильноеприложениесервер наклиенте наклиентенасервере наклиентенасерверебезконтекста насервере насерверебезконтекста область перед после сервер толстыйклиентобычноеприложение толстыйклиентуправляемоеприложение тонкийклиент "},contains:[s]},{className:"function",variants:[{begin:"процедура|функция",end:"\\)",keywords:"процедура функция"},{begin:"конецпроцедуры|конецфункции",keywords:"конецпроцедуры конецфункции"}],contains:[{begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"params",begin:t,end:",",excludeEnd:!0,endsWithParent:!0,keywords:{$pattern:t,keyword:"знач",literal:a},contains:[r,i,o]},s]},e.inherit(e.TITLE_MODE,{begin:t})]},s,{className:"symbol",begin:"~",end:";|:",excludeEnd:!0},r,i,o]}};function op(e){return e?"string"==typeof e?e:e.source:null}function sp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return op(e)})).join("");return a}var lp=function(e){var t={ruleDeclaration:/^[a-zA-Z][a-zA-Z0-9-]*/,unexpectedChars:/[!@#$^&',?+~`|:]/},n=e.COMMENT(/;/,/$/),a={className:"attribute",begin:sp(t.ruleDeclaration,/(?=\s*=)/)};return{name:"Augmented Backus-Naur Form",illegal:t.unexpectedChars,keywords:["ALPHA","BIT","CHAR","CR","CRLF","CTL","DIGIT","DQUOTE","HEXDIG","HTAB","LF","LWSP","OCTET","SP","VCHAR","WSP"],contains:[a,n,{className:"symbol",begin:/%b[0-1]+(-[0-1]+|(\.[0-1]+)+){0,1}/},{className:"symbol",begin:/%d[0-9]+(-[0-9]+|(\.[0-9]+)+){0,1}/},{className:"symbol",begin:/%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+){0,1}/},{className:"symbol",begin:/%[si]/},e.QUOTE_STRING_MODE,e.NUMBER_MODE]}};function cp(e){return e?"string"==typeof e?e:e.source:null}function _p(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return cp(e)})).join("");return a}function dp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return cp(e)})).join("|")+")";return a}var up=function(e){var t=["GET","POST","HEAD","PUT","DELETE","CONNECT","OPTIONS","PATCH","TRACE"];return{name:"Apache Access Log",contains:[{className:"number",begin:/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?\b/,relevance:5},{className:"number",begin:/\b\d+\b/,relevance:0},{className:"string",begin:_p(/"/,dp.apply(void 0,t)),end:/"/,keywords:t,illegal:/\n/,relevance:5,contains:[{begin:/HTTP\/[12]\.\d'/,relevance:5}]},{className:"string",begin:/\[\d[^\]\n]{8,}\]/,illegal:/\n/,relevance:1},{className:"string",begin:/\[/,end:/\]/,illegal:/\n/,relevance:0},{className:"string",begin:/"Mozilla\/\d\.\d \(/,end:/"/,illegal:/\n/,relevance:3},{className:"string",begin:/"/,end:/"/,illegal:/\n/,relevance:0}]}};function mp(e){return e?"string"==typeof e?e:e.source:null}function pp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return mp(e)})).join("");return a}var gp=function(e){var t={className:"rest_arg",begin:/[.]{3}/,end:/[a-zA-Z_$][a-zA-Z0-9_$]*/,relevance:10};return{name:"ActionScript",aliases:["as"],keywords:{keyword:"as break case catch class const continue default delete do dynamic each else extends final finally for function get if implements import in include instanceof interface internal is namespace native new override package private protected public return set static super switch this throw try typeof use var void while with",literal:"true false null undefined"},contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"class",beginKeywords:"package",end:/\{/,contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.TITLE_MODE]},{className:"meta",beginKeywords:"import include",end:/;/,keywords:{"meta-keyword":"import include"}},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,illegal:/\S/,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t]},{begin:pp(/:\s*/,/([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)/)}]},e.METHOD_GUARD],illegal:/#/}};var Ep=function(e){var t="[A-Za-z](_?[A-Za-z0-9.])*",n="[]\\{\\}%#'\"",a=e.COMMENT("--","$"),r={begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:n,contains:[{beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword",beginKeywords:"not null constant access function procedure in out aliased exception"},{className:"type",begin:t,endsParent:!0,relevance:0}]};return{name:"Ada",case_insensitive:!0,keywords:{keyword:"abort else new return abs elsif not reverse abstract end accept entry select access exception of separate aliased exit or some all others subtype and for out synchronized array function overriding at tagged generic package task begin goto pragma terminate body private then if procedure type case in protected constant interface is raise use declare range delay limited record when delta loop rem while digits renames with do mod requeue xor",literal:"True False"},contains:[a,{className:"string",begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{className:"string",begin:/'.'/},{className:"number",begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)",relevance:0},{className:"symbol",begin:"'"+t},{className:"title",begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:n},{begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)",keywords:"overriding function procedure with is renames return",returnBegin:!0,contains:[a,{className:"title",begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)",excludeBegin:!0,excludeEnd:!0,illegal:n},r,{className:"type",begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0,excludeEnd:!0,endsParent:!0,illegal:n}]},{className:"type",begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:n},r]}};var Sp=function(e){var t={className:"built_in",begin:"\\b(void|bool|int|int8|int16|int32|int64|uint|uint8|uint16|uint32|uint64|string|ref|array|double|float|auto|dictionary)"},n={className:"symbol",begin:"[a-zA-Z0-9_]+@"},a={className:"keyword",begin:"<",end:">",contains:[t,n]};return t.contains=[a],n.contains=[a],{name:"AngelScript",aliases:["asc"],keywords:"for in|0 break continue while do|0 return if else case switch namespace is cast or and xor not get|0 in inout|10 out override set|0 private public const default|0 final shared external mixin|10 enum typedef funcdef this super import from interface abstract|0 try catch protected explicit property",illegal:"(^using\\s+[A-Za-z0-9_\\.]+;$|\\bfunction\\s*[^\\(])",contains:[{className:"string",begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE],relevance:0},{className:"string",begin:'"""',end:'"""'},{className:"string",begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE],relevance:0},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:"^\\s*\\[",end:"\\]"},{beginKeywords:"interface namespace",end:/\{/,illegal:"[;.\\-]",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+"}]},{beginKeywords:"class",end:/\{/,illegal:"[;.\\-]",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+",contains:[{begin:"[:,]\\s*",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+"}]}]}]},t,n,{className:"literal",begin:"\\b(null|true|false)"},{className:"number",relevance:0,begin:"(-?)(\\b0[xXbBoOdD][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?f?|\\.\\d+f?)([eE][-+]?\\d+f?)?)"}]}};var bp=function(e){var t={className:"number",begin:/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?/};return{name:"Apache config",aliases:["apacheconf"],case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"section",begin:/<\/?/,end:/>/,contains:[t,{className:"number",begin:/:\d{1,5}/},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute",begin:/\w+/,relevance:0,keywords:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"},contains:[{className:"meta",begin:/\s\[/,end:/\]$/},{className:"variable",begin:/[\$%]\{/,end:/\}/,contains:["self",{className:"number",begin:/[$%]\d+/}]},t,{className:"number",begin:/\d+/},e.QUOTE_STRING_MODE]}}],illegal:/\S/}};function fp(e){return e?"string"==typeof e?e:e.source:null}function Tp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return fp(e)})).join("");return a}function Cp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return fp(e)})).join("|")+")";return a}var Np=function(e){var t=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),n={className:"params",begin:/\(/,end:/\)/,contains:["self",e.C_NUMBER_MODE,t]},a=e.COMMENT(/--/,/$/),r=[a,e.COMMENT(/\(\*/,/\*\)/,{contains:["self",a]}),e.HASH_COMMENT_MODE];return{name:"AppleScript",aliases:["osascript"],keywords:{keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the|0 then third through thru timeout times to transaction try until where while whose with without",literal:"AppleScript false linefeed return pi quote result space tab true",built_in:"alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"},contains:[t,e.C_NUMBER_MODE,{className:"built_in",begin:Tp(/\b/,Cp.apply(void 0,[/clipboard info/,/the clipboard/,/info for/,/list (disks|folder)/,/mount volume/,/path to/,/(close|open for) access/,/(get|set) eof/,/current date/,/do shell script/,/get volume settings/,/random number/,/set volume/,/system attribute/,/system info/,/time to GMT/,/(load|run|store) script/,/scripting components/,/ASCII (character|number)/,/localized string/,/choose (application|color|file|file name|folder|from list|remote application|URL)/,/display (alert|dialog)/]),/\b/)},{className:"built_in",begin:/^\s*return\b/},{className:"literal",begin:/\b(text item delimiters|current application|missing value)\b/},{className:"keyword",begin:Tp(/\b/,Cp.apply(void 0,[/apart from/,/aside from/,/instead of/,/out of/,/greater than/,/isn't|(doesn't|does not) (equal|come before|come after|contain)/,/(greater|less) than( or equal)?/,/(starts?|ends|begins?) with/,/contained by/,/comes (before|after)/,/a (ref|reference)/,/POSIX (file|path)/,/(date|time) string/,/quoted form/]),/\b/)},{beginKeywords:"on",illegal:/[${=;\n]/,contains:[e.UNDERSCORE_TITLE_MODE,n]}].concat(r),illegal:/\/\/|->|=>|\[\[/}};var Rp=function(e){var t="[A-Za-z_][0-9A-Za-z_]*",n={keyword:"if for while var new function do return void else break",literal:"BackSlash DoubleQuote false ForwardSlash Infinity NaN NewLine null PI SingleQuote Tab TextFormatting true undefined",built_in:"Abs Acos Angle Attachments Area AreaGeodetic Asin Atan Atan2 Average Bearing Boolean Buffer BufferGeodetic Ceil Centroid Clip Console Constrain Contains Cos Count Crosses Cut Date DateAdd DateDiff Day Decode DefaultValue Dictionary Difference Disjoint Distance DistanceGeodetic Distinct DomainCode DomainName Equals Exp Extent Feature FeatureSet FeatureSetByAssociation FeatureSetById FeatureSetByPortalItem FeatureSetByRelationshipName FeatureSetByTitle FeatureSetByUrl Filter First Floor Geometry GroupBy Guid HasKey Hour IIf IndexOf Intersection Intersects IsEmpty IsNan IsSelfIntersecting Length LengthGeodetic Log Max Mean Millisecond Min Minute Month MultiPartToSinglePart Multipoint NextSequenceValue Now Number OrderBy Overlaps Point Polygon Polyline Portal Pow Random Relate Reverse RingIsClockWise Round Second SetGeometry Sin Sort Sqrt Stdev Sum SymmetricDifference Tan Text Timestamp Today ToLocal Top Touches ToUTC TrackCurrentTime TrackGeometryWindow TrackIndex TrackStartTime TrackWindow TypeOf Union UrlEncode Variance Weekday When Within Year "},a={className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},r={className:"subst",begin:"\\$\\{",end:"\\}",keywords:n,contains:[]},i={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,r]};r.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,a,e.REGEXP_MODE];var o=r.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{name:"ArcGIS Arcade",keywords:n,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"symbol",begin:"\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+"},a,{begin:/[{,]\s*/,relevance:0,contains:[{begin:t+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:t,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(return)\\b)\\s*",keywords:"return",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+t+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,contains:o}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:o}],illegal:/\[|%/},{begin:/\$[(.]/}],illegal:/#(?!!)/}};function vp(e){return e?"string"==typeof e?e:e.source:null}function Op(e){return hp("(",e,")?")}function hp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return vp(e)})).join("");return a}var yp=function(e){var t="boolean byte word String",n="KeyboardController MouseController SoftwareSerial EthernetServer EthernetClient LiquidCrystal RobotControl GSMVoiceCall EthernetUDP EsploraTFT HttpClient RobotMotor WiFiClient GSMScanner FileSystem Scheduler GSMServer YunClient YunServer IPAddress GSMClient GSMModem Keyboard Ethernet Console GSMBand Esplora Stepper Process WiFiUDP GSM_SMS Mailbox USBHost Firmata PImage Client Server GSMPIN FileIO Bridge Serial EEPROM Stream Mouse Audio Servo File Task GPRS WiFi Wire TFT GSM SPI SD ",a="setup loop runShellCommandAsynchronously analogWriteResolution retrieveCallingNumber printFirmwareVersion analogReadResolution sendDigitalPortPair noListenOnLocalhost readJoystickButton setFirmwareVersion readJoystickSwitch scrollDisplayRight getVoiceCallStatus scrollDisplayLeft writeMicroseconds delayMicroseconds beginTransmission getSignalStrength runAsynchronously getAsynchronously listenOnLocalhost getCurrentCarrier readAccelerometer messageAvailable sendDigitalPorts lineFollowConfig countryNameWrite runShellCommand readStringUntil rewindDirectory readTemperature setClockDivider readLightSensor endTransmission analogReference detachInterrupt countryNameRead attachInterrupt encryptionType readBytesUntil robotNameWrite readMicrophone robotNameRead cityNameWrite userNameWrite readJoystickY readJoystickX mouseReleased openNextFile scanNetworks noInterrupts digitalWrite beginSpeaker mousePressed isActionDone mouseDragged displayLogos noAutoscroll addParameter remoteNumber getModifiers keyboardRead userNameRead waitContinue processInput parseCommand printVersion readNetworks writeMessage blinkVersion cityNameRead readMessage setDataMode parsePacket isListening setBitOrder beginPacket isDirectory motorsWrite drawCompass digitalRead clearScreen serialEvent rightToLeft setTextSize leftToRight requestFrom keyReleased compassRead analogWrite interrupts WiFiServer disconnect playMelody parseFloat autoscroll getPINUsed setPINUsed setTimeout sendAnalog readSlider analogRead beginWrite createChar motorsStop keyPressed tempoWrite readButton subnetMask debugPrint macAddress writeGreen randomSeed attachGPRS readString sendString remotePort releaseAll mouseMoved background getXChange getYChange answerCall getResult voiceCall endPacket constrain getSocket writeJSON getButton available connected findUntil readBytes exitValue readGreen writeBlue startLoop IPAddress isPressed sendSysex pauseMode gatewayIP setCursor getOemKey tuneWrite noDisplay loadImage switchPIN onRequest onReceive changePIN playFile noBuffer parseInt overflow checkPIN knobRead beginTFT bitClear updateIR bitWrite position writeRGB highByte writeRed setSpeed readBlue noStroke remoteIP transfer shutdown hangCall beginSMS endWrite attached maintain noCursor checkReg checkPUK shiftOut isValid shiftIn pulseIn connect println localIP pinMode getIMEI display noBlink process getBand running beginSD drawBMP lowByte setBand release bitRead prepare pointTo readRed setMode noFill remove listen stroke detach attach noTone exists buffer height bitSet circle config cursor random IRread setDNS endSMS getKey micros millis begin print write ready flush width isPIN blink clear press mkdir rmdir close point yield image BSSID click delay read text move peek beep rect line open seek fill size turn stop home find step tone sqrt RSSI SSID end bit tan cos sin pow map abs max min get run put",r="DIGITAL_MESSAGE FIRMATA_STRING ANALOG_MESSAGE REPORT_DIGITAL REPORT_ANALOG INPUT_PULLUP SET_PIN_MODE INTERNAL2V56 SYSTEM_RESET LED_BUILTIN INTERNAL1V1 SYSEX_START INTERNAL EXTERNAL DEFAULT OUTPUT INPUT HIGH LOW",i=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+Op(r)+"[a-zA-Z_]\\w*"+Op("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:Op(r)+e.IDENT_RE,relevance:0},d=Op(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:hp(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,hp("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}}(e),o=i.keywords;return o.keyword+=" "+t,o.literal+=" "+r,o.built_in+=" "+n,o._+=" "+a,i.name="Arduino",i.aliases=["ino"],i.supersetOf="cpp",i};var Ip=function(e){var t={variants:[e.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0}),e.COMMENT("[;@]","$",{relevance:0}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]};return{name:"ARM Assembly",case_insensitive:!0,aliases:["arm"],keywords:{$pattern:"\\.?"+e.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @"},contains:[{className:"keyword",begin:"\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?(?=\\s)"},t,e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"[#$=]?0x[0-9a-f]+"},{begin:"[#$=]?0b[01]+"},{begin:"[#$=]\\d+"},{begin:"\\b\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^[a-z_\\.\\$][a-z0-9_\\.\\$]+"},{begin:"[=#]\\w+"}],relevance:0}]}};function Ap(e){return e?"string"==typeof e?e:e.source:null}function Dp(e){return Mp("(?=",e,")")}function Mp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Ap(e)})).join("");return a}function Lp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return Ap(e)})).join("|")+")";return a}var wp=function(e){var t=Mp(/[A-Z_]/,Mp("(",/[A-Z0-9_.-]*:/,")?"),/[A-Z0-9_.-]*/),n={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:"meta-keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},r=e.inherit(a,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"meta-string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:/[A-Za-z0-9._:-]+/,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[n]},{begin:/'/,end:/'/,contains:[n]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,o,i,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[a,r,o,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},n,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:Mp(/</,Dp(Mp(t,Lp(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:s}]},{className:"tag",begin:Mp(/<\//,Dp(Mp(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}};function xp(e){return e?"string"==typeof e?e:e.source:null}function Pp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return xp(e)})).join("");return a}var kp=function(e){var t=[{className:"strong",begin:/\*{2}([^\n]+?)\*{2}/},{className:"strong",begin:Pp(/\*\*/,/((\*(?!\*)|\\[^\n]|[^*\n\\])+\n)+/,/(\*(?!\*)|\\[^\n]|[^*\n\\])*/,/\*\*/),relevance:0},{className:"strong",begin:/\B\*(\S|\S[^\n]*?\S)\*(?!\w)/},{className:"strong",begin:/\*[^\s]([^\n]+\n)+([^\n]+)\*/}],n=[{className:"emphasis",begin:/_{2}([^\n]+?)_{2}/},{className:"emphasis",begin:Pp(/__/,/((_(?!_)|\\[^\n]|[^_\n\\])+\n)+/,/(_(?!_)|\\[^\n]|[^_\n\\])*/,/__/),relevance:0},{className:"emphasis",begin:/\b_(\S|\S[^\n]*?\S)_(?!\w)/},{className:"emphasis",begin:/_[^\s]([^\n]+\n)+([^\n]+)_/},{className:"emphasis",begin:"\\B'(?!['\\s])",end:"(\\n{2}|')",contains:[{begin:"\\\\'\\w",relevance:0}],relevance:0}];return{name:"AsciiDoc",aliases:["adoc"],contains:[e.COMMENT("^/{4,}\\n","\\n/{4,}$",{relevance:10}),e.COMMENT("^//","$",{relevance:0}),{className:"title",begin:"^\\.\\w.*$"},{begin:"^[=\\*]{4,}\\n",end:"\\n^[=\\*]{4,}$",relevance:10},{className:"section",relevance:10,variants:[{begin:"^(={1,6})[ \t].+?([ \t]\\1)?$"},{begin:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{className:"meta",begin:"^:.+?:",end:"\\s",excludeEnd:!0,relevance:10},{className:"meta",begin:"^\\[.+?\\]$",relevance:0},{className:"quote",begin:"^_{4,}\\n",end:"\\n_{4,}$",relevance:10},{className:"code",begin:"^[\\-\\.]{4,}\\n",end:"\\n[\\-\\.]{4,}$",relevance:10},{begin:"^\\+{4,}\\n",end:"\\n\\+{4,}$",contains:[{begin:"<",end:">",subLanguage:"xml",relevance:0}],relevance:10},{className:"bullet",begin:"^(\\*+|-+|\\.+|[^\\n]+?::)\\s+"},{className:"symbol",begin:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",relevance:10}].concat([{begin:/\\[*_`]/},{begin:/\\\\\*{2}[^\n]*?\*{2}/},{begin:/\\\\_{2}[^\n]*_{2}/},{begin:/\\\\`{2}[^\n]*`{2}/},{begin:/[:;}][*_`](?![*_`])/}],t,n,[{className:"string",variants:[{begin:"``.+?''"},{begin:"`.+?'"}]},{className:"code",begin:/`{2}/,end:/(\n{2}|`{2})/},{className:"code",begin:"(`.+?`|\\+.+?\\+)",relevance:0},{className:"code",begin:"^[ \\t]",end:"$",relevance:0},{begin:"^'{3,}[ \\t]*$",relevance:10},{begin:"(link:)?(http|https|ftp|file|irc|image:?):\\S+?\\[[^[]*?\\]",returnBegin:!0,contains:[{begin:"(link|image:?):",relevance:0},{className:"link",begin:"\\w",end:"[^\\[]+",relevance:0},{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0,relevance:0}],relevance:10}])}};function Up(e){return e?"string"==typeof e?e:e.source:null}function Fp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Up(e)})).join("");return a}var Bp=function(e){var t="false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",n="get set args call";return{name:"AspectJ",keywords:t,illegal:/<\/|#/,contains:[e.COMMENT(/\/\*\*/,/\*\//,{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:/@[A-Za-z]+/}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"aspect",end:/[{;=]/,excludeEnd:!0,illegal:/[:;"\[\]]/,contains:[{beginKeywords:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"},e.UNDERSCORE_TITLE_MODE,{begin:/\([^\)]*/,end:/[)]+/,keywords:t+" "+n,excludeEnd:!1}]},{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,relevance:0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"pointcut after before around throwing returning",end:/[)]/,excludeEnd:!1,illegal:/["\[\]]/,contains:[{begin:Fp(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,contains:[e.UNDERSCORE_TITLE_MODE]}]},{begin:/[:]/,returnBegin:!0,end:/[{;]/,relevance:0,excludeEnd:!1,keywords:t,illegal:/["\[\]]/,contains:[{begin:Fp(e.UNDERSCORE_IDENT_RE,/\s*\(/),keywords:t+" "+n,relevance:0},e.QUOTE_STRING_MODE]},{beginKeywords:"new throw",relevance:0},{className:"function",begin:/\w+ +\w+(\.\w+)?\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,returnBegin:!0,end:/[{;=]/,keywords:t,excludeEnd:!0,contains:[{begin:Fp(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,relevance:0,keywords:t,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:/@[A-Za-z]+/}]}};var Gp=function(e){var t={begin:"`[\\s\\S]"};return{name:"AutoHotkey",case_insensitive:!0,aliases:["ahk"],keywords:{keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",literal:"true false NOT AND OR",built_in:"ComSpec Clipboard ClipboardAll ErrorLevel"},contains:[t,e.inherit(e.QUOTE_STRING_MODE,{contains:[t]}),e.COMMENT(";","$",{relevance:0}),e.C_BLOCK_COMMENT_MODE,{className:"number",begin:e.NUMBER_RE,relevance:0},{className:"variable",begin:"%[a-zA-Z0-9#_$@]+%"},{className:"built_in",begin:"^\\s*\\w+\\s*(,|%)"},{className:"title",variants:[{begin:'^[^\\n";]+::(?!=)'},{begin:'^[^\\n";]+:(?!=)',relevance:0}]},{className:"meta",begin:"^\\s*#\\w+",end:"$",relevance:0},{className:"built_in",begin:"A_[a-zA-Z0-9]+"},{begin:",\\s*,"}]}};var Yp=function(e){var t={variants:[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#cs","#ce"),e.COMMENT("#comments-start","#comments-end")]},n={begin:"\\$[A-z0-9_]+"},a={className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},r={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"AutoIt",case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"ByRef Case Const ContinueCase ContinueLoop Dim Do Else ElseIf EndFunc EndIf EndSelect EndSwitch EndWith Enum Exit ExitLoop For Func Global If In Local Next ReDim Return Select Static Step Switch Then To Until Volatile WEnd While With",built_in:"Abs ACos AdlibRegister AdlibUnRegister Asc AscW ASin Assign ATan AutoItSetOption AutoItWinGetTitle AutoItWinSetTitle Beep Binary BinaryLen BinaryMid BinaryToString BitAND BitNOT BitOR BitRotate BitShift BitXOR BlockInput Break Call CDTray Ceiling Chr ChrW ClipGet ClipPut ConsoleRead ConsoleWrite ConsoleWriteError ControlClick ControlCommand ControlDisable ControlEnable ControlFocus ControlGetFocus ControlGetHandle ControlGetPos ControlGetText ControlHide ControlListView ControlMove ControlSend ControlSetText ControlShow ControlTreeView Cos Dec DirCopy DirCreate DirGetSize DirMove DirRemove DllCall DllCallAddress DllCallbackFree DllCallbackGetPtr DllCallbackRegister DllClose DllOpen DllStructCreate DllStructGetData DllStructGetPtr DllStructGetSize DllStructSetData DriveGetDrive DriveGetFileSystem DriveGetLabel DriveGetSerial DriveGetType DriveMapAdd DriveMapDel DriveMapGet DriveSetLabel DriveSpaceFree DriveSpaceTotal DriveStatus EnvGet EnvSet EnvUpdate Eval Execute Exp FileChangeDir FileClose FileCopy FileCreateNTFSLink FileCreateShortcut FileDelete FileExists FileFindFirstFile FileFindNextFile FileFlush FileGetAttrib FileGetEncoding FileGetLongName FileGetPos FileGetShortcut FileGetShortName FileGetSize FileGetTime FileGetVersion FileInstall FileMove FileOpen FileOpenDialog FileRead FileReadLine FileReadToArray FileRecycle FileRecycleEmpty FileSaveDialog FileSelectFolder FileSetAttrib FileSetEnd FileSetPos FileSetTime FileWrite FileWriteLine Floor FtpSetProxy FuncName GUICreate GUICtrlCreateAvi GUICtrlCreateButton GUICtrlCreateCheckbox GUICtrlCreateCombo GUICtrlCreateContextMenu GUICtrlCreateDate GUICtrlCreateDummy GUICtrlCreateEdit GUICtrlCreateGraphic GUICtrlCreateGroup GUICtrlCreateIcon GUICtrlCreateInput GUICtrlCreateLabel GUICtrlCreateList GUICtrlCreateListView GUICtrlCreateListViewItem GUICtrlCreateMenu GUICtrlCreateMenuItem GUICtrlCreateMonthCal GUICtrlCreateObj GUICtrlCreatePic GUICtrlCreateProgress GUICtrlCreateRadio GUICtrlCreateSlider GUICtrlCreateTab GUICtrlCreateTabItem GUICtrlCreateTreeView GUICtrlCreateTreeViewItem GUICtrlCreateUpdown GUICtrlDelete GUICtrlGetHandle GUICtrlGetState GUICtrlRead GUICtrlRecvMsg GUICtrlRegisterListViewSort GUICtrlSendMsg GUICtrlSendToDummy GUICtrlSetBkColor GUICtrlSetColor GUICtrlSetCursor GUICtrlSetData GUICtrlSetDefBkColor GUICtrlSetDefColor GUICtrlSetFont GUICtrlSetGraphic GUICtrlSetImage GUICtrlSetLimit GUICtrlSetOnEvent GUICtrlSetPos GUICtrlSetResizing GUICtrlSetState GUICtrlSetStyle GUICtrlSetTip GUIDelete GUIGetCursorInfo GUIGetMsg GUIGetStyle GUIRegisterMsg GUISetAccelerators GUISetBkColor GUISetCoord GUISetCursor GUISetFont GUISetHelp GUISetIcon GUISetOnEvent GUISetState GUISetStyle GUIStartGroup GUISwitch Hex HotKeySet HttpSetProxy HttpSetUserAgent HWnd InetClose InetGet InetGetInfo InetGetSize InetRead IniDelete IniRead IniReadSection IniReadSectionNames IniRenameSection IniWrite IniWriteSection InputBox Int IsAdmin IsArray IsBinary IsBool IsDeclared IsDllStruct IsFloat IsFunc IsHWnd IsInt IsKeyword IsNumber IsObj IsPtr IsString Log MemGetStats Mod MouseClick MouseClickDrag MouseDown MouseGetCursor MouseGetPos MouseMove MouseUp MouseWheel MsgBox Number ObjCreate ObjCreateInterface ObjEvent ObjGet ObjName OnAutoItExitRegister OnAutoItExitUnRegister Ping PixelChecksum PixelGetColor PixelSearch ProcessClose ProcessExists ProcessGetStats ProcessList ProcessSetPriority ProcessWait ProcessWaitClose ProgressOff ProgressOn ProgressSet Ptr Random RegDelete RegEnumKey RegEnumVal RegRead RegWrite Round Run RunAs RunAsWait RunWait Send SendKeepActive SetError SetExtended ShellExecute ShellExecuteWait Shutdown Sin Sleep SoundPlay SoundSetWaveVolume SplashImageOn SplashOff SplashTextOn Sqrt SRandom StatusbarGetText StderrRead StdinWrite StdioClose StdoutRead String StringAddCR StringCompare StringFormat StringFromASCIIArray StringInStr StringIsAlNum StringIsAlpha StringIsASCII StringIsDigit StringIsFloat StringIsInt StringIsLower StringIsSpace StringIsUpper StringIsXDigit StringLeft StringLen StringLower StringMid StringRegExp StringRegExpReplace StringReplace StringReverse StringRight StringSplit StringStripCR StringStripWS StringToASCIIArray StringToBinary StringTrimLeft StringTrimRight StringUpper Tan TCPAccept TCPCloseSocket TCPConnect TCPListen TCPNameToIP TCPRecv TCPSend TCPShutdown, UDPShutdown TCPStartup, UDPStartup TimerDiff TimerInit ToolTip TrayCreateItem TrayCreateMenu TrayGetMsg TrayItemDelete TrayItemGetHandle TrayItemGetState TrayItemGetText TrayItemSetOnEvent TrayItemSetState TrayItemSetText TraySetClick TraySetIcon TraySetOnEvent TraySetPauseIcon TraySetState TraySetToolTip TrayTip UBound UDPBind UDPCloseSocket UDPOpen UDPRecv UDPSend VarGetType WinActivate WinActive WinClose WinExists WinFlash WinGetCaretPos WinGetClassList WinGetClientSize WinGetHandle WinGetPos WinGetProcess WinGetState WinGetText WinGetTitle WinKill WinList WinMenuSelectItem WinMinimizeAll WinMinimizeAllUndo WinMove WinSetOnTop WinSetState WinSetTitle WinSetTrans WinWait WinWaitActive WinWaitClose WinWaitNotActive",literal:"True False And Null Not Or Default"},contains:[t,n,a,r,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":["EndRegion","forcedef","forceref","ignorefunc","include","include-once","NoTrayIcon","OnAutoItStartRegister","pragma","Region","RequireAdmin","Tidy_Off","Tidy_On","Tidy_Parameters"]},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",keywords:{"meta-keyword":"include"},end:"$",contains:[a,{className:"meta-string",variants:[{begin:"<",end:">"},{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]}]},a,t]},{className:"symbol",begin:"@[A-z0-9_]+"},{className:"function",beginKeywords:"Func",end:"$",illegal:"\\$|\\[|%",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:[n,a,r]}]}]}};var Hp=function(e){return{name:"AVR Assembly",case_insensitive:!0,keywords:{$pattern:"\\.?"+e.IDENT_RE,keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf",meta:".byte .cseg .db .def .device .dseg .dw .endmacro .equ .eseg .exit .include .list .listmac .macro .nolist .org .set"},contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT(";","$",{relevance:0}),e.C_NUMBER_MODE,e.BINARY_NUMBER_MODE,{className:"number",begin:"\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"},e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",illegal:"[^\\\\][^']"},{className:"symbol",begin:"^[A-Za-z0-9_.$]+:"},{className:"meta",begin:"#",end:"$"},{className:"subst",begin:"@[0-9]+"}]}};var Vp=function(e){return{name:"Awk",keywords:{keyword:"BEGIN END if else while do for in break continue delete next nextfile function func exit|10"},contains:[{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/(u|b)?r?'''/,end:/'''/,relevance:10},{begin:/(u|b)?r?"""/,end:/"""/,relevance:10},{begin:/(u|r|ur)'/,end:/'/,relevance:10},{begin:/(u|r|ur)"/,end:/"/,relevance:10},{begin:/(b|br)'/,end:/'/},{begin:/(b|br)"/,end:/"/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.REGEXP_MODE,e.HASH_COMMENT_MODE,e.NUMBER_MODE]}};var qp=function(e){return{name:"X++",aliases:["x++"],keywords:{keyword:["abstract","as","asc","avg","break","breakpoint","by","byref","case","catch","changecompany","class","client","client","common","const","continue","count","crosscompany","delegate","delete_from","desc","display","div","do","edit","else","eventhandler","exists","extends","final","finally","firstfast","firstonly","firstonly1","firstonly10","firstonly100","firstonly1000","flush","for","forceliterals","forcenestedloop","forceplaceholders","forceselectorder","forupdate","from","generateonly","group","hint","if","implements","in","index","insert_recordset","interface","internal","is","join","like","maxof","minof","mod","namespace","new","next","nofetch","notexists","optimisticlock","order","outer","pessimisticlock","print","private","protected","public","readonly","repeatableread","retry","return","reverse","select","server","setting","static","sum","super","switch","this","throw","try","ttsabort","ttsbegin","ttscommit","unchecked","update_recordset","using","validtimestate","void","where","while"],built_in:["anytype","boolean","byte","char","container","date","double","enum","guid","int","int64","long","real","short","str","utcdatetime","var"],literal:["default","false","null","true"]},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]}]}};function zp(e){return e?"string"==typeof e?e:e.source:null}function Wp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return zp(e)})).join("");return a}var $p=function(e){var t={},n={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:Wp(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});var a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},r={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},i={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(i);var o={begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]},s=e.SHEBANG({binary:"(".concat(["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|"),")"),relevance:10}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z._-]+\b/,keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp"},contains:[s,e.SHEBANG(),l,o,e.HASH_COMMENT_MODE,r,i,{className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}};var Qp=function(e){return{name:"BASIC",case_insensitive:!0,illegal:"^.",keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_$%!#]*",keyword:"ABS ASC AND ATN AUTO|0 BEEP BLOAD|10 BSAVE|10 CALL CALLS CDBL CHAIN CHDIR CHR$|10 CINT CIRCLE CLEAR CLOSE CLS COLOR COM COMMON CONT COS CSNG CSRLIN CVD CVI CVS DATA DATE$ DEFDBL DEFINT DEFSNG DEFSTR DEF|0 SEG USR DELETE DIM DRAW EDIT END ENVIRON ENVIRON$ EOF EQV ERASE ERDEV ERDEV$ ERL ERR ERROR EXP FIELD FILES FIX FOR|0 FRE GET GOSUB|10 GOTO HEX$ IF THEN ELSE|0 INKEY$ INP INPUT INPUT# INPUT$ INSTR IMP INT IOCTL IOCTL$ KEY ON OFF LIST KILL LEFT$ LEN LET LINE LLIST LOAD LOC LOCATE LOF LOG LPRINT USING LSET MERGE MID$ MKDIR MKD$ MKI$ MKS$ MOD NAME NEW NEXT NOISE NOT OCT$ ON OR PEN PLAY STRIG OPEN OPTION BASE OUT PAINT PALETTE PCOPY PEEK PMAP POINT POKE POS PRINT PRINT] PSET PRESET PUT RANDOMIZE READ REM RENUM RESET|0 RESTORE RESUME RETURN|0 RIGHT$ RMDIR RND RSET RUN SAVE SCREEN SGN SHELL SIN SOUND SPACE$ SPC SQR STEP STICK STOP STR$ STRING$ SWAP SYSTEM TAB TAN TIME$ TIMER TROFF TRON TO USR VAL VARPTR VARPTR$ VIEW WAIT WHILE WEND WIDTH WINDOW WRITE XOR"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("REM","$",{relevance:10}),e.COMMENT("'","$",{relevance:0}),{className:"symbol",begin:"^[0-9]+ ",relevance:10},{className:"number",begin:"\\b\\d+(\\.\\d+)?([edED]\\d+)?[#!]?",relevance:0},{className:"number",begin:"(&[hH][0-9a-fA-F]{1,4})"},{className:"number",begin:"(&[oO][0-7]{1,6})"}]}};var Kp=function(e){return{name:"Backus–Naur Form",contains:[{className:"attribute",begin:/</,end:/>/},{begin:/::=/,end:/$/,contains:[{begin:/</,end:/>/},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}]}};var jp=function(e){var t={className:"literal",begin:/[+-]/,relevance:0};return{name:"Brainfuck",aliases:["bf"],contains:[e.COMMENT("[^\\[\\]\\.,\\+\\-<> \r\n]","[\\[\\]\\.,\\+\\-<> \r\n]",{returnEnd:!0,relevance:0}),{className:"title",begin:"[\\[\\]]",relevance:0},{className:"string",begin:"[\\.,]",relevance:0},{begin:/(?:\+\+|--)/,contains:[t]},t]}};function Xp(e){return e?"string"==typeof e?e:e.source:null}function Zp(e){return Jp("(",e,")?")}function Jp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Xp(e)})).join("");return a}var eg=function(e){var t,n,a=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+Zp(r)+"[a-zA-Z_]\\w*"+Zp("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:Zp(r)+e.IDENT_RE,relevance:0},d=Zp(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:Jp(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,Jp("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}}(e);return a.disableAutodetect=!0,a.aliases=[],e.getLanguage("c")||(t=a.aliases).push.apply(t,["c","h"]),e.getLanguage("cpp")||(n=a.aliases).push.apply(n,["cc","c++","h++","hpp","hh","hxx","cxx"]),a};function tg(e){return e?"string"==typeof e?e:e.source:null}function ng(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return tg(e)})).join("")}("(",e,")?")}var ag=function(e){var t=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),n="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",r="(decltype\\(auto\\)|"+ng(a)+"[a-zA-Z_]\\w*"+ng("<[^<>]+>")+")",i={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},o={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},s={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},l={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(o,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},c={className:"title",begin:ng(a)+e.IDENT_RE,relevance:0},_=ng(a)+e.IDENT_RE+"\\s*\\(",d={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},u=[l,i,t,e.C_BLOCK_COMMENT_MODE,s,o],m={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:d,contains:u.concat([{begin:/\(/,end:/\)/,keywords:d,contains:u.concat(["self"]),relevance:0}]),relevance:0},p={className:"function",begin:"("+r+"[\\*&\\s]+)+"+_,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:d,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:n,keywords:d,relevance:0},{begin:_,returnBegin:!0,contains:[c],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[t,e.C_BLOCK_COMMENT_MODE,o,s,i,{begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,o,s,i]}]},i,t,e.C_BLOCK_COMMENT_MODE,l]};return{name:"C",aliases:["h"],keywords:d,disableAutodetect:!0,illegal:"</",contains:[].concat(m,p,u,[l,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:d,contains:["self",i]},{begin:e.IDENT_RE+"::",keywords:d},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:l,strings:o,keywords:d}}};var rg=function(e){var t="div mod in and or not xor asserterror begin case do downto else end exit for if of repeat then to until while with var",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],a={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},r={className:"string",begin:/(#\d+)+/},i={className:"function",beginKeywords:"procedure",end:/[:;]/,keywords:"procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[a,r]}].concat(n)},o={className:"class",begin:"OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)",returnBegin:!0,contains:[e.TITLE_MODE,i]};return{name:"C/AL",case_insensitive:!0,keywords:{keyword:t,literal:"false true"},illegal:/\/\*/,contains:[a,r,{className:"number",begin:"\\b\\d+(\\.\\d+)?(DT|D|T)",relevance:0},{className:"string",begin:'"',end:'"'},e.NUMBER_MODE,o,i]}};var ig=function(e){return{name:"Cap’n Proto",aliases:["capnp"],keywords:{keyword:"struct enum interface union group import using const annotation extends in of on as with from fixed",built_in:"Void Bool Int8 Int16 Int32 Int64 UInt8 UInt16 UInt32 UInt64 Float32 Float64 Text Data AnyPointer AnyStruct Capability List",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.HASH_COMMENT_MODE,{className:"meta",begin:/@0x[\w\d]{16};/,illegal:/\n/},{className:"symbol",begin:/@\d+\b/},{className:"class",beginKeywords:"struct enum",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"class",beginKeywords:"interface",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]}]}};var og=function(e){var t="assembly module package import alias class interface object given value assign void function new of extends satisfies abstracts in out return break continue throw assert dynamic if else switch case for while try catch finally then let this outer super is exists nonempty",n={className:"subst",excludeBegin:!0,excludeEnd:!0,begin:/``/,end:/``/,keywords:t,relevance:10},a=[{className:"string",begin:'"""',end:'"""',relevance:10},{className:"string",begin:'"',end:'"',contains:[n]},{className:"string",begin:"'",end:"'"},{className:"number",begin:"#[0-9a-fA-F_]+|\\$[01_]+|[0-9_]+(?:\\.[0-9_](?:[eE][+-]?\\d+)?)?[kMGTPmunpf]?",relevance:0}];return n.contains=a,{name:"Ceylon",keywords:{keyword:t+" shared abstract formal default actual variable late native deprecated final sealed annotation suppressWarnings small",meta:"doc by license see throws tagged"},illegal:"\\$[^01]|#[^0-9a-fA-F]",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),{className:"meta",begin:'@[a-z]\\w*(?::"[^"]*")?'}].concat(a)}};var sg=function(e){return{name:"Clean",aliases:["icl","dcl"],keywords:{keyword:"if let in with where case of class instance otherwise implementation definition system module from import qualified as special code inline foreign export ccall stdcall generic derive infix infixl infixr",built_in:"Int Real Char Bool",literal:"True False"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{begin:"->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"}]}};var lg=function(e){var t="a-zA-Z_\\-!.?+*=<>&#'",n="["+t+"]["+t+"0-9/;:]*",a="def defonce defprotocol defstruct defmulti defmethod defn- defn defmacro deftype defrecord",r={$pattern:n,"builtin-name":a+" cond apply if-not if-let if not not= =|0 <|0 >|0 <=|0 >=|0 ==|0 +|0 /|0 *|0 -|0 rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy first rest cons cast coll last butlast sigs reify second ffirst fnext nfirst nnext meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize"},i={begin:n,relevance:0},o={className:"number",begin:"[-+]?\\d+(\\.\\d+)?",relevance:0},s=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),l=e.COMMENT(";","$",{relevance:0}),c={className:"literal",begin:/\b(true|false|nil)\b/},_={begin:"[\\[\\{]",end:"[\\]\\}]"},d={className:"comment",begin:"\\^"+n},u=e.COMMENT("\\^\\{","\\}"),m={className:"symbol",begin:"[:]{1,2}"+n},p={begin:"\\(",end:"\\)"},g={endsWithParent:!0,relevance:0},E={keywords:r,className:"name",begin:n,relevance:0,starts:g},S=[p,s,d,u,l,m,_,o,c,i],b={beginKeywords:a,lexemes:n,end:'(\\[|#|\\d|"|:|\\{|\\)|\\(|$)',contains:[{className:"title",begin:n,relevance:0,excludeEnd:!0,endsParent:!0}].concat(S)};return p.contains=[e.COMMENT("comment",""),b,E,g],g.contains=S,_.contains=S,u.contains=[_],{name:"Clojure",aliases:["clj"],illegal:/\S/,contains:[p,s,d,u,l,m,_,o,c]}};var cg=function(e){return{name:"Clojure REPL",contains:[{className:"meta",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,subLanguage:"clojure"}}]}};var _g=function(e){return{name:"CMake",aliases:["cmake.in"],case_insensitive:!0,keywords:{keyword:"break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined"},contains:[{className:"variable",begin:/\$\{/,end:/\}/},e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE]}},dg=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],ug=["true","false","null","undefined","NaN","Infinity"],mg=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);var pg=function(e){var t,n={keyword:dg.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((t=["var","const","let","function","static"],function(e){return!t.includes(e)})),literal:ug.concat(["yes","no","on","off"]),built_in:mg.concat(["npm","print"])},a="[A-Za-z$_][0-9A-Za-z$_]*",r={className:"subst",begin:/#\{/,end:/\}/,keywords:n},i=[e.BINARY_NUMBER_MODE,e.inherit(e.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,r]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r]}]},{className:"regexp",variants:[{begin:"///",end:"///",contains:[r,e.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)",relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+a},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{begin:"```",end:"```"},{begin:"`",end:"`"}]}];r.contains=i;var o=e.inherit(e.TITLE_MODE,{begin:a}),s="(\\(.*\\)\\s*)?\\B[-=]>",l={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:n,contains:["self"].concat(i)}]};return{name:"CoffeeScript",aliases:["coffee","cson","iced"],keywords:n,illegal:/\/\*/,contains:i.concat([e.COMMENT("###","###"),e.HASH_COMMENT_MODE,{className:"function",begin:"^\\s*"+a+"\\s*=\\s*"+s,end:"[-=]>",returnBegin:!0,contains:[o,l]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function",begin:s,end:"[-=]>",returnBegin:!0,contains:[l]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[o]},o]},{begin:a+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};var gg=function(e){return{name:"Coq",keywords:{keyword:"_|0 as at cofix else end exists exists2 fix for forall fun if IF in let match mod Prop return Set then Type using where with Abort About Add Admit Admitted All Arguments Assumptions Axiom Back BackTo Backtrack Bind Blacklist Canonical Cd Check Class Classes Close Coercion Coercions CoFixpoint CoInductive Collection Combined Compute Conjecture Conjectures Constant constr Constraint Constructors Context Corollary CreateHintDb Cut Declare Defined Definition Delimit Dependencies Dependent Derive Drop eauto End Equality Eval Example Existential Existentials Existing Export exporting Extern Extract Extraction Fact Field Fields File Fixpoint Focus for From Function Functional Generalizable Global Goal Grab Grammar Graph Guarded Heap Hint HintDb Hints Hypotheses Hypothesis ident Identity If Immediate Implicit Import Include Inductive Infix Info Initial Inline Inspect Instance Instances Intro Intros Inversion Inversion_clear Language Left Lemma Let Libraries Library Load LoadPath Local Locate Ltac ML Mode Module Modules Monomorphic Morphism Next NoInline Notation Obligation Obligations Opaque Open Optimize Options Parameter Parameters Parametric Path Paths pattern Polymorphic Preterm Print Printing Program Projections Proof Proposition Pwd Qed Quit Rec Record Recursive Redirect Relation Remark Remove Require Reserved Reset Resolve Restart Rewrite Right Ring Rings Save Scheme Scope Scopes Script Search SearchAbout SearchHead SearchPattern SearchRewrite Section Separate Set Setoid Show Solve Sorted Step Strategies Strategy Structure SubClass Table Tables Tactic Term Test Theorem Time Timeout Transparent Type Typeclasses Types Undelimit Undo Unfocus Unfocused Unfold Universe Universes Unset Unshelve using Variable Variables Variant Verbose Visibility where with",built_in:"abstract absurd admit after apply as assert assumption at auto autorewrite autounfold before bottom btauto by case case_eq cbn cbv change classical_left classical_right clear clearbody cofix compare compute congruence constr_eq constructor contradict contradiction cut cutrewrite cycle decide decompose dependent destruct destruction dintuition discriminate discrR do double dtauto eapply eassumption eauto ecase econstructor edestruct ediscriminate eelim eexact eexists einduction einjection eleft elim elimtype enough equality erewrite eright esimplify_eq esplit evar exact exactly_once exfalso exists f_equal fail field field_simplify field_simplify_eq first firstorder fix fold fourier functional generalize generalizing gfail give_up has_evar hnf idtac in induction injection instantiate intro intro_pattern intros intuition inversion inversion_clear is_evar is_var lapply lazy left lia lra move native_compute nia nsatz omega once pattern pose progress proof psatz quote record red refine reflexivity remember rename repeat replace revert revgoals rewrite rewrite_strat right ring ring_simplify rtauto set setoid_reflexivity setoid_replace setoid_rewrite setoid_symmetry setoid_transitivity shelve shelve_unifiable simpl simple simplify_eq solve specialize split split_Rabs split_Rmult stepl stepr subst sum swap symmetry tactic tauto time timeout top transitivity trivial try tryif unfold unify until using vm_compute with"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("\\(\\*","\\*\\)"),e.C_NUMBER_MODE,{className:"type",excludeBegin:!0,begin:"\\|\\s*",end:"\\w+"},{begin:/[-=]>/}]}};var Eg=function(e){return{name:"Caché Object Script",case_insensitive:!0,aliases:["cls"],keywords:"property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii",contains:[{className:"number",begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)",relevance:0},{className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"comment",begin:/;/,end:"$",relevance:0},{className:"built_in",begin:/(?:\$\$?|\.\.)\^?[a-zA-Z]+/},{className:"built_in",begin:/\$\$\$[a-zA-Z]+/},{className:"built_in",begin:/%[a-z]+(?:\.[a-z]+)*/},{className:"symbol",begin:/\^%?[a-zA-Z][\w]*/},{className:"keyword",begin:/##class|##super|#define|#dim/},{begin:/&sql\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"sql"},{begin:/&(js|jscript|javascript)</,end:/>/,excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"},{begin:/&html<\s*</,end:/>\s*>/,subLanguage:"xml"}]}};function Sg(e){return e?"string"==typeof e?e:e.source:null}function bg(e){return fg("(",e,")?")}function fg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Sg(e)})).join("");return a}var Tg=function(e){var t,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),a="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+bg(r)+"[a-zA-Z_]\\w*"+bg("<[^<>]+>")+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:bg(r)+e.IDENT_RE,relevance:0},d=bg(r)+e.IDENT_RE+"\\s*\\(",u={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"_Bool _Complex _Imaginary",_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"],literal:"true false nullptr NULL"},m={className:"function.dispatch",relevance:0,keywords:u,begin:fg(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,e.IDENT_RE,(t=/\s*\(/,fg("(?=",t,")")))},p=[m,c,o,n,e.C_BLOCK_COMMENT_MODE,l,s],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:p.concat([{begin:/\(/,end:/\)/,keywords:u,contains:p.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+i+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,l]},{className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,s,l,o,{begin:/\(/,end:/\)/,keywords:u,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,s,l,o]}]},o,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(g,E,m,p,[c,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",end:">",keywords:u,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:u},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:s,keywords:u}}};var Cg=function(e){var t="group clone ms master location colocation order fencing_topology rsc_ticket acl_target acl_group user role tag xml";return{name:"crmsh",aliases:["crm","pcmk"],case_insensitive:!0,keywords:{keyword:"params meta operations op rule attributes utilization read write deny defined not_defined in_range date spec in ref reference attribute type xpath version and or lt gt tag lte gte eq ne \\ number string",literal:"Master Started Slave Stopped start promote demote stop monitor true false"},contains:[e.HASH_COMMENT_MODE,{beginKeywords:"node",starts:{end:"\\s*([\\w_-]+:)?",starts:{className:"title",end:"\\s*[\\$\\w_][\\w_-]*"}}},{beginKeywords:"primitive rsc_template",starts:{className:"title",end:"\\s*[\\$\\w_][\\w_-]*",starts:{end:"\\s*@?[\\w_][\\w_\\.:-]*"}}},{begin:"\\b("+t.split(" ").join("|")+")\\s+",keywords:t,starts:{className:"title",end:"[\\$\\w_][\\w_-]*"}},{beginKeywords:"property rsc_defaults op_defaults",starts:{className:"title",end:"\\s*([\\w_-]+:)?"}},e.QUOTE_STRING_MODE,{className:"meta",begin:"(ocf|systemd|service|lsb):[\\w_:-]+",relevance:0},{className:"number",begin:"\\b\\d+(\\.\\d+)?(ms|s|h|m)?",relevance:0},{className:"literal",begin:"[-]?(infinity|inf)",relevance:0},{className:"attr",begin:/([A-Za-z$_#][\w_-]+)=/,relevance:0},{className:"tag",begin:"</?",end:"/?>",relevance:0}]}};var Ng=function(e){var t="(_?[ui](8|16|32|64|128))?",n="[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",a="[A-Za-z_]\\w*(::\\w+)*(\\?|!)?",r={$pattern:"[a-zA-Z_]\\w*[!?=]?",keyword:"abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",literal:"false nil true"},i={className:"subst",begin:/#\{/,end:/\}/,keywords:r},o={className:"template-variable",variants:[{begin:"\\{\\{",end:"\\}\\}"},{begin:"\\{%",end:"%\\}"}],keywords:r};function s(e,t){var n=[{begin:e,end:t}];return n[0].contains=n,n}var l={className:"string",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[Qwi]?\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%[Qwi]?\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%[Qwi]?\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%[Qwi]?<",end:">",contains:s("<",">")},{begin:"%[Qwi]?\\|",end:"\\|"},{begin:/<<-\w+$/,end:/^\s*\w+$/}],relevance:0},c={className:"string",variants:[{begin:"%q\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%q\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%q\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%q<",end:">",contains:s("<",">")},{begin:"%q\\|",end:"\\|"},{begin:/<<-'\w+'$/,end:/^\s*\w+$/}],relevance:0},_={begin:"(?!%\\})("+e.RE_STARTERS_RE+"|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",keywords:"case if select unless until when while",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"//[a-z]*",relevance:0},{begin:"/(?!\\/)",end:"/[a-z]*"}]}],relevance:0},d=[o,l,c,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"%r\\(",end:"\\)",contains:s("\\(","\\)")},{begin:"%r\\[",end:"\\]",contains:s("\\[","\\]")},{begin:"%r\\{",end:/\}/,contains:s(/\{/,/\}/)},{begin:"%r<",end:">",contains:s("<",">")},{begin:"%r\\|",end:"\\|"}],relevance:0},_,{className:"meta",begin:"@\\[",end:"\\]",contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"})]},e.HASH_COMMENT_MODE,{className:"class",beginKeywords:"class module struct",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a}),{begin:"<"}]},{className:"class",beginKeywords:"lib enum union",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})]},{beginKeywords:"annotation",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:2},{className:"function",beginKeywords:"def",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:n,endsParent:!0})]},{className:"function",beginKeywords:"fun macro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:n,endsParent:!0})],relevance:2},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":",contains:[l,{begin:n}],relevance:0},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_?[-+]?[0-9_]*)?(_?f(32|64))?(?!_)"},{begin:"\\b([1-9][0-9_]*|0)"+t}],relevance:0}];return i.contains=d,o.contains=d.slice(1),{name:"Crystal",aliases:["cr"],keywords:r,contains:d}};var Rg=function(e){var t={keyword:["abstract","as","base","break","case","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"]),built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],literal:["default","false","null","true"]},n=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},r={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},i=e.inherit(r,{illegal:/\n/}),o={className:"subst",begin:/\{/,end:/\}/,keywords:t},s=e.inherit(o,{illegal:/\n/}),l={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,s]},c={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},o]},_=e.inherit(c,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},s]});o.contains=[c,l,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.C_BLOCK_COMMENT_MODE],s.contains=[_,l,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];var d={variants:[c,l,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},u={begin:"<",end:">",contains:[{beginKeywords:"in out"},n]},m=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",p={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:t,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},d,a,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},n,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"meta-string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+m+"\\s+)+"+e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:t,contains:[{beginKeywords:["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"].join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,u],relevance:0},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,relevance:0,contains:[d,a,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},p]}};var vg=function(e){return{name:"CSP",case_insensitive:!1,keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_-]*",keyword:"base-uri child-src connect-src default-src font-src form-action frame-ancestors frame-src img-src media-src object-src plugin-types report-uri sandbox script-src style-src"},contains:[{className:"string",begin:"'",end:"'"},{className:"attribute",begin:"^Content",end:":",excludeEnd:!0}]}},Og=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],hg=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],yg=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],Ig=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],Ag=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();function Dg(e){return e?"string"==typeof e?e:e.source:null}function Mg(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return Dg(e)})).join("")}("(?=",e,")")}var Lg=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[e.C_BLOCK_COMMENT_MODE,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/},e.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+yg.join("|")+")"},{begin:"::("+Ig.join("|")+")"}]},{className:"attribute",begin:"\\b("+Ag.join("|")+")\\b"},{begin:":",end:"[;}]",contains:[t.HEXCOLOR,t.IMPORTANT,e.CSS_NUMBER_MODE].concat(n,[{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},{className:"built_in",begin:/[\w-]+(?=\()/}])},{begin:Mg(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:hg.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"}].concat(n,[e.CSS_NUMBER_MODE])}]},{className:"selector-tag",begin:"\\b("+Og.join("|")+")\\b"}]}};var wg=function(e){var t={$pattern:e.UNDERSCORE_IDENT_RE,keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",built_in:"bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring",literal:"false null true"},n="((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))",a="\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",r={className:"number",begin:"\\b"+n+"(L|u|U|Lu|LU|uL|UL)?",relevance:0},i={className:"number",begin:"\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|"+n+"(i|[fF]i|Li))",relevance:0},o={className:"string",begin:"'("+a+"|.)",end:"'",illegal:"."},s={className:"string",begin:'"',contains:[{begin:a,relevance:0}],end:'"[cwd]?'},l=e.COMMENT("\\/\\+","\\+\\/",{contains:["self"],relevance:10});return{name:"D",keywords:t,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,{className:"string",begin:'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',relevance:10},s,{className:"string",begin:'[rq]"',end:'"[cwd]?',relevance:5},{className:"string",begin:"`",end:"`[cwd]?"},{className:"string",begin:'q"\\{',end:'\\}"'},i,r,o,{className:"meta",begin:"^#!",end:"$",relevance:5},{className:"meta",begin:"#(line)",end:"$",relevance:5},{className:"keyword",begin:"@[a-zA-Z_][a-zA-Z_\\d]*"}]}};function xg(e){return e?"string"==typeof e?e:e.source:null}function Pg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return xg(e)})).join("");return a}var kg=function(e){var t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:Pg(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},a={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},r={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};a.contains.push(r),r.contains.push(a);var i=[t,n];return a.contains=a.contains.concat(i),r.contains=r.contains.concat(i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:i=i.concat(a,r)},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:i}]}]},t,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},a,r,{className:"quote",begin:"^>\\s+",contains:i,end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},n,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}};var Ug=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},n={className:"subst",variants:[{begin:/\$\{/,end:/\}/}],keywords:"true false null this is new super"},a={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"""',end:'"""',contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]}]};n.contains=[e.C_NUMBER_MODE,a];var r=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],i=r.map((function(e){return"".concat(e,"?")}));return{name:"Dart",keywords:{keyword:"abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is late library mixin new null on operator part required rethrow return set show static super switch sync this throw true try typedef var void while with yield",built_in:r.concat(i).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]),$pattern:/[A-Za-z][A-Za-z0-9_]*\??/},contains:[a,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".",end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}};var Fg=function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],a={className:"meta",variants:[{begin:/\{\$/,end:/\}/},{begin:/\(\*\$/,end:/\*\)/}]},r={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},i={className:"string",begin:/(#\d+)+/},o={begin:e.IDENT_RE+"\\s*=\\s*class\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE]},s={className:"function",beginKeywords:"function constructor destructor procedure",end:/[:;]/,keywords:"function constructor|10 destructor|10 procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[r,i,a].concat(n)},a].concat(n)};return{name:"Delphi",aliases:["dpr","dfm","pas","pascal","freepascal","lazarus","lpr","lfm"],case_insensitive:!0,keywords:t,illegal:/"|\$[G-Zg-z]|\/\*|<\/|\|/,contains:[r,i,e.NUMBER_MODE,{className:"number",relevance:0,variants:[{begin:"\\$[0-9A-Fa-f]+"},{begin:"&[0-7]+"},{begin:"%[01]+"}]},o,s,a].concat(n)}};var Bg=function(e){return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,variants:[{begin:/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/},{begin:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{begin:/^--- +\d+,\d+ +----$/}]},{className:"comment",variants:[{begin:/Index: /,end:/$/},{begin:/^index/,end:/$/},{begin:/={3,}/,end:/$/},{begin:/^-{3}/,end:/$/},{begin:/^\*{3} /,end:/$/},{begin:/^\+{3}/,end:/$/},{begin:/^\*{15}$/},{begin:/^diff --git/,end:/$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}};var Gg=function(e){var t={begin:/\|[A-Za-z]+:?/,keywords:{name:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone"},contains:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE]};return{name:"Django",aliases:["jinja"],case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{%\s*comment\s*%\}/,/\{%\s*endcomment\s*%\}/),e.COMMENT(/\{#/,/#\}/),{className:"template-tag",begin:/\{%/,end:/%\}/,contains:[{className:"name",begin:/\w+/,keywords:{name:"comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim"},starts:{endsWithParent:!0,keywords:"in by as",contains:[t],relevance:0}}]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[t]}]}};var Yg=function(e){return{name:"DNS Zone",aliases:["bind","zone"],keywords:{keyword:"IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:/^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/},{className:"number",begin:"((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b"},{className:"number",begin:"((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b"},e.inherit(e.NUMBER_MODE,{begin:/\b\d+[dhwm]?/})]}};var Hg=function(e){return{name:"Dockerfile",aliases:["docker"],case_insensitive:!0,keywords:"from maintainer expose env arg user onbuild stopsignal",contains:[e.HASH_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{beginKeywords:"run cmd entrypoint volume add copy workdir label healthcheck shell",starts:{end:/[^\\]$/,subLanguage:"bash"}}],illegal:"</"}};var Vg=function(e){var t=e.COMMENT(/^\s*@?rem\b/,/$/,{relevance:10});return{name:"Batch file (DOS)",aliases:["bat","cmd"],case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",built_in:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux shift cd dir echo setlocal endlocal set pause copy append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shift sort start subst time title tree type ver verify vol ping net ipconfig taskkill xcopy ren del"},contains:[{className:"variable",begin:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{className:"function",begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",end:"goto:eof",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),t]},{className:"number",begin:"\\b\\d+",relevance:0},t]}};var qg=function(e){return{keywords:"dsconfig",contains:[{className:"keyword",begin:"^dsconfig",end:/\s/,excludeEnd:!0,relevance:10},{className:"built_in",begin:/(list|create|get|set|delete)-(\w+)/,end:/\s/,excludeEnd:!0,illegal:"!@#$%^&*()",relevance:10},{className:"built_in",begin:/--(\w+)/,end:/\s/,excludeEnd:!0},{className:"string",begin:/"/,end:/"/},{className:"string",begin:/'/,end:/'/},{className:"string",begin:/[\w\-?]+:\w+/,end:/\W/,relevance:0},{className:"string",begin:/\w+(\-\w+)*/,end:/(?=\W)/,relevance:0},e.HASH_COMMENT_MODE]}};var zg=function(e){var t={className:"string",variants:[e.inherit(e.QUOTE_STRING_MODE,{begin:'((u8?|U)|L)?"'}),{begin:'(u8?|U)?R"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{begin:"'\\\\?.",end:"'",illegal:"."}]},n={className:"number",variants:[{begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},{begin:e.C_NUMBER_RE}],relevance:0},a={className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef ifdef ifndef"},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",end:"$",keywords:{"meta-keyword":"include"},contains:[e.inherit(t,{className:"meta-string"}),{className:"meta-string",begin:"<",end:">",illegal:"\\n"}]},t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r={className:"variable",begin:/&[a-z\d_]*\b/},i={className:"meta-keyword",begin:"/[a-z][a-z\\d-]*/"},o={className:"symbol",begin:"^\\s*[a-zA-Z_][a-zA-Z\\d_]*:"},s={className:"params",begin:"<",end:">",contains:[n,r]},l={className:"class",begin:/[a-zA-Z_][a-zA-Z\d_@]*\s\{/,end:/[{;=]/,returnBegin:!0,excludeEnd:!0};return{name:"Device Tree",keywords:"",contains:[{className:"class",begin:"/\\s*\\{",end:/\};/,relevance:10,contains:[r,i,o,l,s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,t]},r,i,o,l,s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,t,a,{begin:e.IDENT_RE+"::",keywords:""}]}};var Wg=function(e){return{name:"Dust",aliases:["dst"],case_insensitive:!0,subLanguage:"xml",contains:[{className:"template-tag",begin:/\{[#\/]/,end:/\}/,illegal:/;/,contains:[{className:"name",begin:/[a-zA-Z\.-]+/,starts:{endsWithParent:!0,relevance:0,contains:[e.QUOTE_STRING_MODE]}}]},{className:"template-variable",begin:/\{/,end:/\}/,illegal:/;/,keywords:"if eq ne lt lte gt gte select default math sep"}]}};var $g=function(e){var t=e.COMMENT(/\(\*/,/\*\)/);return{name:"Extended Backus-Naur Form",illegal:/\S/,contains:[t,{className:"attribute",begin:/^[ ]*[a-zA-Z]+([\s_-]+[a-zA-Z]+)*/},{begin:/=/,end:/[.;]/,contains:[t,{className:"meta",begin:/\?.*\?/},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"`",end:"`"}]}]}]}};var Qg=function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",n={$pattern:t,keyword:"and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0"},a={className:"subst",begin:/#\{/,end:/\}/,keywords:n},r={className:"number",begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)",relevance:0},i={className:"string",begin:"~[a-z](?=[/|([{<\"'])",contains:[{endsParent:!0,contains:[{contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</,end:/>/}]}]}]},o={className:"string",begin:"~[A-Z](?=[/|([{<\"'])",contains:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</,end:/>/}]},s={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},l={className:"function",beginKeywords:"def defp defmacro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:t,endsParent:!0})]},c=e.inherit(l,{className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord",end:/\bdo\b|$|;/}),_=[s,o,i,e.HASH_COMMENT_MODE,c,l,{begin:"::"},{className:"symbol",begin:":(?![\\s:])",contains:[s,{begin:"[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?"}],relevance:0},{className:"symbol",begin:t+":(?!:)",relevance:0},r,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))"},{begin:"->"},{begin:"("+e.RE_STARTERS_RE+")\\s*",contains:[e.HASH_COMMENT_MODE,{begin:/\/: (?=\d+\s*[,\]])/,relevance:0,contains:[r]},{className:"regexp",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}],relevance:0}];return a.contains=_,{name:"Elixir",keywords:n,contains:_}};var Kg=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},n={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},a={begin:"\\(",end:"\\)",illegal:'"',contains:[{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},t]};return{name:"Elm",keywords:"let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",contains:[{beginKeywords:"port effect module",end:"exposing",keywords:"port effect module where command subscription exposing",contains:[a,t],illegal:"\\W\\.|;"},{begin:"import",end:"$",keywords:"import as exposing",contains:[a,t],illegal:"\\W\\.|;"},{begin:"type",end:"$",keywords:"type alias",contains:[n,a,{begin:/\{/,end:/\}/,contains:a.contains},t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"port",end:"$",keywords:"port",contains:[t]},{className:"string",begin:"'\\\\?.",end:"'",illegal:"."},e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,n,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}],illegal:/;/}};function jg(e){return e?"string"==typeof e?e:e.source:null}function Xg(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return jg(e)})).join("");return a}var Zg=function(e){var t,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",a={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__",built_in:"proc lambda",literal:"true false nil"},r={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},o=[e.COMMENT("#","$",{contains:[r]}),e.COMMENT("^=begin","^=end",{contains:[r],relevance:10}),e.COMMENT("^__END__","\\n$")],s={className:"subst",begin:/#\{/,end:/\}/,keywords:a},l={className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:/<<[-~]?'?(\w+)\n(?:[^\n]*\n)*?\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,s]})]}]},c="[0-9](_?[0-9])*",_={className:"number",relevance:0,variants:[{begin:"\\b(".concat("[1-9](_?[0-9])*|0",")(\\.(").concat(c,"))?([eE][+-]?(").concat(c,")|r)?i?\\b")},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},d={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:a},u=[l,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE,relevance:0}]}].concat(o)},{className:"function",begin:Xg(/def\s+/,(t=n+"\\s*(\\(|;|$)",Xg("(?=",t,")"))),relevance:0,keywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:n}),d].concat(o)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[l,{begin:n}],relevance:0},_,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:a},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(i,o),relevance:0}].concat(i,o);s.contains=u,d.contains=u;var m=[{begin:/^\s*=>/,starts:{end:"$",contains:u}},{className:"meta",begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])",starts:{end:"$",contains:u}}];return o.unshift(i),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:a,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(m).concat(o).concat(u)}};var Jg=function(e){return{name:"ERB",subLanguage:"xml",contains:[e.COMMENT("<%#","%>"),{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]}};function eE(e){return e?"string"==typeof e?e:e.source:null}function tE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return eE(e)})).join("");return a}var nE=function(e){return{name:"Erlang REPL",keywords:{built_in:"spawn spawn_link self",keyword:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"},contains:[{className:"meta",begin:"^[0-9]+> ",relevance:10},e.COMMENT("%","$"),{className:"number",begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:tE(/\?(::)?/,/([A-Z]\w*)/,/((::)[A-Z]\w*)*/)},{begin:"->"},{begin:"ok"},{begin:"!"},{begin:"(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)",relevance:0},{begin:"[A-Z][a-zA-Z0-9_']*",relevance:0}]}};var aE=function(e){var t="[a-z'][a-zA-Z0-9_']*",n="("+t+":"+t+"|"+t+")",a={keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor",literal:"false true"},r=e.COMMENT("%","$"),i={className:"number",begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",relevance:0},o={begin:"fun\\s+"+t+"/\\d+"},s={begin:n+"\\(",end:"\\)",returnBegin:!0,relevance:0,contains:[{begin:n,relevance:0},{begin:"\\(",end:"\\)",endsWithParent:!0,returnEnd:!0,relevance:0}]},l={begin:/\{/,end:/\}/,relevance:0},c={begin:"\\b_([A-Z][A-Za-z0-9_]*)?",relevance:0},_={begin:"[A-Z][a-zA-Z0-9_]*",relevance:0},d={begin:"#"+e.UNDERSCORE_IDENT_RE,relevance:0,returnBegin:!0,contains:[{begin:"#"+e.UNDERSCORE_IDENT_RE,relevance:0},{begin:/\{/,end:/\}/,relevance:0}]},u={beginKeywords:"fun receive if try case",end:"end",keywords:a};u.contains=[r,o,e.inherit(e.APOS_STRING_MODE,{className:""}),u,s,e.QUOTE_STRING_MODE,i,l,c,_,d];var m=[r,o,u,s,e.QUOTE_STRING_MODE,i,l,c,_,d];s.contains[1].contains=m,l.contains=m,d.contains[1].contains=m;var p={className:"params",begin:"\\(",end:"\\)",contains:m};return{name:"Erlang",aliases:["erl"],keywords:a,illegal:"(</|\\*=|\\+=|-=|/\\*|\\*/|\\(\\*|\\*\\))",contains:[{className:"function",begin:"^"+t+"\\s*\\(",end:"->",returnBegin:!0,illegal:"\\(|#|//|/\\*|\\\\|:|;",contains:[p,e.inherit(e.TITLE_MODE,{begin:t})],starts:{end:";|\\.",keywords:a,contains:m}},r,{begin:"^-",end:"\\.",relevance:0,excludeEnd:!0,returnBegin:!0,keywords:{$pattern:"-"+e.IDENT_RE,keyword:["-module","-record","-undef","-export","-ifdef","-ifndef","-author","-copyright","-doc","-vsn","-import","-include","-include_lib","-compile","-define","-else","-endif","-file","-behaviour","-behavior","-spec"].map((function(e){return"".concat(e,"|1.5")})).join(" ")},contains:[p]},i,e.QUOTE_STRING_MODE,d,c,_,l,{begin:/\.$/}]}};var rE=function(e){return{name:"Excel formulae",aliases:["xlsx","xls"],case_insensitive:!0,keywords:{$pattern:/[a-zA-Z][\w\.]*/,built_in:"ABS ACCRINT ACCRINTM ACOS ACOSH ACOT ACOTH AGGREGATE ADDRESS AMORDEGRC AMORLINC AND ARABIC AREAS ASC ASIN ASINH ATAN ATAN2 ATANH AVEDEV AVERAGE AVERAGEA AVERAGEIF AVERAGEIFS BAHTTEXT BASE BESSELI BESSELJ BESSELK BESSELY BETADIST BETA.DIST BETAINV BETA.INV BIN2DEC BIN2HEX BIN2OCT BINOMDIST BINOM.DIST BINOM.DIST.RANGE BINOM.INV BITAND BITLSHIFT BITOR BITRSHIFT BITXOR CALL CEILING CEILING.MATH CEILING.PRECISE CELL CHAR CHIDIST CHIINV CHITEST CHISQ.DIST CHISQ.DIST.RT CHISQ.INV CHISQ.INV.RT CHISQ.TEST CHOOSE CLEAN CODE COLUMN COLUMNS COMBIN COMBINA COMPLEX CONCAT CONCATENATE CONFIDENCE CONFIDENCE.NORM CONFIDENCE.T CONVERT CORREL COS COSH COT COTH COUNT COUNTA COUNTBLANK COUNTIF COUNTIFS COUPDAYBS COUPDAYS COUPDAYSNC COUPNCD COUPNUM COUPPCD COVAR COVARIANCE.P COVARIANCE.S CRITBINOM CSC CSCH CUBEKPIMEMBER CUBEMEMBER CUBEMEMBERPROPERTY CUBERANKEDMEMBER CUBESET CUBESETCOUNT CUBEVALUE CUMIPMT CUMPRINC DATE DATEDIF DATEVALUE DAVERAGE DAY DAYS DAYS360 DB DBCS DCOUNT DCOUNTA DDB DEC2BIN DEC2HEX DEC2OCT DECIMAL DEGREES DELTA DEVSQ DGET DISC DMAX DMIN DOLLAR DOLLARDE DOLLARFR DPRODUCT DSTDEV DSTDEVP DSUM DURATION DVAR DVARP EDATE EFFECT ENCODEURL EOMONTH ERF ERF.PRECISE ERFC ERFC.PRECISE ERROR.TYPE EUROCONVERT EVEN EXACT EXP EXPON.DIST EXPONDIST FACT FACTDOUBLE FALSE|0 F.DIST FDIST F.DIST.RT FILTERXML FIND FINDB F.INV F.INV.RT FINV FISHER FISHERINV FIXED FLOOR FLOOR.MATH FLOOR.PRECISE FORECAST FORECAST.ETS FORECAST.ETS.CONFINT FORECAST.ETS.SEASONALITY FORECAST.ETS.STAT FORECAST.LINEAR FORMULATEXT FREQUENCY F.TEST FTEST FV FVSCHEDULE GAMMA GAMMA.DIST GAMMADIST GAMMA.INV GAMMAINV GAMMALN GAMMALN.PRECISE GAUSS GCD GEOMEAN GESTEP GETPIVOTDATA GROWTH HARMEAN HEX2BIN HEX2DEC HEX2OCT HLOOKUP HOUR HYPERLINK HYPGEOM.DIST HYPGEOMDIST IF IFERROR IFNA IFS IMABS IMAGINARY IMARGUMENT IMCONJUGATE IMCOS IMCOSH IMCOT IMCSC IMCSCH IMDIV IMEXP IMLN IMLOG10 IMLOG2 IMPOWER IMPRODUCT IMREAL IMSEC IMSECH IMSIN IMSINH IMSQRT IMSUB IMSUM IMTAN INDEX INDIRECT INFO INT INTERCEPT INTRATE IPMT IRR ISBLANK ISERR ISERROR ISEVEN ISFORMULA ISLOGICAL ISNA ISNONTEXT ISNUMBER ISODD ISREF ISTEXT ISO.CEILING ISOWEEKNUM ISPMT JIS KURT LARGE LCM LEFT LEFTB LEN LENB LINEST LN LOG LOG10 LOGEST LOGINV LOGNORM.DIST LOGNORMDIST LOGNORM.INV LOOKUP LOWER MATCH MAX MAXA MAXIFS MDETERM MDURATION MEDIAN MID MIDBs MIN MINIFS MINA MINUTE MINVERSE MIRR MMULT MOD MODE MODE.MULT MODE.SNGL MONTH MROUND MULTINOMIAL MUNIT N NA NEGBINOM.DIST NEGBINOMDIST NETWORKDAYS NETWORKDAYS.INTL NOMINAL NORM.DIST NORMDIST NORMINV NORM.INV NORM.S.DIST NORMSDIST NORM.S.INV NORMSINV NOT NOW NPER NPV NUMBERVALUE OCT2BIN OCT2DEC OCT2HEX ODD ODDFPRICE ODDFYIELD ODDLPRICE ODDLYIELD OFFSET OR PDURATION PEARSON PERCENTILE.EXC PERCENTILE.INC PERCENTILE PERCENTRANK.EXC PERCENTRANK.INC PERCENTRANK PERMUT PERMUTATIONA PHI PHONETIC PI PMT POISSON.DIST POISSON POWER PPMT PRICE PRICEDISC PRICEMAT PROB PRODUCT PROPER PV QUARTILE QUARTILE.EXC QUARTILE.INC QUOTIENT RADIANS RAND RANDBETWEEN RANK.AVG RANK.EQ RANK RATE RECEIVED REGISTER.ID REPLACE REPLACEB REPT RIGHT RIGHTB ROMAN ROUND ROUNDDOWN ROUNDUP ROW ROWS RRI RSQ RTD SEARCH SEARCHB SEC SECH SECOND SERIESSUM SHEET SHEETS SIGN SIN SINH SKEW SKEW.P SLN SLOPE SMALL SQL.REQUEST SQRT SQRTPI STANDARDIZE STDEV STDEV.P STDEV.S STDEVA STDEVP STDEVPA STEYX SUBSTITUTE SUBTOTAL SUM SUMIF SUMIFS SUMPRODUCT SUMSQ SUMX2MY2 SUMX2PY2 SUMXMY2 SWITCH SYD T TAN TANH TBILLEQ TBILLPRICE TBILLYIELD T.DIST T.DIST.2T T.DIST.RT TDIST TEXT TEXTJOIN TIME TIMEVALUE T.INV T.INV.2T TINV TODAY TRANSPOSE TREND TRIM TRIMMEAN TRUE|0 TRUNC T.TEST TTEST TYPE UNICHAR UNICODE UPPER VALUE VAR VAR.P VAR.S VARA VARP VARPA VDB VLOOKUP WEBSERVICE WEEKDAY WEEKNUM WEIBULL WEIBULL.DIST WORKDAY WORKDAY.INTL XIRR XNPV XOR YEAR YEARFRAC YIELD YIELDDISC YIELDMAT Z.TEST ZTEST"},contains:[{begin:/^=/,end:/[^=]/,returnEnd:!0,illegal:/=/,relevance:10},{className:"symbol",begin:/\b[A-Z]{1,2}\d+\b/,end:/[^\d]/,excludeEnd:!0,relevance:0},{className:"symbol",begin:/[A-Z]{0,2}\d*:[A-Z]{0,2}\d*/,relevance:0},e.BACKSLASH_ESCAPE,e.QUOTE_STRING_MODE,{className:"number",begin:e.NUMBER_RE+"(%)?",relevance:0},e.COMMENT(/\bN\(/,/\)/,{excludeBegin:!0,excludeEnd:!0,illegal:/\n/})]}};var iE=function(e){return{name:"FIX",contains:[{begin:/[^\u2401\u0001]+/,end:/[\u2401\u0001]/,excludeEnd:!0,returnBegin:!0,returnEnd:!1,contains:[{begin:/([^\u2401\u0001=]+)/,end:/=([^\u2401\u0001=]+)/,returnEnd:!0,returnBegin:!1,className:"attr"},{begin:/=/,end:/([\u2401\u0001])/,excludeEnd:!0,excludeBegin:!0,className:"string"}]}],case_insensitive:!0}};var oE=function(e){var t={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[{className:"title",relevance:0,begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/}]};return{name:"Flix",keywords:{literal:"true false",keyword:"case class def else enum if impl import in lat rel index let match namespace switch type yield with"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},{className:"string",variants:[{begin:'"',end:'"'}]},t,e.C_NUMBER_MODE]}};function sE(e){return e?"string"==typeof e?e:e.source:null}function lE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return sE(e)})).join("");return a}var cE=function(e){var t={variants:[e.COMMENT("!","$",{relevance:0}),e.COMMENT("^C[ ]","$",{relevance:0}),e.COMMENT("^C$","$",{relevance:0})]},n=/(_[a-z_\d]+)?/,a=/([de][+-]?\d+)?/,r={className:"number",variants:[{begin:lE(/\b\d+/,/\.(\d*)/,a,n)},{begin:lE(/\b\d+/,a,n)},{begin:lE(/\.\d+/,a,n)}],relevance:0},i={className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]};return{name:"Fortran",case_insensitive:!0,aliases:["f90","f95"],keywords:{literal:".False. .True.",keyword:"kind do concurrent local shared while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then block endblock endassociate public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure impure integer real character complex logical codimension dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image sync change team co_broadcast co_max co_min co_sum co_reduce"},illegal:/\/\*/,contains:[{className:"string",relevance:0,variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},i,{begin:/^C\s*=(?!=)/,relevance:0},t,r]}};var _E=function(e){var t={begin:"<",end:">",contains:[e.inherit(e.TITLE_MODE,{begin:/'[a-zA-Z0-9_]+/})]};return{name:"F#",aliases:["fs"],keywords:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",illegal:/\/\*/,contains:[{className:"keyword",begin:/\b(yield|return|let|do)!/},{className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:'"""',end:'"""'},e.COMMENT("\\(\\*(\\s)","\\*\\)",{contains:["self"]}),{className:"class",beginKeywords:"type",end:"\\(|=|$",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE,t]},{className:"meta",begin:"\\[<",end:">\\]",relevance:10},{className:"symbol",begin:"\\B('[A-Za-z])\\b",contains:[e.BACKSLASH_ESCAPE]},e.C_LINE_COMMENT_MODE,e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),e.C_NUMBER_MODE]}};function dE(e){return e?"string"==typeof e?e:e.source:null}function uE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return dE(e)})).join("");return a}var mE=function(e){var t,n={keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",literal:"eps inf na",built_in:"abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart"},a={className:"symbol",variants:[{begin:/=[lgenxc]=/},{begin:/\$/}]},r={className:"comment",variants:[{begin:"'",end:"'"},{begin:'"',end:'"'}],illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},i={begin:"/",end:"/",keywords:n,contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},o=/[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+/,s={begin:/[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,excludeBegin:!0,end:"$",endsWithParent:!0,contains:[r,i,{className:"comment",begin:uE(o,(t=uE(/[ ]+/,o),uE("(",t,")*"))),relevance:0}]};return{name:"GAMS",aliases:["gms"],case_insensitive:!0,keywords:n,contains:[e.COMMENT(/^\$ontext/,/^\$offtext/),{className:"meta",begin:"^\\$[a-z0-9]+",end:"$",returnBegin:!0,contains:[{className:"meta-keyword",begin:"^\\$[a-z0-9]+"}]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{beginKeywords:"set sets parameter parameters variable variables scalar scalars equation equations",end:";",contains:[e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i,s]},{beginKeywords:"table",end:";",returnBegin:!0,contains:[{beginKeywords:"table",end:"$",contains:[s]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},{className:"function",begin:/^[a-z][a-z0-9_,\-+' ()$]+\.{2}/,returnBegin:!0,contains:[{className:"title",begin:/^[a-z0-9_]+/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0},a]},e.C_NUMBER_MODE,a]}};var pE=function(e){var t={keyword:"bool break call callexe checkinterrupt clear clearg closeall cls comlog compile continue create debug declare delete disable dlibrary dllcall do dos ed edit else elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv",built_in:"abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdusv ldlp ldlsol linSolve listwise ln lncdfbvn lncdfbvn2 lncdfmvn lncdfn lncdfn2 lncdfnc lnfact lngammacplx lnpdfmvn lnpdfmvt lnpdfn lnpdft loadd loadstruct loadwind loess loessmt loessmtControlCreate log loglog logx logy lower lowmat lowmat1 ltrisol lu lusol machEpsilon make makevars makewind margin matalloc matinit mattoarray maxbytes maxc maxindc maxv maxvec mbesselei mbesselei0 mbesselei1 mbesseli mbesseli0 mbesseli1 meanc median mergeby mergevar minc minindc minv miss missex missrv moment momentd movingave movingaveExpwgt movingaveWgt nextindex nextn nextnevn nextwind ntos null null1 numCombinations ols olsmt olsmtControlCreate olsqr olsqr2 olsqrmt ones optn optnevn orth outtyp pacf packedToSp packr parse pause pdfCauchy pdfChi pdfExp pdfGenPareto pdfHyperGeo pdfLaplace pdfLogistic pdfn pdfPoisson pdfRayleigh pdfWeibull pi pinv pinvmt plotAddArrow plotAddBar plotAddBox plotAddHist plotAddHistF plotAddHistP plotAddPolar plotAddScatter plotAddShape plotAddTextbox plotAddTS plotAddXY plotArea plotBar plotBox plotClearLayout plotContour plotCustomLayout plotGetDefaults plotHist plotHistF plotHistP plotLayout plotLogLog plotLogX plotLogY plotOpenWindow plotPolar plotSave plotScatter plotSetAxesPen plotSetBar plotSetBarFill plotSetBarStacked plotSetBkdColor plotSetFill plotSetGrid plotSetLegend plotSetLineColor plotSetLineStyle plotSetLineSymbol plotSetLineThickness plotSetNewWindow plotSetTitle plotSetWhichYAxis plotSetXAxisShow plotSetXLabel plotSetXRange plotSetXTicInterval plotSetXTicLabel plotSetYAxisShow plotSetYLabel plotSetYRange plotSetZAxisShow plotSetZLabel plotSurface plotTS plotXY polar polychar polyeval polygamma polyint polymake polymat polymroot polymult polyroot pqgwin previousindex princomp printfm printfmt prodc psi putarray putf putvals pvCreate pvGetIndex pvGetParNames pvGetParVector pvLength pvList pvPack pvPacki pvPackm pvPackmi pvPacks pvPacksi pvPacksm pvPacksmi pvPutParVector pvTest pvUnpack QNewton QNewtonmt QNewtonmtControlCreate QNewtonmtOutCreate QNewtonSet QProg QProgmt QProgmtInCreate qqr qqre qqrep qr qre qrep qrsol qrtsol qtyr qtyre qtyrep quantile quantiled qyr qyre qyrep qz rank rankindx readr real reclassify reclassifyCuts recode recserar recsercp recserrc rerun rescale reshape rets rev rfft rffti rfftip rfftn rfftnp rfftp rndBernoulli rndBeta rndBinomial rndCauchy rndChiSquare rndCon rndCreateState rndExp rndGamma rndGeo rndGumbel rndHyperGeo rndi rndKMbeta rndKMgam rndKMi rndKMn rndKMnb rndKMp rndKMu rndKMvm rndLaplace rndLCbeta rndLCgam rndLCi rndLCn rndLCnb rndLCp rndLCu rndLCvm rndLogNorm rndMTu rndMVn rndMVt rndn rndnb rndNegBinomial rndp rndPoisson rndRayleigh rndStateSkip rndu rndvm rndWeibull rndWishart rotater round rows rowsf rref sampleData satostrC saved saveStruct savewind scale scale3d scalerr scalinfnanmiss scalmiss schtoc schur searchsourcepath seekr select selif seqa seqm setdif setdifsa setvars setvwrmode setwind shell shiftr sin singleindex sinh sleep solpd sortc sortcc sortd sorthc sorthcc sortind sortindc sortmc sortr sortrc spBiconjGradSol spChol spConjGradSol spCreate spDenseSubmat spDiagRvMat spEigv spEye spLDL spline spLU spNumNZE spOnes spreadSheetReadM spreadSheetReadSA spreadSheetWrite spScale spSubmat spToDense spTrTDense spTScalar spZeros sqpSolve sqpSolveMT sqpSolveMTControlCreate sqpSolveMTlagrangeCreate sqpSolveMToutCreate sqpSolveSet sqrt statements stdc stdsc stocv stof strcombine strindx strlen strput strrindx strsect strsplit strsplitPad strtodt strtof strtofcplx strtriml strtrimr strtrunc strtruncl strtruncpad strtruncr submat subscat substute subvec sumc sumr surface svd svd1 svd2 svdcusv svds svdusv sysstate tab tan tanh tempname time timedt timestr timeutc title tkf2eps tkf2ps tocart todaydt toeplitz token topolar trapchk trigamma trimr trunc type typecv typef union unionsa uniqindx uniqindxsa unique uniquesa upmat upmat1 upper utctodt utctodtv utrisol vals varCovMS varCovXS varget vargetl varmall varmares varput varputl vartypef vcm vcms vcx vcxs vec vech vecr vector vget view viewxyz vlist vnamecv volume vput vread vtypecv wait waitc walkindex where window writer xlabel xlsGetSheetCount xlsGetSheetSize xlsGetSheetTypes xlsMakeRange xlsReadM xlsReadSA xlsWrite xlsWriteM xlsWriteSA xpnd xtics xy xyz ylabel ytics zeros zeta zlabel ztics cdfEmpirical dot h5create h5open h5read h5readAttribute h5write h5writeAttribute ldl plotAddErrorBar plotAddSurface plotCDFEmpirical plotSetColormap plotSetContourLabels plotSetLegendFont plotSetTextInterpreter plotSetXTicCount plotSetYTicCount plotSetZLevels powerm strjoin sylvester strtrim",literal:"DB_AFTER_LAST_ROW DB_ALL_TABLES DB_BATCH_OPERATIONS DB_BEFORE_FIRST_ROW DB_BLOB DB_EVENT_NOTIFICATIONS DB_FINISH_QUERY DB_HIGH_PRECISION DB_LAST_INSERT_ID DB_LOW_PRECISION_DOUBLE DB_LOW_PRECISION_INT32 DB_LOW_PRECISION_INT64 DB_LOW_PRECISION_NUMBERS DB_MULTIPLE_RESULT_SETS DB_NAMED_PLACEHOLDERS DB_POSITIONAL_PLACEHOLDERS DB_PREPARED_QUERIES DB_QUERY_SIZE DB_SIMPLE_LOCKING DB_SYSTEM_TABLES DB_TABLES DB_TRANSACTIONS DB_UNICODE DB_VIEWS __STDIN __STDOUT __STDERR __FILE_DIR"},n=e.COMMENT("@","@"),a={className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"define definecs|10 undef ifdef ifndef iflight ifdllcall ifmac ifos2win ifunix else endif lineson linesoff srcfile srcline"},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",end:"$",keywords:{"meta-keyword":"include"},contains:[{className:"meta-string",begin:'"',end:'"',illegal:"\\n"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n]},r={begin:/\bstruct\s+/,end:/\s/,keywords:"struct",contains:[{className:"type",begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},i=[{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,endsWithParent:!0,relevance:0,contains:[{className:"literal",begin:/\.\.\./},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,r]}],o={className:"title",begin:e.UNDERSCORE_IDENT_RE,relevance:0},s=function(t,a,r){var s=e.inherit({className:"function",beginKeywords:t,end:a,excludeEnd:!0,contains:[].concat(i)},r||{});return s.contains.push(o),s.contains.push(e.C_NUMBER_MODE),s.contains.push(e.C_BLOCK_COMMENT_MODE),s.contains.push(n),s},l={className:"built_in",begin:"\\b("+t.built_in.split(" ").join("|")+")\\b"},c={className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE],relevance:0},_={begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,keywords:t,relevance:0,contains:[{beginKeywords:t.keyword},l,{className:"built_in",begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},d={begin:/\(/,end:/\)/,relevance:0,keywords:{built_in:t.built_in,literal:t.literal},contains:[e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,l,_,c,"self"]};return _.contains.push(d),{name:"GAUSS",aliases:["gss"],case_insensitive:!0,keywords:t,illegal:/(\{[%#]|[%#]\}| <- )/,contains:[e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,c,a,{className:"keyword",begin:/\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)/},s("proc keyword",";"),s("fn","="),{beginKeywords:"for threadfor",end:/;/,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE,n,d]},{variants:[{begin:e.UNDERSCORE_IDENT_RE+"\\."+e.UNDERSCORE_IDENT_RE},{begin:e.UNDERSCORE_IDENT_RE+"\\s*="}],relevance:0},_,r]}};var gE=function(e){var t={$pattern:"[A-Z_][A-Z0-9_.]*",keyword:"IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT EQ LT GT NE GE LE OR XOR"},n=e.inherit(e.C_NUMBER_MODE,{begin:"([-+]?((\\.\\d+)|(\\d+)(\\.\\d*)?))|"+e.C_NUMBER_RE}),a=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(/\(/,/\)/),n,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"name",begin:"([G])([0-9]+\\.?[0-9]?)"},{className:"name",begin:"([M])([0-9]+\\.?[0-9]?)"},{className:"attr",begin:"(VC|VS|#)",end:"(\\d+)"},{className:"attr",begin:"(VZOFX|VZOFY|VZOFZ)"},{className:"built_in",begin:"(ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN)(\\[)",contains:[n],end:"\\]"},{className:"symbol",variants:[{begin:"N",end:"\\d+",illegal:"\\W"}]}];return{name:"G-code (ISO 6983)",aliases:["nc"],case_insensitive:!0,keywords:t,contains:[{className:"meta",begin:"%"},{className:"meta",begin:"([O])([0-9]+)"}].concat(a)}};var EE=function(e){return{name:"Gherkin",aliases:["feature"],keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta",begin:"@[^@\\s]+"},{begin:"\\|",end:"\\|\\w*$",contains:[{className:"string",begin:"[^|]+"}]},{className:"variable",begin:"<",end:">"},e.HASH_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},e.QUOTE_STRING_MODE]}};var SE=function(e){return{name:"GLSL",keywords:{keyword:"break continue discard do else for if return while switch case default attribute binding buffer ccw centroid centroid varying coherent column_major const cw depth_any depth_greater depth_less depth_unchanged early_fragment_tests equal_spacing flat fractional_even_spacing fractional_odd_spacing highp in index inout invariant invocations isolines layout line_strip lines lines_adjacency local_size_x local_size_y local_size_z location lowp max_vertices mediump noperspective offset origin_upper_left out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 rgb10_a2ui rgba16 rgba16_snorm rgba16f rgba16i rgba16ui rgba32f rgba32i rgba32ui rgba8 rgba8_snorm rgba8i rgba8ui row_major sample shared smooth std140 std430 stream triangle_strip triangles triangles_adjacency uniform varying vertices volatile writeonly",type:"atomic_uint bool bvec2 bvec3 bvec4 dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 double dvec2 dvec3 dvec4 float iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray int isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow image1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D samplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 vec2 vec3 vec4 void",built_in:"gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxComputeAtomicCounterBuffers gl_MaxComputeAtomicCounters gl_MaxComputeImageUniforms gl_MaxComputeTextureImageUnits gl_MaxComputeUniformComponents gl_MaxComputeWorkGroupCount gl_MaxComputeWorkGroupSize gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentInputVectors gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexOutputVectors gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffset gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_GlobalInvocationID gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_LocalInvocationID gl_LocalInvocationIndex gl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_NumSamples gl_NumWorkGroups gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrix gl_TextureMatrixInverse gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_WorkGroupID gl_WorkGroupSize gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicAdd atomicAnd atomicCompSwap atomicCounter atomicCounterDecrement atomicCounterIncrement atomicExchange atomicMax atomicMin atomicOr atomicXor barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual groupMemoryBarrier imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageSize imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier memoryBarrierAtomicCounter memoryBarrierBuffer memoryBarrierImage memoryBarrierShared min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj shadow1DProjLod shadow2D shadow2DLod shadow2DProj shadow2DProjLod sign sin sinh smoothstep sqrt step tan tanh texelFetch texelFetchOffset texture texture1D texture1DLod texture1DProj texture1DProjLod texture2D texture2DLod texture2DProj texture2DProjLod texture3D texture3DLod texture3DProj texture3DProjLod textureCube textureCubeLod textureGather textureGatherOffset textureGatherOffsets textureGrad textureGradOffset textureLod textureLodOffset textureOffset textureProj textureProjGrad textureProjGradOffset textureProjLod textureProjLodOffset textureProjOffset textureQueryLevels textureQueryLod textureSize transpose trunc uaddCarry uintBitsToFloat umulExtended unpackDouble2x32 unpackHalf2x16 unpackSnorm2x16 unpackSnorm4x8 unpackUnorm2x16 unpackUnorm4x8 usubBorrow",literal:"true false"},illegal:'"',contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"}]}};var bE=function(e){return{name:"GML",case_insensitive:!1,keywords:{keyword:"begin end if then else while do for break continue with until repeat exit and or xor not return mod div switch case default var globalvar enum function constructor delete #macro #region #endregion",built_in:"is_real is_string is_array is_undefined is_int32 is_int64 is_ptr is_vec3 is_vec4 is_matrix is_bool is_method is_struct is_infinity is_nan is_numeric typeof variable_global_exists variable_global_get variable_global_set variable_instance_exists variable_instance_get variable_instance_set variable_instance_get_names variable_struct_exists variable_struct_get variable_struct_get_names variable_struct_names_count variable_struct_remove variable_struct_set array_delete array_insert array_length array_length_1d array_length_2d array_height_2d array_equals array_create array_copy array_pop array_push array_resize array_sort random random_range irandom irandom_range random_set_seed random_get_seed randomize randomise choose abs round floor ceil sign frac sqrt sqr exp ln log2 log10 sin cos tan arcsin arccos arctan arctan2 dsin dcos dtan darcsin darccos darctan darctan2 degtorad radtodeg power logn min max mean median clamp lerp dot_product dot_product_3d dot_product_normalised dot_product_3d_normalised dot_product_normalized dot_product_3d_normalized math_set_epsilon math_get_epsilon angle_difference point_distance_3d point_distance point_direction lengthdir_x lengthdir_y real string int64 ptr string_format chr ansi_char ord string_length string_byte_length string_pos string_copy string_char_at string_ord_at string_byte_at string_set_byte_at string_delete string_insert string_lower string_upper string_repeat string_letters string_digits string_lettersdigits string_replace string_replace_all string_count string_hash_to_newline clipboard_has_text clipboard_set_text clipboard_get_text date_current_datetime date_create_datetime date_valid_datetime date_inc_year date_inc_month date_inc_week date_inc_day date_inc_hour date_inc_minute date_inc_second date_get_year date_get_month date_get_week date_get_day date_get_hour date_get_minute date_get_second date_get_weekday date_get_day_of_year date_get_hour_of_year date_get_minute_of_year date_get_second_of_year date_year_span date_month_span date_week_span date_day_span date_hour_span date_minute_span date_second_span date_compare_datetime date_compare_date date_compare_time date_date_of date_time_of date_datetime_string date_date_string date_time_string date_days_in_month date_days_in_year date_leap_year date_is_today date_set_timezone date_get_timezone game_set_speed game_get_speed motion_set motion_add place_free place_empty place_meeting place_snapped move_random move_snap move_towards_point move_contact_solid move_contact_all move_outside_solid move_outside_all move_bounce_solid move_bounce_all move_wrap distance_to_point distance_to_object position_empty position_meeting path_start path_end mp_linear_step mp_potential_step mp_linear_step_object mp_potential_step_object mp_potential_settings mp_linear_path mp_potential_path mp_linear_path_object mp_potential_path_object mp_grid_create mp_grid_destroy mp_grid_clear_all mp_grid_clear_cell mp_grid_clear_rectangle mp_grid_add_cell mp_grid_get_cell mp_grid_add_rectangle mp_grid_add_instances mp_grid_path mp_grid_draw mp_grid_to_ds_grid collision_point collision_rectangle collision_circle collision_ellipse collision_line collision_point_list collision_rectangle_list collision_circle_list collision_ellipse_list collision_line_list instance_position_list instance_place_list point_in_rectangle point_in_triangle point_in_circle rectangle_in_rectangle rectangle_in_triangle rectangle_in_circle instance_find instance_exists instance_number instance_position instance_nearest instance_furthest instance_place instance_create_depth instance_create_layer instance_copy instance_change instance_destroy position_destroy position_change instance_id_get instance_deactivate_all instance_deactivate_object instance_deactivate_region instance_activate_all instance_activate_object instance_activate_region room_goto room_goto_previous room_goto_next room_previous room_next room_restart game_end game_restart game_load game_save game_save_buffer game_load_buffer event_perform event_user event_perform_object event_inherited show_debug_message show_debug_overlay debug_event debug_get_callstack alarm_get alarm_set font_texture_page_size keyboard_set_map keyboard_get_map keyboard_unset_map keyboard_check keyboard_check_pressed keyboard_check_released keyboard_check_direct keyboard_get_numlock keyboard_set_numlock keyboard_key_press keyboard_key_release keyboard_clear io_clear mouse_check_button mouse_check_button_pressed mouse_check_button_released mouse_wheel_up mouse_wheel_down mouse_clear draw_self draw_sprite draw_sprite_pos draw_sprite_ext draw_sprite_stretched draw_sprite_stretched_ext draw_sprite_tiled draw_sprite_tiled_ext draw_sprite_part draw_sprite_part_ext draw_sprite_general draw_clear draw_clear_alpha draw_point draw_line draw_line_width draw_rectangle draw_roundrect draw_roundrect_ext draw_triangle draw_circle draw_ellipse draw_set_circle_precision draw_arrow draw_button draw_path draw_healthbar draw_getpixel draw_getpixel_ext draw_set_colour draw_set_color draw_set_alpha draw_get_colour draw_get_color draw_get_alpha merge_colour make_colour_rgb make_colour_hsv colour_get_red colour_get_green colour_get_blue colour_get_hue colour_get_saturation colour_get_value merge_color make_color_rgb make_color_hsv color_get_red color_get_green color_get_blue color_get_hue color_get_saturation color_get_value merge_color screen_save screen_save_part draw_set_font draw_set_halign draw_set_valign draw_text draw_text_ext string_width string_height string_width_ext string_height_ext draw_text_transformed draw_text_ext_transformed draw_text_colour draw_text_ext_colour draw_text_transformed_colour draw_text_ext_transformed_colour draw_text_color draw_text_ext_color draw_text_transformed_color draw_text_ext_transformed_color draw_point_colour draw_line_colour draw_line_width_colour draw_rectangle_colour draw_roundrect_colour draw_roundrect_colour_ext draw_triangle_colour draw_circle_colour draw_ellipse_colour draw_point_color draw_line_color draw_line_width_color draw_rectangle_color draw_roundrect_color draw_roundrect_color_ext draw_triangle_color draw_circle_color draw_ellipse_color draw_primitive_begin draw_vertex draw_vertex_colour draw_vertex_color draw_primitive_end sprite_get_uvs font_get_uvs sprite_get_texture font_get_texture texture_get_width texture_get_height texture_get_uvs draw_primitive_begin_texture draw_vertex_texture draw_vertex_texture_colour draw_vertex_texture_color texture_global_scale surface_create surface_create_ext surface_resize surface_free surface_exists surface_get_width surface_get_height surface_get_texture surface_set_target surface_set_target_ext surface_reset_target surface_depth_disable surface_get_depth_disable draw_surface draw_surface_stretched draw_surface_tiled draw_surface_part draw_surface_ext draw_surface_stretched_ext draw_surface_tiled_ext draw_surface_part_ext draw_surface_general surface_getpixel surface_getpixel_ext surface_save surface_save_part surface_copy surface_copy_part application_surface_draw_enable application_get_position application_surface_enable application_surface_is_enabled display_get_width display_get_height display_get_orientation display_get_gui_width display_get_gui_height display_reset display_mouse_get_x display_mouse_get_y display_mouse_set display_set_ui_visibility window_set_fullscreen window_get_fullscreen window_set_caption window_set_min_width window_set_max_width window_set_min_height window_set_max_height window_get_visible_rects window_get_caption window_set_cursor window_get_cursor window_set_colour window_get_colour window_set_color window_get_color window_set_position window_set_size window_set_rectangle window_center window_get_x window_get_y window_get_width window_get_height window_mouse_get_x window_mouse_get_y window_mouse_set window_view_mouse_get_x window_view_mouse_get_y window_views_mouse_get_x window_views_mouse_get_y audio_listener_position audio_listener_velocity audio_listener_orientation audio_emitter_position audio_emitter_create audio_emitter_free audio_emitter_exists audio_emitter_pitch audio_emitter_velocity audio_emitter_falloff audio_emitter_gain audio_play_sound audio_play_sound_on audio_play_sound_at audio_stop_sound audio_resume_music audio_music_is_playing audio_resume_sound audio_pause_sound audio_pause_music audio_channel_num audio_sound_length audio_get_type audio_falloff_set_model audio_play_music audio_stop_music audio_master_gain audio_music_gain audio_sound_gain audio_sound_pitch audio_stop_all audio_resume_all audio_pause_all audio_is_playing audio_is_paused audio_exists audio_sound_set_track_position audio_sound_get_track_position audio_emitter_get_gain audio_emitter_get_pitch audio_emitter_get_x audio_emitter_get_y audio_emitter_get_z audio_emitter_get_vx audio_emitter_get_vy audio_emitter_get_vz audio_listener_set_position audio_listener_set_velocity audio_listener_set_orientation audio_listener_get_data audio_set_master_gain audio_get_master_gain audio_sound_get_gain audio_sound_get_pitch audio_get_name audio_sound_set_track_position audio_sound_get_track_position audio_create_stream audio_destroy_stream audio_create_sync_group audio_destroy_sync_group audio_play_in_sync_group audio_start_sync_group audio_stop_sync_group audio_pause_sync_group audio_resume_sync_group audio_sync_group_get_track_pos audio_sync_group_debug audio_sync_group_is_playing audio_debug audio_group_load audio_group_unload audio_group_is_loaded audio_group_load_progress audio_group_name audio_group_stop_all audio_group_set_gain audio_create_buffer_sound audio_free_buffer_sound audio_create_play_queue audio_free_play_queue audio_queue_sound audio_get_recorder_count audio_get_recorder_info audio_start_recording audio_stop_recording audio_sound_get_listener_mask audio_emitter_get_listener_mask audio_get_listener_mask audio_sound_set_listener_mask audio_emitter_set_listener_mask audio_set_listener_mask audio_get_listener_count audio_get_listener_info audio_system show_message show_message_async clickable_add clickable_add_ext clickable_change clickable_change_ext clickable_delete clickable_exists clickable_set_style show_question show_question_async get_integer get_string get_integer_async get_string_async get_login_async get_open_filename get_save_filename get_open_filename_ext get_save_filename_ext show_error highscore_clear highscore_add highscore_value highscore_name draw_highscore sprite_exists sprite_get_name sprite_get_number sprite_get_width sprite_get_height sprite_get_xoffset sprite_get_yoffset sprite_get_bbox_left sprite_get_bbox_right sprite_get_bbox_top sprite_get_bbox_bottom sprite_save sprite_save_strip sprite_set_cache_size sprite_set_cache_size_ext sprite_get_tpe sprite_prefetch sprite_prefetch_multi sprite_flush sprite_flush_multi sprite_set_speed sprite_get_speed_type sprite_get_speed font_exists font_get_name font_get_fontname font_get_bold font_get_italic font_get_first font_get_last font_get_size font_set_cache_size path_exists path_get_name path_get_length path_get_time path_get_kind path_get_closed path_get_precision path_get_number path_get_point_x path_get_point_y path_get_point_speed path_get_x path_get_y path_get_speed script_exists script_get_name timeline_add timeline_delete timeline_clear timeline_exists timeline_get_name timeline_moment_clear timeline_moment_add_script timeline_size timeline_max_moment object_exists object_get_name object_get_sprite object_get_solid object_get_visible object_get_persistent object_get_mask object_get_parent object_get_physics object_is_ancestor room_exists room_get_name sprite_set_offset sprite_duplicate sprite_assign sprite_merge sprite_add sprite_replace sprite_create_from_surface sprite_add_from_surface sprite_delete sprite_set_alpha_from_sprite sprite_collision_mask font_add_enable_aa font_add_get_enable_aa font_add font_add_sprite font_add_sprite_ext font_replace font_replace_sprite font_replace_sprite_ext font_delete path_set_kind path_set_closed path_set_precision path_add path_assign path_duplicate path_append path_delete path_add_point path_insert_point path_change_point path_delete_point path_clear_points path_reverse path_mirror path_flip path_rotate path_rescale path_shift script_execute object_set_sprite object_set_solid object_set_visible object_set_persistent object_set_mask room_set_width room_set_height room_set_persistent room_set_background_colour room_set_background_color room_set_view room_set_viewport room_get_viewport room_set_view_enabled room_add room_duplicate room_assign room_instance_add room_instance_clear room_get_camera room_set_camera asset_get_index asset_get_type file_text_open_from_string file_text_open_read file_text_open_write file_text_open_append file_text_close file_text_write_string file_text_write_real file_text_writeln file_text_read_string file_text_read_real file_text_readln file_text_eof file_text_eoln file_exists file_delete file_rename file_copy directory_exists directory_create directory_destroy file_find_first file_find_next file_find_close file_attributes filename_name filename_path filename_dir filename_drive filename_ext filename_change_ext file_bin_open file_bin_rewrite file_bin_close file_bin_position file_bin_size file_bin_seek file_bin_write_byte file_bin_read_byte parameter_count parameter_string environment_get_variable ini_open_from_string ini_open ini_close ini_read_string ini_read_real ini_write_string ini_write_real ini_key_exists ini_section_exists ini_key_delete ini_section_delete ds_set_precision ds_exists ds_stack_create ds_stack_destroy ds_stack_clear ds_stack_copy ds_stack_size ds_stack_empty ds_stack_push ds_stack_pop ds_stack_top ds_stack_write ds_stack_read ds_queue_create ds_queue_destroy ds_queue_clear ds_queue_copy ds_queue_size ds_queue_empty ds_queue_enqueue ds_queue_dequeue ds_queue_head ds_queue_tail ds_queue_write ds_queue_read ds_list_create ds_list_destroy ds_list_clear ds_list_copy ds_list_size ds_list_empty ds_list_add ds_list_insert ds_list_replace ds_list_delete ds_list_find_index ds_list_find_value ds_list_mark_as_list ds_list_mark_as_map ds_list_sort ds_list_shuffle ds_list_write ds_list_read ds_list_set ds_map_create ds_map_destroy ds_map_clear ds_map_copy ds_map_size ds_map_empty ds_map_add ds_map_add_list ds_map_add_map ds_map_replace ds_map_replace_map ds_map_replace_list ds_map_delete ds_map_exists ds_map_find_value ds_map_find_previous ds_map_find_next ds_map_find_first ds_map_find_last ds_map_write ds_map_read ds_map_secure_save ds_map_secure_load ds_map_secure_load_buffer ds_map_secure_save_buffer ds_map_set ds_priority_create ds_priority_destroy ds_priority_clear ds_priority_copy ds_priority_size ds_priority_empty ds_priority_add ds_priority_change_priority ds_priority_find_priority ds_priority_delete_value ds_priority_delete_min ds_priority_find_min ds_priority_delete_max ds_priority_find_max ds_priority_write ds_priority_read ds_grid_create ds_grid_destroy ds_grid_copy ds_grid_resize ds_grid_width ds_grid_height ds_grid_clear ds_grid_set ds_grid_add ds_grid_multiply ds_grid_set_region ds_grid_add_region ds_grid_multiply_region ds_grid_set_disk ds_grid_add_disk ds_grid_multiply_disk ds_grid_set_grid_region ds_grid_add_grid_region ds_grid_multiply_grid_region ds_grid_get ds_grid_get_sum ds_grid_get_max ds_grid_get_min ds_grid_get_mean ds_grid_get_disk_sum ds_grid_get_disk_min ds_grid_get_disk_max ds_grid_get_disk_mean ds_grid_value_exists ds_grid_value_x ds_grid_value_y ds_grid_value_disk_exists ds_grid_value_disk_x ds_grid_value_disk_y ds_grid_shuffle ds_grid_write ds_grid_read ds_grid_sort ds_grid_set ds_grid_get effect_create_below effect_create_above effect_clear part_type_create part_type_destroy part_type_exists part_type_clear part_type_shape part_type_sprite part_type_size part_type_scale part_type_orientation part_type_life part_type_step part_type_death part_type_speed part_type_direction part_type_gravity part_type_colour1 part_type_colour2 part_type_colour3 part_type_colour_mix part_type_colour_rgb part_type_colour_hsv part_type_color1 part_type_color2 part_type_color3 part_type_color_mix part_type_color_rgb part_type_color_hsv part_type_alpha1 part_type_alpha2 part_type_alpha3 part_type_blend part_system_create part_system_create_layer part_system_destroy part_system_exists part_system_clear part_system_draw_order part_system_depth part_system_position part_system_automatic_update part_system_automatic_draw part_system_update part_system_drawit part_system_get_layer part_system_layer part_particles_create part_particles_create_colour part_particles_create_color part_particles_clear part_particles_count part_emitter_create part_emitter_destroy part_emitter_destroy_all part_emitter_exists part_emitter_clear part_emitter_region part_emitter_burst part_emitter_stream external_call external_define external_free window_handle window_device matrix_get matrix_set matrix_build_identity matrix_build matrix_build_lookat matrix_build_projection_ortho matrix_build_projection_perspective matrix_build_projection_perspective_fov matrix_multiply matrix_transform_vertex matrix_stack_push matrix_stack_pop matrix_stack_multiply matrix_stack_set matrix_stack_clear matrix_stack_top matrix_stack_is_empty browser_input_capture os_get_config os_get_info os_get_language os_get_region os_lock_orientation display_get_dpi_x display_get_dpi_y display_set_gui_size display_set_gui_maximise display_set_gui_maximize device_mouse_dbclick_enable display_set_timing_method display_get_timing_method display_set_sleep_margin display_get_sleep_margin virtual_key_add virtual_key_hide virtual_key_delete virtual_key_show draw_enable_drawevent draw_enable_swf_aa draw_set_swf_aa_level draw_get_swf_aa_level draw_texture_flush draw_flush gpu_set_blendenable gpu_set_ztestenable gpu_set_zfunc gpu_set_zwriteenable gpu_set_lightingenable gpu_set_fog gpu_set_cullmode gpu_set_blendmode gpu_set_blendmode_ext gpu_set_blendmode_ext_sepalpha gpu_set_colorwriteenable gpu_set_colourwriteenable gpu_set_alphatestenable gpu_set_alphatestref gpu_set_alphatestfunc gpu_set_texfilter gpu_set_texfilter_ext gpu_set_texrepeat gpu_set_texrepeat_ext gpu_set_tex_filter gpu_set_tex_filter_ext gpu_set_tex_repeat gpu_set_tex_repeat_ext gpu_set_tex_mip_filter gpu_set_tex_mip_filter_ext gpu_set_tex_mip_bias gpu_set_tex_mip_bias_ext gpu_set_tex_min_mip gpu_set_tex_min_mip_ext gpu_set_tex_max_mip gpu_set_tex_max_mip_ext gpu_set_tex_max_aniso gpu_set_tex_max_aniso_ext gpu_set_tex_mip_enable gpu_set_tex_mip_enable_ext gpu_get_blendenable gpu_get_ztestenable gpu_get_zfunc gpu_get_zwriteenable gpu_get_lightingenable gpu_get_fog gpu_get_cullmode gpu_get_blendmode gpu_get_blendmode_ext gpu_get_blendmode_ext_sepalpha gpu_get_blendmode_src gpu_get_blendmode_dest gpu_get_blendmode_srcalpha gpu_get_blendmode_destalpha gpu_get_colorwriteenable gpu_get_colourwriteenable gpu_get_alphatestenable gpu_get_alphatestref gpu_get_alphatestfunc gpu_get_texfilter gpu_get_texfilter_ext gpu_get_texrepeat gpu_get_texrepeat_ext gpu_get_tex_filter gpu_get_tex_filter_ext gpu_get_tex_repeat gpu_get_tex_repeat_ext gpu_get_tex_mip_filter gpu_get_tex_mip_filter_ext gpu_get_tex_mip_bias gpu_get_tex_mip_bias_ext gpu_get_tex_min_mip gpu_get_tex_min_mip_ext gpu_get_tex_max_mip gpu_get_tex_max_mip_ext gpu_get_tex_max_aniso gpu_get_tex_max_aniso_ext gpu_get_tex_mip_enable gpu_get_tex_mip_enable_ext gpu_push_state gpu_pop_state gpu_get_state gpu_set_state draw_light_define_ambient draw_light_define_direction draw_light_define_point draw_light_enable draw_set_lighting draw_light_get_ambient draw_light_get draw_get_lighting shop_leave_rating url_get_domain url_open url_open_ext url_open_full get_timer achievement_login achievement_logout achievement_post achievement_increment achievement_post_score achievement_available achievement_show_achievements achievement_show_leaderboards achievement_load_friends achievement_load_leaderboard achievement_send_challenge achievement_load_progress achievement_reset achievement_login_status achievement_get_pic achievement_show_challenge_notifications achievement_get_challenges achievement_event achievement_show achievement_get_info cloud_file_save cloud_string_save cloud_synchronise ads_enable ads_disable ads_setup ads_engagement_launch ads_engagement_available ads_engagement_active ads_event ads_event_preload ads_set_reward_callback ads_get_display_height ads_get_display_width ads_move ads_interstitial_available ads_interstitial_display device_get_tilt_x device_get_tilt_y device_get_tilt_z device_is_keypad_open device_mouse_check_button device_mouse_check_button_pressed device_mouse_check_button_released device_mouse_x device_mouse_y device_mouse_raw_x device_mouse_raw_y device_mouse_x_to_gui device_mouse_y_to_gui iap_activate iap_status iap_enumerate_products iap_restore_all iap_acquire iap_consume iap_product_details iap_purchase_details facebook_init facebook_login facebook_status facebook_graph_request facebook_dialog facebook_logout facebook_launch_offerwall facebook_post_message facebook_send_invite facebook_user_id facebook_accesstoken facebook_check_permission facebook_request_read_permissions facebook_request_publish_permissions gamepad_is_supported gamepad_get_device_count gamepad_is_connected gamepad_get_description gamepad_get_button_threshold gamepad_set_button_threshold gamepad_get_axis_deadzone gamepad_set_axis_deadzone gamepad_button_count gamepad_button_check gamepad_button_check_pressed gamepad_button_check_released gamepad_button_value gamepad_axis_count gamepad_axis_value gamepad_set_vibration gamepad_set_colour gamepad_set_color os_is_paused window_has_focus code_is_compiled http_get http_get_file http_post_string http_request json_encode json_decode zip_unzip load_csv base64_encode base64_decode md5_string_unicode md5_string_utf8 md5_file os_is_network_connected sha1_string_unicode sha1_string_utf8 sha1_file os_powersave_enable analytics_event analytics_event_ext win8_livetile_tile_notification win8_livetile_tile_clear win8_livetile_badge_notification win8_livetile_badge_clear win8_livetile_queue_enable win8_secondarytile_pin win8_secondarytile_badge_notification win8_secondarytile_delete win8_livetile_notification_begin win8_livetile_notification_secondary_begin win8_livetile_notification_expiry win8_livetile_notification_tag win8_livetile_notification_text_add win8_livetile_notification_image_add win8_livetile_notification_end win8_appbar_enable win8_appbar_add_element win8_appbar_remove_element win8_settingscharm_add_entry win8_settingscharm_add_html_entry win8_settingscharm_add_xaml_entry win8_settingscharm_set_xaml_property win8_settingscharm_get_xaml_property win8_settingscharm_remove_entry win8_share_image win8_share_screenshot win8_share_file win8_share_url win8_share_text win8_search_enable win8_search_disable win8_search_add_suggestions win8_device_touchscreen_available win8_license_initialize_sandbox win8_license_trial_version winphone_license_trial_version winphone_tile_title winphone_tile_count winphone_tile_back_title winphone_tile_back_content winphone_tile_back_content_wide winphone_tile_front_image winphone_tile_front_image_small winphone_tile_front_image_wide winphone_tile_back_image winphone_tile_back_image_wide winphone_tile_background_colour winphone_tile_background_color winphone_tile_icon_image winphone_tile_small_icon_image winphone_tile_wide_content winphone_tile_cycle_images winphone_tile_small_background_image physics_world_create physics_world_gravity physics_world_update_speed physics_world_update_iterations physics_world_draw_debug physics_pause_enable physics_fixture_create physics_fixture_set_kinematic physics_fixture_set_density physics_fixture_set_awake physics_fixture_set_restitution physics_fixture_set_friction physics_fixture_set_collision_group physics_fixture_set_sensor physics_fixture_set_linear_damping physics_fixture_set_angular_damping physics_fixture_set_circle_shape physics_fixture_set_box_shape physics_fixture_set_edge_shape physics_fixture_set_polygon_shape physics_fixture_set_chain_shape physics_fixture_add_point physics_fixture_bind physics_fixture_bind_ext physics_fixture_delete physics_apply_force physics_apply_impulse physics_apply_angular_impulse physics_apply_local_force physics_apply_local_impulse physics_apply_torque physics_mass_properties physics_draw_debug physics_test_overlap physics_remove_fixture physics_set_friction physics_set_density physics_set_restitution physics_get_friction physics_get_density physics_get_restitution physics_joint_distance_create physics_joint_rope_create physics_joint_revolute_create physics_joint_prismatic_create physics_joint_pulley_create physics_joint_wheel_create physics_joint_weld_create physics_joint_friction_create physics_joint_gear_create physics_joint_enable_motor physics_joint_get_value physics_joint_set_value physics_joint_delete physics_particle_create physics_particle_delete physics_particle_delete_region_circle physics_particle_delete_region_box physics_particle_delete_region_poly physics_particle_set_flags physics_particle_set_category_flags physics_particle_draw physics_particle_draw_ext physics_particle_count physics_particle_get_data physics_particle_get_data_particle physics_particle_group_begin physics_particle_group_circle physics_particle_group_box physics_particle_group_polygon physics_particle_group_add_point physics_particle_group_end physics_particle_group_join physics_particle_group_delete physics_particle_group_count physics_particle_group_get_data physics_particle_group_get_mass physics_particle_group_get_inertia physics_particle_group_get_centre_x physics_particle_group_get_centre_y physics_particle_group_get_vel_x physics_particle_group_get_vel_y physics_particle_group_get_ang_vel physics_particle_group_get_x physics_particle_group_get_y physics_particle_group_get_angle physics_particle_set_group_flags physics_particle_get_group_flags physics_particle_get_max_count physics_particle_get_radius physics_particle_get_density physics_particle_get_damping physics_particle_get_gravity_scale physics_particle_set_max_count physics_particle_set_radius physics_particle_set_density physics_particle_set_damping physics_particle_set_gravity_scale network_create_socket network_create_socket_ext network_create_server network_create_server_raw network_connect network_connect_raw network_send_packet network_send_raw network_send_broadcast network_send_udp network_send_udp_raw network_set_timeout network_set_config network_resolve network_destroy buffer_create buffer_write buffer_read buffer_seek buffer_get_surface buffer_set_surface buffer_delete buffer_exists buffer_get_type buffer_get_alignment buffer_poke buffer_peek buffer_save buffer_save_ext buffer_load buffer_load_ext buffer_load_partial buffer_copy buffer_fill buffer_get_size buffer_tell buffer_resize buffer_md5 buffer_sha1 buffer_base64_encode buffer_base64_decode buffer_base64_decode_ext buffer_sizeof buffer_get_address buffer_create_from_vertex_buffer buffer_create_from_vertex_buffer_ext buffer_copy_from_vertex_buffer buffer_async_group_begin buffer_async_group_option buffer_async_group_end buffer_load_async buffer_save_async gml_release_mode gml_pragma steam_activate_overlay steam_is_overlay_enabled steam_is_overlay_activated steam_get_persona_name steam_initialised steam_is_cloud_enabled_for_app steam_is_cloud_enabled_for_account steam_file_persisted steam_get_quota_total steam_get_quota_free steam_file_write steam_file_write_file steam_file_read steam_file_delete steam_file_exists steam_file_size steam_file_share steam_is_screenshot_requested steam_send_screenshot steam_is_user_logged_on steam_get_user_steam_id steam_user_owns_dlc steam_user_installed_dlc steam_set_achievement steam_get_achievement steam_clear_achievement steam_set_stat_int steam_set_stat_float steam_set_stat_avg_rate steam_get_stat_int steam_get_stat_float steam_get_stat_avg_rate steam_reset_all_stats steam_reset_all_stats_achievements steam_stats_ready steam_create_leaderboard steam_upload_score steam_upload_score_ext steam_download_scores_around_user steam_download_scores steam_download_friends_scores steam_upload_score_buffer steam_upload_score_buffer_ext steam_current_game_language steam_available_languages steam_activate_overlay_browser steam_activate_overlay_user steam_activate_overlay_store steam_get_user_persona_name steam_get_app_id steam_get_user_account_id steam_ugc_download steam_ugc_create_item steam_ugc_start_item_update steam_ugc_set_item_title steam_ugc_set_item_description steam_ugc_set_item_visibility steam_ugc_set_item_tags steam_ugc_set_item_content steam_ugc_set_item_preview steam_ugc_submit_item_update steam_ugc_get_item_update_progress steam_ugc_subscribe_item steam_ugc_unsubscribe_item steam_ugc_num_subscribed_items steam_ugc_get_subscribed_items steam_ugc_get_item_install_info steam_ugc_get_item_update_info steam_ugc_request_item_details steam_ugc_create_query_user steam_ugc_create_query_user_ex steam_ugc_create_query_all steam_ugc_create_query_all_ex steam_ugc_query_set_cloud_filename_filter steam_ugc_query_set_match_any_tag steam_ugc_query_set_search_text steam_ugc_query_set_ranked_by_trend_days steam_ugc_query_add_required_tag steam_ugc_query_add_excluded_tag steam_ugc_query_set_return_long_description steam_ugc_query_set_return_total_only steam_ugc_query_set_allow_cached_response steam_ugc_send_query shader_set shader_get_name shader_reset shader_current shader_is_compiled shader_get_sampler_index shader_get_uniform shader_set_uniform_i shader_set_uniform_i_array shader_set_uniform_f shader_set_uniform_f_array shader_set_uniform_matrix shader_set_uniform_matrix_array shader_enable_corner_id texture_set_stage texture_get_texel_width texture_get_texel_height shaders_are_supported vertex_format_begin vertex_format_end vertex_format_delete vertex_format_add_position vertex_format_add_position_3d vertex_format_add_colour vertex_format_add_color vertex_format_add_normal vertex_format_add_texcoord vertex_format_add_textcoord vertex_format_add_custom vertex_create_buffer vertex_create_buffer_ext vertex_delete_buffer vertex_begin vertex_end vertex_position vertex_position_3d vertex_colour vertex_color vertex_argb vertex_texcoord vertex_normal vertex_float1 vertex_float2 vertex_float3 vertex_float4 vertex_ubyte4 vertex_submit vertex_freeze vertex_get_number vertex_get_buffer_size vertex_create_buffer_from_buffer vertex_create_buffer_from_buffer_ext push_local_notification push_get_first_local_notification push_get_next_local_notification push_cancel_local_notification skeleton_animation_set skeleton_animation_get skeleton_animation_mix skeleton_animation_set_ext skeleton_animation_get_ext skeleton_animation_get_duration skeleton_animation_get_frames skeleton_animation_clear skeleton_skin_set skeleton_skin_get skeleton_attachment_set skeleton_attachment_get skeleton_attachment_create skeleton_collision_draw_set skeleton_bone_data_get skeleton_bone_data_set skeleton_bone_state_get skeleton_bone_state_set skeleton_get_minmax skeleton_get_num_bounds skeleton_get_bounds skeleton_animation_get_frame skeleton_animation_set_frame draw_skeleton draw_skeleton_time draw_skeleton_instance draw_skeleton_collision skeleton_animation_list skeleton_skin_list skeleton_slot_data layer_get_id layer_get_id_at_depth layer_get_depth layer_create layer_destroy layer_destroy_instances layer_add_instance layer_has_instance layer_set_visible layer_get_visible layer_exists layer_x layer_y layer_get_x layer_get_y layer_hspeed layer_vspeed layer_get_hspeed layer_get_vspeed layer_script_begin layer_script_end layer_shader layer_get_script_begin layer_get_script_end layer_get_shader layer_set_target_room layer_get_target_room layer_reset_target_room layer_get_all layer_get_all_elements layer_get_name layer_depth layer_get_element_layer layer_get_element_type layer_element_move layer_force_draw_depth layer_is_draw_depth_forced layer_get_forced_depth layer_background_get_id layer_background_exists layer_background_create layer_background_destroy layer_background_visible layer_background_change layer_background_sprite layer_background_htiled layer_background_vtiled layer_background_stretch layer_background_yscale layer_background_xscale layer_background_blend layer_background_alpha layer_background_index layer_background_speed layer_background_get_visible layer_background_get_sprite layer_background_get_htiled layer_background_get_vtiled layer_background_get_stretch layer_background_get_yscale layer_background_get_xscale layer_background_get_blend layer_background_get_alpha layer_background_get_index layer_background_get_speed layer_sprite_get_id layer_sprite_exists layer_sprite_create layer_sprite_destroy layer_sprite_change layer_sprite_index layer_sprite_speed layer_sprite_xscale layer_sprite_yscale layer_sprite_angle layer_sprite_blend layer_sprite_alpha layer_sprite_x layer_sprite_y layer_sprite_get_sprite layer_sprite_get_index layer_sprite_get_speed layer_sprite_get_xscale layer_sprite_get_yscale layer_sprite_get_angle layer_sprite_get_blend layer_sprite_get_alpha layer_sprite_get_x layer_sprite_get_y layer_tilemap_get_id layer_tilemap_exists layer_tilemap_create layer_tilemap_destroy tilemap_tileset tilemap_x tilemap_y tilemap_set tilemap_set_at_pixel tilemap_get_tileset tilemap_get_tile_width tilemap_get_tile_height tilemap_get_width tilemap_get_height tilemap_get_x tilemap_get_y tilemap_get tilemap_get_at_pixel tilemap_get_cell_x_at_pixel tilemap_get_cell_y_at_pixel tilemap_clear draw_tilemap draw_tile tilemap_set_global_mask tilemap_get_global_mask tilemap_set_mask tilemap_get_mask tilemap_get_frame tile_set_empty tile_set_index tile_set_flip tile_set_mirror tile_set_rotate tile_get_empty tile_get_index tile_get_flip tile_get_mirror tile_get_rotate layer_tile_exists layer_tile_create layer_tile_destroy layer_tile_change layer_tile_xscale layer_tile_yscale layer_tile_blend layer_tile_alpha layer_tile_x layer_tile_y layer_tile_region layer_tile_visible layer_tile_get_sprite layer_tile_get_xscale layer_tile_get_yscale layer_tile_get_blend layer_tile_get_alpha layer_tile_get_x layer_tile_get_y layer_tile_get_region layer_tile_get_visible layer_instance_get_instance instance_activate_layer instance_deactivate_layer camera_create camera_create_view camera_destroy camera_apply camera_get_active camera_get_default camera_set_default camera_set_view_mat camera_set_proj_mat camera_set_update_script camera_set_begin_script camera_set_end_script camera_set_view_pos camera_set_view_size camera_set_view_speed camera_set_view_border camera_set_view_angle camera_set_view_target camera_get_view_mat camera_get_proj_mat camera_get_update_script camera_get_begin_script camera_get_end_script camera_get_view_x camera_get_view_y camera_get_view_width camera_get_view_height camera_get_view_speed_x camera_get_view_speed_y camera_get_view_border_x camera_get_view_border_y camera_get_view_angle camera_get_view_target view_get_camera view_get_visible view_get_xport view_get_yport view_get_wport view_get_hport view_get_surface_id view_set_camera view_set_visible view_set_xport view_set_yport view_set_wport view_set_hport view_set_surface_id gesture_drag_time gesture_drag_distance gesture_flick_speed gesture_double_tap_time gesture_double_tap_distance gesture_pinch_distance gesture_pinch_angle_towards gesture_pinch_angle_away gesture_rotate_time gesture_rotate_angle gesture_tap_count gesture_get_drag_time gesture_get_drag_distance gesture_get_flick_speed gesture_get_double_tap_time gesture_get_double_tap_distance gesture_get_pinch_distance gesture_get_pinch_angle_towards gesture_get_pinch_angle_away gesture_get_rotate_time gesture_get_rotate_angle gesture_get_tap_count keyboard_virtual_show keyboard_virtual_hide keyboard_virtual_status keyboard_virtual_height",literal:"self other all noone global local undefined pointer_invalid pointer_null path_action_stop path_action_restart path_action_continue path_action_reverse true false pi GM_build_date GM_version GM_runtime_version timezone_local timezone_utc gamespeed_fps gamespeed_microseconds ev_create ev_destroy ev_step ev_alarm ev_keyboard ev_mouse ev_collision ev_other ev_draw ev_draw_begin ev_draw_end ev_draw_pre ev_draw_post ev_keypress ev_keyrelease ev_trigger ev_left_button ev_right_button ev_middle_button ev_no_button ev_left_press ev_right_press ev_middle_press ev_left_release ev_right_release ev_middle_release ev_mouse_enter ev_mouse_leave ev_mouse_wheel_up ev_mouse_wheel_down ev_global_left_button ev_global_right_button ev_global_middle_button ev_global_left_press ev_global_right_press ev_global_middle_press ev_global_left_release ev_global_right_release ev_global_middle_release ev_joystick1_left ev_joystick1_right ev_joystick1_up ev_joystick1_down ev_joystick1_button1 ev_joystick1_button2 ev_joystick1_button3 ev_joystick1_button4 ev_joystick1_button5 ev_joystick1_button6 ev_joystick1_button7 ev_joystick1_button8 ev_joystick2_left ev_joystick2_right ev_joystick2_up ev_joystick2_down ev_joystick2_button1 ev_joystick2_button2 ev_joystick2_button3 ev_joystick2_button4 ev_joystick2_button5 ev_joystick2_button6 ev_joystick2_button7 ev_joystick2_button8 ev_outside ev_boundary ev_game_start ev_game_end ev_room_start ev_room_end ev_no_more_lives ev_animation_end ev_end_of_path ev_no_more_health ev_close_button ev_user0 ev_user1 ev_user2 ev_user3 ev_user4 ev_user5 ev_user6 ev_user7 ev_user8 ev_user9 ev_user10 ev_user11 ev_user12 ev_user13 ev_user14 ev_user15 ev_step_normal ev_step_begin ev_step_end ev_gui ev_gui_begin ev_gui_end ev_cleanup ev_gesture ev_gesture_tap ev_gesture_double_tap ev_gesture_drag_start ev_gesture_dragging ev_gesture_drag_end ev_gesture_flick ev_gesture_pinch_start ev_gesture_pinch_in ev_gesture_pinch_out ev_gesture_pinch_end ev_gesture_rotate_start ev_gesture_rotating ev_gesture_rotate_end ev_global_gesture_tap ev_global_gesture_double_tap ev_global_gesture_drag_start ev_global_gesture_dragging ev_global_gesture_drag_end ev_global_gesture_flick ev_global_gesture_pinch_start ev_global_gesture_pinch_in ev_global_gesture_pinch_out ev_global_gesture_pinch_end ev_global_gesture_rotate_start ev_global_gesture_rotating ev_global_gesture_rotate_end vk_nokey vk_anykey vk_enter vk_return vk_shift vk_control vk_alt vk_escape vk_space vk_backspace vk_tab vk_pause vk_printscreen vk_left vk_right vk_up vk_down vk_home vk_end vk_delete vk_insert vk_pageup vk_pagedown vk_f1 vk_f2 vk_f3 vk_f4 vk_f5 vk_f6 vk_f7 vk_f8 vk_f9 vk_f10 vk_f11 vk_f12 vk_numpad0 vk_numpad1 vk_numpad2 vk_numpad3 vk_numpad4 vk_numpad5 vk_numpad6 vk_numpad7 vk_numpad8 vk_numpad9 vk_divide vk_multiply vk_subtract vk_add vk_decimal vk_lshift vk_lcontrol vk_lalt vk_rshift vk_rcontrol vk_ralt mb_any mb_none mb_left mb_right mb_middle c_aqua c_black c_blue c_dkgray c_fuchsia c_gray c_green c_lime c_ltgray c_maroon c_navy c_olive c_purple c_red c_silver c_teal c_white c_yellow c_orange fa_left fa_center fa_right fa_top fa_middle fa_bottom pr_pointlist pr_linelist pr_linestrip pr_trianglelist pr_trianglestrip pr_trianglefan bm_complex bm_normal bm_add bm_max bm_subtract bm_zero bm_one bm_src_colour bm_inv_src_colour bm_src_color bm_inv_src_color bm_src_alpha bm_inv_src_alpha bm_dest_alpha bm_inv_dest_alpha bm_dest_colour bm_inv_dest_colour bm_dest_color bm_inv_dest_color bm_src_alpha_sat tf_point tf_linear tf_anisotropic mip_off mip_on mip_markedonly audio_falloff_none audio_falloff_inverse_distance audio_falloff_inverse_distance_clamped audio_falloff_linear_distance audio_falloff_linear_distance_clamped audio_falloff_exponent_distance audio_falloff_exponent_distance_clamped audio_old_system audio_new_system audio_mono audio_stereo audio_3d cr_default cr_none cr_arrow cr_cross cr_beam cr_size_nesw cr_size_ns cr_size_nwse cr_size_we cr_uparrow cr_hourglass cr_drag cr_appstart cr_handpoint cr_size_all spritespeed_framespersecond spritespeed_framespergameframe asset_object asset_unknown asset_sprite asset_sound asset_room asset_path asset_script asset_font asset_timeline asset_tiles asset_shader fa_readonly fa_hidden fa_sysfile fa_volumeid fa_directory fa_archive ds_type_map ds_type_list ds_type_stack ds_type_queue ds_type_grid ds_type_priority ef_explosion ef_ring ef_ellipse ef_firework ef_smoke ef_smokeup ef_star ef_spark ef_flare ef_cloud ef_rain ef_snow pt_shape_pixel pt_shape_disk pt_shape_square pt_shape_line pt_shape_star pt_shape_circle pt_shape_ring pt_shape_sphere pt_shape_flare pt_shape_spark pt_shape_explosion pt_shape_cloud pt_shape_smoke pt_shape_snow ps_distr_linear ps_distr_gaussian ps_distr_invgaussian ps_shape_rectangle ps_shape_ellipse ps_shape_diamond ps_shape_line ty_real ty_string dll_cdecl dll_stdcall matrix_view matrix_projection matrix_world os_win32 os_windows os_macosx os_ios os_android os_symbian os_linux os_unknown os_winphone os_tizen os_win8native os_wiiu os_3ds os_psvita os_bb10 os_ps4 os_xboxone os_ps3 os_xbox360 os_uwp os_tvos os_switch browser_not_a_browser browser_unknown browser_ie browser_firefox browser_chrome browser_safari browser_safari_mobile browser_opera browser_tizen browser_edge browser_windows_store browser_ie_mobile device_ios_unknown device_ios_iphone device_ios_iphone_retina device_ios_ipad device_ios_ipad_retina device_ios_iphone5 device_ios_iphone6 device_ios_iphone6plus device_emulator device_tablet display_landscape display_landscape_flipped display_portrait display_portrait_flipped tm_sleep tm_countvsyncs of_challenge_win of_challen ge_lose of_challenge_tie leaderboard_type_number leaderboard_type_time_mins_secs cmpfunc_never cmpfunc_less cmpfunc_equal cmpfunc_lessequal cmpfunc_greater cmpfunc_notequal cmpfunc_greaterequal cmpfunc_always cull_noculling cull_clockwise cull_counterclockwise lighttype_dir lighttype_point iap_ev_storeload iap_ev_product iap_ev_purchase iap_ev_consume iap_ev_restore iap_storeload_ok iap_storeload_failed iap_status_uninitialised iap_status_unavailable iap_status_loading iap_status_available iap_status_processing iap_status_restoring iap_failed iap_unavailable iap_available iap_purchased iap_canceled iap_refunded fb_login_default fb_login_fallback_to_webview fb_login_no_fallback_to_webview fb_login_forcing_webview fb_login_use_system_account fb_login_forcing_safari phy_joint_anchor_1_x phy_joint_anchor_1_y phy_joint_anchor_2_x phy_joint_anchor_2_y phy_joint_reaction_force_x phy_joint_reaction_force_y phy_joint_reaction_torque phy_joint_motor_speed phy_joint_angle phy_joint_motor_torque phy_joint_max_motor_torque phy_joint_translation phy_joint_speed phy_joint_motor_force phy_joint_max_motor_force phy_joint_length_1 phy_joint_length_2 phy_joint_damping_ratio phy_joint_frequency phy_joint_lower_angle_limit phy_joint_upper_angle_limit phy_joint_angle_limits phy_joint_max_length phy_joint_max_torque phy_joint_max_force phy_debug_render_aabb phy_debug_render_collision_pairs phy_debug_render_coms phy_debug_render_core_shapes phy_debug_render_joints phy_debug_render_obb phy_debug_render_shapes phy_particle_flag_water phy_particle_flag_zombie phy_particle_flag_wall phy_particle_flag_spring phy_particle_flag_elastic phy_particle_flag_viscous phy_particle_flag_powder phy_particle_flag_tensile phy_particle_flag_colourmixing phy_particle_flag_colormixing phy_particle_group_flag_solid phy_particle_group_flag_rigid phy_particle_data_flag_typeflags phy_particle_data_flag_position phy_particle_data_flag_velocity phy_particle_data_flag_colour phy_particle_data_flag_color phy_particle_data_flag_category achievement_our_info achievement_friends_info achievement_leaderboard_info achievement_achievement_info achievement_filter_all_players achievement_filter_friends_only achievement_filter_favorites_only achievement_type_achievement_challenge achievement_type_score_challenge achievement_pic_loaded achievement_show_ui achievement_show_profile achievement_show_leaderboard achievement_show_achievement achievement_show_bank achievement_show_friend_picker achievement_show_purchase_prompt network_socket_tcp network_socket_udp network_socket_bluetooth network_type_connect network_type_disconnect network_type_data network_type_non_blocking_connect network_config_connect_timeout network_config_use_non_blocking_socket network_config_enable_reliable_udp network_config_disable_reliable_udp buffer_fixed buffer_grow buffer_wrap buffer_fast buffer_vbuffer buffer_network buffer_u8 buffer_s8 buffer_u16 buffer_s16 buffer_u32 buffer_s32 buffer_u64 buffer_f16 buffer_f32 buffer_f64 buffer_bool buffer_text buffer_string buffer_surface_copy buffer_seek_start buffer_seek_relative buffer_seek_end buffer_generalerror buffer_outofspace buffer_outofbounds buffer_invalidtype text_type button_type input_type ANSI_CHARSET DEFAULT_CHARSET EASTEUROPE_CHARSET RUSSIAN_CHARSET SYMBOL_CHARSET SHIFTJIS_CHARSET HANGEUL_CHARSET GB2312_CHARSET CHINESEBIG5_CHARSET JOHAB_CHARSET HEBREW_CHARSET ARABIC_CHARSET GREEK_CHARSET TURKISH_CHARSET VIETNAMESE_CHARSET THAI_CHARSET MAC_CHARSET BALTIC_CHARSET OEM_CHARSET gp_face1 gp_face2 gp_face3 gp_face4 gp_shoulderl gp_shoulderr gp_shoulderlb gp_shoulderrb gp_select gp_start gp_stickl gp_stickr gp_padu gp_padd gp_padl gp_padr gp_axislh gp_axislv gp_axisrh gp_axisrv ov_friends ov_community ov_players ov_settings ov_gamegroup ov_achievements lb_sort_none lb_sort_ascending lb_sort_descending lb_disp_none lb_disp_numeric lb_disp_time_sec lb_disp_time_ms ugc_result_success ugc_filetype_community ugc_filetype_microtrans ugc_visibility_public ugc_visibility_friends_only ugc_visibility_private ugc_query_RankedByVote ugc_query_RankedByPublicationDate ugc_query_AcceptedForGameRankedByAcceptanceDate ugc_query_RankedByTrend ugc_query_FavoritedByFriendsRankedByPublicationDate ugc_query_CreatedByFriendsRankedByPublicationDate ugc_query_RankedByNumTimesReported ugc_query_CreatedByFollowedUsersRankedByPublicationDate ugc_query_NotYetRated ugc_query_RankedByTotalVotesAsc ugc_query_RankedByVotesUp ugc_query_RankedByTextSearch ugc_sortorder_CreationOrderDesc ugc_sortorder_CreationOrderAsc ugc_sortorder_TitleAsc ugc_sortorder_LastUpdatedDesc ugc_sortorder_SubscriptionDateDesc ugc_sortorder_VoteScoreDesc ugc_sortorder_ForModeration ugc_list_Published ugc_list_VotedOn ugc_list_VotedUp ugc_list_VotedDown ugc_list_WillVoteLater ugc_list_Favorited ugc_list_Subscribed ugc_list_UsedOrPlayed ugc_list_Followed ugc_match_Items ugc_match_Items_Mtx ugc_match_Items_ReadyToUse ugc_match_Collections ugc_match_Artwork ugc_match_Videos ugc_match_Screenshots ugc_match_AllGuides ugc_match_WebGuides ugc_match_IntegratedGuides ugc_match_UsableInGame ugc_match_ControllerBindings vertex_usage_position vertex_usage_colour vertex_usage_color vertex_usage_normal vertex_usage_texcoord vertex_usage_textcoord vertex_usage_blendweight vertex_usage_blendindices vertex_usage_psize vertex_usage_tangent vertex_usage_binormal vertex_usage_fog vertex_usage_depth vertex_usage_sample vertex_type_float1 vertex_type_float2 vertex_type_float3 vertex_type_float4 vertex_type_colour vertex_type_color vertex_type_ubyte4 layerelementtype_undefined layerelementtype_background layerelementtype_instance layerelementtype_oldtilemap layerelementtype_sprite layerelementtype_tilemap layerelementtype_particlesystem layerelementtype_tile tile_rotate tile_flip tile_mirror tile_index_mask kbv_type_default kbv_type_ascii kbv_type_url kbv_type_email kbv_type_numbers kbv_type_phone kbv_type_phone_name kbv_returnkey_default kbv_returnkey_go kbv_returnkey_google kbv_returnkey_join kbv_returnkey_next kbv_returnkey_route kbv_returnkey_search kbv_returnkey_send kbv_returnkey_yahoo kbv_returnkey_done kbv_returnkey_continue kbv_returnkey_emergency kbv_autocapitalize_none kbv_autocapitalize_words kbv_autocapitalize_sentences kbv_autocapitalize_characters",symbol:"argument_relative argument argument0 argument1 argument2 argument3 argument4 argument5 argument6 argument7 argument8 argument9 argument10 argument11 argument12 argument13 argument14 argument15 argument_count x|0 y|0 xprevious yprevious xstart ystart hspeed vspeed direction speed friction gravity gravity_direction path_index path_position path_positionprevious path_speed path_scale path_orientation path_endaction object_index id solid persistent mask_index instance_count instance_id room_speed fps fps_real current_time current_year current_month current_day current_weekday current_hour current_minute current_second alarm timeline_index timeline_position timeline_speed timeline_running timeline_loop room room_first room_last room_width room_height room_caption room_persistent score lives health show_score show_lives show_health caption_score caption_lives caption_health event_type event_number event_object event_action application_surface gamemaker_pro gamemaker_registered gamemaker_version error_occurred error_last debug_mode keyboard_key keyboard_lastkey keyboard_lastchar keyboard_string mouse_x mouse_y mouse_button mouse_lastbutton cursor_sprite visible sprite_index sprite_width sprite_height sprite_xoffset sprite_yoffset image_number image_index image_speed depth image_xscale image_yscale image_angle image_alpha image_blend bbox_left bbox_right bbox_top bbox_bottom layer background_colour background_showcolour background_color background_showcolor view_enabled view_current view_visible view_xview view_yview view_wview view_hview view_xport view_yport view_wport view_hport view_angle view_hborder view_vborder view_hspeed view_vspeed view_object view_surface_id view_camera game_id game_display_name game_project_name game_save_id working_directory temp_directory program_directory browser_width browser_height os_type os_device os_browser os_version display_aa async_load delta_time webgl_enabled event_data iap_data phy_rotation phy_position_x phy_position_y phy_angular_velocity phy_linear_velocity_x phy_linear_velocity_y phy_speed_x phy_speed_y phy_speed phy_angular_damping phy_linear_damping phy_bullet phy_fixed_rotation phy_active phy_mass phy_inertia phy_com_x phy_com_y phy_dynamic phy_kinematic phy_sleeping phy_collision_points phy_collision_x phy_collision_y phy_col_normal_x phy_col_normal_y phy_position_xprevious phy_position_yprevious"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};var fE=function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{name:"Go",aliases:["golang"],keywords:t,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{begin:e.C_NUMBER_RE+"[i]",relevance:1},e.C_NUMBER_MODE]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,illegal:/["']/}]}]}};var TE=function(e){return{name:"Golo",keywords:{keyword:"println readln print import module function local return let var while for foreach times in case when match with break continue augment augmentation each find filter reduce if then else otherwise try catch finally raise throw orIfNull DynamicObject|10 DynamicVariable struct Observable map set vector list array",literal:"true false null"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}};var CE=function(e){return{name:"Gradle",case_insensitive:!0,keywords:{keyword:"task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.REGEXP_MODE]}};function NE(e){return e?"string"==typeof e?e:e.source:null}function RE(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return NE(e)})).join("")}("(?=",e,")")}function vE(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.variants=e,t}var OE=function(e){var t="[A-Za-z0-9_$]+",n=vE([e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]})]),a={className:"regexp",begin:/~?\/[^\/\n]+\//,contains:[e.BACKSLASH_ESCAPE]},r=vE([e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]),i=vE([{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:"\\$/",end:"/\\$",relevance:10},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE],{className:"string"});return{name:"Groovy",keywords:{built_in:"this super",literal:"true false null",keyword:"byte short char int long boolean float double void def as in assert trait abstract static volatile transient public private protected synchronized final class interface enum if else for while switch case break default continue throw throws try catch finally implements extends new import package return instanceof"},contains:[e.SHEBANG({binary:"groovy",relevance:10}),n,i,a,r,{className:"class",beginKeywords:"class interface trait enum",end:/\{/,illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{className:"meta",begin:"@[A-Za-z]+",relevance:0},{className:"attr",begin:t+"[ \t]*:",relevance:0},{begin:/\?/,end:/:/,relevance:0,contains:[n,i,a,r,"self"]},{className:"symbol",begin:"^[ \t]*"+RE(t+":"),excludeBegin:!0,end:t+":",relevance:0}],illegal:/#|<\//}};var hE=function(e){return{name:"HAML",case_insensitive:!0,contains:[{className:"meta",begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",relevance:10},e.COMMENT("^\\s*(!=#|=#|-#|/).*$",!1,{relevance:0}),{begin:"^\\s*(-|=|!=)(?!#)",starts:{end:"\\n",subLanguage:"ruby"}},{className:"tag",begin:"^\\s*%",contains:[{className:"selector-tag",begin:"\\w+"},{className:"selector-id",begin:"#[\\w-]+"},{className:"selector-class",begin:"\\.[\\w-]+"},{begin:/\{\s*/,end:/\s*\}/,contains:[{begin:":\\w+\\s*=>",end:",\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:":\\w+"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]},{begin:"\\(\\s*",end:"\\s*\\)",excludeEnd:!0,contains:[{begin:"\\w+\\s*=",end:"\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:"\\w+",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]}]},{begin:"^\\s*[=~]\\s*"},{begin:/#\{/,starts:{end:/\}/,subLanguage:"ruby"}}]}};function yE(e){return e?"string"==typeof e?e:e.source:null}function IE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return yE(e)})).join("");return a}var AE=function(e){var t={"builtin-name":["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"]},n=/\[\]|\[[^\]]+\]/,a=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,r=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return yE(e)})).join("|")+")"}(/""|"[^"]+"/,/''|'[^']+'/,n,a),i=IE(IE("(",/\.|\.\/|\//,")?"),r,function(e){return IE("(",e,")*")}(IE(/(\.|\/)/,r))),o=IE("(",n,"|",a,")(?==)"),s={begin:i,lexemes:/[\w.\/]+/},l=e.inherit(s,{keywords:{literal:["true","false","undefined","null"]}}),c={begin:/\(/,end:/\)/},_={className:"attr",begin:o,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,l,c]}}},d={contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},_,l,c],returnEnd:!0},u=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\)/})});c.contains=[u];var m=e.inherit(s,{keywords:t,className:"name",starts:e.inherit(d,{end:/\}\}/})}),p=e.inherit(s,{keywords:t,className:"name"}),g=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\}\}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[m],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[p]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[m]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[p]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[g]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[g]}]}};var DE=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},n={className:"meta",begin:/\{-#/,end:/#-\}/},a={className:"meta",begin:"^#",end:"$"},r={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},i={begin:"\\(",end:"\\)",illegal:'"',contains:[n,a,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),t]};return{name:"Haskell",aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[i,t],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[i,t],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[r,i,t]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[n,r,i,{begin:/\{/,end:/\}/,contains:i.contains},t]},{beginKeywords:"default",end:"$",contains:[r,i,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[r,e.QUOTE_STRING_MODE,t]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},n,a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,r,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}]}};var ME=function(e){return{name:"Haxe",aliases:["hx"],keywords:{keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while Int Float String Bool Dynamic Void Array ",built_in:"trace this",literal:"true false null _"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"},{className:"subst",begin:"\\$",end:/\W\}/}]},e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@:",end:"$"},{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end error"}},{className:"type",begin:":[ \t]*",end:"[^A-Za-z0-9_ \t\\->]",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:":[ \t]*",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"new *",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"class",beginKeywords:"enum",end:"\\{",contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"abstract",end:"[\\{$]",contains:[{className:"type",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"from +",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"to +",end:"\\W",excludeBegin:!0,excludeEnd:!0},e.TITLE_MODE],keywords:{keyword:"abstract from to"}},{className:"class",begin:"\\b(class|interface) +",end:"[\\{$]",excludeEnd:!0,keywords:"class interface",contains:[{className:"keyword",begin:"\\b(extends|implements) +",keywords:"extends implements",contains:[{className:"type",begin:e.IDENT_RE,relevance:0}]},e.TITLE_MODE]},{className:"function",beginKeywords:"function",end:"\\(",excludeEnd:!0,illegal:"\\S",contains:[e.TITLE_MODE]}],illegal:/<\//}};var LE=function(e){return{name:"HSP",case_insensitive:!0,keywords:{$pattern:/[\w._]+/,keyword:"goto gosub return break repeat loop continue wait await dim sdim foreach dimtype dup dupptr end stop newmod delmod mref run exgoto on mcall assert logmes newlab resume yield onexit onerror onkey onclick oncmd exist delete mkdir chdir dirlist bload bsave bcopy memfile if else poke wpoke lpoke getstr chdpm memexpand memcpy memset notesel noteadd notedel noteload notesave randomize noteunsel noteget split strrep setease button chgdisp exec dialog mmload mmplay mmstop mci pset pget syscolor mes print title pos circle cls font sysfont objsize picload color palcolor palette redraw width gsel gcopy gzoom gmode bmpsave hsvcolor getkey listbox chkbox combox input mesbox buffer screen bgscr mouse objsel groll line clrobj boxf objprm objmode stick grect grotate gsquare gradf objimage objskip objenable celload celdiv celput newcom querycom delcom cnvstow comres axobj winobj sendmsg comevent comevarg sarrayconv callfunc cnvwtos comevdisp libptr system hspstat hspver stat cnt err strsize looplev sublev iparam wparam lparam refstr refdval int rnd strlen length length2 length3 length4 vartype gettime peek wpeek lpeek varptr varuse noteinfo instr abs limit getease str strmid strf getpath strtrim sin cos tan atan sqrt double absf expf logf limitf powf geteasef mousex mousey mousew hwnd hinstance hdc ginfo objinfo dirinfo sysinfo thismod __hspver__ __hsp30__ __date__ __time__ __line__ __file__ _debug __hspdef__ and or xor not screen_normal screen_palette screen_hide screen_fixedsize screen_tool screen_frame gmode_gdi gmode_mem gmode_rgb0 gmode_alpha gmode_rgb0alpha gmode_add gmode_sub gmode_pixela ginfo_mx ginfo_my ginfo_act ginfo_sel ginfo_wx1 ginfo_wy1 ginfo_wx2 ginfo_wy2 ginfo_vx ginfo_vy ginfo_sizex ginfo_sizey ginfo_winx ginfo_winy ginfo_mesx ginfo_mesy ginfo_r ginfo_g ginfo_b ginfo_paluse ginfo_dispx ginfo_dispy ginfo_cx ginfo_cy ginfo_intid ginfo_newid ginfo_sx ginfo_sy objinfo_mode objinfo_bmscr objinfo_hwnd notemax notesize dir_cur dir_exe dir_win dir_sys dir_cmdline dir_desktop dir_mydoc dir_tv font_normal font_bold font_italic font_underline font_strikeout font_antialias objmode_normal objmode_guifont objmode_usefont gsquare_grad msgothic msmincho do until while wend for next _break _continue switch case default swbreak swend ddim ldim alloc m_pi rad2deg deg2rad ease_linear ease_quad_in ease_quad_out ease_quad_inout ease_cubic_in ease_cubic_out ease_cubic_inout ease_quartic_in ease_quartic_out ease_quartic_inout ease_bounce_in ease_bounce_out ease_bounce_inout ease_shake_in ease_shake_out ease_shake_inout ease_loop"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",begin:/\{"/,end:/"\}/,contains:[e.BACKSLASH_ESCAPE]},e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"addion cfunc cmd cmpopt comfunc const defcfunc deffunc define else endif enum epack func global if ifdef ifndef include modcfunc modfunc modinit modterm module pack packopt regcmd runtime undef usecom uselib"},contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),e.NUMBER_MODE,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"symbol",begin:"^\\*(\\w+|@)"},e.NUMBER_MODE,e.C_NUMBER_MODE]}};function wE(e){return e?"string"==typeof e?e:e.source:null}function xE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return wE(e)})).join("");return a}function PE(e){var t={"builtin-name":["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"]},n=/\[\]|\[[^\]]+\]/,a=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,r=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return wE(e)})).join("|")+")"}(/""|"[^"]+"/,/''|'[^']+'/,n,a),i=xE(xE("(",/\.|\.\/|\//,")?"),r,function(e){return xE("(",e,")*")}(xE(/(\.|\/)/,r))),o=xE("(",n,"|",a,")(?==)"),s={begin:i,lexemes:/[\w.\/]+/},l=e.inherit(s,{keywords:{literal:["true","false","undefined","null"]}}),c={begin:/\(/,end:/\)/},_={className:"attr",begin:o,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,l,c]}}},d={contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},_,l,c],returnEnd:!0},u=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\)/})});c.contains=[u];var m=e.inherit(s,{keywords:t,className:"name",starts:e.inherit(d,{end:/\}\}/})}),p=e.inherit(s,{keywords:t,className:"name"}),g=e.inherit(s,{className:"name",keywords:t,starts:e.inherit(d,{end:/\}\}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[m],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[p]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[m]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[p]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[g]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[g]}]}}var kE=function(e){var t=PE(e);return t.name="HTMLbars",e.getLanguage("handlebars")&&(t.disableAutodetect=!0),t};function UE(e){return e?"string"==typeof e?e:e.source:null}function FE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return UE(e)})).join("");return a}var BE=function(e){var t="HTTP/(2|1\\.[01])",n={className:"attribute",begin:FE("^",/[A-Za-z][A-Za-z0-9-]*/,"(?=\\:\\s)"),starts:{contains:[{className:"punctuation",begin:/: /,relevance:0,starts:{end:"$",relevance:0}}]}},a=[n,{begin:"\\n\\n",starts:{subLanguage:[],endsWithParent:!0}}];return{name:"HTTP",aliases:["https"],illegal:/\S/,contains:[{begin:"^(?="+t+" \\d{3})",end:/$/,contains:[{className:"meta",begin:t},{className:"number",begin:"\\b\\d{3}\\b"}],starts:{end:/\b\B/,illegal:/\S/,contains:a}},{begin:"(?=^[A-Z]+ (.*?) "+t+"$)",end:/$/,contains:[{className:"string",begin:" ",end:" ",excludeBegin:!0,excludeEnd:!0},{className:"meta",begin:t},{className:"keyword",begin:"[A-Z]+"}],starts:{end:/\b\B/,illegal:/\S/,contains:a}},e.inherit(n,{relevance:0})]}};var GE=function(e){var t="a-zA-Z_\\-!.?+*=<>&#'",n="["+t+"]["+t+"0-9/;:]*",a={$pattern:n,"builtin-name":"!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . / // //= /= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile/calls profile/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"},r={begin:n,relevance:0},i={className:"number",begin:"[-+]?\\d+(\\.\\d+)?",relevance:0},o=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),s=e.COMMENT(";","$",{relevance:0}),l={className:"literal",begin:/\b([Tt]rue|[Ff]alse|nil|None)\b/},c={begin:"[\\[\\{]",end:"[\\]\\}]"},_={className:"comment",begin:"\\^"+n},d=e.COMMENT("\\^\\{","\\}"),u={className:"symbol",begin:"[:]{1,2}"+n},m={begin:"\\(",end:"\\)"},p={endsWithParent:!0,relevance:0},g={className:"name",relevance:0,keywords:a,begin:n,starts:p},E=[m,o,_,d,s,u,c,i,l,r];return m.contains=[e.COMMENT("comment",""),g,p],p.contains=E,c.contains=E,{name:"Hy",aliases:["hylang"],illegal:/\S/,contains:[e.SHEBANG(),m,o,_,d,s,u,c,i,l]}};var YE=function(e){return{name:"Inform 7",aliases:["i7"],case_insensitive:!0,keywords:{keyword:"thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule"},contains:[{className:"string",begin:'"',end:'"',relevance:0,contains:[{className:"subst",begin:"\\[",end:"\\]"}]},{className:"section",begin:/^(Volume|Book|Part|Chapter|Section|Table)\b/,end:"$"},{begin:/^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\b/,end:":",contains:[{begin:"\\(This",end:"\\)"}]},{className:"comment",begin:"\\[",end:"\\]",contains:["self"]}]}};function HE(e){return e?"string"==typeof e?e:e.source:null}function VE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return HE(e)})).join("");return a}var qE=function(e){var t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},n=e.COMMENT();n.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var a={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},r={className:"literal",begin:/\bon|off|true|false|yes|no\b/},i={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},o={begin:/\[/,end:/\]/,contains:[n,r,a,i,t,"self"],relevance:0},s=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return"("+t.map((function(e){return HE(e)})).join("|")+")"}(/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/);return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[n,{className:"section",begin:/\[+/,end:/\]+/},{begin:VE(s,"(\\s*\\.\\s*",s,")*",VE("(?=",/\s*=\s*[^#\s]/,")")),className:"attr",starts:{end:/$/,contains:[n,o,r,a,i,t]}}]}};function zE(e){return e?"string"==typeof e?e:e.source:null}function WE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return zE(e)})).join("");return a}var $E=function(e){var t=/(_[a-z_\d]+)?/,n=/([de][+-]?\d+)?/,a={className:"number",variants:[{begin:WE(/\b\d+/,/\.(\d*)/,n,t)},{begin:WE(/\b\d+/,n,t)},{begin:WE(/\.\d+/,n,t)}],relevance:0};return{name:"IRPF90",case_insensitive:!0,keywords:{literal:".False. .True.",keyword:"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here"},illegal:/\/\*/,contains:[e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{className:"string",relevance:0}),{className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},e.COMMENT("!","$",{relevance:0}),e.COMMENT("begin_doc","end_doc",{relevance:10}),a]}};var QE=function(e){var t="[A-Za-zА-Яа-яёЁ_!][A-Za-zА-Яа-яёЁ_0-9]*",n={className:"number",begin:e.NUMBER_RE,relevance:0},a={className:"string",variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]},r={className:"doctag",begin:"\\b(?:TODO|DONE|BEGIN|END|STUB|CHG|FIXME|NOTE|BUG|XXX)\\b",relevance:0},i={variants:[{className:"comment",begin:"//",end:"$",relevance:0,contains:[e.PHRASAL_WORDS_MODE,r]},{className:"comment",begin:"/\\*",end:"\\*/",relevance:0,contains:[e.PHRASAL_WORDS_MODE,r]}]},o={$pattern:t,keyword:"and и else иначе endexcept endfinally endforeach конецвсе endif конецесли endwhile конецпока except exitfor finally foreach все if если in в not не or или try while пока ",built_in:"SYSRES_CONST_ACCES_RIGHT_TYPE_EDIT SYSRES_CONST_ACCES_RIGHT_TYPE_FULL SYSRES_CONST_ACCES_RIGHT_TYPE_VIEW SYSRES_CONST_ACCESS_MODE_REQUISITE_CODE SYSRES_CONST_ACCESS_NO_ACCESS_VIEW SYSRES_CONST_ACCESS_NO_ACCESS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW SYSRES_CONST_ACCESS_RIGHTS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_TYPE_CHANGE SYSRES_CONST_ACCESS_TYPE_CHANGE_CODE SYSRES_CONST_ACCESS_TYPE_EXISTS SYSRES_CONST_ACCESS_TYPE_EXISTS_CODE SYSRES_CONST_ACCESS_TYPE_FULL SYSRES_CONST_ACCESS_TYPE_FULL_CODE SYSRES_CONST_ACCESS_TYPE_VIEW SYSRES_CONST_ACCESS_TYPE_VIEW_CODE SYSRES_CONST_ACTION_TYPE_ABORT SYSRES_CONST_ACTION_TYPE_ACCEPT SYSRES_CONST_ACTION_TYPE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ADD_ATTACHMENT SYSRES_CONST_ACTION_TYPE_CHANGE_CARD SYSRES_CONST_ACTION_TYPE_CHANGE_KIND SYSRES_CONST_ACTION_TYPE_CHANGE_STORAGE SYSRES_CONST_ACTION_TYPE_CONTINUE SYSRES_CONST_ACTION_TYPE_COPY SYSRES_CONST_ACTION_TYPE_CREATE SYSRES_CONST_ACTION_TYPE_CREATE_VERSION SYSRES_CONST_ACTION_TYPE_DELETE SYSRES_CONST_ACTION_TYPE_DELETE_ATTACHMENT SYSRES_CONST_ACTION_TYPE_DELETE_VERSION SYSRES_CONST_ACTION_TYPE_DISABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE_AND_PASSWORD SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_PASSWORD SYSRES_CONST_ACTION_TYPE_EXPORT_WITH_LOCK SYSRES_CONST_ACTION_TYPE_EXPORT_WITHOUT_LOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITH_UNLOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITHOUT_UNLOCK SYSRES_CONST_ACTION_TYPE_LIFE_CYCLE_STAGE SYSRES_CONST_ACTION_TYPE_LOCK SYSRES_CONST_ACTION_TYPE_LOCK_FOR_SERVER SYSRES_CONST_ACTION_TYPE_LOCK_MODIFY SYSRES_CONST_ACTION_TYPE_MARK_AS_READED SYSRES_CONST_ACTION_TYPE_MARK_AS_UNREADED SYSRES_CONST_ACTION_TYPE_MODIFY SYSRES_CONST_ACTION_TYPE_MODIFY_CARD SYSRES_CONST_ACTION_TYPE_MOVE_TO_ARCHIVE SYSRES_CONST_ACTION_TYPE_OFF_ENCRYPTION SYSRES_CONST_ACTION_TYPE_PASSWORD_CHANGE SYSRES_CONST_ACTION_TYPE_PERFORM SYSRES_CONST_ACTION_TYPE_RECOVER_FROM_LOCAL_COPY SYSRES_CONST_ACTION_TYPE_RESTART SYSRES_CONST_ACTION_TYPE_RESTORE_FROM_ARCHIVE SYSRES_CONST_ACTION_TYPE_REVISION SYSRES_CONST_ACTION_TYPE_SEND_BY_MAIL SYSRES_CONST_ACTION_TYPE_SIGN SYSRES_CONST_ACTION_TYPE_START SYSRES_CONST_ACTION_TYPE_UNLOCK SYSRES_CONST_ACTION_TYPE_UNLOCK_FROM_SERVER SYSRES_CONST_ACTION_TYPE_VERSION_STATE SYSRES_CONST_ACTION_TYPE_VERSION_VISIBILITY SYSRES_CONST_ACTION_TYPE_VIEW SYSRES_CONST_ACTION_TYPE_VIEW_SHADOW_COPY SYSRES_CONST_ACTION_TYPE_WORKFLOW_DESCRIPTION_MODIFY SYSRES_CONST_ACTION_TYPE_WRITE_HISTORY SYSRES_CONST_ACTIVE_VERSION_STATE_PICK_VALUE SYSRES_CONST_ADD_REFERENCE_MODE_NAME SYSRES_CONST_ADDITION_REQUISITE_CODE SYSRES_CONST_ADDITIONAL_PARAMS_REQUISITE_CODE SYSRES_CONST_ADITIONAL_JOB_END_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_READ_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_START_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_STATE_REQUISITE_NAME SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE_ACTION SYSRES_CONST_ALL_ACCEPT_CONDITION_RUS SYSRES_CONST_ALL_USERS_GROUP SYSRES_CONST_ALL_USERS_GROUP_NAME SYSRES_CONST_ALL_USERS_SERVER_GROUP_NAME SYSRES_CONST_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_APP_VIEWER_TYPE_REQUISITE_CODE SYSRES_CONST_APPROVING_SIGNATURE_NAME SYSRES_CONST_APPROVING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE_CODE SYSRES_CONST_ATTACH_TYPE_COMPONENT_TOKEN SYSRES_CONST_ATTACH_TYPE_DOC SYSRES_CONST_ATTACH_TYPE_EDOC SYSRES_CONST_ATTACH_TYPE_FOLDER SYSRES_CONST_ATTACH_TYPE_JOB SYSRES_CONST_ATTACH_TYPE_REFERENCE SYSRES_CONST_ATTACH_TYPE_TASK SYSRES_CONST_AUTH_ENCODED_PASSWORD SYSRES_CONST_AUTH_ENCODED_PASSWORD_CODE SYSRES_CONST_AUTH_NOVELL SYSRES_CONST_AUTH_PASSWORD SYSRES_CONST_AUTH_PASSWORD_CODE SYSRES_CONST_AUTH_WINDOWS SYSRES_CONST_AUTHENTICATING_SIGNATURE_NAME SYSRES_CONST_AUTHENTICATING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_AUTO_ENUM_METHOD_FLAG SYSRES_CONST_AUTO_NUMERATION_CODE SYSRES_CONST_AUTO_STRONG_ENUM_METHOD_FLAG SYSRES_CONST_AUTOTEXT_NAME_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_TEXT_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_USAGE_ALL SYSRES_CONST_AUTOTEXT_USAGE_ALL_CODE SYSRES_CONST_AUTOTEXT_USAGE_SIGN SYSRES_CONST_AUTOTEXT_USAGE_SIGN_CODE SYSRES_CONST_AUTOTEXT_USAGE_WORK SYSRES_CONST_AUTOTEXT_USAGE_WORK_CODE SYSRES_CONST_AUTOTEXT_USE_ANYWHERE_CODE SYSRES_CONST_AUTOTEXT_USE_ON_SIGNING_CODE SYSRES_CONST_AUTOTEXT_USE_ON_WORK_CODE SYSRES_CONST_BEGIN_DATE_REQUISITE_CODE SYSRES_CONST_BLACK_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BLUE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BTN_PART SYSRES_CONST_CALCULATED_ROLE_TYPE_CODE SYSRES_CONST_CALL_TYPE_VARIABLE_BUTTON_VALUE SYSRES_CONST_CALL_TYPE_VARIABLE_PROGRAM_VALUE SYSRES_CONST_CANCEL_MESSAGE_FUNCTION_RESULT SYSRES_CONST_CARD_PART SYSRES_CONST_CARD_REFERENCE_MODE_NAME SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_AND_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_VALUE SYSRES_CONST_CHECK_PARAM_VALUE_DATE_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_FLOAT_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_INTEGER_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_PICK_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_REEFRENCE_PARAM_TYPE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_CODE_COMPONENT_TYPE_ADMIN SYSRES_CONST_CODE_COMPONENT_TYPE_DEVELOPER SYSRES_CONST_CODE_COMPONENT_TYPE_DOCS SYSRES_CONST_CODE_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_CODE_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_CODE_COMPONENT_TYPE_OTHER SYSRES_CONST_CODE_COMPONENT_TYPE_REFERENCE SYSRES_CONST_CODE_COMPONENT_TYPE_REPORT SYSRES_CONST_CODE_COMPONENT_TYPE_SCRIPT SYSRES_CONST_CODE_COMPONENT_TYPE_URL SYSRES_CONST_CODE_REQUISITE_ACCESS SYSRES_CONST_CODE_REQUISITE_CODE SYSRES_CONST_CODE_REQUISITE_COMPONENT SYSRES_CONST_CODE_REQUISITE_DESCRIPTION SYSRES_CONST_CODE_REQUISITE_EXCLUDE_COMPONENT SYSRES_CONST_CODE_REQUISITE_RECORD SYSRES_CONST_COMMENT_REQ_CODE SYSRES_CONST_COMMON_SETTINGS_REQUISITE_CODE SYSRES_CONST_COMP_CODE_GRD SYSRES_CONST_COMPONENT_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_COMPONENT_TYPE_ADMIN_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DEVELOPER_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DOCS SYSRES_CONST_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_COMPONENT_TYPE_EDOCS SYSRES_CONST_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_COMPONENT_TYPE_OTHER SYSRES_CONST_COMPONENT_TYPE_REFERENCE_TYPES SYSRES_CONST_COMPONENT_TYPE_REFERENCES SYSRES_CONST_COMPONENT_TYPE_REPORTS SYSRES_CONST_COMPONENT_TYPE_SCRIPTS SYSRES_CONST_COMPONENT_TYPE_URL SYSRES_CONST_COMPONENTS_REMOTE_SERVERS_VIEW_CODE SYSRES_CONST_CONDITION_BLOCK_DESCRIPTION SYSRES_CONST_CONST_FIRM_STATUS_COMMON SYSRES_CONST_CONST_FIRM_STATUS_INDIVIDUAL SYSRES_CONST_CONST_NEGATIVE_VALUE SYSRES_CONST_CONST_POSITIVE_VALUE SYSRES_CONST_CONST_SERVER_STATUS_DONT_REPLICATE SYSRES_CONST_CONST_SERVER_STATUS_REPLICATE SYSRES_CONST_CONTENTS_REQUISITE_CODE SYSRES_CONST_DATA_TYPE_BOOLEAN SYSRES_CONST_DATA_TYPE_DATE SYSRES_CONST_DATA_TYPE_FLOAT SYSRES_CONST_DATA_TYPE_INTEGER SYSRES_CONST_DATA_TYPE_PICK SYSRES_CONST_DATA_TYPE_REFERENCE SYSRES_CONST_DATA_TYPE_STRING SYSRES_CONST_DATA_TYPE_TEXT SYSRES_CONST_DATA_TYPE_VARIANT SYSRES_CONST_DATE_CLOSE_REQ_CODE SYSRES_CONST_DATE_FORMAT_DATE_ONLY_CHAR SYSRES_CONST_DATE_OPEN_REQ_CODE SYSRES_CONST_DATE_REQUISITE SYSRES_CONST_DATE_REQUISITE_CODE SYSRES_CONST_DATE_REQUISITE_NAME SYSRES_CONST_DATE_REQUISITE_TYPE SYSRES_CONST_DATE_TYPE_CHAR SYSRES_CONST_DATETIME_FORMAT_VALUE SYSRES_CONST_DEA_ACCESS_RIGHTS_ACTION_CODE SYSRES_CONST_DESCRIPTION_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_DET1_PART SYSRES_CONST_DET2_PART SYSRES_CONST_DET3_PART SYSRES_CONST_DET4_PART SYSRES_CONST_DET5_PART SYSRES_CONST_DET6_PART SYSRES_CONST_DETAIL_DATASET_KEY_REQUISITE_CODE SYSRES_CONST_DETAIL_PICK_REQUISITE_CODE SYSRES_CONST_DETAIL_REQ_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_NAME SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_NAME SYSRES_CONST_DOCUMENT_STORAGES_CODE SYSRES_CONST_DOCUMENT_TEMPLATES_TYPE_NAME SYSRES_CONST_DOUBLE_REQUISITE_CODE SYSRES_CONST_EDITOR_CLOSE_FILE_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_CLOSE_PROCESS_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_TYPE_REQUISITE_CODE SYSRES_CONST_EDITORS_APPLICATION_NAME_REQUISITE_CODE SYSRES_CONST_EDITORS_CREATE_SEVERAL_PROCESSES_REQUISITE_CODE SYSRES_CONST_EDITORS_EXTENSION_REQUISITE_CODE SYSRES_CONST_EDITORS_OBSERVER_BY_PROCESS_TYPE SYSRES_CONST_EDITORS_REFERENCE_CODE SYSRES_CONST_EDITORS_REPLACE_SPEC_CHARS_REQUISITE_CODE SYSRES_CONST_EDITORS_USE_PLUGINS_REQUISITE_CODE SYSRES_CONST_EDITORS_VIEW_DOCUMENT_OPENED_TO_EDIT_CODE SYSRES_CONST_EDOC_CARD_TYPE_REQUISITE_CODE SYSRES_CONST_EDOC_CARD_TYPES_LINK_REQUISITE_CODE SYSRES_CONST_EDOC_CERTIFICATE_AND_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_CERTIFICATE_ENCODE_CODE SYSRES_CONST_EDOC_DATE_REQUISITE_CODE SYSRES_CONST_EDOC_KIND_REFERENCE_CODE SYSRES_CONST_EDOC_KINDS_BY_TEMPLATE_ACTION_CODE SYSRES_CONST_EDOC_MANAGE_ACCESS_CODE SYSRES_CONST_EDOC_NONE_ENCODE_CODE SYSRES_CONST_EDOC_NUMBER_REQUISITE_CODE SYSRES_CONST_EDOC_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_READONLY_ACCESS_CODE SYSRES_CONST_EDOC_SHELL_LIFE_TYPE_VIEW_VALUE SYSRES_CONST_EDOC_SIZE_RESTRICTION_PRIORITY_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_CHECK_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_COMPUTER_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_DATABASE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_EDIT_IN_STORAGE_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_LOCAL_PATH_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_SHARED_SOURCE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_EDOC_TYPES_REFERENCE_CODE SYSRES_CONST_EDOC_VERSION_ACTIVE_STAGE_CODE SYSRES_CONST_EDOC_VERSION_DESIGN_STAGE_CODE SYSRES_CONST_EDOC_VERSION_OBSOLETE_STAGE_CODE SYSRES_CONST_EDOC_WRITE_ACCES_CODE SYSRES_CONST_EDOCUMENT_CARD_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_END_DATE_REQUISITE_CODE SYSRES_CONST_ENUMERATION_TYPE_REQUISITE_CODE SYSRES_CONST_EXECUTE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_EXECUTIVE_FILE_STORAGE_TYPE SYSRES_CONST_EXIST_CONST SYSRES_CONST_EXIST_VALUE SYSRES_CONST_EXPORT_LOCK_TYPE_ASK SYSRES_CONST_EXPORT_LOCK_TYPE_WITH_LOCK SYSRES_CONST_EXPORT_LOCK_TYPE_WITHOUT_LOCK SYSRES_CONST_EXPORT_VERSION_TYPE_ASK SYSRES_CONST_EXPORT_VERSION_TYPE_LAST SYSRES_CONST_EXPORT_VERSION_TYPE_LAST_ACTIVE SYSRES_CONST_EXTENSION_REQUISITE_CODE SYSRES_CONST_FILTER_NAME_REQUISITE_CODE SYSRES_CONST_FILTER_REQUISITE_CODE SYSRES_CONST_FILTER_TYPE_COMMON_CODE SYSRES_CONST_FILTER_TYPE_COMMON_NAME SYSRES_CONST_FILTER_TYPE_USER_CODE SYSRES_CONST_FILTER_TYPE_USER_NAME SYSRES_CONST_FILTER_VALUE_REQUISITE_NAME SYSRES_CONST_FLOAT_NUMBER_FORMAT_CHAR SYSRES_CONST_FLOAT_REQUISITE_TYPE SYSRES_CONST_FOLDER_AUTHOR_VALUE SYSRES_CONST_FOLDER_KIND_ANY_OBJECTS SYSRES_CONST_FOLDER_KIND_COMPONENTS SYSRES_CONST_FOLDER_KIND_EDOCS SYSRES_CONST_FOLDER_KIND_JOBS SYSRES_CONST_FOLDER_KIND_TASKS SYSRES_CONST_FOLDER_TYPE_COMMON SYSRES_CONST_FOLDER_TYPE_COMPONENT SYSRES_CONST_FOLDER_TYPE_FAVORITES SYSRES_CONST_FOLDER_TYPE_INBOX SYSRES_CONST_FOLDER_TYPE_OUTBOX SYSRES_CONST_FOLDER_TYPE_QUICK_LAUNCH SYSRES_CONST_FOLDER_TYPE_SEARCH SYSRES_CONST_FOLDER_TYPE_SHORTCUTS SYSRES_CONST_FOLDER_TYPE_USER SYSRES_CONST_FROM_DICTIONARY_ENUM_METHOD_FLAG SYSRES_CONST_FULL_SUBSTITUTE_TYPE SYSRES_CONST_FULL_SUBSTITUTE_TYPE_CODE SYSRES_CONST_FUNCTION_CANCEL_RESULT SYSRES_CONST_FUNCTION_CATEGORY_SYSTEM SYSRES_CONST_FUNCTION_CATEGORY_USER SYSRES_CONST_FUNCTION_FAILURE_RESULT SYSRES_CONST_FUNCTION_SAVE_RESULT SYSRES_CONST_GENERATED_REQUISITE SYSRES_CONST_GREEN_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_GROUP_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_NAME SYSRES_CONST_GROUP_CATEGORY_SERVICE_CODE SYSRES_CONST_GROUP_CATEGORY_SERVICE_NAME SYSRES_CONST_GROUP_COMMON_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_FULL_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_CODES_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_SERVICE_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_USER_REQUISITE_CODE SYSRES_CONST_GROUPS_REFERENCE_CODE SYSRES_CONST_GROUPS_REQUISITE_CODE SYSRES_CONST_HIDDEN_MODE_NAME SYSRES_CONST_HIGH_LVL_REQUISITE_CODE SYSRES_CONST_HISTORY_ACTION_CREATE_CODE SYSRES_CONST_HISTORY_ACTION_DELETE_CODE SYSRES_CONST_HISTORY_ACTION_EDIT_CODE SYSRES_CONST_HOUR_CHAR SYSRES_CONST_ID_REQUISITE_CODE SYSRES_CONST_IDSPS_REQUISITE_CODE SYSRES_CONST_IMAGE_MODE_COLOR SYSRES_CONST_IMAGE_MODE_GREYSCALE SYSRES_CONST_IMAGE_MODE_MONOCHROME SYSRES_CONST_IMPORTANCE_HIGH SYSRES_CONST_IMPORTANCE_LOW SYSRES_CONST_IMPORTANCE_NORMAL SYSRES_CONST_IN_DESIGN_VERSION_STATE_PICK_VALUE SYSRES_CONST_INCOMING_WORK_RULE_TYPE_CODE SYSRES_CONST_INT_REQUISITE SYSRES_CONST_INT_REQUISITE_TYPE SYSRES_CONST_INTEGER_NUMBER_FORMAT_CHAR SYSRES_CONST_INTEGER_TYPE_CHAR SYSRES_CONST_IS_GENERATED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_PUBLIC_ROLE_REQUISITE_CODE SYSRES_CONST_IS_REMOTE_USER_NEGATIVE_VALUE SYSRES_CONST_IS_REMOTE_USER_POSITIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_STORED_VALUE SYSRES_CONST_ITALIC_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_JOB_BLOCK_DESCRIPTION SYSRES_CONST_JOB_KIND_CONTROL_JOB SYSRES_CONST_JOB_KIND_JOB SYSRES_CONST_JOB_KIND_NOTICE SYSRES_CONST_JOB_STATE_ABORTED SYSRES_CONST_JOB_STATE_COMPLETE SYSRES_CONST_JOB_STATE_WORKING SYSRES_CONST_KIND_REQUISITE_CODE SYSRES_CONST_KIND_REQUISITE_NAME SYSRES_CONST_KINDS_CREATE_SHADOW_COPIES_REQUISITE_CODE SYSRES_CONST_KINDS_DEFAULT_EDOC_LIFE_STAGE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALL_TEPLATES_ALLOWED_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_LIFE_CYCLE_STAGE_CHANGING_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_MULTIPLE_ACTIVE_VERSIONS_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_SHARE_ACCES_RIGHTS_BY_DEFAULT_CODE SYSRES_CONST_KINDS_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_TYPE_REQUISITE_CODE SYSRES_CONST_KINDS_SIGNERS_REQUISITES_CODE SYSRES_CONST_KOD_INPUT_TYPE SYSRES_CONST_LAST_UPDATE_DATE_REQUISITE_CODE SYSRES_CONST_LIFE_CYCLE_START_STAGE_REQUISITE_CODE SYSRES_CONST_LILAC_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_LINK_OBJECT_KIND_COMPONENT SYSRES_CONST_LINK_OBJECT_KIND_DOCUMENT SYSRES_CONST_LINK_OBJECT_KIND_EDOC SYSRES_CONST_LINK_OBJECT_KIND_FOLDER SYSRES_CONST_LINK_OBJECT_KIND_JOB SYSRES_CONST_LINK_OBJECT_KIND_REFERENCE SYSRES_CONST_LINK_OBJECT_KIND_TASK SYSRES_CONST_LINK_REF_TYPE_REQUISITE_CODE SYSRES_CONST_LIST_REFERENCE_MODE_NAME SYSRES_CONST_LOCALIZATION_DICTIONARY_MAIN_VIEW_CODE SYSRES_CONST_MAIN_VIEW_CODE SYSRES_CONST_MANUAL_ENUM_METHOD_FLAG SYSRES_CONST_MASTER_COMP_TYPE_REQUISITE_CODE SYSRES_CONST_MASTER_TABLE_REC_ID_REQUISITE_CODE SYSRES_CONST_MAXIMIZED_MODE_NAME SYSRES_CONST_ME_VALUE SYSRES_CONST_MESSAGE_ATTENTION_CAPTION SYSRES_CONST_MESSAGE_CONFIRMATION_CAPTION SYSRES_CONST_MESSAGE_ERROR_CAPTION SYSRES_CONST_MESSAGE_INFORMATION_CAPTION SYSRES_CONST_MINIMIZED_MODE_NAME SYSRES_CONST_MINUTE_CHAR SYSRES_CONST_MODULE_REQUISITE_CODE SYSRES_CONST_MONITORING_BLOCK_DESCRIPTION SYSRES_CONST_MONTH_FORMAT_VALUE SYSRES_CONST_NAME_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_NAME_REQUISITE_CODE SYSRES_CONST_NAME_SINGULAR_REQUISITE_CODE SYSRES_CONST_NAMEAN_INPUT_TYPE SYSRES_CONST_NEGATIVE_PICK_VALUE SYSRES_CONST_NEGATIVE_VALUE SYSRES_CONST_NO SYSRES_CONST_NO_PICK_VALUE SYSRES_CONST_NO_SIGNATURE_REQUISITE_CODE SYSRES_CONST_NO_VALUE SYSRES_CONST_NONE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_NORMAL_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NORMAL_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_NORMAL_MODE_NAME SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_NOTE_REQUISITE_CODE SYSRES_CONST_NOTICE_BLOCK_DESCRIPTION SYSRES_CONST_NUM_REQUISITE SYSRES_CONST_NUM_STR_REQUISITE_CODE SYSRES_CONST_NUMERATION_AUTO_NOT_STRONG SYSRES_CONST_NUMERATION_AUTO_STRONG SYSRES_CONST_NUMERATION_FROM_DICTONARY SYSRES_CONST_NUMERATION_MANUAL SYSRES_CONST_NUMERIC_TYPE_CHAR SYSRES_CONST_NUMREQ_REQUISITE_CODE SYSRES_CONST_OBSOLETE_VERSION_STATE_PICK_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_OPTIONAL_FORM_COMP_REQCODE_PREFIX SYSRES_CONST_ORANGE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_ORIGINALREF_REQUISITE_CODE SYSRES_CONST_OURFIRM_REF_CODE SYSRES_CONST_OURFIRM_REQUISITE_CODE SYSRES_CONST_OURFIRM_VAR SYSRES_CONST_OUTGOING_WORK_RULE_TYPE_CODE SYSRES_CONST_PICK_NEGATIVE_RESULT SYSRES_CONST_PICK_POSITIVE_RESULT SYSRES_CONST_PICK_REQUISITE SYSRES_CONST_PICK_REQUISITE_TYPE SYSRES_CONST_PICK_TYPE_CHAR SYSRES_CONST_PLAN_STATUS_REQUISITE_CODE SYSRES_CONST_PLATFORM_VERSION_COMMENT SYSRES_CONST_PLUGINS_SETTINGS_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_POSITIVE_PICK_VALUE SYSRES_CONST_POWER_TO_CREATE_ACTION_CODE SYSRES_CONST_POWER_TO_SIGN_ACTION_CODE SYSRES_CONST_PRIORITY_REQUISITE_CODE SYSRES_CONST_QUALIFIED_TASK_TYPE SYSRES_CONST_QUALIFIED_TASK_TYPE_CODE SYSRES_CONST_RECSTAT_REQUISITE_CODE SYSRES_CONST_RED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_REF_ID_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_REF_REQUISITE SYSRES_CONST_REF_REQUISITE_TYPE SYSRES_CONST_REF_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_REFERENCE_RECORD_HISTORY_CREATE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_DELETE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_MODIFY_ACTION_CODE SYSRES_CONST_REFERENCE_TYPE_CHAR SYSRES_CONST_REFERENCE_TYPE_REQUISITE_NAME SYSRES_CONST_REFERENCES_ADD_PARAMS_REQUISITE_CODE SYSRES_CONST_REFERENCES_DISPLAY_REQUISITE_REQUISITE_CODE SYSRES_CONST_REMOTE_SERVER_STATUS_WORKING SYSRES_CONST_REMOTE_SERVER_TYPE_MAIN SYSRES_CONST_REMOTE_SERVER_TYPE_SECONDARY SYSRES_CONST_REMOTE_USER_FLAG_VALUE_CODE SYSRES_CONST_REPORT_APP_EDITOR_INTERNAL SYSRES_CONST_REPORT_BASE_REPORT_ID_REQUISITE_CODE SYSRES_CONST_REPORT_BASE_REPORT_REQUISITE_CODE SYSRES_CONST_REPORT_SCRIPT_REQUISITE_CODE SYSRES_CONST_REPORT_TEMPLATE_REQUISITE_CODE SYSRES_CONST_REPORT_VIEWER_CODE_REQUISITE_CODE SYSRES_CONST_REQ_ALLOW_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_RECORD_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_SERVER_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_MODE_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_EDIT_CODE SYSRES_CONST_REQ_MODE_HIDDEN_CODE SYSRES_CONST_REQ_MODE_NOT_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_VIEW_CODE SYSRES_CONST_REQ_NUMBER_REQUISITE_CODE SYSRES_CONST_REQ_SECTION_VALUE SYSRES_CONST_REQ_TYPE_VALUE SYSRES_CONST_REQUISITE_FORMAT_BY_UNIT SYSRES_CONST_REQUISITE_FORMAT_DATE_FULL SYSRES_CONST_REQUISITE_FORMAT_DATE_TIME SYSRES_CONST_REQUISITE_FORMAT_LEFT SYSRES_CONST_REQUISITE_FORMAT_RIGHT SYSRES_CONST_REQUISITE_FORMAT_WITHOUT_UNIT SYSRES_CONST_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_REQUISITE_SECTION_ACTIONS SYSRES_CONST_REQUISITE_SECTION_BUTTON SYSRES_CONST_REQUISITE_SECTION_BUTTONS SYSRES_CONST_REQUISITE_SECTION_CARD SYSRES_CONST_REQUISITE_SECTION_TABLE SYSRES_CONST_REQUISITE_SECTION_TABLE10 SYSRES_CONST_REQUISITE_SECTION_TABLE11 SYSRES_CONST_REQUISITE_SECTION_TABLE12 SYSRES_CONST_REQUISITE_SECTION_TABLE13 SYSRES_CONST_REQUISITE_SECTION_TABLE14 SYSRES_CONST_REQUISITE_SECTION_TABLE15 SYSRES_CONST_REQUISITE_SECTION_TABLE16 SYSRES_CONST_REQUISITE_SECTION_TABLE17 SYSRES_CONST_REQUISITE_SECTION_TABLE18 SYSRES_CONST_REQUISITE_SECTION_TABLE19 SYSRES_CONST_REQUISITE_SECTION_TABLE2 SYSRES_CONST_REQUISITE_SECTION_TABLE20 SYSRES_CONST_REQUISITE_SECTION_TABLE21 SYSRES_CONST_REQUISITE_SECTION_TABLE22 SYSRES_CONST_REQUISITE_SECTION_TABLE23 SYSRES_CONST_REQUISITE_SECTION_TABLE24 SYSRES_CONST_REQUISITE_SECTION_TABLE3 SYSRES_CONST_REQUISITE_SECTION_TABLE4 SYSRES_CONST_REQUISITE_SECTION_TABLE5 SYSRES_CONST_REQUISITE_SECTION_TABLE6 SYSRES_CONST_REQUISITE_SECTION_TABLE7 SYSRES_CONST_REQUISITE_SECTION_TABLE8 SYSRES_CONST_REQUISITE_SECTION_TABLE9 SYSRES_CONST_REQUISITES_PSEUDOREFERENCE_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_RIGHT_ALIGNMENT_CODE SYSRES_CONST_ROLES_REFERENCE_CODE SYSRES_CONST_ROUTE_STEP_AFTER_RUS SYSRES_CONST_ROUTE_STEP_AND_CONDITION_RUS SYSRES_CONST_ROUTE_STEP_OR_CONDITION_RUS SYSRES_CONST_ROUTE_TYPE_COMPLEX SYSRES_CONST_ROUTE_TYPE_PARALLEL SYSRES_CONST_ROUTE_TYPE_SERIAL SYSRES_CONST_SBDATASETDESC_NEGATIVE_VALUE SYSRES_CONST_SBDATASETDESC_POSITIVE_VALUE SYSRES_CONST_SBVIEWSDESC_POSITIVE_VALUE SYSRES_CONST_SCRIPT_BLOCK_DESCRIPTION SYSRES_CONST_SEARCH_BY_TEXT_REQUISITE_CODE SYSRES_CONST_SEARCHES_COMPONENT_CONTENT SYSRES_CONST_SEARCHES_CRITERIA_ACTION_NAME SYSRES_CONST_SEARCHES_EDOC_CONTENT SYSRES_CONST_SEARCHES_FOLDER_CONTENT SYSRES_CONST_SEARCHES_JOB_CONTENT SYSRES_CONST_SEARCHES_REFERENCE_CODE SYSRES_CONST_SEARCHES_TASK_CONTENT SYSRES_CONST_SECOND_CHAR SYSRES_CONST_SECTION_REQUISITE_ACTIONS_VALUE SYSRES_CONST_SECTION_REQUISITE_CARD_VALUE SYSRES_CONST_SECTION_REQUISITE_CODE SYSRES_CONST_SECTION_REQUISITE_DETAIL_1_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_2_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_3_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_4_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_5_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_6_VALUE SYSRES_CONST_SELECT_REFERENCE_MODE_NAME SYSRES_CONST_SELECT_TYPE_SELECTABLE SYSRES_CONST_SELECT_TYPE_SELECTABLE_ONLY_CHILD SYSRES_CONST_SELECT_TYPE_SELECTABLE_WITH_CHILD SYSRES_CONST_SELECT_TYPE_UNSLECTABLE SYSRES_CONST_SERVER_TYPE_MAIN SYSRES_CONST_SERVICE_USER_CATEGORY_FIELD_VALUE SYSRES_CONST_SETTINGS_USER_REQUISITE_CODE SYSRES_CONST_SIGNATURE_AND_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SIGNATURE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SINGULAR_TITLE_REQUISITE_CODE SYSRES_CONST_SQL_SERVER_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_SQL_SERVER_ENCODE_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_STANDART_ROUTES_GROUPS_REFERENCE_CODE SYSRES_CONST_STATE_REQ_NAME SYSRES_CONST_STATE_REQUISITE_ACTIVE_VALUE SYSRES_CONST_STATE_REQUISITE_CLOSED_VALUE SYSRES_CONST_STATE_REQUISITE_CODE SYSRES_CONST_STATIC_ROLE_TYPE_CODE SYSRES_CONST_STATUS_PLAN_DEFAULT_VALUE SYSRES_CONST_STATUS_VALUE_AUTOCLEANING SYSRES_CONST_STATUS_VALUE_BLUE_SQUARE SYSRES_CONST_STATUS_VALUE_COMPLETE SYSRES_CONST_STATUS_VALUE_GREEN_SQUARE SYSRES_CONST_STATUS_VALUE_ORANGE_SQUARE SYSRES_CONST_STATUS_VALUE_PURPLE_SQUARE SYSRES_CONST_STATUS_VALUE_RED_SQUARE SYSRES_CONST_STATUS_VALUE_SUSPEND SYSRES_CONST_STATUS_VALUE_YELLOW_SQUARE SYSRES_CONST_STDROUTE_SHOW_TO_USERS_REQUISITE_CODE SYSRES_CONST_STORAGE_TYPE_FILE SYSRES_CONST_STORAGE_TYPE_SQL_SERVER SYSRES_CONST_STR_REQUISITE SYSRES_CONST_STRIKEOUT_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_STRING_FORMAT_LEFT_ALIGN_CHAR SYSRES_CONST_STRING_FORMAT_RIGHT_ALIGN_CHAR SYSRES_CONST_STRING_REQUISITE_CODE SYSRES_CONST_STRING_REQUISITE_TYPE SYSRES_CONST_STRING_TYPE_CHAR SYSRES_CONST_SUBSTITUTES_PSEUDOREFERENCE_CODE SYSRES_CONST_SUBTASK_BLOCK_DESCRIPTION SYSRES_CONST_SYSTEM_SETTING_CURRENT_USER_PARAM_VALUE SYSRES_CONST_SYSTEM_SETTING_EMPTY_VALUE_PARAM_VALUE SYSRES_CONST_SYSTEM_VERSION_COMMENT SYSRES_CONST_TASK_ACCESS_TYPE_ALL SYSRES_CONST_TASK_ACCESS_TYPE_ALL_MEMBERS SYSRES_CONST_TASK_ACCESS_TYPE_MANUAL SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION_AND_PASSWORD SYSRES_CONST_TASK_ENCODE_TYPE_NONE SYSRES_CONST_TASK_ENCODE_TYPE_PASSWORD SYSRES_CONST_TASK_ROUTE_ALL_CONDITION SYSRES_CONST_TASK_ROUTE_AND_CONDITION SYSRES_CONST_TASK_ROUTE_OR_CONDITION SYSRES_CONST_TASK_STATE_ABORTED SYSRES_CONST_TASK_STATE_COMPLETE SYSRES_CONST_TASK_STATE_CONTINUED SYSRES_CONST_TASK_STATE_CONTROL SYSRES_CONST_TASK_STATE_INIT SYSRES_CONST_TASK_STATE_WORKING SYSRES_CONST_TASK_TITLE SYSRES_CONST_TASK_TYPES_GROUPS_REFERENCE_CODE SYSRES_CONST_TASK_TYPES_REFERENCE_CODE SYSRES_CONST_TEMPLATES_REFERENCE_CODE SYSRES_CONST_TEST_DATE_REQUISITE_NAME SYSRES_CONST_TEST_DEV_DATABASE_NAME SYSRES_CONST_TEST_DEV_SYSTEM_CODE SYSRES_CONST_TEST_EDMS_DATABASE_NAME SYSRES_CONST_TEST_EDMS_MAIN_CODE SYSRES_CONST_TEST_EDMS_MAIN_DB_NAME SYSRES_CONST_TEST_EDMS_SECOND_CODE SYSRES_CONST_TEST_EDMS_SECOND_DB_NAME SYSRES_CONST_TEST_EDMS_SYSTEM_CODE SYSRES_CONST_TEST_NUMERIC_REQUISITE_NAME SYSRES_CONST_TEXT_REQUISITE SYSRES_CONST_TEXT_REQUISITE_CODE SYSRES_CONST_TEXT_REQUISITE_TYPE SYSRES_CONST_TEXT_TYPE_CHAR SYSRES_CONST_TYPE_CODE_REQUISITE_CODE SYSRES_CONST_TYPE_REQUISITE_CODE SYSRES_CONST_UNDEFINED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_UNITS_SECTION_ID_REQUISITE_CODE SYSRES_CONST_UNITS_SECTION_REQUISITE_CODE SYSRES_CONST_UNOPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_NAME SYSRES_CONST_USE_ACCESS_TYPE_CODE SYSRES_CONST_USE_ACCESS_TYPE_NAME SYSRES_CONST_USER_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_USER_ADDITIONAL_INFORMATION_REQUISITE_CODE SYSRES_CONST_USER_AND_GROUP_ID_FROM_PSEUDOREFERENCE_REQUISITE_CODE SYSRES_CONST_USER_CATEGORY_NORMAL SYSRES_CONST_USER_CERTIFICATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_STATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_SUBJECT_NAME_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_THUMBPRINT_REQUISITE_CODE SYSRES_CONST_USER_COMMON_CATEGORY SYSRES_CONST_USER_COMMON_CATEGORY_CODE SYSRES_CONST_USER_FULL_NAME_REQUISITE_CODE SYSRES_CONST_USER_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_USER_LOGIN_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_SYSTEM_REQUISITE_CODE SYSRES_CONST_USER_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_USER_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_USER_SERVICE_CATEGORY SYSRES_CONST_USER_SERVICE_CATEGORY_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_NAME SYSRES_CONST_USER_STATUS_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_DEVELOPER_NAME SYSRES_CONST_USER_STATUS_DISABLED_CODE SYSRES_CONST_USER_STATUS_DISABLED_NAME SYSRES_CONST_USER_STATUS_SYSTEM_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_USER_CODE SYSRES_CONST_USER_STATUS_USER_NAME SYSRES_CONST_USER_STATUS_USER_NAME_DEPRECATED SYSRES_CONST_USER_TYPE_FIELD_VALUE_USER SYSRES_CONST_USER_TYPE_REQUISITE_CODE SYSRES_CONST_USERS_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USERS_IS_MAIN_SERVER_REQUISITE_CODE SYSRES_CONST_USERS_REFERENCE_CODE SYSRES_CONST_USERS_REGISTRATION_CERTIFICATES_ACTION_NAME SYSRES_CONST_USERS_REQUISITE_CODE SYSRES_CONST_USERS_SYSTEM_REQUISITE_CODE SYSRES_CONST_USERS_USER_ACCESS_RIGHTS_TYPR_REQUISITE_CODE SYSRES_CONST_USERS_USER_AUTHENTICATION_REQUISITE_CODE SYSRES_CONST_USERS_USER_COMPONENT_REQUISITE_CODE SYSRES_CONST_USERS_USER_GROUP_REQUISITE_CODE SYSRES_CONST_USERS_VIEW_CERTIFICATES_ACTION_NAME SYSRES_CONST_VIEW_DEFAULT_CODE SYSRES_CONST_VIEW_DEFAULT_NAME SYSRES_CONST_VIEWER_REQUISITE_CODE SYSRES_CONST_WAITING_BLOCK_DESCRIPTION SYSRES_CONST_WIZARD_FORM_LABEL_TEST_STRING SYSRES_CONST_WIZARD_QUERY_PARAM_HEIGHT_ETALON_STRING SYSRES_CONST_WIZARD_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_WORK_RULES_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_WORK_TIME_CALENDAR_REFERENCE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORK_WORKFLOW_SOFT_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORKFLOW_ROUTE_TYPR_HARD SYSRES_CONST_WORKFLOW_ROUTE_TYPR_SOFT SYSRES_CONST_XML_ENCODING SYSRES_CONST_XREC_STAT_REQUISITE_CODE SYSRES_CONST_XRECID_FIELD_NAME SYSRES_CONST_YES SYSRES_CONST_YES_NO_2_REQUISITE_CODE SYSRES_CONST_YES_NO_REQUISITE_CODE SYSRES_CONST_YES_NO_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_YES_PICK_VALUE SYSRES_CONST_YES_VALUE CR FALSE nil NO_VALUE NULL TAB TRUE YES_VALUE ADMINISTRATORS_GROUP_NAME CUSTOMIZERS_GROUP_NAME DEVELOPERS_GROUP_NAME SERVICE_USERS_GROUP_NAME DECISION_BLOCK_FIRST_OPERAND_PROPERTY DECISION_BLOCK_NAME_PROPERTY DECISION_BLOCK_OPERATION_PROPERTY DECISION_BLOCK_RESULT_TYPE_PROPERTY DECISION_BLOCK_SECOND_OPERAND_PROPERTY ANY_FILE_EXTENTION COMPRESSED_DOCUMENT_EXTENSION EXTENDED_DOCUMENT_EXTENSION SHORT_COMPRESSED_DOCUMENT_EXTENSION SHORT_EXTENDED_DOCUMENT_EXTENSION JOB_BLOCK_ABORT_DEADLINE_PROPERTY JOB_BLOCK_AFTER_FINISH_EVENT JOB_BLOCK_AFTER_QUERY_PARAMETERS_EVENT JOB_BLOCK_ATTACHMENT_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY JOB_BLOCK_BEFORE_QUERY_PARAMETERS_EVENT JOB_BLOCK_BEFORE_START_EVENT JOB_BLOCK_CREATED_JOBS_PROPERTY JOB_BLOCK_DEADLINE_PROPERTY JOB_BLOCK_EXECUTION_RESULTS_PROPERTY JOB_BLOCK_IS_PARALLEL_PROPERTY JOB_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY JOB_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY JOB_BLOCK_JOB_TEXT_PROPERTY JOB_BLOCK_NAME_PROPERTY JOB_BLOCK_NEED_SIGN_ON_PERFORM_PROPERTY JOB_BLOCK_PERFORMER_PROPERTY JOB_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY JOB_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY JOB_BLOCK_SUBJECT_PROPERTY ENGLISH_LANGUAGE_CODE RUSSIAN_LANGUAGE_CODE smHidden smMaximized smMinimized smNormal wmNo wmYes COMPONENT_TOKEN_LINK_KIND DOCUMENT_LINK_KIND EDOCUMENT_LINK_KIND FOLDER_LINK_KIND JOB_LINK_KIND REFERENCE_LINK_KIND TASK_LINK_KIND COMPONENT_TOKEN_LOCK_TYPE EDOCUMENT_VERSION_LOCK_TYPE MONITOR_BLOCK_AFTER_FINISH_EVENT MONITOR_BLOCK_BEFORE_START_EVENT MONITOR_BLOCK_DEADLINE_PROPERTY MONITOR_BLOCK_INTERVAL_PROPERTY MONITOR_BLOCK_INTERVAL_TYPE_PROPERTY MONITOR_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY MONITOR_BLOCK_NAME_PROPERTY MONITOR_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY MONITOR_BLOCK_SEARCH_SCRIPT_PROPERTY NOTICE_BLOCK_AFTER_FINISH_EVENT NOTICE_BLOCK_ATTACHMENT_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY NOTICE_BLOCK_BEFORE_START_EVENT NOTICE_BLOCK_CREATED_NOTICES_PROPERTY NOTICE_BLOCK_DEADLINE_PROPERTY NOTICE_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY NOTICE_BLOCK_NAME_PROPERTY NOTICE_BLOCK_NOTICE_TEXT_PROPERTY NOTICE_BLOCK_PERFORMER_PROPERTY NOTICE_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY NOTICE_BLOCK_SUBJECT_PROPERTY dseAfterCancel dseAfterClose dseAfterDelete dseAfterDeleteOutOfTransaction dseAfterInsert dseAfterOpen dseAfterScroll dseAfterUpdate dseAfterUpdateOutOfTransaction dseBeforeCancel dseBeforeClose dseBeforeDelete dseBeforeDetailUpdate dseBeforeInsert dseBeforeOpen dseBeforeUpdate dseOnAnyRequisiteChange dseOnCloseRecord dseOnDeleteError dseOnOpenRecord dseOnPrepareUpdate dseOnUpdateError dseOnUpdateRatifiedRecord dseOnValidDelete dseOnValidUpdate reOnChange reOnChangeValues SELECTION_BEGIN_ROUTE_EVENT SELECTION_END_ROUTE_EVENT CURRENT_PERIOD_IS_REQUIRED PREVIOUS_CARD_TYPE_NAME SHOW_RECORD_PROPERTIES_FORM ACCESS_RIGHTS_SETTING_DIALOG_CODE ADMINISTRATOR_USER_CODE ANALYTIC_REPORT_TYPE asrtHideLocal asrtHideRemote CALCULATED_ROLE_TYPE_CODE COMPONENTS_REFERENCE_DEVELOPER_VIEW_CODE DCTS_TEST_PROTOCOLS_FOLDER_PATH E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED_BY_USER E_EDOC_VERSION_ALREDY_SIGNED E_EDOC_VERSION_ALREDY_SIGNED_BY_USER EDOC_TYPES_CODE_REQUISITE_FIELD_NAME EDOCUMENTS_ALIAS_NAME FILES_FOLDER_PATH FILTER_OPERANDS_DELIMITER FILTER_OPERATIONS_DELIMITER FORMCARD_NAME FORMLIST_NAME GET_EXTENDED_DOCUMENT_EXTENSION_CREATION_MODE GET_EXTENDED_DOCUMENT_EXTENSION_IMPORT_MODE INTEGRATED_REPORT_TYPE IS_BUILDER_APPLICATION_ROLE IS_BUILDER_APPLICATION_ROLE2 IS_BUILDER_USERS ISBSYSDEV LOG_FOLDER_PATH mbCancel mbNo mbNoToAll mbOK mbYes mbYesToAll MEMORY_DATASET_DESRIPTIONS_FILENAME mrNo mrNoToAll mrYes mrYesToAll MULTIPLE_SELECT_DIALOG_CODE NONOPERATING_RECORD_FLAG_FEMININE NONOPERATING_RECORD_FLAG_MASCULINE OPERATING_RECORD_FLAG_FEMININE OPERATING_RECORD_FLAG_MASCULINE PROFILING_SETTINGS_COMMON_SETTINGS_CODE_VALUE PROGRAM_INITIATED_LOOKUP_ACTION ratDelete ratEdit ratInsert REPORT_TYPE REQUIRED_PICK_VALUES_VARIABLE rmCard rmList SBRTE_PROGID_DEV SBRTE_PROGID_RELEASE STATIC_ROLE_TYPE_CODE SUPPRESS_EMPTY_TEMPLATE_CREATION SYSTEM_USER_CODE UPDATE_DIALOG_DATASET USED_IN_OBJECT_HINT_PARAM USER_INITIATED_LOOKUP_ACTION USER_NAME_FORMAT USER_SELECTION_RESTRICTIONS WORKFLOW_TEST_PROTOCOLS_FOLDER_PATH ELS_SUBTYPE_CONTROL_NAME ELS_FOLDER_KIND_CONTROL_NAME REPEAT_PROCESS_CURRENT_OBJECT_EXCEPTION_NAME PRIVILEGE_COMPONENT_FULL_ACCESS PRIVILEGE_DEVELOPMENT_EXPORT PRIVILEGE_DEVELOPMENT_IMPORT PRIVILEGE_DOCUMENT_DELETE PRIVILEGE_ESD PRIVILEGE_FOLDER_DELETE PRIVILEGE_MANAGE_ACCESS_RIGHTS PRIVILEGE_MANAGE_REPLICATION PRIVILEGE_MANAGE_SESSION_SERVER PRIVILEGE_OBJECT_FULL_ACCESS PRIVILEGE_OBJECT_VIEW PRIVILEGE_RESERVE_LICENSE PRIVILEGE_SYSTEM_CUSTOMIZE PRIVILEGE_SYSTEM_DEVELOP PRIVILEGE_SYSTEM_INSTALL PRIVILEGE_TASK_DELETE PRIVILEGE_USER_PLUGIN_SETTINGS_CUSTOMIZE PRIVILEGES_PSEUDOREFERENCE_CODE ACCESS_TYPES_PSEUDOREFERENCE_CODE ALL_AVAILABLE_COMPONENTS_PSEUDOREFERENCE_CODE ALL_AVAILABLE_PRIVILEGES_PSEUDOREFERENCE_CODE ALL_REPLICATE_COMPONENTS_PSEUDOREFERENCE_CODE AVAILABLE_DEVELOPERS_COMPONENTS_PSEUDOREFERENCE_CODE COMPONENTS_PSEUDOREFERENCE_CODE FILTRATER_SETTINGS_CONFLICTS_PSEUDOREFERENCE_CODE GROUPS_PSEUDOREFERENCE_CODE RECEIVE_PROTOCOL_PSEUDOREFERENCE_CODE REFERENCE_REQUISITE_PSEUDOREFERENCE_CODE REFERENCE_REQUISITES_PSEUDOREFERENCE_CODE REFTYPES_PSEUDOREFERENCE_CODE REPLICATION_SEANCES_DIARY_PSEUDOREFERENCE_CODE SEND_PROTOCOL_PSEUDOREFERENCE_CODE SUBSTITUTES_PSEUDOREFERENCE_CODE SYSTEM_SETTINGS_PSEUDOREFERENCE_CODE UNITS_PSEUDOREFERENCE_CODE USERS_PSEUDOREFERENCE_CODE VIEWERS_PSEUDOREFERENCE_CODE CERTIFICATE_TYPE_ENCRYPT CERTIFICATE_TYPE_SIGN CERTIFICATE_TYPE_SIGN_AND_ENCRYPT STORAGE_TYPE_FILE STORAGE_TYPE_NAS_CIFS STORAGE_TYPE_SAPERION STORAGE_TYPE_SQL_SERVER COMPTYPE2_REQUISITE_DOCUMENTS_VALUE COMPTYPE2_REQUISITE_TASKS_VALUE COMPTYPE2_REQUISITE_FOLDERS_VALUE COMPTYPE2_REQUISITE_REFERENCES_VALUE SYSREQ_CODE SYSREQ_COMPTYPE2 SYSREQ_CONST_AVAILABLE_FOR_WEB SYSREQ_CONST_COMMON_CODE SYSREQ_CONST_COMMON_VALUE SYSREQ_CONST_FIRM_CODE SYSREQ_CONST_FIRM_STATUS SYSREQ_CONST_FIRM_VALUE SYSREQ_CONST_SERVER_STATUS SYSREQ_CONTENTS SYSREQ_DATE_OPEN SYSREQ_DATE_CLOSE SYSREQ_DESCRIPTION SYSREQ_DESCRIPTION_LOCALIZE_ID SYSREQ_DOUBLE SYSREQ_EDOC_ACCESS_TYPE SYSREQ_EDOC_AUTHOR SYSREQ_EDOC_CREATED SYSREQ_EDOC_DELEGATE_RIGHTS_REQUISITE_CODE SYSREQ_EDOC_EDITOR SYSREQ_EDOC_ENCODE_TYPE SYSREQ_EDOC_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_EXPORT_DATE SYSREQ_EDOC_EXPORTER SYSREQ_EDOC_KIND SYSREQ_EDOC_LIFE_STAGE_NAME SYSREQ_EDOC_LOCKED_FOR_SERVER_CODE SYSREQ_EDOC_MODIFIED SYSREQ_EDOC_NAME SYSREQ_EDOC_NOTE SYSREQ_EDOC_QUALIFIED_ID SYSREQ_EDOC_SESSION_KEY SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_SIGNATURE_TYPE SYSREQ_EDOC_SIGNED SYSREQ_EDOC_STORAGE SYSREQ_EDOC_STORAGES_ARCHIVE_STORAGE SYSREQ_EDOC_STORAGES_CHECK_RIGHTS SYSREQ_EDOC_STORAGES_COMPUTER_NAME SYSREQ_EDOC_STORAGES_EDIT_IN_STORAGE SYSREQ_EDOC_STORAGES_EXECUTIVE_STORAGE SYSREQ_EDOC_STORAGES_FUNCTION SYSREQ_EDOC_STORAGES_INITIALIZED SYSREQ_EDOC_STORAGES_LOCAL_PATH SYSREQ_EDOC_STORAGES_SAPERION_DATABASE_NAME SYSREQ_EDOC_STORAGES_SEARCH_BY_TEXT SYSREQ_EDOC_STORAGES_SERVER_NAME SYSREQ_EDOC_STORAGES_SHARED_SOURCE_NAME SYSREQ_EDOC_STORAGES_TYPE SYSREQ_EDOC_TEXT_MODIFIED SYSREQ_EDOC_TYPE_ACT_CODE SYSREQ_EDOC_TYPE_ACT_DESCRIPTION SYSREQ_EDOC_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_EDOC_TYPE_ACT_SECTION SYSREQ_EDOC_TYPE_ADD_PARAMS SYSREQ_EDOC_TYPE_COMMENT SYSREQ_EDOC_TYPE_EVENT_TEXT SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_EDOC_TYPE_NAME_LOCALIZE_ID SYSREQ_EDOC_TYPE_NUMERATION_METHOD SYSREQ_EDOC_TYPE_PSEUDO_REQUISITE_CODE SYSREQ_EDOC_TYPE_REQ_CODE SYSREQ_EDOC_TYPE_REQ_DESCRIPTION SYSREQ_EDOC_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_REQ_IS_LEADING SYSREQ_EDOC_TYPE_REQ_IS_REQUIRED SYSREQ_EDOC_TYPE_REQ_NUMBER SYSREQ_EDOC_TYPE_REQ_ON_CHANGE SYSREQ_EDOC_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_EDOC_TYPE_REQ_ON_SELECT SYSREQ_EDOC_TYPE_REQ_ON_SELECT_KIND SYSREQ_EDOC_TYPE_REQ_SECTION SYSREQ_EDOC_TYPE_VIEW_CARD SYSREQ_EDOC_TYPE_VIEW_CODE SYSREQ_EDOC_TYPE_VIEW_COMMENT SYSREQ_EDOC_TYPE_VIEW_IS_MAIN SYSREQ_EDOC_TYPE_VIEW_NAME SYSREQ_EDOC_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_EDOC_VERSION_AUTHOR SYSREQ_EDOC_VERSION_CRC SYSREQ_EDOC_VERSION_DATA SYSREQ_EDOC_VERSION_EDITOR SYSREQ_EDOC_VERSION_EXPORT_DATE SYSREQ_EDOC_VERSION_EXPORTER SYSREQ_EDOC_VERSION_HIDDEN SYSREQ_EDOC_VERSION_LIFE_STAGE SYSREQ_EDOC_VERSION_MODIFIED SYSREQ_EDOC_VERSION_NOTE SYSREQ_EDOC_VERSION_SIGNATURE_TYPE SYSREQ_EDOC_VERSION_SIGNED SYSREQ_EDOC_VERSION_SIZE SYSREQ_EDOC_VERSION_SOURCE SYSREQ_EDOC_VERSION_TEXT_MODIFIED SYSREQ_EDOCKIND_DEFAULT_VERSION_STATE_CODE SYSREQ_FOLDER_KIND SYSREQ_FUNC_CATEGORY SYSREQ_FUNC_COMMENT SYSREQ_FUNC_GROUP SYSREQ_FUNC_GROUP_COMMENT SYSREQ_FUNC_GROUP_NUMBER SYSREQ_FUNC_HELP SYSREQ_FUNC_PARAM_DEF_VALUE SYSREQ_FUNC_PARAM_IDENT SYSREQ_FUNC_PARAM_NUMBER SYSREQ_FUNC_PARAM_TYPE SYSREQ_FUNC_TEXT SYSREQ_GROUP_CATEGORY SYSREQ_ID SYSREQ_LAST_UPDATE SYSREQ_LEADER_REFERENCE SYSREQ_LINE_NUMBER SYSREQ_MAIN_RECORD_ID SYSREQ_NAME SYSREQ_NAME_LOCALIZE_ID SYSREQ_NOTE SYSREQ_ORIGINAL_RECORD SYSREQ_OUR_FIRM SYSREQ_PROFILING_SETTINGS_BATCH_LOGING SYSREQ_PROFILING_SETTINGS_BATCH_SIZE SYSREQ_PROFILING_SETTINGS_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_SQL_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_START_LOGGED SYSREQ_RECORD_STATUS SYSREQ_REF_REQ_FIELD_NAME SYSREQ_REF_REQ_FORMAT SYSREQ_REF_REQ_GENERATED SYSREQ_REF_REQ_LENGTH SYSREQ_REF_REQ_PRECISION SYSREQ_REF_REQ_REFERENCE SYSREQ_REF_REQ_SECTION SYSREQ_REF_REQ_STORED SYSREQ_REF_REQ_TOKENS SYSREQ_REF_REQ_TYPE SYSREQ_REF_REQ_VIEW SYSREQ_REF_TYPE_ACT_CODE SYSREQ_REF_TYPE_ACT_DESCRIPTION SYSREQ_REF_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_ACT_ON_EXECUTE SYSREQ_REF_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_REF_TYPE_ACT_SECTION SYSREQ_REF_TYPE_ADD_PARAMS SYSREQ_REF_TYPE_COMMENT SYSREQ_REF_TYPE_COMMON_SETTINGS SYSREQ_REF_TYPE_DISPLAY_REQUISITE_NAME SYSREQ_REF_TYPE_EVENT_TEXT SYSREQ_REF_TYPE_MAIN_LEADING_REF SYSREQ_REF_TYPE_NAME_IN_SINGULAR SYSREQ_REF_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_REF_TYPE_NAME_LOCALIZE_ID SYSREQ_REF_TYPE_NUMERATION_METHOD SYSREQ_REF_TYPE_REQ_CODE SYSREQ_REF_TYPE_REQ_DESCRIPTION SYSREQ_REF_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_REQ_IS_CONTROL SYSREQ_REF_TYPE_REQ_IS_FILTER SYSREQ_REF_TYPE_REQ_IS_LEADING SYSREQ_REF_TYPE_REQ_IS_REQUIRED SYSREQ_REF_TYPE_REQ_NUMBER SYSREQ_REF_TYPE_REQ_ON_CHANGE SYSREQ_REF_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_REF_TYPE_REQ_ON_SELECT SYSREQ_REF_TYPE_REQ_ON_SELECT_KIND SYSREQ_REF_TYPE_REQ_SECTION SYSREQ_REF_TYPE_VIEW_CARD SYSREQ_REF_TYPE_VIEW_CODE SYSREQ_REF_TYPE_VIEW_COMMENT SYSREQ_REF_TYPE_VIEW_IS_MAIN SYSREQ_REF_TYPE_VIEW_NAME SYSREQ_REF_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_REFERENCE_TYPE_ID SYSREQ_STATE SYSREQ_STATЕ SYSREQ_SYSTEM_SETTINGS_VALUE SYSREQ_TYPE SYSREQ_UNIT SYSREQ_UNIT_ID SYSREQ_USER_GROUPS_GROUP_FULL_NAME SYSREQ_USER_GROUPS_GROUP_NAME SYSREQ_USER_GROUPS_GROUP_SERVER_NAME SYSREQ_USERS_ACCESS_RIGHTS SYSREQ_USERS_AUTHENTICATION SYSREQ_USERS_CATEGORY SYSREQ_USERS_COMPONENT SYSREQ_USERS_COMPONENT_USER_IS_PUBLIC SYSREQ_USERS_DOMAIN SYSREQ_USERS_FULL_USER_NAME SYSREQ_USERS_GROUP SYSREQ_USERS_IS_MAIN_SERVER SYSREQ_USERS_LOGIN SYSREQ_USERS_REFERENCE_USER_IS_PUBLIC SYSREQ_USERS_STATUS SYSREQ_USERS_USER_CERTIFICATE SYSREQ_USERS_USER_CERTIFICATE_INFO SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_NAME SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_VERSION SYSREQ_USERS_USER_CERTIFICATE_STATE SYSREQ_USERS_USER_CERTIFICATE_SUBJECT_NAME SYSREQ_USERS_USER_CERTIFICATE_THUMBPRINT SYSREQ_USERS_USER_DEFAULT_CERTIFICATE SYSREQ_USERS_USER_DESCRIPTION SYSREQ_USERS_USER_GLOBAL_NAME SYSREQ_USERS_USER_LOGIN SYSREQ_USERS_USER_MAIN_SERVER SYSREQ_USERS_USER_TYPE SYSREQ_WORK_RULES_FOLDER_ID RESULT_VAR_NAME RESULT_VAR_NAME_ENG AUTO_NUMERATION_RULE_ID CANT_CHANGE_ID_REQUISITE_RULE_ID CANT_CHANGE_OURFIRM_REQUISITE_RULE_ID CHECK_CHANGING_REFERENCE_RECORD_USE_RULE_ID CHECK_CODE_REQUISITE_RULE_ID CHECK_DELETING_REFERENCE_RECORD_USE_RULE_ID CHECK_FILTRATER_CHANGES_RULE_ID CHECK_RECORD_INTERVAL_RULE_ID CHECK_REFERENCE_INTERVAL_RULE_ID CHECK_REQUIRED_DATA_FULLNESS_RULE_ID CHECK_REQUIRED_REQUISITES_FULLNESS_RULE_ID MAKE_RECORD_UNRATIFIED_RULE_ID RESTORE_AUTO_NUMERATION_RULE_ID SET_FIRM_CONTEXT_FROM_RECORD_RULE_ID SET_FIRST_RECORD_IN_LIST_FORM_RULE_ID SET_IDSPS_VALUE_RULE_ID SET_NEXT_CODE_VALUE_RULE_ID SET_OURFIRM_BOUNDS_RULE_ID SET_OURFIRM_REQUISITE_RULE_ID SCRIPT_BLOCK_AFTER_FINISH_EVENT SCRIPT_BLOCK_BEFORE_START_EVENT SCRIPT_BLOCK_EXECUTION_RESULTS_PROPERTY SCRIPT_BLOCK_NAME_PROPERTY SCRIPT_BLOCK_SCRIPT_PROPERTY SUBTASK_BLOCK_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_AFTER_FINISH_EVENT SUBTASK_BLOCK_ASSIGN_PARAMS_EVENT SUBTASK_BLOCK_ATTACHMENTS_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY SUBTASK_BLOCK_BEFORE_START_EVENT SUBTASK_BLOCK_CREATED_TASK_PROPERTY SUBTASK_BLOCK_CREATION_EVENT SUBTASK_BLOCK_DEADLINE_PROPERTY SUBTASK_BLOCK_IMPORTANCE_PROPERTY SUBTASK_BLOCK_INITIATOR_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY SUBTASK_BLOCK_JOBS_TYPE_PROPERTY SUBTASK_BLOCK_NAME_PROPERTY SUBTASK_BLOCK_PARALLEL_ROUTE_PROPERTY SUBTASK_BLOCK_PERFORMERS_PROPERTY SUBTASK_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_REQUIRE_SIGN_PROPERTY SUBTASK_BLOCK_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_START_EVENT SUBTASK_BLOCK_STEP_CONTROL_PROPERTY SUBTASK_BLOCK_SUBJECT_PROPERTY SUBTASK_BLOCK_TASK_CONTROL_PROPERTY SUBTASK_BLOCK_TEXT_PROPERTY SUBTASK_BLOCK_UNLOCK_ATTACHMENTS_ON_STOP_PROPERTY SUBTASK_BLOCK_USE_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_WAIT_FOR_TASK_COMPLETE_PROPERTY SYSCOMP_CONTROL_JOBS SYSCOMP_FOLDERS SYSCOMP_JOBS SYSCOMP_NOTICES SYSCOMP_TASKS SYSDLG_CREATE_EDOCUMENT SYSDLG_CREATE_EDOCUMENT_VERSION SYSDLG_CURRENT_PERIOD SYSDLG_EDIT_FUNCTION_HELP SYSDLG_EDOCUMENT_KINDS_FOR_TEMPLATE SYSDLG_EXPORT_MULTIPLE_EDOCUMENTS SYSDLG_EXPORT_SINGLE_EDOCUMENT SYSDLG_IMPORT_EDOCUMENT SYSDLG_MULTIPLE_SELECT SYSDLG_SETUP_ACCESS_RIGHTS SYSDLG_SETUP_DEFAULT_RIGHTS SYSDLG_SETUP_FILTER_CONDITION SYSDLG_SETUP_SIGN_RIGHTS SYSDLG_SETUP_TASK_OBSERVERS SYSDLG_SETUP_TASK_ROUTE SYSDLG_SETUP_USERS_LIST SYSDLG_SIGN_EDOCUMENT SYSDLG_SIGN_MULTIPLE_EDOCUMENTS SYSREF_ACCESS_RIGHTS_TYPES SYSREF_ADMINISTRATION_HISTORY SYSREF_ALL_AVAILABLE_COMPONENTS SYSREF_ALL_AVAILABLE_PRIVILEGES SYSREF_ALL_REPLICATING_COMPONENTS SYSREF_AVAILABLE_DEVELOPERS_COMPONENTS SYSREF_CALENDAR_EVENTS SYSREF_COMPONENT_TOKEN_HISTORY SYSREF_COMPONENT_TOKENS SYSREF_COMPONENTS SYSREF_CONSTANTS SYSREF_DATA_RECEIVE_PROTOCOL SYSREF_DATA_SEND_PROTOCOL SYSREF_DIALOGS SYSREF_DIALOGS_REQUISITES SYSREF_EDITORS SYSREF_EDOC_CARDS SYSREF_EDOC_TYPES SYSREF_EDOCUMENT_CARD_REQUISITES SYSREF_EDOCUMENT_CARD_TYPES SYSREF_EDOCUMENT_CARD_TYPES_REFERENCE SYSREF_EDOCUMENT_CARDS SYSREF_EDOCUMENT_HISTORY SYSREF_EDOCUMENT_KINDS SYSREF_EDOCUMENT_REQUISITES SYSREF_EDOCUMENT_SIGNATURES SYSREF_EDOCUMENT_TEMPLATES SYSREF_EDOCUMENT_TEXT_STORAGES SYSREF_EDOCUMENT_VIEWS SYSREF_FILTERER_SETUP_CONFLICTS SYSREF_FILTRATER_SETTING_CONFLICTS SYSREF_FOLDER_HISTORY SYSREF_FOLDERS SYSREF_FUNCTION_GROUPS SYSREF_FUNCTION_PARAMS SYSREF_FUNCTIONS SYSREF_JOB_HISTORY SYSREF_LINKS SYSREF_LOCALIZATION_DICTIONARY SYSREF_LOCALIZATION_LANGUAGES SYSREF_MODULES SYSREF_PRIVILEGES SYSREF_RECORD_HISTORY SYSREF_REFERENCE_REQUISITES SYSREF_REFERENCE_TYPE_VIEWS SYSREF_REFERENCE_TYPES SYSREF_REFERENCES SYSREF_REFERENCES_REQUISITES SYSREF_REMOTE_SERVERS SYSREF_REPLICATION_SESSIONS_LOG SYSREF_REPLICATION_SESSIONS_PROTOCOL SYSREF_REPORTS SYSREF_ROLES SYSREF_ROUTE_BLOCK_GROUPS SYSREF_ROUTE_BLOCKS SYSREF_SCRIPTS SYSREF_SEARCHES SYSREF_SERVER_EVENTS SYSREF_SERVER_EVENTS_HISTORY SYSREF_STANDARD_ROUTE_GROUPS SYSREF_STANDARD_ROUTES SYSREF_STATUSES SYSREF_SYSTEM_SETTINGS SYSREF_TASK_HISTORY SYSREF_TASK_KIND_GROUPS SYSREF_TASK_KINDS SYSREF_TASK_RIGHTS SYSREF_TASK_SIGNATURES SYSREF_TASKS SYSREF_UNITS SYSREF_USER_GROUPS SYSREF_USER_GROUPS_REFERENCE SYSREF_USER_SUBSTITUTION SYSREF_USERS SYSREF_USERS_REFERENCE SYSREF_VIEWERS SYSREF_WORKING_TIME_CALENDARS ACCESS_RIGHTS_TABLE_NAME EDMS_ACCESS_TABLE_NAME EDOC_TYPES_TABLE_NAME TEST_DEV_DB_NAME TEST_DEV_SYSTEM_CODE TEST_EDMS_DB_NAME TEST_EDMS_MAIN_CODE TEST_EDMS_MAIN_DB_NAME TEST_EDMS_SECOND_CODE TEST_EDMS_SECOND_DB_NAME TEST_EDMS_SYSTEM_CODE TEST_ISB5_MAIN_CODE TEST_ISB5_SECOND_CODE TEST_SQL_SERVER_2005_NAME TEST_SQL_SERVER_NAME ATTENTION_CAPTION cbsCommandLinks cbsDefault CONFIRMATION_CAPTION ERROR_CAPTION INFORMATION_CAPTION mrCancel mrOk EDOC_VERSION_ACTIVE_STAGE_CODE EDOC_VERSION_DESIGN_STAGE_CODE EDOC_VERSION_OBSOLETE_STAGE_CODE cpDataEnciphermentEnabled cpDigitalSignatureEnabled cpID cpIssuer cpPluginVersion cpSerial cpSubjectName cpSubjSimpleName cpValidFromDate cpValidToDate ISBL_SYNTAX NO_SYNTAX XML_SYNTAX WAIT_BLOCK_AFTER_FINISH_EVENT WAIT_BLOCK_BEFORE_START_EVENT WAIT_BLOCK_DEADLINE_PROPERTY WAIT_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY WAIT_BLOCK_NAME_PROPERTY WAIT_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SYSRES_COMMON SYSRES_CONST SYSRES_MBFUNC SYSRES_SBDATA SYSRES_SBGUI SYSRES_SBINTF SYSRES_SBREFDSC SYSRES_SQLERRORS SYSRES_SYSCOMP atUser atGroup atRole aemEnabledAlways aemDisabledAlways aemEnabledOnBrowse aemEnabledOnEdit aemDisabledOnBrowseEmpty apBegin apEnd alLeft alRight asmNever asmNoButCustomize asmAsLastTime asmYesButCustomize asmAlways cirCommon cirRevoked ctSignature ctEncode ctSignatureEncode clbUnchecked clbChecked clbGrayed ceISB ceAlways ceNever ctDocument ctReference ctScript ctUnknown ctReport ctDialog ctFunction ctFolder ctEDocument ctTask ctJob ctNotice ctControlJob cfInternal cfDisplay ciUnspecified ciWrite ciRead ckFolder ckEDocument ckTask ckJob ckComponentToken ckAny ckReference ckScript ckReport ckDialog ctISBLEditor ctBevel ctButton ctCheckListBox ctComboBox ctComboEdit ctGrid ctDBCheckBox ctDBComboBox ctDBEdit ctDBEllipsis ctDBMemo ctDBNavigator ctDBRadioGroup ctDBStatusLabel ctEdit ctGroupBox ctInplaceHint ctMemo ctPanel ctListBox ctRadioButton ctRichEdit ctTabSheet ctWebBrowser ctImage ctHyperLink ctLabel ctDBMultiEllipsis ctRibbon ctRichView ctInnerPanel ctPanelGroup ctBitButton cctDate cctInteger cctNumeric cctPick cctReference cctString cctText cltInternal cltPrimary cltGUI dseBeforeOpen dseAfterOpen dseBeforeClose dseAfterClose dseOnValidDelete dseBeforeDelete dseAfterDelete dseAfterDeleteOutOfTransaction dseOnDeleteError dseBeforeInsert dseAfterInsert dseOnValidUpdate dseBeforeUpdate dseOnUpdateRatifiedRecord dseAfterUpdate dseAfterUpdateOutOfTransaction dseOnUpdateError dseAfterScroll dseOnOpenRecord dseOnCloseRecord dseBeforeCancel dseAfterCancel dseOnUpdateDeadlockError dseBeforeDetailUpdate dseOnPrepareUpdate dseOnAnyRequisiteChange dssEdit dssInsert dssBrowse dssInActive dftDate dftShortDate dftDateTime dftTimeStamp dotDays dotHours dotMinutes dotSeconds dtkndLocal dtkndUTC arNone arView arEdit arFull ddaView ddaEdit emLock emEdit emSign emExportWithLock emImportWithUnlock emChangeVersionNote emOpenForModify emChangeLifeStage emDelete emCreateVersion emImport emUnlockExportedWithLock emStart emAbort emReInit emMarkAsReaded emMarkAsUnreaded emPerform emAccept emResume emChangeRights emEditRoute emEditObserver emRecoveryFromLocalCopy emChangeWorkAccessType emChangeEncodeTypeToCertificate emChangeEncodeTypeToPassword emChangeEncodeTypeToNone emChangeEncodeTypeToCertificatePassword emChangeStandardRoute emGetText emOpenForView emMoveToStorage emCreateObject emChangeVersionHidden emDeleteVersion emChangeLifeCycleStage emApprovingSign emExport emContinue emLockFromEdit emUnLockForEdit emLockForServer emUnlockFromServer emDelegateAccessRights emReEncode ecotFile ecotProcess eaGet eaCopy eaCreate eaCreateStandardRoute edltAll edltNothing edltQuery essmText essmCard esvtLast esvtLastActive esvtSpecified edsfExecutive edsfArchive edstSQLServer edstFile edvstNone edvstEDocumentVersionCopy edvstFile edvstTemplate edvstScannedFile vsDefault vsDesign vsActive vsObsolete etNone etCertificate etPassword etCertificatePassword ecException ecWarning ecInformation estAll estApprovingOnly evtLast evtLastActive evtQuery fdtString fdtNumeric fdtInteger fdtDate fdtText fdtUnknown fdtWideString fdtLargeInteger ftInbox ftOutbox ftFavorites ftCommonFolder ftUserFolder ftComponents ftQuickLaunch ftShortcuts ftSearch grhAuto grhX1 grhX2 grhX3 hltText hltRTF hltHTML iffBMP iffJPEG iffMultiPageTIFF iffSinglePageTIFF iffTIFF iffPNG im8bGrayscale im24bRGB im1bMonochrome itBMP itJPEG itWMF itPNG ikhInformation ikhWarning ikhError ikhNoIcon icUnknown icScript icFunction icIntegratedReport icAnalyticReport icDataSetEventHandler icActionHandler icFormEventHandler icLookUpEventHandler icRequisiteChangeEventHandler icBeforeSearchEventHandler icRoleCalculation icSelectRouteEventHandler icBlockPropertyCalculation icBlockQueryParamsEventHandler icChangeSearchResultEventHandler icBlockEventHandler icSubTaskInitEventHandler icEDocDataSetEventHandler icEDocLookUpEventHandler icEDocActionHandler icEDocFormEventHandler icEDocRequisiteChangeEventHandler icStructuredConversionRule icStructuredConversionEventBefore icStructuredConversionEventAfter icWizardEventHandler icWizardFinishEventHandler icWizardStepEventHandler icWizardStepFinishEventHandler icWizardActionEnableEventHandler icWizardActionExecuteEventHandler icCreateJobsHandler icCreateNoticesHandler icBeforeLookUpEventHandler icAfterLookUpEventHandler icTaskAbortEventHandler icWorkflowBlockActionHandler icDialogDataSetEventHandler icDialogActionHandler icDialogLookUpEventHandler icDialogRequisiteChangeEventHandler icDialogFormEventHandler icDialogValidCloseEventHandler icBlockFormEventHandler icTaskFormEventHandler icReferenceMethod icEDocMethod icDialogMethod icProcessMessageHandler isShow isHide isByUserSettings jkJob jkNotice jkControlJob jtInner jtLeft jtRight jtFull jtCross lbpAbove lbpBelow lbpLeft lbpRight eltPerConnection eltPerUser sfcUndefined sfcBlack sfcGreen sfcRed sfcBlue sfcOrange sfcLilac sfsItalic sfsStrikeout sfsNormal ldctStandardRoute ldctWizard ldctScript ldctFunction ldctRouteBlock ldctIntegratedReport ldctAnalyticReport ldctReferenceType ldctEDocumentType ldctDialog ldctServerEvents mrcrtNone mrcrtUser mrcrtMaximal mrcrtCustom vtEqual vtGreaterOrEqual vtLessOrEqual vtRange rdYesterday rdToday rdTomorrow rdThisWeek rdThisMonth rdThisYear rdNextMonth rdNextWeek rdLastWeek rdLastMonth rdWindow rdFile rdPrinter rdtString rdtNumeric rdtInteger rdtDate rdtReference rdtAccount rdtText rdtPick rdtUnknown rdtLargeInteger rdtDocument reOnChange reOnChangeValues ttGlobal ttLocal ttUser ttSystem ssmBrowse ssmSelect ssmMultiSelect ssmBrowseModal smSelect smLike smCard stNone stAuthenticating stApproving sctString sctStream sstAnsiSort sstNaturalSort svtEqual svtContain soatString soatNumeric soatInteger soatDatetime soatReferenceRecord soatText soatPick soatBoolean soatEDocument soatAccount soatIntegerCollection soatNumericCollection soatStringCollection soatPickCollection soatDatetimeCollection soatBooleanCollection soatReferenceRecordCollection soatEDocumentCollection soatAccountCollection soatContents soatUnknown tarAbortByUser tarAbortByWorkflowException tvtAllWords tvtExactPhrase tvtAnyWord usNone usCompleted usRedSquare usBlueSquare usYellowSquare usGreenSquare usOrangeSquare usPurpleSquare usFollowUp utUnknown utUser utDeveloper utAdministrator utSystemDeveloper utDisconnected btAnd btDetailAnd btOr btNotOr btOnly vmView vmSelect vmNavigation vsmSingle vsmMultiple vsmMultipleCheck vsmNoSelection wfatPrevious wfatNext wfatCancel wfatFinish wfepUndefined wfepText3 wfepText6 wfepText9 wfepSpinEdit wfepDropDown wfepRadioGroup wfepFlag wfepText12 wfepText15 wfepText18 wfepText21 wfepText24 wfepText27 wfepText30 wfepRadioGroupColumn1 wfepRadioGroupColumn2 wfepRadioGroupColumn3 wfetQueryParameter wfetText wfetDelimiter wfetLabel wptString wptInteger wptNumeric wptBoolean wptDateTime wptPick wptText wptUser wptUserList wptEDocumentInfo wptEDocumentInfoList wptReferenceRecordInfo wptReferenceRecordInfoList wptFolderInfo wptTaskInfo wptContents wptFileName wptDate wsrComplete wsrGoNext wsrGoPrevious wsrCustom wsrCancel wsrGoFinal wstForm wstEDocument wstTaskCard wstReferenceRecordCard wstFinal waAll waPerformers waManual wsbStart wsbFinish wsbNotice wsbStep wsbDecision wsbWait wsbMonitor wsbScript wsbConnector wsbSubTask wsbLifeCycleStage wsbPause wdtInteger wdtFloat wdtString wdtPick wdtDateTime wdtBoolean wdtTask wdtJob wdtFolder wdtEDocument wdtReferenceRecord wdtUser wdtGroup wdtRole wdtIntegerCollection wdtFloatCollection wdtStringCollection wdtPickCollection wdtDateTimeCollection wdtBooleanCollection wdtTaskCollection wdtJobCollection wdtFolderCollection wdtEDocumentCollection wdtReferenceRecordCollection wdtUserCollection wdtGroupCollection wdtRoleCollection wdtContents wdtUserList wdtSearchDescription wdtDeadLine wdtPickSet wdtAccountCollection wiLow wiNormal wiHigh wrtSoft wrtHard wsInit wsRunning wsDone wsControlled wsAborted wsContinued wtmFull wtmFromCurrent wtmOnlyCurrent ",class:"AltState Application CallType ComponentTokens CreatedJobs CreatedNotices ControlState DialogResult Dialogs EDocuments EDocumentVersionSource Folders GlobalIDs Job Jobs InputValue LookUpReference LookUpRequisiteNames LookUpSearch Object ParentComponent Processes References Requisite ReportName Reports Result Scripts Searches SelectedAttachments SelectedItems SelectMode Sender ServerEvents ServiceFactory ShiftState SubTask SystemDialogs Tasks Wizard Wizards Work ВызовСпособ ИмяОтчета РеквЗнач ",literal:"null true false nil "},s={begin:"\\.\\s*"+e.UNDERSCORE_IDENT_RE,keywords:o,relevance:0},l={className:"type",begin:":[ \\t]*("+"IApplication IAccessRights IAccountRepository IAccountSelectionRestrictions IAction IActionList IAdministrationHistoryDescription IAnchors IApplication IArchiveInfo IAttachment IAttachmentList ICheckListBox ICheckPointedList IColumn IComponent IComponentDescription IComponentToken IComponentTokenFactory IComponentTokenInfo ICompRecordInfo IConnection IContents IControl IControlJob IControlJobInfo IControlList ICrypto ICrypto2 ICustomJob ICustomJobInfo ICustomListBox ICustomObjectWizardStep ICustomWork ICustomWorkInfo IDataSet IDataSetAccessInfo IDataSigner IDateCriterion IDateRequisite IDateRequisiteDescription IDateValue IDeaAccessRights IDeaObjectInfo IDevelopmentComponentLock IDialog IDialogFactory IDialogPickRequisiteItems IDialogsFactory IDICSFactory IDocRequisite IDocumentInfo IDualListDialog IECertificate IECertificateInfo IECertificates IEditControl IEditorForm IEdmsExplorer IEdmsObject IEdmsObjectDescription IEdmsObjectFactory IEdmsObjectInfo IEDocument IEDocumentAccessRights IEDocumentDescription IEDocumentEditor IEDocumentFactory IEDocumentInfo IEDocumentStorage IEDocumentVersion IEDocumentVersionListDialog IEDocumentVersionSource IEDocumentWizardStep IEDocVerSignature IEDocVersionState IEnabledMode IEncodeProvider IEncrypter IEvent IEventList IException IExternalEvents IExternalHandler IFactory IField IFileDialog IFolder IFolderDescription IFolderDialog IFolderFactory IFolderInfo IForEach IForm IFormTitle IFormWizardStep IGlobalIDFactory IGlobalIDInfo IGrid IHasher IHistoryDescription IHyperLinkControl IImageButton IImageControl IInnerPanel IInplaceHint IIntegerCriterion IIntegerList IIntegerRequisite IIntegerValue IISBLEditorForm IJob IJobDescription IJobFactory IJobForm IJobInfo ILabelControl ILargeIntegerCriterion ILargeIntegerRequisite ILargeIntegerValue ILicenseInfo ILifeCycleStage IList IListBox ILocalIDInfo ILocalization ILock IMemoryDataSet IMessagingFactory IMetadataRepository INotice INoticeInfo INumericCriterion INumericRequisite INumericValue IObject IObjectDescription IObjectImporter IObjectInfo IObserver IPanelGroup IPickCriterion IPickProperty IPickRequisite IPickRequisiteDescription IPickRequisiteItem IPickRequisiteItems IPickValue IPrivilege IPrivilegeList IProcess IProcessFactory IProcessMessage IProgress IProperty IPropertyChangeEvent IQuery IReference IReferenceCriterion IReferenceEnabledMode IReferenceFactory IReferenceHistoryDescription IReferenceInfo IReferenceRecordCardWizardStep IReferenceRequisiteDescription IReferencesFactory IReferenceValue IRefRequisite IReport IReportFactory IRequisite IRequisiteDescription IRequisiteDescriptionList IRequisiteFactory IRichEdit IRouteStep IRule IRuleList ISchemeBlock IScript IScriptFactory ISearchCriteria ISearchCriterion ISearchDescription ISearchFactory ISearchFolderInfo ISearchForObjectDescription ISearchResultRestrictions ISecuredContext ISelectDialog IServerEvent IServerEventFactory IServiceDialog IServiceFactory ISignature ISignProvider ISignProvider2 ISignProvider3 ISimpleCriterion IStringCriterion IStringList IStringRequisite IStringRequisiteDescription IStringValue ISystemDialogsFactory ISystemInfo ITabSheet ITask ITaskAbortReasonInfo ITaskCardWizardStep ITaskDescription ITaskFactory ITaskInfo ITaskRoute ITextCriterion ITextRequisite ITextValue ITreeListSelectDialog IUser IUserList IValue IView IWebBrowserControl IWizard IWizardAction IWizardFactory IWizardFormElement IWizardParam IWizardPickParam IWizardReferenceParam IWizardStep IWorkAccessRights IWorkDescription IWorkflowAskableParam IWorkflowAskableParams IWorkflowBlock IWorkflowBlockResult IWorkflowEnabledMode IWorkflowParam IWorkflowPickParam IWorkflowReferenceParam IWorkState IWorkTreeCustomNode IWorkTreeJobNode IWorkTreeTaskNode IXMLEditorForm SBCrypto ".trim().replace(/\s/g,"|")+")",end:"[ \\t]*=",excludeEnd:!0},c={className:"variable",keywords:o,begin:t,relevance:0,contains:[l,s]},_="[A-Za-zА-Яа-яёЁ_][A-Za-zА-Яа-яёЁ_0-9]*\\(";return{name:"ISBL",case_insensitive:!0,keywords:o,illegal:"\\$|\\?|%|,|;$|~|#|@|</",contains:[{className:"function",begin:_,end:"\\)$",returnBegin:!0,keywords:o,illegal:"[\\[\\]\\|\\$\\?%,~#@]",contains:[{className:"title",keywords:{$pattern:t,built_in:"AddSubString AdjustLineBreaks AmountInWords Analysis ArrayDimCount ArrayHighBound ArrayLowBound ArrayOf ArrayReDim Assert Assigned BeginOfMonth BeginOfPeriod BuildProfilingOperationAnalysis CallProcedure CanReadFile CArrayElement CDataSetRequisite ChangeDate ChangeReferenceDataset Char CharPos CheckParam CheckParamValue CompareStrings ConstantExists ControlState ConvertDateStr Copy CopyFile CreateArray CreateCachedReference CreateConnection CreateDialog CreateDualListDialog CreateEditor CreateException CreateFile CreateFolderDialog CreateInputDialog CreateLinkFile CreateList CreateLock CreateMemoryDataSet CreateObject CreateOpenDialog CreateProgress CreateQuery CreateReference CreateReport CreateSaveDialog CreateScript CreateSQLPivotFunction CreateStringList CreateTreeListSelectDialog CSelectSQL CSQL CSubString CurrentUserID CurrentUserName CurrentVersion DataSetLocateEx DateDiff DateTimeDiff DateToStr DayOfWeek DeleteFile DirectoryExists DisableCheckAccessRights DisableCheckFullShowingRestriction DisableMassTaskSendingRestrictions DropTable DupeString EditText EnableCheckAccessRights EnableCheckFullShowingRestriction EnableMassTaskSendingRestrictions EndOfMonth EndOfPeriod ExceptionExists ExceptionsOff ExceptionsOn Execute ExecuteProcess Exit ExpandEnvironmentVariables ExtractFileDrive ExtractFileExt ExtractFileName ExtractFilePath ExtractParams FileExists FileSize FindFile FindSubString FirmContext ForceDirectories Format FormatDate FormatNumeric FormatSQLDate FormatString FreeException GetComponent GetComponentLaunchParam GetConstant GetLastException GetReferenceRecord GetRefTypeByRefID GetTableID GetTempFolder IfThen In IndexOf InputDialog InputDialogEx InteractiveMode IsFileLocked IsGraphicFile IsNumeric Length LoadString LoadStringFmt LocalTimeToUTC LowerCase Max MessageBox MessageBoxEx MimeDecodeBinary MimeDecodeString MimeEncodeBinary MimeEncodeString Min MoneyInWords MoveFile NewID Now OpenFile Ord Precision Raise ReadCertificateFromFile ReadFile ReferenceCodeByID ReferenceNumber ReferenceRequisiteMode ReferenceRequisiteValue RegionDateSettings RegionNumberSettings RegionTimeSettings RegRead RegWrite RenameFile Replace Round SelectServerCode SelectSQL ServerDateTime SetConstant SetManagedFolderFieldsState ShowConstantsInputDialog ShowMessage Sleep Split SQL SQL2XLSTAB SQLProfilingSendReport StrToDate SubString SubStringCount SystemSetting Time TimeDiff Today Transliterate Trim UpperCase UserStatus UTCToLocalTime ValidateXML VarIsClear VarIsEmpty VarIsNull WorkTimeDiff WriteFile WriteFileEx WriteObjectHistory Анализ БазаДанных БлокЕсть БлокЕстьРасш БлокИнфо БлокСнять БлокСнятьРасш БлокУстановить Ввод ВводМеню ВедС ВедСпр ВерхняяГраницаМассива ВнешПрогр Восст ВременнаяПапка Время ВыборSQL ВыбратьЗапись ВыделитьСтр Вызвать Выполнить ВыпПрогр ГрафическийФайл ГруппаДополнительно ДатаВремяСерв ДеньНедели ДиалогДаНет ДлинаСтр ДобПодстр ЕПусто ЕслиТо ЕЧисло ЗамПодстр ЗаписьСправочника ЗначПоляСпр ИДТипСпр ИзвлечьДиск ИзвлечьИмяФайла ИзвлечьПуть ИзвлечьРасширение ИзмДат ИзменитьРазмерМассива ИзмеренийМассива ИмяОрг ИмяПоляСпр Индекс ИндикаторЗакрыть ИндикаторОткрыть ИндикаторШаг ИнтерактивныйРежим ИтогТблСпр КодВидВедСпр КодВидСпрПоИД КодПоAnalit КодСимвола КодСпр КолПодстр КолПроп КонМес Конст КонстЕсть КонстЗнач КонТран КопироватьФайл КопияСтр КПериод КСтрТблСпр Макс МаксСтрТблСпр Массив Меню МенюРасш Мин НаборДанныхНайтиРасш НаимВидСпр НаимПоAnalit НаимСпр НастроитьПереводыСтрок НачМес НачТран НижняяГраницаМассива НомерСпр НПериод Окно Окр Окружение ОтлИнфДобавить ОтлИнфУдалить Отчет ОтчетАнал ОтчетИнт ПапкаСуществует Пауза ПВыборSQL ПереименоватьФайл Переменные ПереместитьФайл Подстр ПоискПодстр ПоискСтр ПолучитьИДТаблицы ПользовательДополнительно ПользовательИД ПользовательИмя ПользовательСтатус Прервать ПроверитьПараметр ПроверитьПараметрЗнач ПроверитьУсловие РазбСтр РазнВремя РазнДат РазнДатаВремя РазнРабВремя РегУстВрем РегУстДат РегУстЧсл РедТекст РеестрЗапись РеестрСписокИменПарам РеестрЧтение РеквСпр РеквСпрПр Сегодня Сейчас Сервер СерверПроцессИД СертификатФайлСчитать СжПроб Символ СистемаДиректумКод СистемаИнформация СистемаКод Содержит СоединениеЗакрыть СоединениеОткрыть СоздатьДиалог СоздатьДиалогВыбораИзДвухСписков СоздатьДиалогВыбораПапки СоздатьДиалогОткрытияФайла СоздатьДиалогСохраненияФайла СоздатьЗапрос СоздатьИндикатор СоздатьИсключение СоздатьКэшированныйСправочник СоздатьМассив СоздатьНаборДанных СоздатьОбъект СоздатьОтчет СоздатьПапку СоздатьРедактор СоздатьСоединение СоздатьСписок СоздатьСписокСтрок СоздатьСправочник СоздатьСценарий СоздСпр СостСпр Сохр СохрСпр СписокСистем Спр Справочник СпрБлокЕсть СпрБлокСнять СпрБлокСнятьРасш СпрБлокУстановить СпрИзмНабДан СпрКод СпрНомер СпрОбновить СпрОткрыть СпрОтменить СпрПарам СпрПолеЗнач СпрПолеИмя СпрРекв СпрРеквВведЗн СпрРеквНовые СпрРеквПр СпрРеквПредЗн СпрРеквРежим СпрРеквТипТекст СпрСоздать СпрСост СпрСохранить СпрТблИтог СпрТблСтр СпрТблСтрКол СпрТблСтрМакс СпрТблСтрМин СпрТблСтрПред СпрТблСтрСлед СпрТблСтрСозд СпрТблСтрУд СпрТекПредст СпрУдалить СравнитьСтр СтрВерхРегистр СтрНижнРегистр СтрТблСпр СумПроп Сценарий СценарийПарам ТекВерсия ТекОрг Точн Тран Транслитерация УдалитьТаблицу УдалитьФайл УдСпр УдСтрТблСпр Уст УстановкиКонстант ФайлАтрибутСчитать ФайлАтрибутУстановить ФайлВремя ФайлВремяУстановить ФайлВыбрать ФайлЗанят ФайлЗаписать ФайлИскать ФайлКопировать ФайлМожноЧитать ФайлОткрыть ФайлПереименовать ФайлПерекодировать ФайлПереместить ФайлПросмотреть ФайлРазмер ФайлСоздать ФайлСсылкаСоздать ФайлСуществует ФайлСчитать ФайлУдалить ФмтSQLДат ФмтДат ФмтСтр ФмтЧсл Формат ЦМассивЭлемент ЦНаборДанныхРеквизит ЦПодстр "},begin:_,end:"\\(",returnBegin:!0,excludeEnd:!0},s,c,a,n,i]},l,s,c,a,n,i]}},KE="[0-9](_*[0-9])*",jE="\\.(".concat(KE,")"),XE="[0-9a-fA-F](_*[0-9a-fA-F])*",ZE={className:"number",variants:[{begin:"(\\b(".concat(KE,")((").concat(jE,")|\\.)?|(").concat(jE,"))")+"[eE][+-]?(".concat(KE,")[fFdD]?\\b")},{begin:"\\b(".concat(KE,")((").concat(jE,")[fFdD]?\\b|\\.([fFdD]\\b)?)")},{begin:"(".concat(jE,")[fFdD]?\\b")},{begin:"\\b(".concat(KE,")[fFdD]\\b")},{begin:"\\b0[xX]((".concat(XE,")\\.?|(").concat(XE,")?\\.(").concat(XE,"))")+"[pP][+-]?(".concat(KE,")[fFdD]?\\b")},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:"\\b0[xX](".concat(XE,")[lL]?\\b")},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};var JE=function(e){var t="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",n="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",a={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},r=ZE;return{name:"Java",aliases:["jsp"],keywords:n,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface enum",end:/[{;=]/,excludeEnd:!0,relevance:1,keywords:"class interface enum",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"class",begin:"record\\s+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,excludeEnd:!0,end:/[{;=]/,keywords:n,contains:[{beginKeywords:"record"},{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:n,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"function",begin:"([À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(\\s*,\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:n,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:n,relevance:0,contains:[a,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r,a]}},eS="[A-Za-z$_][0-9A-Za-z$_]*",tS=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],nS=["true","false","null","undefined","NaN","Infinity"],aS=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function rS(e){return e?"string"==typeof e?e:e.source:null}function iS(e){return oS("(?=",e,")")}function oS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return rS(e)})).join("");return a}var sS=function(e){var t=eS,n="<>",a="</>",r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:function(e,t){var n=e[0].length+e.index,a=e.input[n];"<"!==a?">"===a&&(function(e,t){var n=t.after,a="</"+e[0].slice(1);return-1!==e.input.indexOf(a,n)}(e,{after:n})||t.ignoreMatch()):t.ignoreMatch()}},i={$pattern:eS,keyword:tS,literal:nS,built_in:aS},o="[0-9](_?[0-9])*",s="\\.(".concat(o,")"),l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:"(\\b(".concat(l,")((").concat(s,")|\\.)?|(").concat(s,"))")+"[eE][+-]?(".concat(o,")\\b")},{begin:"\\b(".concat(l,")\\b((").concat(s,")\\b|\\.)?|(").concat(s,")\\b")},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},_={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"xml"}},u={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"css"}},m={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,_]},p={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},g=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,c,e.REGEXP_MODE];_.contains=g.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(g)});var E=[].concat(p,_.contains),S=E.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(E)}]),b={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:S},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,p,c,{begin:oS(/[{,\n]\s*/,iS(oS(/(((\/\/.*$)|(\/\*(\*[^/]|[^*])*\*\/))\s*)*/,t+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:t+iS("\\s*:"),relevance:0}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[p,e.REGEXP_MODE,{className:"function",begin:"(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:n,end:a},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:i,contains:["self",e.inherit(e.TITLE_MODE,{begin:t}),b],illegal:/%/},{beginKeywords:"while if switch catch for"},{className:"function",begin:e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,contains:[b,e.inherit(e.TITLE_MODE,{begin:t})]},{variants:[{begin:"\\."+t},{begin:"\\$"+t}],relevance:0},{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/,end:/[{;]/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),"self",b]},{begin:"(get|set)\\s+(?="+t+"\\()",end:/\{/,keywords:"get set",contains:[e.inherit(e.TITLE_MODE,{begin:t}),{begin:/\(\)/},b]},{begin:/\$[(.]/}]}};var lS=function(e){var t={className:"params",begin:/\(/,end:/\)/,contains:[{begin:/[\w-]+ *=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[\w-]+/}]}],relevance:0};return{name:"JBoss CLI",aliases:["wildfly-cli"],keywords:{$pattern:"[a-z-]+",keyword:"alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source",literal:"true false"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"params",begin:/--[\w\-=\/]+/},{className:"function",begin:/:[\w\-.]+/,relevance:0},{className:"string",begin:/\B([\/.])[\w\-.\/=]+/},t]}};var cS=function(e){var t={literal:"true false null"},n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],a=[e.QUOTE_STRING_MODE,e.C_NUMBER_MODE],r={end:",",endsWithParent:!0,excludeEnd:!0,contains:a,keywords:t},i={begin:/\{/,end:/\}/,contains:[{className:"attr",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE],illegal:"\\n"},e.inherit(r,{begin:/:/})].concat(n),illegal:"\\S"},o={begin:"\\[",end:"\\]",contains:[e.inherit(r)],illegal:"\\S"};return a.push(i,o),n.forEach((function(e){a.push(e)})),{name:"JSON",contains:a,keywords:t,illegal:"\\S"}};var _S=function(e){var t="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",n={$pattern:t,keyword:["baremodule","begin","break","catch","ccall","const","continue","do","else","elseif","end","export","false","finally","for","function","global","if","import","in","isa","let","local","macro","module","quote","return","true","try","using","where","while"],literal:["ARGS","C_NULL","DEPOT_PATH","ENDIAN_BOM","ENV","Inf","Inf16","Inf32","Inf64","InsertionSort","LOAD_PATH","MergeSort","NaN","NaN16","NaN32","NaN64","PROGRAM_FILE","QuickSort","RoundDown","RoundFromZero","RoundNearest","RoundNearestTiesAway","RoundNearestTiesUp","RoundToZero","RoundUp","VERSION|0","devnull","false","im","missing","nothing","pi","stderr","stdin","stdout","true","undef","π","ℯ"],built_in:["AbstractArray","AbstractChannel","AbstractChar","AbstractDict","AbstractDisplay","AbstractFloat","AbstractIrrational","AbstractMatrix","AbstractRange","AbstractSet","AbstractString","AbstractUnitRange","AbstractVecOrMat","AbstractVector","Any","ArgumentError","Array","AssertionError","BigFloat","BigInt","BitArray","BitMatrix","BitSet","BitVector","Bool","BoundsError","CapturedException","CartesianIndex","CartesianIndices","Cchar","Cdouble","Cfloat","Channel","Char","Cint","Cintmax_t","Clong","Clonglong","Cmd","Colon","Complex","ComplexF16","ComplexF32","ComplexF64","CompositeException","Condition","Cptrdiff_t","Cshort","Csize_t","Cssize_t","Cstring","Cuchar","Cuint","Cuintmax_t","Culong","Culonglong","Cushort","Cvoid","Cwchar_t","Cwstring","DataType","DenseArray","DenseMatrix","DenseVecOrMat","DenseVector","Dict","DimensionMismatch","Dims","DivideError","DomainError","EOFError","Enum","ErrorException","Exception","ExponentialBackOff","Expr","Float16","Float32","Float64","Function","GlobalRef","HTML","IO","IOBuffer","IOContext","IOStream","IdDict","IndexCartesian","IndexLinear","IndexStyle","InexactError","InitError","Int","Int128","Int16","Int32","Int64","Int8","Integer","InterruptException","InvalidStateException","Irrational","KeyError","LinRange","LineNumberNode","LinearIndices","LoadError","MIME","Matrix","Method","MethodError","Missing","MissingException","Module","NTuple","NamedTuple","Nothing","Number","OrdinalRange","OutOfMemoryError","OverflowError","Pair","PartialQuickSort","PermutedDimsArray","Pipe","ProcessFailedException","Ptr","QuoteNode","Rational","RawFD","ReadOnlyMemoryError","Real","ReentrantLock","Ref","Regex","RegexMatch","RoundingMode","SegmentationFault","Set","Signed","Some","StackOverflowError","StepRange","StepRangeLen","StridedArray","StridedMatrix","StridedVecOrMat","StridedVector","String","StringIndexError","SubArray","SubString","SubstitutionString","Symbol","SystemError","Task","TaskFailedException","Text","TextDisplay","Timer","Tuple","Type","TypeError","TypeVar","UInt","UInt128","UInt16","UInt32","UInt64","UInt8","UndefInitializer","UndefKeywordError","UndefRefError","UndefVarError","Union","UnionAll","UnitRange","Unsigned","Val","Vararg","VecElement","VecOrMat","Vector","VersionNumber","WeakKeyDict","WeakRef"]},a={keywords:n,illegal:/<\//},r={className:"subst",begin:/\$\(/,end:/\)/,keywords:n},i={className:"variable",begin:"\\$"+t},o={className:"string",contains:[e.BACKSLASH_ESCAPE,r,i],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},s={className:"string",contains:[e.BACKSLASH_ESCAPE,r,i],begin:"`",end:"`"},l={className:"meta",begin:"@"+t};return a.name="Julia",a.contains=[{className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},o,s,l,{className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]},e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],r.contains=a.contains,a};var dS=function(e){return{name:"Julia REPL",contains:[{className:"meta",begin:/^julia>/,relevance:10,starts:{end:/^(?![ ]{6})/,subLanguage:"julia"},aliases:["jldoctest"]}]}},uS="[0-9](_*[0-9])*",mS="\\.(".concat(uS,")"),pS="[0-9a-fA-F](_*[0-9a-fA-F])*",gS={className:"number",variants:[{begin:"(\\b(".concat(uS,")((").concat(mS,")|\\.)?|(").concat(mS,"))")+"[eE][+-]?(".concat(uS,")[fFdD]?\\b")},{begin:"\\b(".concat(uS,")((").concat(mS,")[fFdD]?\\b|\\.([fFdD]\\b)?)")},{begin:"(".concat(mS,")[fFdD]?\\b")},{begin:"\\b(".concat(uS,")[fFdD]\\b")},{begin:"\\b0[xX]((".concat(pS,")\\.?|(").concat(pS,")?\\.(").concat(pS,"))")+"[pP][+-]?(".concat(uS,")[fFdD]?\\b")},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:"\\b0[xX](".concat(pS,")[lL]?\\b")},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};var ES=function(e){var t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},r={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},i={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[r,a]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,r,a]}]};a.contains.push(i);var o={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},s={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(i,{className:"meta-string"})]}]},l=gS,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),_={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},d=_;return d.variants[1].contains=[_],_.variants[1].contains=[d],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},n,o,s,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[_,e.C_LINE_COMMENT_MODE,c],relevance:0},e.C_LINE_COMMENT_MODE,c,o,s,i,e.C_NUMBER_MODE]},c]},{className:"class",beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/,excludeBegin:!0,returnEnd:!0},o,s]},i,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},l]}};var SS=function(e){var t="[a-zA-Z_][\\w.]*",n="<\\?(lasso(script)?|=)",a="\\]|\\?>",r={$pattern:"[a-zA-Z_][\\w.]*|&[lg]t;",literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock",keyword:"cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},i=e.COMMENT("\x3c!--","--\x3e",{relevance:0}),o={className:"meta",begin:"\\[noprocess\\]",starts:{end:"\\[/noprocess\\]",returnEnd:!0,contains:[i]}},s={className:"meta",begin:"\\[/noprocess|"+n},l={className:"symbol",begin:"'[a-zA-Z_][\\w.]*'"},c=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(e.C_NUMBER_MODE,{begin:e.C_NUMBER_RE+"|(-?infinity|NaN)\\b"}),e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"`",end:"`"},{variants:[{begin:"[#$][a-zA-Z_][\\w.]*"},{begin:"#",end:"\\d+",illegal:"\\W"}]},{className:"type",begin:"::\\s*",end:t,illegal:"\\W"},{className:"params",variants:[{begin:"-(?!infinity)[a-zA-Z_][\\w.]*",relevance:0},{begin:"(\\.\\.\\.)"}]},{begin:/(->|\.)\s*/,relevance:0,contains:[l]},{className:"class",beginKeywords:"define",returnEnd:!0,end:"\\(|=>",contains:[e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z_][\\w.]*(=(?!>))?|[-+*/%](?!>)"})]}];return{name:"Lasso",aliases:["ls","lassoscript"],case_insensitive:!0,keywords:r,contains:[{className:"meta",begin:a,relevance:0,starts:{end:"\\[|"+n,returnEnd:!0,relevance:0,contains:[i]}},o,s,{className:"meta",begin:"\\[no_square_brackets",starts:{end:"\\[/no_square_brackets\\]",keywords:r,contains:[{className:"meta",begin:a,relevance:0,starts:{end:"\\[noprocess\\]|"+n,returnEnd:!0,contains:[i]}},o,s].concat(c)}},{className:"meta",begin:"\\[",relevance:0},{className:"meta",begin:"^#!",end:"lasso9$",relevance:10}].concat(c)}};function bS(e){return e?"string"==typeof e?e:e.source:null}function fS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return bS(e)})).join("|")+")";return a}var TS=function(e){var t,n=[{begin:/\^{6}[0-9a-f]{6}/},{begin:/\^{5}[0-9a-f]{5}/},{begin:/\^{4}[0-9a-f]{4}/},{begin:/\^{3}[0-9a-f]{3}/},{begin:/\^{2}[0-9a-f]{2}/},{begin:/\^{2}[\u0000-\u007f]/}],a=[{className:"keyword",begin:/\\/,relevance:0,contains:[{endsParent:!0,begin:fS.apply(void 0,c(["(?:NeedsTeXFormat|RequirePackage|GetIdInfo)","Provides(?:Expl)?(?:Package|Class|File)","(?:DeclareOption|ProcessOptions)","(?:documentclass|usepackage|input|include)","makeat(?:letter|other)","ExplSyntax(?:On|Off)","(?:new|renew|provide)?command","(?:re)newenvironment","(?:New|Renew|Provide|Declare)(?:Expandable)?DocumentCommand","(?:New|Renew|Provide|Declare)DocumentEnvironment","(?:(?:e|g|x)?def|let)","(?:begin|end)","(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph)","caption","(?:label|(?:eq|page|name)?ref|(?:paren|foot|super)?cite)","(?:alpha|beta|[Gg]amma|[Dd]elta|(?:var)?epsilon|zeta|eta|[Tt]heta|vartheta)","(?:iota|(?:var)?kappa|[Ll]ambda|mu|nu|[Xx]i|[Pp]i|varpi|(?:var)rho)","(?:[Ss]igma|varsigma|tau|[Uu]psilon|[Pp]hi|varphi|chi|[Pp]si|[Oo]mega)","(?:frac|sum|prod|lim|infty|times|sqrt|leq|geq|left|right|middle|[bB]igg?)","(?:[lr]angle|q?quad|[lcvdi]?dots|d?dot|hat|tilde|bar)"].map((function(e){return e+"(?![a-zA-Z@:_])"}))))},{endsParent:!0,begin:new RegExp(["(?:__)?[a-zA-Z]{2,}_[a-zA-Z](?:_?[a-zA-Z])+:[a-zA-Z]*","[lgc]__?[a-zA-Z](?:_?[a-zA-Z])*_[a-zA-Z]{2,}","[qs]__?[a-zA-Z](?:_?[a-zA-Z])+","use(?:_i)?:[a-zA-Z]*","(?:else|fi|or):","(?:if|cs|exp):w","(?:hbox|vbox):n","::[a-zA-Z]_unbraced","::[a-zA-Z:]"].map((function(e){return e+"(?![a-zA-Z:_])"})).join("|"))},{endsParent:!0,variants:n},{endsParent:!0,relevance:0,variants:[{begin:/[a-zA-Z@]+/},{begin:/[^a-zA-Z@]?/}]}]},{className:"params",relevance:0,begin:/#+\d?/},{variants:n},{className:"built_in",relevance:0,begin:/[$&^_]/},{className:"meta",begin:"% !TeX",end:"$",relevance:10},e.COMMENT("%","$",{relevance:0})],r={begin:/\{/,end:/\}/,relevance:0,contains:["self"].concat(a)},i=e.inherit(r,{relevance:0,endsParent:!0,contains:[r].concat(a)}),o={begin:/\[/,end:/\]/,endsParent:!0,relevance:0,contains:[r].concat(a)},s={begin:/\s+/,relevance:0},l=[i],_=[o],d=function(e,t){return{contains:[s],starts:{relevance:0,contains:e,starts:t}}},u=function(e,t){return{begin:"\\\\"+e+"(?![a-zA-Z@:_])",keywords:{$pattern:/\\[a-zA-Z]+/,keyword:"\\"+e},relevance:0,contains:[s],starts:t}},m=function(t,n){return e.inherit({begin:"\\\\begin(?=[ \t]*(\\r?\\n[ \t]*)?\\{"+t+"\\})",keywords:{$pattern:/\\[a-zA-Z]+/,keyword:"\\begin"},relevance:0},d(l,n))},p=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"string";return e.END_SAME_AS_BEGIN({className:t,begin:/(.|\r?\n)/,end:/(.|\r?\n)/,excludeBegin:!0,excludeEnd:!0,endsParent:!0})},g=function(e){return{className:"string",end:"(?=\\\\end\\{"+e+"\\})"}},E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"string";return{relevance:0,begin:/\{/,starts:{endsParent:!0,contains:[{className:e,end:/(?=\})/,endsParent:!0,contains:[{begin:/\{/,end:/\}/,relevance:0,contains:["self"]}]}]}}},S=[].concat(c(["verb","lstinline"].map((function(e){return u(e,{contains:[p()]})}))),[u("mint",d(l,{contains:[p()]})),u("mintinline",d(l,{contains:[E(),p()]})),u("url",{contains:[E("link"),E("link")]}),u("hyperref",{contains:[E("link")]}),u("href",d(_,{contains:[E("link")]}))],c((t=[]).concat.apply(t,c(["","\\*"].map((function(e){return[m("verbatim"+e,g("verbatim"+e)),m("filecontents"+e,d(l,g("filecontents"+e)))].concat(c(["","B","L"].map((function(t){return m(t+"Verbatim"+e,d(_,g(t+"Verbatim"+e)))}))))}))))),[m("minted",d(_,d(l,g("minted"))))]);return{name:"LaTeX",aliases:["tex"],contains:[].concat(c(S),a)}};var CS=function(e){return{name:"LDIF",contains:[{className:"attribute",begin:"^dn",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0},relevance:10},{className:"attribute",begin:"^\\w",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0}},{className:"literal",begin:"^-",end:"$"},e.HASH_COMMENT_MODE]}};var NS=function(e){return{name:"Leaf",contains:[{className:"function",begin:"#+[A-Za-z_0-9]*\\(",end:/ \{/,returnBegin:!0,excludeEnd:!0,contains:[{className:"keyword",begin:"#+"},{className:"title",begin:"[A-Za-z_][A-Za-z_0-9]*"},{className:"params",begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"string",begin:'"',end:'"'},{className:"variable",begin:"[A-Za-z_][A-Za-z_0-9]*"}]}]}]}},RS=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],vS=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],OS=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],hS=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],yS=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse(),IS=OS.concat(hS);var AS=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=IS,a="([\\w-]+|@\\{[\\w-]+\\})",r=[],i=[],o=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},s=function(e,t,n){return{className:e,begin:t,relevance:n}},l={$pattern:/[a-z-]+/,keyword:"and or not only",attribute:vS.join(" ")},c={begin:"\\(",end:"\\)",contains:i,keywords:l,relevance:0};i.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,o("'"),o('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.HEXCOLOR,c,s("variable","@@?[\\w-]+",10),s("variable","@\\{[\\w-]+\\}"),s("built_in","~?`[^`]*?`"),{className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT);var _=i.concat({begin:/\{/,end:/\}/,contains:r}),d={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(i)},u={begin:a+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},{className:"attribute",begin:"\\b("+yS.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:i}}]},m={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:l,returnEnd:!0,contains:i,relevance:0}},p={className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:_}},g={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:a,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,d,s("keyword","all\\b"),s("variable","@\\{[\\w-]+\\}"),{begin:"\\b("+RS.join("|")+")\\b",className:"selector-tag"},s("selector-tag",a+"%?",0),s("selector-id","#"+a),s("selector-class","\\."+a,0),s("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+OS.join("|")+")"},{className:"selector-pseudo",begin:"::("+hS.join("|")+")"},{begin:"\\(",end:"\\)",contains:_},{begin:"!important"}]},E={begin:"[\\w-]+:(:)?"+"(".concat(n.join("|"),")"),returnBegin:!0,contains:[g]};return r.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m,p,E,u,g),{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:r}};var DS=function(e){var t="[a-zA-Z_\\-+\\*\\/<=>&#][a-zA-Z0-9_\\-+*\\/<=>&#!]*",n="\\|[^]*?\\|",a="(-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|-)?\\d+)?",r={className:"literal",begin:"\\b(t{1}|nil)\\b"},i={className:"number",variants:[{begin:a,relevance:0},{begin:"#(b|B)[0-1]+(/[0-1]+)?"},{begin:"#(o|O)[0-7]+(/[0-7]+)?"},{begin:"#(x|X)[0-9a-fA-F]+(/[0-9a-fA-F]+)?"},{begin:"#(c|C)\\("+a+" +"+a,end:"\\)"}]},o=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),s=e.COMMENT(";","$",{relevance:0}),l={begin:"\\*",end:"\\*"},c={className:"symbol",begin:"[:&]"+t},_={begin:t,relevance:0},d={begin:n},u={contains:[i,o,l,c,{begin:"\\(",end:"\\)",contains:["self",r,o,i,_]},_],variants:[{begin:"['`]\\(",end:"\\)"},{begin:"\\(quote ",end:"\\)",keywords:{name:"quote"}},{begin:"'"+n}]},m={variants:[{begin:"'"+t},{begin:"#'"+t+"(::"+t+")*"}]},p={begin:"\\(\\s*",end:"\\)"},g={endsWithParent:!0,relevance:0};return p.contains=[{className:"name",variants:[{begin:t,relevance:0},{begin:n}]},g],g.contains=[u,m,p,r,i,o,s,l,c,d,_],{name:"Lisp",illegal:/\S/,contains:[i,e.SHEBANG(),r,o,s,u,m,p,_]}};var MS=function(e){var t={className:"variable",variants:[{begin:"\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)"},{begin:"\\$_[A-Z]+"}],relevance:0},n=[e.C_BLOCK_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("--","$"),e.COMMENT("[^:]//","$")],a=e.inherit(e.TITLE_MODE,{variants:[{begin:"\\b_*rig[A-Z][A-Za-z0-9_\\-]*"},{begin:"\\b_[a-z0-9\\-]+"}]}),r=e.inherit(e.TITLE_MODE,{begin:"\\b([A-Za-z0-9_\\-]+)\\b"});return{name:"LiveCode",case_insensitive:!1,keywords:{keyword:"$_COOKIE $_FILES $_GET $_GET_BINARY $_GET_RAW $_POST $_POST_BINARY $_POST_RAW $_SESSION $_SERVER codepoint codepoints segment segments codeunit codeunits sentence sentences trueWord trueWords paragraph after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word words fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",literal:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg avgDev base64Decode base64Encode baseConvert binaryDecode binaryEncode byteOffset byteToNum cachedURL cachedURLs charToNum cipherNames codepointOffset codepointProperty codepointToNum codeunitOffset commandNames compound compress constantNames cos date dateFormat decompress difference directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames geometricMean global globals hasMemory harmonicMean hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge messageAuthenticationCode messageDigest millisec millisecs millisecond milliseconds min monthNames nativeCharToNum normalizeText num number numToByte numToChar numToCodepoint numToNativeChar offset open openfiles openProcesses openProcessIDs openSockets paragraphOffset paramCount param params peerAddress pendingMessages platform popStdDev populationStandardDeviation populationVariance popVariance processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLCreateTreeFromFileWithNamespaces revXMLCreateTreeWithNamespaces revXMLDataFromXPathQuery revXMLEvaluateXPath revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_Execute revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sampVariance sec secs seconds sentenceOffset sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName textDecode textEncode tick ticks time to tokenOffset toLower toUpper transpose truewordOffset trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus uuid value variableNames variance version waitDepth weekdayNames wordOffset xsltApplyStylesheet xsltApplyStylesheetFromFile xsltLoadStylesheet xsltLoadStylesheetFromFile add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetDriver libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load extension loadedExtensions multiply socket prepare process post seek rel relative read from process rename replace require resetAll resolve revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split start stop subtract symmetric union unload vectorDotProduct wait write"},contains:[t,{className:"keyword",begin:"\\bend\\sif\\b"},{className:"function",beginKeywords:"function",end:"$",contains:[t,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a]},{className:"function",begin:"\\bend\\s+",end:"$",keywords:"end",contains:[r,a],relevance:0},{beginKeywords:"command on",end:"$",contains:[t,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a]},{className:"meta",variants:[{begin:"<\\?(rev|lc|livecode)",relevance:10},{begin:"<\\?"},{begin:"\\?>"}]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a].concat(n),illegal:";$|^\\[|^=|&|\\{"}},LS=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],wS=["true","false","null","undefined","NaN","Infinity"],xS=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);var PS=function(e){var t={keyword:LS.concat(["then","unless","until","loop","of","by","when","and","or","is","isnt","not","it","that","otherwise","from","to","til","fallthrough","case","enum","native","list","map","__hasProp","__extends","__slice","__bind","__indexOf"]),literal:wS.concat(["yes","no","on","off","it","that","void"]),built_in:xS.concat(["npm","print"])},n="[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*",a=e.inherit(e.TITLE_MODE,{begin:n}),r={className:"subst",begin:/#\{/,end:/\}/,keywords:t},i={className:"subst",begin:/#[A-Za-z$_]/,end:/(?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,keywords:t},o=[e.BINARY_NUMBER_MODE,{className:"number",begin:"(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)",relevance:0,starts:{end:"(\\s*/)?",relevance:0}},{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,r,i]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,i]},{begin:/\\/,end:/(\s|$)/,excludeEnd:!0}]},{className:"regexp",variants:[{begin:"//",end:"//[gim]*",contains:[r,e.HASH_COMMENT_MODE]},{begin:/\/(?![ *])(\\.|[^\\\n])*?\/[gim]*(?=\W)/}]},{begin:"@"+n},{begin:"``",end:"``",excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"}];r.contains=o;var s={className:"params",begin:"\\(",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]};return{name:"LiveScript",aliases:["ls"],keywords:t,illegal:/\/\*/,contains:o.concat([e.COMMENT("\\/\\*","\\*\\/"),e.HASH_COMMENT_MODE,{begin:"(#=>|=>|\\|>>|-?->|!->)"},{className:"function",contains:[a,s],returnBegin:!0,variants:[{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B->\\*?",end:"->\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?!?(\\(.*\\)\\s*)?\\B[-~]{1,2}>\\*?",end:"[-~]{1,2}>\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B!?[-~]{1,2}>\\*?",end:"!?[-~]{1,2}>\\*?"}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[a]},a]},{begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};function kS(e){return e?"string"==typeof e?e:e.source:null}function US(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return kS(e)})).join("");return a}var FS=function(e){var t=/([-a-zA-Z$._][\w$.-]*)/,n={className:"variable",variants:[{begin:US(/%/,t)},{begin:/%\d+/},{begin:/#\d+/}]},a={className:"title",variants:[{begin:US(/@/,t)},{begin:/@\d+/},{begin:US(/!/,t)},{begin:US(/!\d+/,t)},{begin:/!\d+/}]};return{name:"LLVM IR",keywords:"begin end true false declare define global constant private linker_private internal available_externally linkonce linkonce_odr weak weak_odr appending dllimport dllexport common default hidden protected extern_weak external thread_local zeroinitializer undef null to tail target triple datalayout volatile nuw nsw nnan ninf nsz arcp fast exact inbounds align addrspace section alias module asm sideeffect gc dbg linker_private_weak attributes blockaddress initialexec localdynamic localexec prefix unnamed_addr ccc fastcc coldcc x86_stdcallcc x86_fastcallcc arm_apcscc arm_aapcscc arm_aapcs_vfpcc ptx_device ptx_kernel intel_ocl_bicc msp430_intrcc spir_func spir_kernel x86_64_sysvcc x86_64_win64cc x86_thiscallcc cc c signext zeroext inreg sret nounwind noreturn noalias nocapture byval nest readnone readonly inlinehint noinline alwaysinline optsize ssp sspreq noredzone noimplicitfloat naked builtin cold nobuiltin noduplicate nonlazybind optnone returns_twice sanitize_address sanitize_memory sanitize_thread sspstrong uwtable returned type opaque eq ne slt sgt sle sge ult ugt ule uge oeq one olt ogt ole oge ord uno ueq une x acq_rel acquire alignstack atomic catch cleanup filter inteldialect max min monotonic nand personality release seq_cst singlethread umax umin unordered xchg add fadd sub fsub mul fmul udiv sdiv fdiv urem srem frem shl lshr ashr and or xor icmp fcmp phi call trunc zext sext fptrunc fpext uitofp sitofp fptoui fptosi inttoptr ptrtoint bitcast addrspacecast select va_arg ret br switch invoke unwind unreachable indirectbr landingpad resume malloc alloca free load store getelementptr extractelement insertelement shufflevector getresult extractvalue insertvalue atomicrmw cmpxchg fence argmemonly double",contains:[{className:"type",begin:/\bi\d+(?=\s|\b)/},e.COMMENT(/;\s*$/,null,{relevance:0}),e.COMMENT(/;/,/$/),e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:/"/,end:/[^\\]"/}]},a,{className:"punctuation",relevance:0,begin:/,/},{className:"operator",relevance:0,begin:/=/},n,{className:"symbol",variants:[{begin:/^\s*[a-z]+:/}],relevance:0},{className:"number",variants:[{begin:/0[xX][a-fA-F0-9]+/},{begin:/-?\d+(?:[.]\d+)?(?:[eE][-+]?\d+(?:[.]\d+)?)?/}],relevance:0}]}};var BS=function(e){var t={className:"string",begin:'"',end:'"',contains:[{className:"subst",begin:/\\[tn"\\]/}]},n={className:"number",relevance:0,begin:e.C_NUMBER_RE};return{name:"LSL (Linden Scripting Language)",illegal:":",contains:[t,{className:"comment",variants:[e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/")],relevance:0},n,{className:"section",variants:[{begin:"\\b(state|default)\\b"},{begin:"\\b(state_(entry|exit)|touch(_(start|end))?|(land_)?collision(_(start|end))?|timer|listen|(no_)?sensor|control|(not_)?at_(rot_)?target|money|email|experience_permissions(_denied)?|run_time_permissions|changed|attach|dataserver|moving_(start|end)|link_message|(on|object)_rez|remote_data|http_re(sponse|quest)|path_update|transaction_result)\\b"}]},{className:"built_in",begin:"\\b(ll(AgentInExperience|(Create|DataSize|Delete|KeyCount|Keys|Read|Update)KeyValue|GetExperience(Details|ErrorMessage)|ReturnObjectsBy(ID|Owner)|Json(2List|[GS]etValue|ValueType)|Sin|Cos|Tan|Atan2|Sqrt|Pow|Abs|Fabs|Frand|Floor|Ceil|Round|Vec(Mag|Norm|Dist)|Rot(Between|2(Euler|Fwd|Left|Up))|(Euler|Axes)2Rot|Whisper|(Region|Owner)?Say|Shout|Listen(Control|Remove)?|Sensor(Repeat|Remove)?|Detected(Name|Key|Owner|Type|Pos|Vel|Grab|Rot|Group|LinkNumber)|Die|Ground|Wind|([GS]et)(AnimationOverride|MemoryLimit|PrimMediaParams|ParcelMusicURL|Object(Desc|Name)|PhysicsMaterial|Status|Scale|Color|Alpha|Texture|Pos|Rot|Force|Torque)|ResetAnimationOverride|(Scale|Offset|Rotate)Texture|(Rot)?Target(Remove)?|(Stop)?MoveToTarget|Apply(Rotational)?Impulse|Set(KeyframedMotion|ContentType|RegionPos|(Angular)?Velocity|Buoyancy|HoverHeight|ForceAndTorque|TimerEvent|ScriptState|Damage|TextureAnim|Sound(Queueing|Radius)|Vehicle(Type|(Float|Vector|Rotation)Param)|(Touch|Sit)?Text|Camera(Eye|At)Offset|PrimitiveParams|ClickAction|Link(Alpha|Color|PrimitiveParams(Fast)?|Texture(Anim)?|Camera|Media)|RemoteScriptAccessPin|PayPrice|LocalRot)|ScaleByFactor|Get((Max|Min)ScaleFactor|ClosestNavPoint|StaticPath|SimStats|Env|PrimitiveParams|Link(PrimitiveParams|Number(OfSides)?|Key|Name|Media)|HTTPHeader|FreeURLs|Object(Details|PermMask|PrimCount)|Parcel(MaxPrims|Details|Prim(Count|Owners))|Attached(List)?|(SPMax|Free|Used)Memory|Region(Name|TimeDilation|FPS|Corner|AgentCount)|Root(Position|Rotation)|UnixTime|(Parcel|Region)Flags|(Wall|GMT)clock|SimulatorHostname|BoundingBox|GeometricCenter|Creator|NumberOf(Prims|NotecardLines|Sides)|Animation(List)?|(Camera|Local)(Pos|Rot)|Vel|Accel|Omega|Time(stamp|OfDay)|(Object|CenterOf)?Mass|MassMKS|Energy|Owner|(Owner)?Key|SunDirection|Texture(Offset|Scale|Rot)|Inventory(Number|Name|Key|Type|Creator|PermMask)|Permissions(Key)?|StartParameter|List(Length|EntryType)|Date|Agent(Size|Info|Language|List)|LandOwnerAt|NotecardLine|Script(Name|State))|(Get|Reset|GetAndReset)Time|PlaySound(Slave)?|LoopSound(Master|Slave)?|(Trigger|Stop|Preload)Sound|((Get|Delete)Sub|Insert)String|To(Upper|Lower)|Give(InventoryList|Money)|RezObject|(Stop)?LookAt|Sleep|CollisionFilter|(Take|Release)Controls|DetachFromAvatar|AttachToAvatar(Temp)?|InstantMessage|(GetNext)?Email|StopHover|MinEventDelay|RotLookAt|String(Length|Trim)|(Start|Stop)Animation|TargetOmega|Request(Experience)?Permissions|(Create|Break)Link|BreakAllLinks|(Give|Remove)Inventory|Water|PassTouches|Request(Agent|Inventory)Data|TeleportAgent(Home|GlobalCoords)?|ModifyLand|CollisionSound|ResetScript|MessageLinked|PushObject|PassCollisions|AxisAngle2Rot|Rot2(Axis|Angle)|A(cos|sin)|AngleBetween|AllowInventoryDrop|SubStringIndex|List2(CSV|Integer|Json|Float|String|Key|Vector|Rot|List(Strided)?)|DeleteSubList|List(Statistics|Sort|Randomize|(Insert|Find|Replace)List)|EdgeOfWorld|AdjustSoundVolume|Key2Name|TriggerSoundLimited|EjectFromLand|(CSV|ParseString)2List|OverMyLand|SameGroup|UnSit|Ground(Slope|Normal|Contour)|GroundRepel|(Set|Remove)VehicleFlags|SitOnLink|(AvatarOn)?(Link)?SitTarget|Script(Danger|Profiler)|Dialog|VolumeDetect|ResetOtherScript|RemoteLoadScriptPin|(Open|Close)RemoteDataChannel|SendRemoteData|RemoteDataReply|(Integer|String)ToBase64|XorBase64|Log(10)?|Base64To(String|Integer)|ParseStringKeepNulls|RezAtRoot|RequestSimulatorData|ForceMouselook|(Load|Release|(E|Une)scape)URL|ParcelMedia(CommandList|Query)|ModPow|MapDestination|(RemoveFrom|AddTo|Reset)Land(Pass|Ban)List|(Set|Clear)CameraParams|HTTP(Request|Response)|TextBox|DetectedTouch(UV|Face|Pos|(N|Bin)ormal|ST)|(MD5|SHA1|DumpList2)String|Request(Secure)?URL|Clear(Prim|Link)Media|(Link)?ParticleSystem|(Get|Request)(Username|DisplayName)|RegionSayTo|CastRay|GenerateKey|TransferLindenDollars|ManageEstateAccess|(Create|Delete)Character|ExecCharacterCmd|Evade|FleeFrom|NavigateTo|PatrolPoints|Pursue|UpdateCharacter|WanderWithin))\\b"},{className:"literal",variants:[{begin:"\\b(PI|TWO_PI|PI_BY_TWO|DEG_TO_RAD|RAD_TO_DEG|SQRT2)\\b"},{begin:"\\b(XP_ERROR_(EXPERIENCES_DISABLED|EXPERIENCE_(DISABLED|SUSPENDED)|INVALID_(EXPERIENCE|PARAMETERS)|KEY_NOT_FOUND|MATURITY_EXCEEDED|NONE|NOT_(FOUND|PERMITTED(_LAND)?)|NO_EXPERIENCE|QUOTA_EXCEEDED|RETRY_UPDATE|STORAGE_EXCEPTION|STORE_DISABLED|THROTTLED|UNKNOWN_ERROR)|JSON_APPEND|STATUS_(PHYSICS|ROTATE_[XYZ]|PHANTOM|SANDBOX|BLOCK_GRAB(_OBJECT)?|(DIE|RETURN)_AT_EDGE|CAST_SHADOWS|OK|MALFORMED_PARAMS|TYPE_MISMATCH|BOUNDS_ERROR|NOT_(FOUND|SUPPORTED)|INTERNAL_ERROR|WHITELIST_FAILED)|AGENT(_(BY_(LEGACY_|USER)NAME|FLYING|ATTACHMENTS|SCRIPTED|MOUSELOOK|SITTING|ON_OBJECT|AWAY|WALKING|IN_AIR|TYPING|CROUCHING|BUSY|ALWAYS_RUN|AUTOPILOT|LIST_(PARCEL(_OWNER)?|REGION)))?|CAMERA_(PITCH|DISTANCE|BEHINDNESS_(ANGLE|LAG)|(FOCUS|POSITION)(_(THRESHOLD|LOCKED|LAG))?|FOCUS_OFFSET|ACTIVE)|ANIM_ON|LOOP|REVERSE|PING_PONG|SMOOTH|ROTATE|SCALE|ALL_SIDES|LINK_(ROOT|SET|ALL_(OTHERS|CHILDREN)|THIS)|ACTIVE|PASS(IVE|_(ALWAYS|IF_NOT_HANDLED|NEVER))|SCRIPTED|CONTROL_(FWD|BACK|(ROT_)?(LEFT|RIGHT)|UP|DOWN|(ML_)?LBUTTON)|PERMISSION_(RETURN_OBJECTS|DEBIT|OVERRIDE_ANIMATIONS|SILENT_ESTATE_MANAGEMENT|TAKE_CONTROLS|TRIGGER_ANIMATION|ATTACH|CHANGE_LINKS|(CONTROL|TRACK)_CAMERA|TELEPORT)|INVENTORY_(TEXTURE|SOUND|OBJECT|SCRIPT|LANDMARK|CLOTHING|NOTECARD|BODYPART|ANIMATION|GESTURE|ALL|NONE)|CHANGED_(INVENTORY|COLOR|SHAPE|SCALE|TEXTURE|LINK|ALLOWED_DROP|OWNER|REGION(_START)?|TELEPORT|MEDIA)|OBJECT_(CLICK_ACTION|HOVER_HEIGHT|LAST_OWNER_ID|(PHYSICS|SERVER|STREAMING)_COST|UNKNOWN_DETAIL|CHARACTER_TIME|PHANTOM|PHYSICS|TEMP_(ATTACHED|ON_REZ)|NAME|DESC|POS|PRIM_(COUNT|EQUIVALENCE)|RETURN_(PARCEL(_OWNER)?|REGION)|REZZER_KEY|ROO?T|VELOCITY|OMEGA|OWNER|GROUP(_TAG)?|CREATOR|ATTACHED_(POINT|SLOTS_AVAILABLE)|RENDER_WEIGHT|(BODY_SHAPE|PATHFINDING)_TYPE|(RUNNING|TOTAL)_SCRIPT_COUNT|TOTAL_INVENTORY_COUNT|SCRIPT_(MEMORY|TIME))|TYPE_(INTEGER|FLOAT|STRING|KEY|VECTOR|ROTATION|INVALID)|(DEBUG|PUBLIC)_CHANNEL|ATTACH_(AVATAR_CENTER|CHEST|HEAD|BACK|PELVIS|MOUTH|CHIN|NECK|NOSE|BELLY|[LR](SHOULDER|HAND|FOOT|EAR|EYE|[UL](ARM|LEG)|HIP)|(LEFT|RIGHT)_PEC|HUD_(CENTER_[12]|TOP_(RIGHT|CENTER|LEFT)|BOTTOM(_(RIGHT|LEFT))?)|[LR]HAND_RING1|TAIL_(BASE|TIP)|[LR]WING|FACE_(JAW|[LR]EAR|[LR]EYE|TOUNGE)|GROIN|HIND_[LR]FOOT)|LAND_(LEVEL|RAISE|LOWER|SMOOTH|NOISE|REVERT)|DATA_(ONLINE|NAME|BORN|SIM_(POS|STATUS|RATING)|PAYINFO)|PAYMENT_INFO_(ON_FILE|USED)|REMOTE_DATA_(CHANNEL|REQUEST|REPLY)|PSYS_(PART_(BF_(ZERO|ONE(_MINUS_(DEST_COLOR|SOURCE_(ALPHA|COLOR)))?|DEST_COLOR|SOURCE_(ALPHA|COLOR))|BLEND_FUNC_(DEST|SOURCE)|FLAGS|(START|END)_(COLOR|ALPHA|SCALE|GLOW)|MAX_AGE|(RIBBON|WIND|INTERP_(COLOR|SCALE)|BOUNCE|FOLLOW_(SRC|VELOCITY)|TARGET_(POS|LINEAR)|EMISSIVE)_MASK)|SRC_(MAX_AGE|PATTERN|ANGLE_(BEGIN|END)|BURST_(RATE|PART_COUNT|RADIUS|SPEED_(MIN|MAX))|ACCEL|TEXTURE|TARGET_KEY|OMEGA|PATTERN_(DROP|EXPLODE|ANGLE(_CONE(_EMPTY)?)?)))|VEHICLE_(REFERENCE_FRAME|TYPE_(NONE|SLED|CAR|BOAT|AIRPLANE|BALLOON)|(LINEAR|ANGULAR)_(FRICTION_TIMESCALE|MOTOR_DIRECTION)|LINEAR_MOTOR_OFFSET|HOVER_(HEIGHT|EFFICIENCY|TIMESCALE)|BUOYANCY|(LINEAR|ANGULAR)_(DEFLECTION_(EFFICIENCY|TIMESCALE)|MOTOR_(DECAY_)?TIMESCALE)|VERTICAL_ATTRACTION_(EFFICIENCY|TIMESCALE)|BANKING_(EFFICIENCY|MIX|TIMESCALE)|FLAG_(NO_DEFLECTION_UP|LIMIT_(ROLL_ONLY|MOTOR_UP)|HOVER_((WATER|TERRAIN|UP)_ONLY|GLOBAL_HEIGHT)|MOUSELOOK_(STEER|BANK)|CAMERA_DECOUPLED))|PRIM_(ALLOW_UNSIT|ALPHA_MODE(_(BLEND|EMISSIVE|MASK|NONE))?|NORMAL|SPECULAR|TYPE(_(BOX|CYLINDER|PRISM|SPHERE|TORUS|TUBE|RING|SCULPT))?|HOLE_(DEFAULT|CIRCLE|SQUARE|TRIANGLE)|MATERIAL(_(STONE|METAL|GLASS|WOOD|FLESH|PLASTIC|RUBBER))?|SHINY_(NONE|LOW|MEDIUM|HIGH)|BUMP_(NONE|BRIGHT|DARK|WOOD|BARK|BRICKS|CHECKER|CONCRETE|TILE|STONE|DISKS|GRAVEL|BLOBS|SIDING|LARGETILE|STUCCO|SUCTION|WEAVE)|TEXGEN_(DEFAULT|PLANAR)|SCRIPTED_SIT_ONLY|SCULPT_(TYPE_(SPHERE|TORUS|PLANE|CYLINDER|MASK)|FLAG_(MIRROR|INVERT))|PHYSICS(_(SHAPE_(CONVEX|NONE|PRIM|TYPE)))?|(POS|ROT)_LOCAL|SLICE|TEXT|FLEXIBLE|POINT_LIGHT|TEMP_ON_REZ|PHANTOM|POSITION|SIT_TARGET|SIZE|ROTATION|TEXTURE|NAME|OMEGA|DESC|LINK_TARGET|COLOR|BUMP_SHINY|FULLBRIGHT|TEXGEN|GLOW|MEDIA_(ALT_IMAGE_ENABLE|CONTROLS|(CURRENT|HOME)_URL|AUTO_(LOOP|PLAY|SCALE|ZOOM)|FIRST_CLICK_INTERACT|(WIDTH|HEIGHT)_PIXELS|WHITELIST(_ENABLE)?|PERMS_(INTERACT|CONTROL)|PARAM_MAX|CONTROLS_(STANDARD|MINI)|PERM_(NONE|OWNER|GROUP|ANYONE)|MAX_(URL_LENGTH|WHITELIST_(SIZE|COUNT)|(WIDTH|HEIGHT)_PIXELS)))|MASK_(BASE|OWNER|GROUP|EVERYONE|NEXT)|PERM_(TRANSFER|MODIFY|COPY|MOVE|ALL)|PARCEL_(MEDIA_COMMAND_(STOP|PAUSE|PLAY|LOOP|TEXTURE|URL|TIME|AGENT|UNLOAD|AUTO_ALIGN|TYPE|SIZE|DESC|LOOP_SET)|FLAG_(ALLOW_(FLY|(GROUP_)?SCRIPTS|LANDMARK|TERRAFORM|DAMAGE|CREATE_(GROUP_)?OBJECTS)|USE_(ACCESS_(GROUP|LIST)|BAN_LIST|LAND_PASS_LIST)|LOCAL_SOUND_ONLY|RESTRICT_PUSHOBJECT|ALLOW_(GROUP|ALL)_OBJECT_ENTRY)|COUNT_(TOTAL|OWNER|GROUP|OTHER|SELECTED|TEMP)|DETAILS_(NAME|DESC|OWNER|GROUP|AREA|ID|SEE_AVATARS))|LIST_STAT_(MAX|MIN|MEAN|MEDIAN|STD_DEV|SUM(_SQUARES)?|NUM_COUNT|GEOMETRIC_MEAN|RANGE)|PAY_(HIDE|DEFAULT)|REGION_FLAG_(ALLOW_DAMAGE|FIXED_SUN|BLOCK_TERRAFORM|SANDBOX|DISABLE_(COLLISIONS|PHYSICS)|BLOCK_FLY|ALLOW_DIRECT_TELEPORT|RESTRICT_PUSHOBJECT)|HTTP_(METHOD|MIMETYPE|BODY_(MAXLENGTH|TRUNCATED)|CUSTOM_HEADER|PRAGMA_NO_CACHE|VERBOSE_THROTTLE|VERIFY_CERT)|SIT_(INVALID_(AGENT|LINK_OBJECT)|NO(T_EXPERIENCE|_(ACCESS|EXPERIENCE_PERMISSION|SIT_TARGET)))|STRING_(TRIM(_(HEAD|TAIL))?)|CLICK_ACTION_(NONE|TOUCH|SIT|BUY|PAY|OPEN(_MEDIA)?|PLAY|ZOOM)|TOUCH_INVALID_FACE|PROFILE_(NONE|SCRIPT_MEMORY)|RC_(DATA_FLAGS|DETECT_PHANTOM|GET_(LINK_NUM|NORMAL|ROOT_KEY)|MAX_HITS|REJECT_(TYPES|AGENTS|(NON)?PHYSICAL|LAND))|RCERR_(CAST_TIME_EXCEEDED|SIM_PERF_LOW|UNKNOWN)|ESTATE_ACCESS_(ALLOWED_(AGENT|GROUP)_(ADD|REMOVE)|BANNED_AGENT_(ADD|REMOVE))|DENSITY|FRICTION|RESTITUTION|GRAVITY_MULTIPLIER|KFM_(COMMAND|CMD_(PLAY|STOP|PAUSE)|MODE|FORWARD|LOOP|PING_PONG|REVERSE|DATA|ROTATION|TRANSLATION)|ERR_(GENERIC|PARCEL_PERMISSIONS|MALFORMED_PARAMS|RUNTIME_PERMISSIONS|THROTTLED)|CHARACTER_(CMD_((SMOOTH_)?STOP|JUMP)|DESIRED_(TURN_)?SPEED|RADIUS|STAY_WITHIN_PARCEL|LENGTH|ORIENTATION|ACCOUNT_FOR_SKIPPED_FRAMES|AVOIDANCE_MODE|TYPE(_([ABCD]|NONE))?|MAX_(DECEL|TURN_RADIUS|(ACCEL|SPEED)))|PURSUIT_(OFFSET|FUZZ_FACTOR|GOAL_TOLERANCE|INTERCEPT)|REQUIRE_LINE_OF_SIGHT|FORCE_DIRECT_PATH|VERTICAL|HORIZONTAL|AVOID_(CHARACTERS|DYNAMIC_OBSTACLES|NONE)|PU_(EVADE_(HIDDEN|SPOTTED)|FAILURE_(DYNAMIC_PATHFINDING_DISABLED|INVALID_(GOAL|START)|NO_(NAVMESH|VALID_DESTINATION)|OTHER|TARGET_GONE|(PARCEL_)?UNREACHABLE)|(GOAL|SLOWDOWN_DISTANCE)_REACHED)|TRAVERSAL_TYPE(_(FAST|NONE|SLOW))?|CONTENT_TYPE_(ATOM|FORM|HTML|JSON|LLSD|RSS|TEXT|XHTML|XML)|GCNP_(RADIUS|STATIC)|(PATROL|WANDER)_PAUSE_AT_WAYPOINTS|OPT_(AVATAR|CHARACTER|EXCLUSION_VOLUME|LEGACY_LINKSET|MATERIAL_VOLUME|OTHER|STATIC_OBSTACLE|WALKABLE)|SIM_STAT_PCT_CHARS_STEPPED)\\b"},{begin:"\\b(FALSE|TRUE)\\b"},{begin:"\\b(ZERO_ROTATION)\\b"},{begin:"\\b(EOF|JSON_(ARRAY|DELETE|FALSE|INVALID|NULL|NUMBER|OBJECT|STRING|TRUE)|NULL_KEY|TEXTURE_(BLANK|DEFAULT|MEDIA|PLYWOOD|TRANSPARENT)|URL_REQUEST_(GRANTED|DENIED))\\b"},{begin:"\\b(ZERO_VECTOR|TOUCH_INVALID_(TEXCOORD|VECTOR))\\b"}]},{className:"type",begin:"\\b(integer|float|string|key|vector|quaternion|rotation|list)\\b"}]}};var GS=function(e){var t="\\[=*\\[",n="\\]=*\\]",a={begin:t,end:n,contains:["self"]},r=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[",n,{contains:[a],relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[a],relevance:5}])}};var YS=function(e){var t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},a={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[t]},r={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},i={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,t,n,a,r,{className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,"meta-keyword":".PHONY"}},i]}},HS=["AASTriangle","AbelianGroup","Abort","AbortKernels","AbortProtect","AbortScheduledTask","Above","Abs","AbsArg","AbsArgPlot","Absolute","AbsoluteCorrelation","AbsoluteCorrelationFunction","AbsoluteCurrentValue","AbsoluteDashing","AbsoluteFileName","AbsoluteOptions","AbsolutePointSize","AbsoluteThickness","AbsoluteTime","AbsoluteTiming","AcceptanceThreshold","AccountingForm","Accumulate","Accuracy","AccuracyGoal","ActionDelay","ActionMenu","ActionMenuBox","ActionMenuBoxOptions","Activate","Active","ActiveClassification","ActiveClassificationObject","ActiveItem","ActivePrediction","ActivePredictionObject","ActiveStyle","AcyclicGraphQ","AddOnHelpPath","AddSides","AddTo","AddToSearchIndex","AddUsers","AdjacencyGraph","AdjacencyList","AdjacencyMatrix","AdjacentMeshCells","AdjustmentBox","AdjustmentBoxOptions","AdjustTimeSeriesForecast","AdministrativeDivisionData","AffineHalfSpace","AffineSpace","AffineStateSpaceModel","AffineTransform","After","AggregatedEntityClass","AggregationLayer","AircraftData","AirportData","AirPressureData","AirTemperatureData","AiryAi","AiryAiPrime","AiryAiZero","AiryBi","AiryBiPrime","AiryBiZero","AlgebraicIntegerQ","AlgebraicNumber","AlgebraicNumberDenominator","AlgebraicNumberNorm","AlgebraicNumberPolynomial","AlgebraicNumberTrace","AlgebraicRules","AlgebraicRulesData","Algebraics","AlgebraicUnitQ","Alignment","AlignmentMarker","AlignmentPoint","All","AllowAdultContent","AllowedCloudExtraParameters","AllowedCloudParameterExtensions","AllowedDimensions","AllowedFrequencyRange","AllowedHeads","AllowGroupClose","AllowIncomplete","AllowInlineCells","AllowKernelInitialization","AllowLooseGrammar","AllowReverseGroupClose","AllowScriptLevelChange","AllowVersionUpdate","AllTrue","Alphabet","AlphabeticOrder","AlphabeticSort","AlphaChannel","AlternateImage","AlternatingFactorial","AlternatingGroup","AlternativeHypothesis","Alternatives","AltitudeMethod","AmbientLight","AmbiguityFunction","AmbiguityList","Analytic","AnatomyData","AnatomyForm","AnatomyPlot3D","AnatomySkinStyle","AnatomyStyling","AnchoredSearch","And","AndersonDarlingTest","AngerJ","AngleBisector","AngleBracket","AnglePath","AnglePath3D","AngleVector","AngularGauge","Animate","AnimationCycleOffset","AnimationCycleRepetitions","AnimationDirection","AnimationDisplayTime","AnimationRate","AnimationRepetitions","AnimationRunning","AnimationRunTime","AnimationTimeIndex","Animator","AnimatorBox","AnimatorBoxOptions","AnimatorElements","Annotate","Annotation","AnnotationDelete","AnnotationKeys","AnnotationRules","AnnotationValue","Annuity","AnnuityDue","Annulus","AnomalyDetection","AnomalyDetector","AnomalyDetectorFunction","Anonymous","Antialiasing","AntihermitianMatrixQ","Antisymmetric","AntisymmetricMatrixQ","Antonyms","AnyOrder","AnySubset","AnyTrue","Apart","ApartSquareFree","APIFunction","Appearance","AppearanceElements","AppearanceRules","AppellF1","Append","AppendCheck","AppendLayer","AppendTo","Apply","ApplySides","ArcCos","ArcCosh","ArcCot","ArcCoth","ArcCsc","ArcCsch","ArcCurvature","ARCHProcess","ArcLength","ArcSec","ArcSech","ArcSin","ArcSinDistribution","ArcSinh","ArcTan","ArcTanh","Area","Arg","ArgMax","ArgMin","ArgumentCountQ","ARIMAProcess","ArithmeticGeometricMean","ARMAProcess","Around","AroundReplace","ARProcess","Array","ArrayComponents","ArrayDepth","ArrayFilter","ArrayFlatten","ArrayMesh","ArrayPad","ArrayPlot","ArrayQ","ArrayResample","ArrayReshape","ArrayRules","Arrays","Arrow","Arrow3DBox","ArrowBox","Arrowheads","ASATriangle","Ask","AskAppend","AskConfirm","AskDisplay","AskedQ","AskedValue","AskFunction","AskState","AskTemplateDisplay","AspectRatio","AspectRatioFixed","Assert","AssociateTo","Association","AssociationFormat","AssociationMap","AssociationQ","AssociationThread","AssumeDeterministic","Assuming","Assumptions","AstronomicalData","Asymptotic","AsymptoticDSolveValue","AsymptoticEqual","AsymptoticEquivalent","AsymptoticGreater","AsymptoticGreaterEqual","AsymptoticIntegrate","AsymptoticLess","AsymptoticLessEqual","AsymptoticOutputTracker","AsymptoticProduct","AsymptoticRSolveValue","AsymptoticSolve","AsymptoticSum","Asynchronous","AsynchronousTaskObject","AsynchronousTasks","Atom","AtomCoordinates","AtomCount","AtomDiagramCoordinates","AtomList","AtomQ","AttentionLayer","Attributes","Audio","AudioAmplify","AudioAnnotate","AudioAnnotationLookup","AudioBlockMap","AudioCapture","AudioChannelAssignment","AudioChannelCombine","AudioChannelMix","AudioChannels","AudioChannelSeparate","AudioData","AudioDelay","AudioDelete","AudioDevice","AudioDistance","AudioEncoding","AudioFade","AudioFrequencyShift","AudioGenerator","AudioIdentify","AudioInputDevice","AudioInsert","AudioInstanceQ","AudioIntervals","AudioJoin","AudioLabel","AudioLength","AudioLocalMeasurements","AudioLooping","AudioLoudness","AudioMeasurements","AudioNormalize","AudioOutputDevice","AudioOverlay","AudioPad","AudioPan","AudioPartition","AudioPause","AudioPitchShift","AudioPlay","AudioPlot","AudioQ","AudioRecord","AudioReplace","AudioResample","AudioReverb","AudioReverse","AudioSampleRate","AudioSpectralMap","AudioSpectralTransformation","AudioSplit","AudioStop","AudioStream","AudioStreams","AudioTimeStretch","AudioTracks","AudioTrim","AudioType","AugmentedPolyhedron","AugmentedSymmetricPolynomial","Authenticate","Authentication","AuthenticationDialog","AutoAction","Autocomplete","AutocompletionFunction","AutoCopy","AutocorrelationTest","AutoDelete","AutoEvaluateEvents","AutoGeneratedPackage","AutoIndent","AutoIndentSpacings","AutoItalicWords","AutoloadPath","AutoMatch","Automatic","AutomaticImageSize","AutoMultiplicationSymbol","AutoNumberFormatting","AutoOpenNotebooks","AutoOpenPalettes","AutoQuoteCharacters","AutoRefreshed","AutoRemove","AutorunSequencing","AutoScaling","AutoScroll","AutoSpacing","AutoStyleOptions","AutoStyleWords","AutoSubmitting","Axes","AxesEdge","AxesLabel","AxesOrigin","AxesStyle","AxiomaticTheory","Axis","BabyMonsterGroupB","Back","Background","BackgroundAppearance","BackgroundTasksSettings","Backslash","Backsubstitution","Backward","Ball","Band","BandpassFilter","BandstopFilter","BarabasiAlbertGraphDistribution","BarChart","BarChart3D","BarcodeImage","BarcodeRecognize","BaringhausHenzeTest","BarLegend","BarlowProschanImportance","BarnesG","BarOrigin","BarSpacing","BartlettHannWindow","BartlettWindow","BaseDecode","BaseEncode","BaseForm","Baseline","BaselinePosition","BaseStyle","BasicRecurrentLayer","BatchNormalizationLayer","BatchSize","BatesDistribution","BattleLemarieWavelet","BayesianMaximization","BayesianMaximizationObject","BayesianMinimization","BayesianMinimizationObject","Because","BeckmannDistribution","Beep","Before","Begin","BeginDialogPacket","BeginFrontEndInteractionPacket","BeginPackage","BellB","BellY","Below","BenfordDistribution","BeniniDistribution","BenktanderGibratDistribution","BenktanderWeibullDistribution","BernoulliB","BernoulliDistribution","BernoulliGraphDistribution","BernoulliProcess","BernsteinBasis","BesselFilterModel","BesselI","BesselJ","BesselJZero","BesselK","BesselY","BesselYZero","Beta","BetaBinomialDistribution","BetaDistribution","BetaNegativeBinomialDistribution","BetaPrimeDistribution","BetaRegularized","Between","BetweennessCentrality","BeveledPolyhedron","BezierCurve","BezierCurve3DBox","BezierCurve3DBoxOptions","BezierCurveBox","BezierCurveBoxOptions","BezierFunction","BilateralFilter","Binarize","BinaryDeserialize","BinaryDistance","BinaryFormat","BinaryImageQ","BinaryRead","BinaryReadList","BinarySerialize","BinaryWrite","BinCounts","BinLists","Binomial","BinomialDistribution","BinomialProcess","BinormalDistribution","BiorthogonalSplineWavelet","BipartiteGraphQ","BiquadraticFilterModel","BirnbaumImportance","BirnbaumSaundersDistribution","BitAnd","BitClear","BitGet","BitLength","BitNot","BitOr","BitSet","BitShiftLeft","BitShiftRight","BitXor","BiweightLocation","BiweightMidvariance","Black","BlackmanHarrisWindow","BlackmanNuttallWindow","BlackmanWindow","Blank","BlankForm","BlankNullSequence","BlankSequence","Blend","Block","BlockchainAddressData","BlockchainBase","BlockchainBlockData","BlockchainContractValue","BlockchainData","BlockchainGet","BlockchainKeyEncode","BlockchainPut","BlockchainTokenData","BlockchainTransaction","BlockchainTransactionData","BlockchainTransactionSign","BlockchainTransactionSubmit","BlockMap","BlockRandom","BlomqvistBeta","BlomqvistBetaTest","Blue","Blur","BodePlot","BohmanWindow","Bold","Bond","BondCount","BondList","BondQ","Bookmarks","Boole","BooleanConsecutiveFunction","BooleanConvert","BooleanCountingFunction","BooleanFunction","BooleanGraph","BooleanMaxterms","BooleanMinimize","BooleanMinterms","BooleanQ","BooleanRegion","Booleans","BooleanStrings","BooleanTable","BooleanVariables","BorderDimensions","BorelTannerDistribution","Bottom","BottomHatTransform","BoundaryDiscretizeGraphics","BoundaryDiscretizeRegion","BoundaryMesh","BoundaryMeshRegion","BoundaryMeshRegionQ","BoundaryStyle","BoundedRegionQ","BoundingRegion","Bounds","Box","BoxBaselineShift","BoxData","BoxDimensions","Boxed","Boxes","BoxForm","BoxFormFormatTypes","BoxFrame","BoxID","BoxMargins","BoxMatrix","BoxObject","BoxRatios","BoxRotation","BoxRotationPoint","BoxStyle","BoxWhiskerChart","Bra","BracketingBar","BraKet","BrayCurtisDistance","BreadthFirstScan","Break","BridgeData","BrightnessEqualize","BroadcastStationData","Brown","BrownForsytheTest","BrownianBridgeProcess","BrowserCategory","BSplineBasis","BSplineCurve","BSplineCurve3DBox","BSplineCurve3DBoxOptions","BSplineCurveBox","BSplineCurveBoxOptions","BSplineFunction","BSplineSurface","BSplineSurface3DBox","BSplineSurface3DBoxOptions","BubbleChart","BubbleChart3D","BubbleScale","BubbleSizes","BuildingData","BulletGauge","BusinessDayQ","ButterflyGraph","ButterworthFilterModel","Button","ButtonBar","ButtonBox","ButtonBoxOptions","ButtonCell","ButtonContents","ButtonData","ButtonEvaluator","ButtonExpandable","ButtonFrame","ButtonFunction","ButtonMargins","ButtonMinHeight","ButtonNote","ButtonNotebook","ButtonSource","ButtonStyle","ButtonStyleMenuListing","Byte","ByteArray","ByteArrayFormat","ByteArrayQ","ByteArrayToString","ByteCount","ByteOrdering","C","CachedValue","CacheGraphics","CachePersistence","CalendarConvert","CalendarData","CalendarType","Callout","CalloutMarker","CalloutStyle","CallPacket","CanberraDistance","Cancel","CancelButton","CandlestickChart","CanonicalGraph","CanonicalizePolygon","CanonicalizePolyhedron","CanonicalName","CanonicalWarpingCorrespondence","CanonicalWarpingDistance","CantorMesh","CantorStaircase","Cap","CapForm","CapitalDifferentialD","Capitalize","CapsuleShape","CaptureRunning","CardinalBSplineBasis","CarlemanLinearize","CarmichaelLambda","CaseOrdering","Cases","CaseSensitive","Cashflow","Casoratian","Catalan","CatalanNumber","Catch","CategoricalDistribution","Catenate","CatenateLayer","CauchyDistribution","CauchyWindow","CayleyGraph","CDF","CDFDeploy","CDFInformation","CDFWavelet","Ceiling","CelestialSystem","Cell","CellAutoOverwrite","CellBaseline","CellBoundingBox","CellBracketOptions","CellChangeTimes","CellContents","CellContext","CellDingbat","CellDynamicExpression","CellEditDuplicate","CellElementsBoundingBox","CellElementSpacings","CellEpilog","CellEvaluationDuplicate","CellEvaluationFunction","CellEvaluationLanguage","CellEventActions","CellFrame","CellFrameColor","CellFrameLabelMargins","CellFrameLabels","CellFrameMargins","CellGroup","CellGroupData","CellGrouping","CellGroupingRules","CellHorizontalScrolling","CellID","CellLabel","CellLabelAutoDelete","CellLabelMargins","CellLabelPositioning","CellLabelStyle","CellLabelTemplate","CellMargins","CellObject","CellOpen","CellPrint","CellProlog","Cells","CellSize","CellStyle","CellTags","CellularAutomaton","CensoredDistribution","Censoring","Center","CenterArray","CenterDot","CentralFeature","CentralMoment","CentralMomentGeneratingFunction","Cepstrogram","CepstrogramArray","CepstrumArray","CForm","ChampernowneNumber","ChangeOptions","ChannelBase","ChannelBrokerAction","ChannelDatabin","ChannelHistoryLength","ChannelListen","ChannelListener","ChannelListeners","ChannelListenerWait","ChannelObject","ChannelPreSendFunction","ChannelReceiverFunction","ChannelSend","ChannelSubscribers","ChanVeseBinarize","Character","CharacterCounts","CharacterEncoding","CharacterEncodingsPath","CharacteristicFunction","CharacteristicPolynomial","CharacterName","CharacterNormalize","CharacterRange","Characters","ChartBaseStyle","ChartElementData","ChartElementDataFunction","ChartElementFunction","ChartElements","ChartLabels","ChartLayout","ChartLegends","ChartStyle","Chebyshev1FilterModel","Chebyshev2FilterModel","ChebyshevDistance","ChebyshevT","ChebyshevU","Check","CheckAbort","CheckAll","Checkbox","CheckboxBar","CheckboxBox","CheckboxBoxOptions","ChemicalData","ChessboardDistance","ChiDistribution","ChineseRemainder","ChiSquareDistribution","ChoiceButtons","ChoiceDialog","CholeskyDecomposition","Chop","ChromaticityPlot","ChromaticityPlot3D","ChromaticPolynomial","Circle","CircleBox","CircleDot","CircleMinus","CirclePlus","CirclePoints","CircleThrough","CircleTimes","CirculantGraph","CircularOrthogonalMatrixDistribution","CircularQuaternionMatrixDistribution","CircularRealMatrixDistribution","CircularSymplecticMatrixDistribution","CircularUnitaryMatrixDistribution","Circumsphere","CityData","ClassifierFunction","ClassifierInformation","ClassifierMeasurements","ClassifierMeasurementsObject","Classify","ClassPriors","Clear","ClearAll","ClearAttributes","ClearCookies","ClearPermissions","ClearSystemCache","ClebschGordan","ClickPane","Clip","ClipboardNotebook","ClipFill","ClippingStyle","ClipPlanes","ClipPlanesStyle","ClipRange","Clock","ClockGauge","ClockwiseContourIntegral","Close","Closed","CloseKernels","ClosenessCentrality","Closing","ClosingAutoSave","ClosingEvent","ClosingSaveDialog","CloudAccountData","CloudBase","CloudConnect","CloudConnections","CloudDeploy","CloudDirectory","CloudDisconnect","CloudEvaluate","CloudExport","CloudExpression","CloudExpressions","CloudFunction","CloudGet","CloudImport","CloudLoggingData","CloudObject","CloudObjectInformation","CloudObjectInformationData","CloudObjectNameFormat","CloudObjects","CloudObjectURLType","CloudPublish","CloudPut","CloudRenderingMethod","CloudSave","CloudShare","CloudSubmit","CloudSymbol","CloudUnshare","CloudUserID","ClusterClassify","ClusterDissimilarityFunction","ClusteringComponents","ClusteringTree","CMYKColor","Coarse","CodeAssistOptions","Coefficient","CoefficientArrays","CoefficientDomain","CoefficientList","CoefficientRules","CoifletWavelet","Collect","Colon","ColonForm","ColorBalance","ColorCombine","ColorConvert","ColorCoverage","ColorData","ColorDataFunction","ColorDetect","ColorDistance","ColorFunction","ColorFunctionScaling","Colorize","ColorNegate","ColorOutput","ColorProfileData","ColorQ","ColorQuantize","ColorReplace","ColorRules","ColorSelectorSettings","ColorSeparate","ColorSetter","ColorSetterBox","ColorSetterBoxOptions","ColorSlider","ColorsNear","ColorSpace","ColorToneMapping","Column","ColumnAlignments","ColumnBackgrounds","ColumnForm","ColumnLines","ColumnsEqual","ColumnSpacings","ColumnWidths","CombinedEntityClass","CombinerFunction","CometData","CommonDefaultFormatTypes","Commonest","CommonestFilter","CommonName","CommonUnits","CommunityBoundaryStyle","CommunityGraphPlot","CommunityLabels","CommunityRegionStyle","CompanyData","CompatibleUnitQ","CompilationOptions","CompilationTarget","Compile","Compiled","CompiledCodeFunction","CompiledFunction","CompilerOptions","Complement","ComplementedEntityClass","CompleteGraph","CompleteGraphQ","CompleteKaryTree","CompletionsListPacket","Complex","ComplexContourPlot","Complexes","ComplexExpand","ComplexInfinity","ComplexityFunction","ComplexListPlot","ComplexPlot","ComplexPlot3D","ComplexRegionPlot","ComplexStreamPlot","ComplexVectorPlot","ComponentMeasurements","ComponentwiseContextMenu","Compose","ComposeList","ComposeSeries","CompositeQ","Composition","CompoundElement","CompoundExpression","CompoundPoissonDistribution","CompoundPoissonProcess","CompoundRenewalProcess","Compress","CompressedData","CompressionLevel","ComputeUncertainty","Condition","ConditionalExpression","Conditioned","Cone","ConeBox","ConfidenceLevel","ConfidenceRange","ConfidenceTransform","ConfigurationPath","ConformAudio","ConformImages","Congruent","ConicHullRegion","ConicHullRegion3DBox","ConicHullRegionBox","ConicOptimization","Conjugate","ConjugateTranspose","Conjunction","Connect","ConnectedComponents","ConnectedGraphComponents","ConnectedGraphQ","ConnectedMeshComponents","ConnectedMoleculeComponents","ConnectedMoleculeQ","ConnectionSettings","ConnectLibraryCallbackFunction","ConnectSystemModelComponents","ConnesWindow","ConoverTest","ConsoleMessage","ConsoleMessagePacket","Constant","ConstantArray","ConstantArrayLayer","ConstantImage","ConstantPlusLayer","ConstantRegionQ","Constants","ConstantTimesLayer","ConstellationData","ConstrainedMax","ConstrainedMin","Construct","Containing","ContainsAll","ContainsAny","ContainsExactly","ContainsNone","ContainsOnly","ContentFieldOptions","ContentLocationFunction","ContentObject","ContentPadding","ContentsBoundingBox","ContentSelectable","ContentSize","Context","ContextMenu","Contexts","ContextToFileName","Continuation","Continue","ContinuedFraction","ContinuedFractionK","ContinuousAction","ContinuousMarkovProcess","ContinuousTask","ContinuousTimeModelQ","ContinuousWaveletData","ContinuousWaveletTransform","ContourDetect","ContourGraphics","ContourIntegral","ContourLabels","ContourLines","ContourPlot","ContourPlot3D","Contours","ContourShading","ContourSmoothing","ContourStyle","ContraharmonicMean","ContrastiveLossLayer","Control","ControlActive","ControlAlignment","ControlGroupContentsBox","ControllabilityGramian","ControllabilityMatrix","ControllableDecomposition","ControllableModelQ","ControllerDuration","ControllerInformation","ControllerInformationData","ControllerLinking","ControllerManipulate","ControllerMethod","ControllerPath","ControllerState","ControlPlacement","ControlsRendering","ControlType","Convergents","ConversionOptions","ConversionRules","ConvertToBitmapPacket","ConvertToPostScript","ConvertToPostScriptPacket","ConvexHullMesh","ConvexPolygonQ","ConvexPolyhedronQ","ConvolutionLayer","Convolve","ConwayGroupCo1","ConwayGroupCo2","ConwayGroupCo3","CookieFunction","Cookies","CoordinateBoundingBox","CoordinateBoundingBoxArray","CoordinateBounds","CoordinateBoundsArray","CoordinateChartData","CoordinatesToolOptions","CoordinateTransform","CoordinateTransformData","CoprimeQ","Coproduct","CopulaDistribution","Copyable","CopyDatabin","CopyDirectory","CopyFile","CopyTag","CopyToClipboard","CornerFilter","CornerNeighbors","Correlation","CorrelationDistance","CorrelationFunction","CorrelationTest","Cos","Cosh","CoshIntegral","CosineDistance","CosineWindow","CosIntegral","Cot","Coth","Count","CountDistinct","CountDistinctBy","CounterAssignments","CounterBox","CounterBoxOptions","CounterClockwiseContourIntegral","CounterEvaluator","CounterFunction","CounterIncrements","CounterStyle","CounterStyleMenuListing","CountRoots","CountryData","Counts","CountsBy","Covariance","CovarianceEstimatorFunction","CovarianceFunction","CoxianDistribution","CoxIngersollRossProcess","CoxModel","CoxModelFit","CramerVonMisesTest","CreateArchive","CreateCellID","CreateChannel","CreateCloudExpression","CreateDatabin","CreateDataStructure","CreateDataSystemModel","CreateDialog","CreateDirectory","CreateDocument","CreateFile","CreateIntermediateDirectories","CreateManagedLibraryExpression","CreateNotebook","CreatePacletArchive","CreatePalette","CreatePalettePacket","CreatePermissionsGroup","CreateScheduledTask","CreateSearchIndex","CreateSystemModel","CreateTemporary","CreateUUID","CreateWindow","CriterionFunction","CriticalityFailureImportance","CriticalitySuccessImportance","CriticalSection","Cross","CrossEntropyLossLayer","CrossingCount","CrossingDetect","CrossingPolygon","CrossMatrix","Csc","Csch","CTCLossLayer","Cube","CubeRoot","Cubics","Cuboid","CuboidBox","Cumulant","CumulantGeneratingFunction","Cup","CupCap","Curl","CurlyDoubleQuote","CurlyQuote","CurrencyConvert","CurrentDate","CurrentImage","CurrentlySpeakingPacket","CurrentNotebookImage","CurrentScreenImage","CurrentValue","Curry","CurryApplied","CurvatureFlowFilter","CurveClosed","Cyan","CycleGraph","CycleIndexPolynomial","Cycles","CyclicGroup","Cyclotomic","Cylinder","CylinderBox","CylindricalDecomposition","D","DagumDistribution","DamData","DamerauLevenshteinDistance","DampingFactor","Darker","Dashed","Dashing","DatabaseConnect","DatabaseDisconnect","DatabaseReference","Databin","DatabinAdd","DatabinRemove","Databins","DatabinUpload","DataCompression","DataDistribution","DataRange","DataReversed","Dataset","DatasetDisplayPanel","DataStructure","DataStructureQ","Date","DateBounds","Dated","DateDelimiters","DateDifference","DatedUnit","DateFormat","DateFunction","DateHistogram","DateInterval","DateList","DateListLogPlot","DateListPlot","DateListStepPlot","DateObject","DateObjectQ","DateOverlapsQ","DatePattern","DatePlus","DateRange","DateReduction","DateString","DateTicksFormat","DateValue","DateWithinQ","DaubechiesWavelet","DavisDistribution","DawsonF","DayCount","DayCountConvention","DayHemisphere","DaylightQ","DayMatchQ","DayName","DayNightTerminator","DayPlus","DayRange","DayRound","DeBruijnGraph","DeBruijnSequence","Debug","DebugTag","Decapitalize","Decimal","DecimalForm","DeclareKnownSymbols","DeclarePackage","Decompose","DeconvolutionLayer","Decrement","Decrypt","DecryptFile","DedekindEta","DeepSpaceProbeData","Default","DefaultAxesStyle","DefaultBaseStyle","DefaultBoxStyle","DefaultButton","DefaultColor","DefaultControlPlacement","DefaultDuplicateCellStyle","DefaultDuration","DefaultElement","DefaultFaceGridsStyle","DefaultFieldHintStyle","DefaultFont","DefaultFontProperties","DefaultFormatType","DefaultFormatTypeForStyle","DefaultFrameStyle","DefaultFrameTicksStyle","DefaultGridLinesStyle","DefaultInlineFormatType","DefaultInputFormatType","DefaultLabelStyle","DefaultMenuStyle","DefaultNaturalLanguage","DefaultNewCellStyle","DefaultNewInlineCellStyle","DefaultNotebook","DefaultOptions","DefaultOutputFormatType","DefaultPrintPrecision","DefaultStyle","DefaultStyleDefinitions","DefaultTextFormatType","DefaultTextInlineFormatType","DefaultTicksStyle","DefaultTooltipStyle","DefaultValue","DefaultValues","Defer","DefineExternal","DefineInputStreamMethod","DefineOutputStreamMethod","DefineResourceFunction","Definition","Degree","DegreeCentrality","DegreeGraphDistribution","DegreeLexicographic","DegreeReverseLexicographic","DEigensystem","DEigenvalues","Deinitialization","Del","DelaunayMesh","Delayed","Deletable","Delete","DeleteAnomalies","DeleteBorderComponents","DeleteCases","DeleteChannel","DeleteCloudExpression","DeleteContents","DeleteDirectory","DeleteDuplicates","DeleteDuplicatesBy","DeleteFile","DeleteMissing","DeleteObject","DeletePermissionsKey","DeleteSearchIndex","DeleteSmallComponents","DeleteStopwords","DeleteWithContents","DeletionWarning","DelimitedArray","DelimitedSequence","Delimiter","DelimiterFlashTime","DelimiterMatching","Delimiters","DeliveryFunction","Dendrogram","Denominator","DensityGraphics","DensityHistogram","DensityPlot","DensityPlot3D","DependentVariables","Deploy","Deployed","Depth","DepthFirstScan","Derivative","DerivativeFilter","DerivedKey","DescriptorStateSpace","DesignMatrix","DestroyAfterEvaluation","Det","DeviceClose","DeviceConfigure","DeviceExecute","DeviceExecuteAsynchronous","DeviceObject","DeviceOpen","DeviceOpenQ","DeviceRead","DeviceReadBuffer","DeviceReadLatest","DeviceReadList","DeviceReadTimeSeries","Devices","DeviceStreams","DeviceWrite","DeviceWriteBuffer","DGaussianWavelet","DiacriticalPositioning","Diagonal","DiagonalizableMatrixQ","DiagonalMatrix","DiagonalMatrixQ","Dialog","DialogIndent","DialogInput","DialogLevel","DialogNotebook","DialogProlog","DialogReturn","DialogSymbols","Diamond","DiamondMatrix","DiceDissimilarity","DictionaryLookup","DictionaryWordQ","DifferenceDelta","DifferenceOrder","DifferenceQuotient","DifferenceRoot","DifferenceRootReduce","Differences","DifferentialD","DifferentialRoot","DifferentialRootReduce","DifferentiatorFilter","DigitalSignature","DigitBlock","DigitBlockMinimum","DigitCharacter","DigitCount","DigitQ","DihedralAngle","DihedralGroup","Dilation","DimensionalCombinations","DimensionalMeshComponents","DimensionReduce","DimensionReducerFunction","DimensionReduction","Dimensions","DiracComb","DiracDelta","DirectedEdge","DirectedEdges","DirectedGraph","DirectedGraphQ","DirectedInfinity","Direction","Directive","Directory","DirectoryName","DirectoryQ","DirectoryStack","DirichletBeta","DirichletCharacter","DirichletCondition","DirichletConvolve","DirichletDistribution","DirichletEta","DirichletL","DirichletLambda","DirichletTransform","DirichletWindow","DisableConsolePrintPacket","DisableFormatting","DiscreteAsymptotic","DiscreteChirpZTransform","DiscreteConvolve","DiscreteDelta","DiscreteHadamardTransform","DiscreteIndicator","DiscreteLimit","DiscreteLQEstimatorGains","DiscreteLQRegulatorGains","DiscreteLyapunovSolve","DiscreteMarkovProcess","DiscreteMaxLimit","DiscreteMinLimit","DiscretePlot","DiscretePlot3D","DiscreteRatio","DiscreteRiccatiSolve","DiscreteShift","DiscreteTimeModelQ","DiscreteUniformDistribution","DiscreteVariables","DiscreteWaveletData","DiscreteWaveletPacketTransform","DiscreteWaveletTransform","DiscretizeGraphics","DiscretizeRegion","Discriminant","DisjointQ","Disjunction","Disk","DiskBox","DiskMatrix","DiskSegment","Dispatch","DispatchQ","DispersionEstimatorFunction","Display","DisplayAllSteps","DisplayEndPacket","DisplayFlushImagePacket","DisplayForm","DisplayFunction","DisplayPacket","DisplayRules","DisplaySetSizePacket","DisplayString","DisplayTemporary","DisplayWith","DisplayWithRef","DisplayWithVariable","DistanceFunction","DistanceMatrix","DistanceTransform","Distribute","Distributed","DistributedContexts","DistributeDefinitions","DistributionChart","DistributionDomain","DistributionFitTest","DistributionParameterAssumptions","DistributionParameterQ","Dithering","Div","Divergence","Divide","DivideBy","Dividers","DivideSides","Divisible","Divisors","DivisorSigma","DivisorSum","DMSList","DMSString","Do","DockedCells","DocumentGenerator","DocumentGeneratorInformation","DocumentGeneratorInformationData","DocumentGenerators","DocumentNotebook","DocumentWeightingRules","Dodecahedron","DomainRegistrationInformation","DominantColors","DOSTextFormat","Dot","DotDashed","DotEqual","DotLayer","DotPlusLayer","Dotted","DoubleBracketingBar","DoubleContourIntegral","DoubleDownArrow","DoubleLeftArrow","DoubleLeftRightArrow","DoubleLeftTee","DoubleLongLeftArrow","DoubleLongLeftRightArrow","DoubleLongRightArrow","DoubleRightArrow","DoubleRightTee","DoubleUpArrow","DoubleUpDownArrow","DoubleVerticalBar","DoublyInfinite","Down","DownArrow","DownArrowBar","DownArrowUpArrow","DownLeftRightVector","DownLeftTeeVector","DownLeftVector","DownLeftVectorBar","DownRightTeeVector","DownRightVector","DownRightVectorBar","Downsample","DownTee","DownTeeArrow","DownValues","DragAndDrop","DrawEdges","DrawFrontFaces","DrawHighlighted","Drop","DropoutLayer","DSolve","DSolveValue","Dt","DualLinearProgramming","DualPolyhedron","DualSystemsModel","DumpGet","DumpSave","DuplicateFreeQ","Duration","Dynamic","DynamicBox","DynamicBoxOptions","DynamicEvaluationTimeout","DynamicGeoGraphics","DynamicImage","DynamicLocation","DynamicModule","DynamicModuleBox","DynamicModuleBoxOptions","DynamicModuleParent","DynamicModuleValues","DynamicName","DynamicNamespace","DynamicReference","DynamicSetting","DynamicUpdating","DynamicWrapper","DynamicWrapperBox","DynamicWrapperBoxOptions","E","EarthImpactData","EarthquakeData","EccentricityCentrality","Echo","EchoFunction","EclipseType","EdgeAdd","EdgeBetweennessCentrality","EdgeCapacity","EdgeCapForm","EdgeColor","EdgeConnectivity","EdgeContract","EdgeCost","EdgeCount","EdgeCoverQ","EdgeCycleMatrix","EdgeDashing","EdgeDelete","EdgeDetect","EdgeForm","EdgeIndex","EdgeJoinForm","EdgeLabeling","EdgeLabels","EdgeLabelStyle","EdgeList","EdgeOpacity","EdgeQ","EdgeRenderingFunction","EdgeRules","EdgeShapeFunction","EdgeStyle","EdgeTaggedGraph","EdgeTaggedGraphQ","EdgeTags","EdgeThickness","EdgeWeight","EdgeWeightedGraphQ","Editable","EditButtonSettings","EditCellTagsSettings","EditDistance","EffectiveInterest","Eigensystem","Eigenvalues","EigenvectorCentrality","Eigenvectors","Element","ElementData","ElementwiseLayer","ElidedForms","Eliminate","EliminationOrder","Ellipsoid","EllipticE","EllipticExp","EllipticExpPrime","EllipticF","EllipticFilterModel","EllipticK","EllipticLog","EllipticNomeQ","EllipticPi","EllipticReducedHalfPeriods","EllipticTheta","EllipticThetaPrime","EmbedCode","EmbeddedHTML","EmbeddedService","EmbeddingLayer","EmbeddingObject","EmitSound","EmphasizeSyntaxErrors","EmpiricalDistribution","Empty","EmptyGraphQ","EmptyRegion","EnableConsolePrintPacket","Enabled","Encode","Encrypt","EncryptedObject","EncryptFile","End","EndAdd","EndDialogPacket","EndFrontEndInteractionPacket","EndOfBuffer","EndOfFile","EndOfLine","EndOfString","EndPackage","EngineEnvironment","EngineeringForm","Enter","EnterExpressionPacket","EnterTextPacket","Entity","EntityClass","EntityClassList","EntityCopies","EntityFunction","EntityGroup","EntityInstance","EntityList","EntityPrefetch","EntityProperties","EntityProperty","EntityPropertyClass","EntityRegister","EntityStore","EntityStores","EntityTypeName","EntityUnregister","EntityValue","Entropy","EntropyFilter","Environment","Epilog","EpilogFunction","Equal","EqualColumns","EqualRows","EqualTilde","EqualTo","EquatedTo","Equilibrium","EquirippleFilterKernel","Equivalent","Erf","Erfc","Erfi","ErlangB","ErlangC","ErlangDistribution","Erosion","ErrorBox","ErrorBoxOptions","ErrorNorm","ErrorPacket","ErrorsDialogSettings","EscapeRadius","EstimatedBackground","EstimatedDistribution","EstimatedProcess","EstimatorGains","EstimatorRegulator","EuclideanDistance","EulerAngles","EulerCharacteristic","EulerE","EulerGamma","EulerianGraphQ","EulerMatrix","EulerPhi","Evaluatable","Evaluate","Evaluated","EvaluatePacket","EvaluateScheduledTask","EvaluationBox","EvaluationCell","EvaluationCompletionAction","EvaluationData","EvaluationElements","EvaluationEnvironment","EvaluationMode","EvaluationMonitor","EvaluationNotebook","EvaluationObject","EvaluationOrder","Evaluator","EvaluatorNames","EvenQ","EventData","EventEvaluator","EventHandler","EventHandlerTag","EventLabels","EventSeries","ExactBlackmanWindow","ExactNumberQ","ExactRootIsolation","ExampleData","Except","ExcludedForms","ExcludedLines","ExcludedPhysicalQuantities","ExcludePods","Exclusions","ExclusionsStyle","Exists","Exit","ExitDialog","ExoplanetData","Exp","Expand","ExpandAll","ExpandDenominator","ExpandFileName","ExpandNumerator","Expectation","ExpectationE","ExpectedValue","ExpGammaDistribution","ExpIntegralE","ExpIntegralEi","ExpirationDate","Exponent","ExponentFunction","ExponentialDistribution","ExponentialFamily","ExponentialGeneratingFunction","ExponentialMovingAverage","ExponentialPowerDistribution","ExponentPosition","ExponentStep","Export","ExportAutoReplacements","ExportByteArray","ExportForm","ExportPacket","ExportString","Expression","ExpressionCell","ExpressionGraph","ExpressionPacket","ExpressionUUID","ExpToTrig","ExtendedEntityClass","ExtendedGCD","Extension","ExtentElementFunction","ExtentMarkers","ExtentSize","ExternalBundle","ExternalCall","ExternalDataCharacterEncoding","ExternalEvaluate","ExternalFunction","ExternalFunctionName","ExternalIdentifier","ExternalObject","ExternalOptions","ExternalSessionObject","ExternalSessions","ExternalStorageBase","ExternalStorageDownload","ExternalStorageGet","ExternalStorageObject","ExternalStoragePut","ExternalStorageUpload","ExternalTypeSignature","ExternalValue","Extract","ExtractArchive","ExtractLayer","ExtractPacletArchive","ExtremeValueDistribution","FaceAlign","FaceForm","FaceGrids","FaceGridsStyle","FacialFeatures","Factor","FactorComplete","Factorial","Factorial2","FactorialMoment","FactorialMomentGeneratingFunction","FactorialPower","FactorInteger","FactorList","FactorSquareFree","FactorSquareFreeList","FactorTerms","FactorTermsList","Fail","Failure","FailureAction","FailureDistribution","FailureQ","False","FareySequence","FARIMAProcess","FeatureDistance","FeatureExtract","FeatureExtraction","FeatureExtractor","FeatureExtractorFunction","FeatureNames","FeatureNearest","FeatureSpacePlot","FeatureSpacePlot3D","FeatureTypes","FEDisableConsolePrintPacket","FeedbackLinearize","FeedbackSector","FeedbackSectorStyle","FeedbackType","FEEnableConsolePrintPacket","FetalGrowthData","Fibonacci","Fibonorial","FieldCompletionFunction","FieldHint","FieldHintStyle","FieldMasked","FieldSize","File","FileBaseName","FileByteCount","FileConvert","FileDate","FileExistsQ","FileExtension","FileFormat","FileHandler","FileHash","FileInformation","FileName","FileNameDepth","FileNameDialogSettings","FileNameDrop","FileNameForms","FileNameJoin","FileNames","FileNameSetter","FileNameSplit","FileNameTake","FilePrint","FileSize","FileSystemMap","FileSystemScan","FileTemplate","FileTemplateApply","FileType","FilledCurve","FilledCurveBox","FilledCurveBoxOptions","Filling","FillingStyle","FillingTransform","FilteredEntityClass","FilterRules","FinancialBond","FinancialData","FinancialDerivative","FinancialIndicator","Find","FindAnomalies","FindArgMax","FindArgMin","FindChannels","FindClique","FindClusters","FindCookies","FindCurvePath","FindCycle","FindDevices","FindDistribution","FindDistributionParameters","FindDivisions","FindEdgeCover","FindEdgeCut","FindEdgeIndependentPaths","FindEquationalProof","FindEulerianCycle","FindExternalEvaluators","FindFaces","FindFile","FindFit","FindFormula","FindFundamentalCycles","FindGeneratingFunction","FindGeoLocation","FindGeometricConjectures","FindGeometricTransform","FindGraphCommunities","FindGraphIsomorphism","FindGraphPartition","FindHamiltonianCycle","FindHamiltonianPath","FindHiddenMarkovStates","FindImageText","FindIndependentEdgeSet","FindIndependentVertexSet","FindInstance","FindIntegerNullVector","FindKClan","FindKClique","FindKClub","FindKPlex","FindLibrary","FindLinearRecurrence","FindList","FindMatchingColor","FindMaximum","FindMaximumCut","FindMaximumFlow","FindMaxValue","FindMeshDefects","FindMinimum","FindMinimumCostFlow","FindMinimumCut","FindMinValue","FindMoleculeSubstructure","FindPath","FindPeaks","FindPermutation","FindPostmanTour","FindProcessParameters","FindRepeat","FindRoot","FindSequenceFunction","FindSettings","FindShortestPath","FindShortestTour","FindSpanningTree","FindSystemModelEquilibrium","FindTextualAnswer","FindThreshold","FindTransientRepeat","FindVertexCover","FindVertexCut","FindVertexIndependentPaths","Fine","FinishDynamic","FiniteAbelianGroupCount","FiniteGroupCount","FiniteGroupData","First","FirstCase","FirstPassageTimeDistribution","FirstPosition","FischerGroupFi22","FischerGroupFi23","FischerGroupFi24Prime","FisherHypergeometricDistribution","FisherRatioTest","FisherZDistribution","Fit","FitAll","FitRegularization","FittedModel","FixedOrder","FixedPoint","FixedPointList","FlashSelection","Flat","Flatten","FlattenAt","FlattenLayer","FlatTopWindow","FlipView","Floor","FlowPolynomial","FlushPrintOutputPacket","Fold","FoldList","FoldPair","FoldPairList","FollowRedirects","Font","FontColor","FontFamily","FontForm","FontName","FontOpacity","FontPostScriptName","FontProperties","FontReencoding","FontSize","FontSlant","FontSubstitutions","FontTracking","FontVariations","FontWeight","For","ForAll","ForceVersionInstall","Format","FormatRules","FormatType","FormatTypeAutoConvert","FormatValues","FormBox","FormBoxOptions","FormControl","FormFunction","FormLayoutFunction","FormObject","FormPage","FormTheme","FormulaData","FormulaLookup","FortranForm","Forward","ForwardBackward","Fourier","FourierCoefficient","FourierCosCoefficient","FourierCosSeries","FourierCosTransform","FourierDCT","FourierDCTFilter","FourierDCTMatrix","FourierDST","FourierDSTMatrix","FourierMatrix","FourierParameters","FourierSequenceTransform","FourierSeries","FourierSinCoefficient","FourierSinSeries","FourierSinTransform","FourierTransform","FourierTrigSeries","FractionalBrownianMotionProcess","FractionalGaussianNoiseProcess","FractionalPart","FractionBox","FractionBoxOptions","FractionLine","Frame","FrameBox","FrameBoxOptions","Framed","FrameInset","FrameLabel","Frameless","FrameMargins","FrameRate","FrameStyle","FrameTicks","FrameTicksStyle","FRatioDistribution","FrechetDistribution","FreeQ","FrenetSerretSystem","FrequencySamplingFilterKernel","FresnelC","FresnelF","FresnelG","FresnelS","Friday","FrobeniusNumber","FrobeniusSolve","FromAbsoluteTime","FromCharacterCode","FromCoefficientRules","FromContinuedFraction","FromDate","FromDigits","FromDMS","FromEntity","FromJulianDate","FromLetterNumber","FromPolarCoordinates","FromRomanNumeral","FromSphericalCoordinates","FromUnixTime","Front","FrontEndDynamicExpression","FrontEndEventActions","FrontEndExecute","FrontEndObject","FrontEndResource","FrontEndResourceString","FrontEndStackSize","FrontEndToken","FrontEndTokenExecute","FrontEndValueCache","FrontEndVersion","FrontFaceColor","FrontFaceOpacity","Full","FullAxes","FullDefinition","FullForm","FullGraphics","FullInformationOutputRegulator","FullOptions","FullRegion","FullSimplify","Function","FunctionCompile","FunctionCompileExport","FunctionCompileExportByteArray","FunctionCompileExportLibrary","FunctionCompileExportString","FunctionDomain","FunctionExpand","FunctionInterpolation","FunctionPeriod","FunctionRange","FunctionSpace","FussellVeselyImportance","GaborFilter","GaborMatrix","GaborWavelet","GainMargins","GainPhaseMargins","GalaxyData","GalleryView","Gamma","GammaDistribution","GammaRegularized","GapPenalty","GARCHProcess","GatedRecurrentLayer","Gather","GatherBy","GaugeFaceElementFunction","GaugeFaceStyle","GaugeFrameElementFunction","GaugeFrameSize","GaugeFrameStyle","GaugeLabels","GaugeMarkers","GaugeStyle","GaussianFilter","GaussianIntegers","GaussianMatrix","GaussianOrthogonalMatrixDistribution","GaussianSymplecticMatrixDistribution","GaussianUnitaryMatrixDistribution","GaussianWindow","GCD","GegenbauerC","General","GeneralizedLinearModelFit","GenerateAsymmetricKeyPair","GenerateConditions","GeneratedCell","GeneratedDocumentBinding","GenerateDerivedKey","GenerateDigitalSignature","GenerateDocument","GeneratedParameters","GeneratedQuantityMagnitudes","GenerateFileSignature","GenerateHTTPResponse","GenerateSecuredAuthenticationKey","GenerateSymmetricKey","GeneratingFunction","GeneratorDescription","GeneratorHistoryLength","GeneratorOutputType","Generic","GenericCylindricalDecomposition","GenomeData","GenomeLookup","GeoAntipode","GeoArea","GeoArraySize","GeoBackground","GeoBoundingBox","GeoBounds","GeoBoundsRegion","GeoBubbleChart","GeoCenter","GeoCircle","GeoContourPlot","GeoDensityPlot","GeodesicClosing","GeodesicDilation","GeodesicErosion","GeodesicOpening","GeoDestination","GeodesyData","GeoDirection","GeoDisk","GeoDisplacement","GeoDistance","GeoDistanceList","GeoElevationData","GeoEntities","GeoGraphics","GeogravityModelData","GeoGridDirectionDifference","GeoGridLines","GeoGridLinesStyle","GeoGridPosition","GeoGridRange","GeoGridRangePadding","GeoGridUnitArea","GeoGridUnitDistance","GeoGridVector","GeoGroup","GeoHemisphere","GeoHemisphereBoundary","GeoHistogram","GeoIdentify","GeoImage","GeoLabels","GeoLength","GeoListPlot","GeoLocation","GeologicalPeriodData","GeomagneticModelData","GeoMarker","GeometricAssertion","GeometricBrownianMotionProcess","GeometricDistribution","GeometricMean","GeometricMeanFilter","GeometricOptimization","GeometricScene","GeometricTransformation","GeometricTransformation3DBox","GeometricTransformation3DBoxOptions","GeometricTransformationBox","GeometricTransformationBoxOptions","GeoModel","GeoNearest","GeoPath","GeoPosition","GeoPositionENU","GeoPositionXYZ","GeoProjection","GeoProjectionData","GeoRange","GeoRangePadding","GeoRegionValuePlot","GeoResolution","GeoScaleBar","GeoServer","GeoSmoothHistogram","GeoStreamPlot","GeoStyling","GeoStylingImageFunction","GeoVariant","GeoVector","GeoVectorENU","GeoVectorPlot","GeoVectorXYZ","GeoVisibleRegion","GeoVisibleRegionBoundary","GeoWithinQ","GeoZoomLevel","GestureHandler","GestureHandlerTag","Get","GetBoundingBoxSizePacket","GetContext","GetEnvironment","GetFileName","GetFrontEndOptionsDataPacket","GetLinebreakInformationPacket","GetMenusPacket","GetPageBreakInformationPacket","Glaisher","GlobalClusteringCoefficient","GlobalPreferences","GlobalSession","Glow","GoldenAngle","GoldenRatio","GompertzMakehamDistribution","GoochShading","GoodmanKruskalGamma","GoodmanKruskalGammaTest","Goto","Grad","Gradient","GradientFilter","GradientOrientationFilter","GrammarApply","GrammarRules","GrammarToken","Graph","Graph3D","GraphAssortativity","GraphAutomorphismGroup","GraphCenter","GraphComplement","GraphData","GraphDensity","GraphDiameter","GraphDifference","GraphDisjointUnion","GraphDistance","GraphDistanceMatrix","GraphElementData","GraphEmbedding","GraphHighlight","GraphHighlightStyle","GraphHub","Graphics","Graphics3D","Graphics3DBox","Graphics3DBoxOptions","GraphicsArray","GraphicsBaseline","GraphicsBox","GraphicsBoxOptions","GraphicsColor","GraphicsColumn","GraphicsComplex","GraphicsComplex3DBox","GraphicsComplex3DBoxOptions","GraphicsComplexBox","GraphicsComplexBoxOptions","GraphicsContents","GraphicsData","GraphicsGrid","GraphicsGridBox","GraphicsGroup","GraphicsGroup3DBox","GraphicsGroup3DBoxOptions","GraphicsGroupBox","GraphicsGroupBoxOptions","GraphicsGrouping","GraphicsHighlightColor","GraphicsRow","GraphicsSpacing","GraphicsStyle","GraphIntersection","GraphLayout","GraphLinkEfficiency","GraphPeriphery","GraphPlot","GraphPlot3D","GraphPower","GraphPropertyDistribution","GraphQ","GraphRadius","GraphReciprocity","GraphRoot","GraphStyle","GraphUnion","Gray","GrayLevel","Greater","GreaterEqual","GreaterEqualLess","GreaterEqualThan","GreaterFullEqual","GreaterGreater","GreaterLess","GreaterSlantEqual","GreaterThan","GreaterTilde","Green","GreenFunction","Grid","GridBaseline","GridBox","GridBoxAlignment","GridBoxBackground","GridBoxDividers","GridBoxFrame","GridBoxItemSize","GridBoxItemStyle","GridBoxOptions","GridBoxSpacings","GridCreationSettings","GridDefaultElement","GridElementStyleOptions","GridFrame","GridFrameMargins","GridGraph","GridLines","GridLinesStyle","GroebnerBasis","GroupActionBase","GroupBy","GroupCentralizer","GroupElementFromWord","GroupElementPosition","GroupElementQ","GroupElements","GroupElementToWord","GroupGenerators","Groupings","GroupMultiplicationTable","GroupOrbits","GroupOrder","GroupPageBreakWithin","GroupSetwiseStabilizer","GroupStabilizer","GroupStabilizerChain","GroupTogetherGrouping","GroupTogetherNestedGrouping","GrowCutComponents","Gudermannian","GuidedFilter","GumbelDistribution","HaarWavelet","HadamardMatrix","HalfLine","HalfNormalDistribution","HalfPlane","HalfSpace","HalftoneShading","HamiltonianGraphQ","HammingDistance","HammingWindow","HandlerFunctions","HandlerFunctionsKeys","HankelH1","HankelH2","HankelMatrix","HankelTransform","HannPoissonWindow","HannWindow","HaradaNortonGroupHN","HararyGraph","HarmonicMean","HarmonicMeanFilter","HarmonicNumber","Hash","HatchFilling","HatchShading","Haversine","HazardFunction","Head","HeadCompose","HeaderAlignment","HeaderBackground","HeaderDisplayFunction","HeaderLines","HeaderSize","HeaderStyle","Heads","HeavisideLambda","HeavisidePi","HeavisideTheta","HeldGroupHe","HeldPart","HelpBrowserLookup","HelpBrowserNotebook","HelpBrowserSettings","Here","HermiteDecomposition","HermiteH","HermitianMatrixQ","HessenbergDecomposition","Hessian","HeunB","HeunBPrime","HeunC","HeunCPrime","HeunD","HeunDPrime","HeunG","HeunGPrime","HeunT","HeunTPrime","HexadecimalCharacter","Hexahedron","HexahedronBox","HexahedronBoxOptions","HiddenItems","HiddenMarkovProcess","HiddenSurface","Highlighted","HighlightGraph","HighlightImage","HighlightMesh","HighpassFilter","HigmanSimsGroupHS","HilbertCurve","HilbertFilter","HilbertMatrix","Histogram","Histogram3D","HistogramDistribution","HistogramList","HistogramTransform","HistogramTransformInterpolation","HistoricalPeriodData","HitMissTransform","HITSCentrality","HjorthDistribution","HodgeDual","HoeffdingD","HoeffdingDTest","Hold","HoldAll","HoldAllComplete","HoldComplete","HoldFirst","HoldForm","HoldPattern","HoldRest","HolidayCalendar","HomeDirectory","HomePage","Horizontal","HorizontalForm","HorizontalGauge","HorizontalScrollPosition","HornerForm","HostLookup","HotellingTSquareDistribution","HoytDistribution","HTMLSave","HTTPErrorResponse","HTTPRedirect","HTTPRequest","HTTPRequestData","HTTPResponse","Hue","HumanGrowthData","HumpDownHump","HumpEqual","HurwitzLerchPhi","HurwitzZeta","HyperbolicDistribution","HypercubeGraph","HyperexponentialDistribution","Hyperfactorial","Hypergeometric0F1","Hypergeometric0F1Regularized","Hypergeometric1F1","Hypergeometric1F1Regularized","Hypergeometric2F1","Hypergeometric2F1Regularized","HypergeometricDistribution","HypergeometricPFQ","HypergeometricPFQRegularized","HypergeometricU","Hyperlink","HyperlinkAction","HyperlinkCreationSettings","Hyperplane","Hyphenation","HyphenationOptions","HypoexponentialDistribution","HypothesisTestData","I","IconData","Iconize","IconizedObject","IconRules","Icosahedron","Identity","IdentityMatrix","If","IgnoreCase","IgnoreDiacritics","IgnorePunctuation","IgnoreSpellCheck","IgnoringInactive","Im","Image","Image3D","Image3DProjection","Image3DSlices","ImageAccumulate","ImageAdd","ImageAdjust","ImageAlign","ImageApply","ImageApplyIndexed","ImageAspectRatio","ImageAssemble","ImageAugmentationLayer","ImageBoundingBoxes","ImageCache","ImageCacheValid","ImageCapture","ImageCaptureFunction","ImageCases","ImageChannels","ImageClip","ImageCollage","ImageColorSpace","ImageCompose","ImageContainsQ","ImageContents","ImageConvolve","ImageCooccurrence","ImageCorners","ImageCorrelate","ImageCorrespondingPoints","ImageCrop","ImageData","ImageDeconvolve","ImageDemosaic","ImageDifference","ImageDimensions","ImageDisplacements","ImageDistance","ImageEffect","ImageExposureCombine","ImageFeatureTrack","ImageFileApply","ImageFileFilter","ImageFileScan","ImageFilter","ImageFocusCombine","ImageForestingComponents","ImageFormattingWidth","ImageForwardTransformation","ImageGraphics","ImageHistogram","ImageIdentify","ImageInstanceQ","ImageKeypoints","ImageLabels","ImageLegends","ImageLevels","ImageLines","ImageMargins","ImageMarker","ImageMarkers","ImageMeasurements","ImageMesh","ImageMultiply","ImageOffset","ImagePad","ImagePadding","ImagePartition","ImagePeriodogram","ImagePerspectiveTransformation","ImagePosition","ImagePreviewFunction","ImagePyramid","ImagePyramidApply","ImageQ","ImageRangeCache","ImageRecolor","ImageReflect","ImageRegion","ImageResize","ImageResolution","ImageRestyle","ImageRotate","ImageRotated","ImageSaliencyFilter","ImageScaled","ImageScan","ImageSize","ImageSizeAction","ImageSizeCache","ImageSizeMultipliers","ImageSizeRaw","ImageSubtract","ImageTake","ImageTransformation","ImageTrim","ImageType","ImageValue","ImageValuePositions","ImagingDevice","ImplicitRegion","Implies","Import","ImportAutoReplacements","ImportByteArray","ImportOptions","ImportString","ImprovementImportance","In","Inactivate","Inactive","IncidenceGraph","IncidenceList","IncidenceMatrix","IncludeAromaticBonds","IncludeConstantBasis","IncludeDefinitions","IncludeDirectories","IncludeFileExtension","IncludeGeneratorTasks","IncludeHydrogens","IncludeInflections","IncludeMetaInformation","IncludePods","IncludeQuantities","IncludeRelatedTables","IncludeSingularTerm","IncludeWindowTimes","Increment","IndefiniteMatrixQ","Indent","IndentingNewlineSpacings","IndentMaxFraction","IndependenceTest","IndependentEdgeSetQ","IndependentPhysicalQuantity","IndependentUnit","IndependentUnitDimension","IndependentVertexSetQ","Indeterminate","IndeterminateThreshold","IndexCreationOptions","Indexed","IndexEdgeTaggedGraph","IndexGraph","IndexTag","Inequality","InexactNumberQ","InexactNumbers","InfiniteFuture","InfiniteLine","InfinitePast","InfinitePlane","Infinity","Infix","InflationAdjust","InflationMethod","Information","InformationData","InformationDataGrid","Inherited","InheritScope","InhomogeneousPoissonProcess","InitialEvaluationHistory","Initialization","InitializationCell","InitializationCellEvaluation","InitializationCellWarning","InitializationObjects","InitializationValue","Initialize","InitialSeeding","InlineCounterAssignments","InlineCounterIncrements","InlineRules","Inner","InnerPolygon","InnerPolyhedron","Inpaint","Input","InputAliases","InputAssumptions","InputAutoReplacements","InputField","InputFieldBox","InputFieldBoxOptions","InputForm","InputGrouping","InputNamePacket","InputNotebook","InputPacket","InputSettings","InputStream","InputString","InputStringPacket","InputToBoxFormPacket","Insert","InsertionFunction","InsertionPointObject","InsertLinebreaks","InsertResults","Inset","Inset3DBox","Inset3DBoxOptions","InsetBox","InsetBoxOptions","Insphere","Install","InstallService","InstanceNormalizationLayer","InString","Integer","IntegerDigits","IntegerExponent","IntegerLength","IntegerName","IntegerPart","IntegerPartitions","IntegerQ","IntegerReverse","Integers","IntegerString","Integral","Integrate","Interactive","InteractiveTradingChart","Interlaced","Interleaving","InternallyBalancedDecomposition","InterpolatingFunction","InterpolatingPolynomial","Interpolation","InterpolationOrder","InterpolationPoints","InterpolationPrecision","Interpretation","InterpretationBox","InterpretationBoxOptions","InterpretationFunction","Interpreter","InterpretTemplate","InterquartileRange","Interrupt","InterruptSettings","IntersectedEntityClass","IntersectingQ","Intersection","Interval","IntervalIntersection","IntervalMarkers","IntervalMarkersStyle","IntervalMemberQ","IntervalSlider","IntervalUnion","Into","Inverse","InverseBetaRegularized","InverseCDF","InverseChiSquareDistribution","InverseContinuousWaveletTransform","InverseDistanceTransform","InverseEllipticNomeQ","InverseErf","InverseErfc","InverseFourier","InverseFourierCosTransform","InverseFourierSequenceTransform","InverseFourierSinTransform","InverseFourierTransform","InverseFunction","InverseFunctions","InverseGammaDistribution","InverseGammaRegularized","InverseGaussianDistribution","InverseGudermannian","InverseHankelTransform","InverseHaversine","InverseImagePyramid","InverseJacobiCD","InverseJacobiCN","InverseJacobiCS","InverseJacobiDC","InverseJacobiDN","InverseJacobiDS","InverseJacobiNC","InverseJacobiND","InverseJacobiNS","InverseJacobiSC","InverseJacobiSD","InverseJacobiSN","InverseLaplaceTransform","InverseMellinTransform","InversePermutation","InverseRadon","InverseRadonTransform","InverseSeries","InverseShortTimeFourier","InverseSpectrogram","InverseSurvivalFunction","InverseTransformedRegion","InverseWaveletTransform","InverseWeierstrassP","InverseWishartMatrixDistribution","InverseZTransform","Invisible","InvisibleApplication","InvisibleTimes","IPAddress","IrreduciblePolynomialQ","IslandData","IsolatingInterval","IsomorphicGraphQ","IsotopeData","Italic","Item","ItemAspectRatio","ItemBox","ItemBoxOptions","ItemDisplayFunction","ItemSize","ItemStyle","ItoProcess","JaccardDissimilarity","JacobiAmplitude","Jacobian","JacobiCD","JacobiCN","JacobiCS","JacobiDC","JacobiDN","JacobiDS","JacobiNC","JacobiND","JacobiNS","JacobiP","JacobiSC","JacobiSD","JacobiSN","JacobiSymbol","JacobiZeta","JankoGroupJ1","JankoGroupJ2","JankoGroupJ3","JankoGroupJ4","JarqueBeraALMTest","JohnsonDistribution","Join","JoinAcross","Joined","JoinedCurve","JoinedCurveBox","JoinedCurveBoxOptions","JoinForm","JordanDecomposition","JordanModelDecomposition","JulianDate","JuliaSetBoettcher","JuliaSetIterationCount","JuliaSetPlot","JuliaSetPoints","K","KagiChart","KaiserBesselWindow","KaiserWindow","KalmanEstimator","KalmanFilter","KarhunenLoeveDecomposition","KaryTree","KatzCentrality","KCoreComponents","KDistribution","KEdgeConnectedComponents","KEdgeConnectedGraphQ","KeepExistingVersion","KelvinBei","KelvinBer","KelvinKei","KelvinKer","KendallTau","KendallTauTest","KernelExecute","KernelFunction","KernelMixtureDistribution","KernelObject","Kernels","Ket","Key","KeyCollisionFunction","KeyComplement","KeyDrop","KeyDropFrom","KeyExistsQ","KeyFreeQ","KeyIntersection","KeyMap","KeyMemberQ","KeypointStrength","Keys","KeySelect","KeySort","KeySortBy","KeyTake","KeyUnion","KeyValueMap","KeyValuePattern","Khinchin","KillProcess","KirchhoffGraph","KirchhoffMatrix","KleinInvariantJ","KnapsackSolve","KnightTourGraph","KnotData","KnownUnitQ","KochCurve","KolmogorovSmirnovTest","KroneckerDelta","KroneckerModelDecomposition","KroneckerProduct","KroneckerSymbol","KuiperTest","KumaraswamyDistribution","Kurtosis","KuwaharaFilter","KVertexConnectedComponents","KVertexConnectedGraphQ","LABColor","Label","Labeled","LabeledSlider","LabelingFunction","LabelingSize","LabelStyle","LabelVisibility","LaguerreL","LakeData","LambdaComponents","LambertW","LaminaData","LanczosWindow","LandauDistribution","Language","LanguageCategory","LanguageData","LanguageIdentify","LanguageOptions","LaplaceDistribution","LaplaceTransform","Laplacian","LaplacianFilter","LaplacianGaussianFilter","Large","Larger","Last","Latitude","LatitudeLongitude","LatticeData","LatticeReduce","Launch","LaunchKernels","LayeredGraphPlot","LayerSizeFunction","LayoutInformation","LCHColor","LCM","LeaderSize","LeafCount","LeapYearQ","LearnDistribution","LearnedDistribution","LearningRate","LearningRateMultipliers","LeastSquares","LeastSquaresFilterKernel","Left","LeftArrow","LeftArrowBar","LeftArrowRightArrow","LeftDownTeeVector","LeftDownVector","LeftDownVectorBar","LeftRightArrow","LeftRightVector","LeftTee","LeftTeeArrow","LeftTeeVector","LeftTriangle","LeftTriangleBar","LeftTriangleEqual","LeftUpDownVector","LeftUpTeeVector","LeftUpVector","LeftUpVectorBar","LeftVector","LeftVectorBar","LegendAppearance","Legended","LegendFunction","LegendLabel","LegendLayout","LegendMargins","LegendMarkers","LegendMarkerSize","LegendreP","LegendreQ","LegendreType","Length","LengthWhile","LerchPhi","Less","LessEqual","LessEqualGreater","LessEqualThan","LessFullEqual","LessGreater","LessLess","LessSlantEqual","LessThan","LessTilde","LetterCharacter","LetterCounts","LetterNumber","LetterQ","Level","LeveneTest","LeviCivitaTensor","LevyDistribution","Lexicographic","LibraryDataType","LibraryFunction","LibraryFunctionError","LibraryFunctionInformation","LibraryFunctionLoad","LibraryFunctionUnload","LibraryLoad","LibraryUnload","LicenseID","LiftingFilterData","LiftingWaveletTransform","LightBlue","LightBrown","LightCyan","Lighter","LightGray","LightGreen","Lighting","LightingAngle","LightMagenta","LightOrange","LightPink","LightPurple","LightRed","LightSources","LightYellow","Likelihood","Limit","LimitsPositioning","LimitsPositioningTokens","LindleyDistribution","Line","Line3DBox","Line3DBoxOptions","LinearFilter","LinearFractionalOptimization","LinearFractionalTransform","LinearGradientImage","LinearizingTransformationData","LinearLayer","LinearModelFit","LinearOffsetFunction","LinearOptimization","LinearProgramming","LinearRecurrence","LinearSolve","LinearSolveFunction","LineBox","LineBoxOptions","LineBreak","LinebreakAdjustments","LineBreakChart","LinebreakSemicolonWeighting","LineBreakWithin","LineColor","LineGraph","LineIndent","LineIndentMaxFraction","LineIntegralConvolutionPlot","LineIntegralConvolutionScale","LineLegend","LineOpacity","LineSpacing","LineWrapParts","LinkActivate","LinkClose","LinkConnect","LinkConnectedQ","LinkCreate","LinkError","LinkFlush","LinkFunction","LinkHost","LinkInterrupt","LinkLaunch","LinkMode","LinkObject","LinkOpen","LinkOptions","LinkPatterns","LinkProtocol","LinkRankCentrality","LinkRead","LinkReadHeld","LinkReadyQ","Links","LinkService","LinkWrite","LinkWriteHeld","LiouvilleLambda","List","Listable","ListAnimate","ListContourPlot","ListContourPlot3D","ListConvolve","ListCorrelate","ListCurvePathPlot","ListDeconvolve","ListDensityPlot","ListDensityPlot3D","Listen","ListFormat","ListFourierSequenceTransform","ListInterpolation","ListLineIntegralConvolutionPlot","ListLinePlot","ListLogLinearPlot","ListLogLogPlot","ListLogPlot","ListPicker","ListPickerBox","ListPickerBoxBackground","ListPickerBoxOptions","ListPlay","ListPlot","ListPlot3D","ListPointPlot3D","ListPolarPlot","ListQ","ListSliceContourPlot3D","ListSliceDensityPlot3D","ListSliceVectorPlot3D","ListStepPlot","ListStreamDensityPlot","ListStreamPlot","ListSurfacePlot3D","ListVectorDensityPlot","ListVectorPlot","ListVectorPlot3D","ListZTransform","Literal","LiteralSearch","LocalAdaptiveBinarize","LocalCache","LocalClusteringCoefficient","LocalizeDefinitions","LocalizeVariables","LocalObject","LocalObjects","LocalResponseNormalizationLayer","LocalSubmit","LocalSymbol","LocalTime","LocalTimeZone","LocationEquivalenceTest","LocationTest","Locator","LocatorAutoCreate","LocatorBox","LocatorBoxOptions","LocatorCentering","LocatorPane","LocatorPaneBox","LocatorPaneBoxOptions","LocatorRegion","Locked","Log","Log10","Log2","LogBarnesG","LogGamma","LogGammaDistribution","LogicalExpand","LogIntegral","LogisticDistribution","LogisticSigmoid","LogitModelFit","LogLikelihood","LogLinearPlot","LogLogisticDistribution","LogLogPlot","LogMultinormalDistribution","LogNormalDistribution","LogPlot","LogRankTest","LogSeriesDistribution","LongEqual","Longest","LongestCommonSequence","LongestCommonSequencePositions","LongestCommonSubsequence","LongestCommonSubsequencePositions","LongestMatch","LongestOrderedSequence","LongForm","Longitude","LongLeftArrow","LongLeftRightArrow","LongRightArrow","LongShortTermMemoryLayer","Lookup","Loopback","LoopFreeGraphQ","Looping","LossFunction","LowerCaseQ","LowerLeftArrow","LowerRightArrow","LowerTriangularize","LowerTriangularMatrixQ","LowpassFilter","LQEstimatorGains","LQGRegulator","LQOutputRegulatorGains","LQRegulatorGains","LUBackSubstitution","LucasL","LuccioSamiComponents","LUDecomposition","LunarEclipse","LUVColor","LyapunovSolve","LyonsGroupLy","MachineID","MachineName","MachineNumberQ","MachinePrecision","MacintoshSystemPageSetup","Magenta","Magnification","Magnify","MailAddressValidation","MailExecute","MailFolder","MailItem","MailReceiverFunction","MailResponseFunction","MailSearch","MailServerConnect","MailServerConnection","MailSettings","MainSolve","MaintainDynamicCaches","Majority","MakeBoxes","MakeExpression","MakeRules","ManagedLibraryExpressionID","ManagedLibraryExpressionQ","MandelbrotSetBoettcher","MandelbrotSetDistance","MandelbrotSetIterationCount","MandelbrotSetMemberQ","MandelbrotSetPlot","MangoldtLambda","ManhattanDistance","Manipulate","Manipulator","MannedSpaceMissionData","MannWhitneyTest","MantissaExponent","Manual","Map","MapAll","MapAt","MapIndexed","MAProcess","MapThread","MarchenkoPasturDistribution","MarcumQ","MardiaCombinedTest","MardiaKurtosisTest","MardiaSkewnessTest","MarginalDistribution","MarkovProcessProperties","Masking","MatchingDissimilarity","MatchLocalNameQ","MatchLocalNames","MatchQ","Material","MathematicalFunctionData","MathematicaNotation","MathieuC","MathieuCharacteristicA","MathieuCharacteristicB","MathieuCharacteristicExponent","MathieuCPrime","MathieuGroupM11","MathieuGroupM12","MathieuGroupM22","MathieuGroupM23","MathieuGroupM24","MathieuS","MathieuSPrime","MathMLForm","MathMLText","Matrices","MatrixExp","MatrixForm","MatrixFunction","MatrixLog","MatrixNormalDistribution","MatrixPlot","MatrixPower","MatrixPropertyDistribution","MatrixQ","MatrixRank","MatrixTDistribution","Max","MaxBend","MaxCellMeasure","MaxColorDistance","MaxDate","MaxDetect","MaxDuration","MaxExtraBandwidths","MaxExtraConditions","MaxFeatureDisplacement","MaxFeatures","MaxFilter","MaximalBy","Maximize","MaxItems","MaxIterations","MaxLimit","MaxMemoryUsed","MaxMixtureKernels","MaxOverlapFraction","MaxPlotPoints","MaxPoints","MaxRecursion","MaxStableDistribution","MaxStepFraction","MaxSteps","MaxStepSize","MaxTrainingRounds","MaxValue","MaxwellDistribution","MaxWordGap","McLaughlinGroupMcL","Mean","MeanAbsoluteLossLayer","MeanAround","MeanClusteringCoefficient","MeanDegreeConnectivity","MeanDeviation","MeanFilter","MeanGraphDistance","MeanNeighborDegree","MeanShift","MeanShiftFilter","MeanSquaredLossLayer","Median","MedianDeviation","MedianFilter","MedicalTestData","Medium","MeijerG","MeijerGReduce","MeixnerDistribution","MellinConvolve","MellinTransform","MemberQ","MemoryAvailable","MemoryConstrained","MemoryConstraint","MemoryInUse","MengerMesh","Menu","MenuAppearance","MenuCommandKey","MenuEvaluator","MenuItem","MenuList","MenuPacket","MenuSortingValue","MenuStyle","MenuView","Merge","MergeDifferences","MergingFunction","MersennePrimeExponent","MersennePrimeExponentQ","Mesh","MeshCellCentroid","MeshCellCount","MeshCellHighlight","MeshCellIndex","MeshCellLabel","MeshCellMarker","MeshCellMeasure","MeshCellQuality","MeshCells","MeshCellShapeFunction","MeshCellStyle","MeshConnectivityGraph","MeshCoordinates","MeshFunctions","MeshPrimitives","MeshQualityGoal","MeshRange","MeshRefinementFunction","MeshRegion","MeshRegionQ","MeshShading","MeshStyle","Message","MessageDialog","MessageList","MessageName","MessageObject","MessageOptions","MessagePacket","Messages","MessagesNotebook","MetaCharacters","MetaInformation","MeteorShowerData","Method","MethodOptions","MexicanHatWavelet","MeyerWavelet","Midpoint","Min","MinColorDistance","MinDate","MinDetect","MineralData","MinFilter","MinimalBy","MinimalPolynomial","MinimalStateSpaceModel","Minimize","MinimumTimeIncrement","MinIntervalSize","MinkowskiQuestionMark","MinLimit","MinMax","MinorPlanetData","Minors","MinRecursion","MinSize","MinStableDistribution","Minus","MinusPlus","MinValue","Missing","MissingBehavior","MissingDataMethod","MissingDataRules","MissingQ","MissingString","MissingStyle","MissingValuePattern","MittagLefflerE","MixedFractionParts","MixedGraphQ","MixedMagnitude","MixedRadix","MixedRadixQuantity","MixedUnit","MixtureDistribution","Mod","Modal","Mode","Modular","ModularInverse","ModularLambda","Module","Modulus","MoebiusMu","Molecule","MoleculeContainsQ","MoleculeEquivalentQ","MoleculeGraph","MoleculeModify","MoleculePattern","MoleculePlot","MoleculePlot3D","MoleculeProperty","MoleculeQ","MoleculeRecognize","MoleculeValue","Moment","Momentary","MomentConvert","MomentEvaluate","MomentGeneratingFunction","MomentOfInertia","Monday","Monitor","MonomialList","MonomialOrder","MonsterGroupM","MoonPhase","MoonPosition","MorletWavelet","MorphologicalBinarize","MorphologicalBranchPoints","MorphologicalComponents","MorphologicalEulerNumber","MorphologicalGraph","MorphologicalPerimeter","MorphologicalTransform","MortalityData","Most","MountainData","MouseAnnotation","MouseAppearance","MouseAppearanceTag","MouseButtons","Mouseover","MousePointerNote","MousePosition","MovieData","MovingAverage","MovingMap","MovingMedian","MoyalDistribution","Multicolumn","MultiedgeStyle","MultigraphQ","MultilaunchWarning","MultiLetterItalics","MultiLetterStyle","MultilineFunction","Multinomial","MultinomialDistribution","MultinormalDistribution","MultiplicativeOrder","Multiplicity","MultiplySides","Multiselection","MultivariateHypergeometricDistribution","MultivariatePoissonDistribution","MultivariateTDistribution","N","NakagamiDistribution","NameQ","Names","NamespaceBox","NamespaceBoxOptions","Nand","NArgMax","NArgMin","NBernoulliB","NBodySimulation","NBodySimulationData","NCache","NDEigensystem","NDEigenvalues","NDSolve","NDSolveValue","Nearest","NearestFunction","NearestMeshCells","NearestNeighborGraph","NearestTo","NebulaData","NeedCurrentFrontEndPackagePacket","NeedCurrentFrontEndSymbolsPacket","NeedlemanWunschSimilarity","Needs","Negative","NegativeBinomialDistribution","NegativeDefiniteMatrixQ","NegativeIntegers","NegativeMultinomialDistribution","NegativeRationals","NegativeReals","NegativeSemidefiniteMatrixQ","NeighborhoodData","NeighborhoodGraph","Nest","NestedGreaterGreater","NestedLessLess","NestedScriptRules","NestGraph","NestList","NestWhile","NestWhileList","NetAppend","NetBidirectionalOperator","NetChain","NetDecoder","NetDelete","NetDrop","NetEncoder","NetEvaluationMode","NetExtract","NetFlatten","NetFoldOperator","NetGANOperator","NetGraph","NetInformation","NetInitialize","NetInsert","NetInsertSharedArrays","NetJoin","NetMapOperator","NetMapThreadOperator","NetMeasurements","NetModel","NetNestOperator","NetPairEmbeddingOperator","NetPort","NetPortGradient","NetPrepend","NetRename","NetReplace","NetReplacePart","NetSharedArray","NetStateObject","NetTake","NetTrain","NetTrainResultsObject","NetworkPacketCapture","NetworkPacketRecording","NetworkPacketRecordingDuring","NetworkPacketTrace","NeumannValue","NevilleThetaC","NevilleThetaD","NevilleThetaN","NevilleThetaS","NewPrimitiveStyle","NExpectation","Next","NextCell","NextDate","NextPrime","NextScheduledTaskTime","NHoldAll","NHoldFirst","NHoldRest","NicholsGridLines","NicholsPlot","NightHemisphere","NIntegrate","NMaximize","NMaxValue","NMinimize","NMinValue","NominalVariables","NonAssociative","NoncentralBetaDistribution","NoncentralChiSquareDistribution","NoncentralFRatioDistribution","NoncentralStudentTDistribution","NonCommutativeMultiply","NonConstants","NondimensionalizationTransform","None","NoneTrue","NonlinearModelFit","NonlinearStateSpaceModel","NonlocalMeansFilter","NonNegative","NonNegativeIntegers","NonNegativeRationals","NonNegativeReals","NonPositive","NonPositiveIntegers","NonPositiveRationals","NonPositiveReals","Nor","NorlundB","Norm","Normal","NormalDistribution","NormalGrouping","NormalizationLayer","Normalize","Normalized","NormalizedSquaredEuclideanDistance","NormalMatrixQ","NormalsFunction","NormFunction","Not","NotCongruent","NotCupCap","NotDoubleVerticalBar","Notebook","NotebookApply","NotebookAutoSave","NotebookClose","NotebookConvertSettings","NotebookCreate","NotebookCreateReturnObject","NotebookDefault","NotebookDelete","NotebookDirectory","NotebookDynamicExpression","NotebookEvaluate","NotebookEventActions","NotebookFileName","NotebookFind","NotebookFindReturnObject","NotebookGet","NotebookGetLayoutInformationPacket","NotebookGetMisspellingsPacket","NotebookImport","NotebookInformation","NotebookInterfaceObject","NotebookLocate","NotebookObject","NotebookOpen","NotebookOpenReturnObject","NotebookPath","NotebookPrint","NotebookPut","NotebookPutReturnObject","NotebookRead","NotebookResetGeneratedCells","Notebooks","NotebookSave","NotebookSaveAs","NotebookSelection","NotebookSetupLayoutInformationPacket","NotebooksMenu","NotebookTemplate","NotebookWrite","NotElement","NotEqualTilde","NotExists","NotGreater","NotGreaterEqual","NotGreaterFullEqual","NotGreaterGreater","NotGreaterLess","NotGreaterSlantEqual","NotGreaterTilde","Nothing","NotHumpDownHump","NotHumpEqual","NotificationFunction","NotLeftTriangle","NotLeftTriangleBar","NotLeftTriangleEqual","NotLess","NotLessEqual","NotLessFullEqual","NotLessGreater","NotLessLess","NotLessSlantEqual","NotLessTilde","NotNestedGreaterGreater","NotNestedLessLess","NotPrecedes","NotPrecedesEqual","NotPrecedesSlantEqual","NotPrecedesTilde","NotReverseElement","NotRightTriangle","NotRightTriangleBar","NotRightTriangleEqual","NotSquareSubset","NotSquareSubsetEqual","NotSquareSuperset","NotSquareSupersetEqual","NotSubset","NotSubsetEqual","NotSucceeds","NotSucceedsEqual","NotSucceedsSlantEqual","NotSucceedsTilde","NotSuperset","NotSupersetEqual","NotTilde","NotTildeEqual","NotTildeFullEqual","NotTildeTilde","NotVerticalBar","Now","NoWhitespace","NProbability","NProduct","NProductFactors","NRoots","NSolve","NSum","NSumTerms","NuclearExplosionData","NuclearReactorData","Null","NullRecords","NullSpace","NullWords","Number","NumberCompose","NumberDecompose","NumberExpand","NumberFieldClassNumber","NumberFieldDiscriminant","NumberFieldFundamentalUnits","NumberFieldIntegralBasis","NumberFieldNormRepresentatives","NumberFieldRegulator","NumberFieldRootsOfUnity","NumberFieldSignature","NumberForm","NumberFormat","NumberLinePlot","NumberMarks","NumberMultiplier","NumberPadding","NumberPoint","NumberQ","NumberSeparator","NumberSigns","NumberString","Numerator","NumeratorDenominator","NumericalOrder","NumericalSort","NumericArray","NumericArrayQ","NumericArrayType","NumericFunction","NumericQ","NuttallWindow","NValues","NyquistGridLines","NyquistPlot","O","ObservabilityGramian","ObservabilityMatrix","ObservableDecomposition","ObservableModelQ","OceanData","Octahedron","OddQ","Off","Offset","OLEData","On","ONanGroupON","Once","OneIdentity","Opacity","OpacityFunction","OpacityFunctionScaling","Open","OpenAppend","Opener","OpenerBox","OpenerBoxOptions","OpenerView","OpenFunctionInspectorPacket","Opening","OpenRead","OpenSpecialOptions","OpenTemporary","OpenWrite","Operate","OperatingSystem","OperatorApplied","OptimumFlowData","Optional","OptionalElement","OptionInspectorSettings","OptionQ","Options","OptionsPacket","OptionsPattern","OptionValue","OptionValueBox","OptionValueBoxOptions","Or","Orange","Order","OrderDistribution","OrderedQ","Ordering","OrderingBy","OrderingLayer","Orderless","OrderlessPatternSequence","OrnsteinUhlenbeckProcess","Orthogonalize","OrthogonalMatrixQ","Out","Outer","OuterPolygon","OuterPolyhedron","OutputAutoOverwrite","OutputControllabilityMatrix","OutputControllableModelQ","OutputForm","OutputFormData","OutputGrouping","OutputMathEditExpression","OutputNamePacket","OutputResponse","OutputSizeLimit","OutputStream","Over","OverBar","OverDot","Overflow","OverHat","Overlaps","Overlay","OverlayBox","OverlayBoxOptions","Overscript","OverscriptBox","OverscriptBoxOptions","OverTilde","OverVector","OverwriteTarget","OwenT","OwnValues","Package","PackingMethod","PackPaclet","PacletDataRebuild","PacletDirectoryAdd","PacletDirectoryLoad","PacletDirectoryRemove","PacletDirectoryUnload","PacletDisable","PacletEnable","PacletFind","PacletFindRemote","PacletInformation","PacletInstall","PacletInstallSubmit","PacletNewerQ","PacletObject","PacletObjectQ","PacletSite","PacletSiteObject","PacletSiteRegister","PacletSites","PacletSiteUnregister","PacletSiteUpdate","PacletUninstall","PacletUpdate","PaddedForm","Padding","PaddingLayer","PaddingSize","PadeApproximant","PadLeft","PadRight","PageBreakAbove","PageBreakBelow","PageBreakWithin","PageFooterLines","PageFooters","PageHeaderLines","PageHeaders","PageHeight","PageRankCentrality","PageTheme","PageWidth","Pagination","PairedBarChart","PairedHistogram","PairedSmoothHistogram","PairedTTest","PairedZTest","PaletteNotebook","PalettePath","PalindromeQ","Pane","PaneBox","PaneBoxOptions","Panel","PanelBox","PanelBoxOptions","Paneled","PaneSelector","PaneSelectorBox","PaneSelectorBoxOptions","PaperWidth","ParabolicCylinderD","ParagraphIndent","ParagraphSpacing","ParallelArray","ParallelCombine","ParallelDo","Parallelepiped","ParallelEvaluate","Parallelization","Parallelize","ParallelMap","ParallelNeeds","Parallelogram","ParallelProduct","ParallelSubmit","ParallelSum","ParallelTable","ParallelTry","Parameter","ParameterEstimator","ParameterMixtureDistribution","ParameterVariables","ParametricFunction","ParametricNDSolve","ParametricNDSolveValue","ParametricPlot","ParametricPlot3D","ParametricRampLayer","ParametricRegion","ParentBox","ParentCell","ParentConnect","ParentDirectory","ParentForm","Parenthesize","ParentList","ParentNotebook","ParetoDistribution","ParetoPickandsDistribution","ParkData","Part","PartBehavior","PartialCorrelationFunction","PartialD","ParticleAcceleratorData","ParticleData","Partition","PartitionGranularity","PartitionsP","PartitionsQ","PartLayer","PartOfSpeech","PartProtection","ParzenWindow","PascalDistribution","PassEventsDown","PassEventsUp","Paste","PasteAutoQuoteCharacters","PasteBoxFormInlineCells","PasteButton","Path","PathGraph","PathGraphQ","Pattern","PatternFilling","PatternSequence","PatternTest","PauliMatrix","PaulWavelet","Pause","PausedTime","PDF","PeakDetect","PeanoCurve","PearsonChiSquareTest","PearsonCorrelationTest","PearsonDistribution","PercentForm","PerfectNumber","PerfectNumberQ","PerformanceGoal","Perimeter","PeriodicBoundaryCondition","PeriodicInterpolation","Periodogram","PeriodogramArray","Permanent","Permissions","PermissionsGroup","PermissionsGroupMemberQ","PermissionsGroups","PermissionsKey","PermissionsKeys","PermutationCycles","PermutationCyclesQ","PermutationGroup","PermutationLength","PermutationList","PermutationListQ","PermutationMax","PermutationMin","PermutationOrder","PermutationPower","PermutationProduct","PermutationReplace","Permutations","PermutationSupport","Permute","PeronaMalikFilter","Perpendicular","PerpendicularBisector","PersistenceLocation","PersistenceTime","PersistentObject","PersistentObjects","PersistentValue","PersonData","PERTDistribution","PetersenGraph","PhaseMargins","PhaseRange","PhysicalSystemData","Pi","Pick","PIDData","PIDDerivativeFilter","PIDFeedforward","PIDTune","Piecewise","PiecewiseExpand","PieChart","PieChart3D","PillaiTrace","PillaiTraceTest","PingTime","Pink","PitchRecognize","Pivoting","PixelConstrained","PixelValue","PixelValuePositions","Placed","Placeholder","PlaceholderReplace","Plain","PlanarAngle","PlanarGraph","PlanarGraphQ","PlanckRadiationLaw","PlaneCurveData","PlanetaryMoonData","PlanetData","PlantData","Play","PlayRange","Plot","Plot3D","Plot3Matrix","PlotDivision","PlotJoined","PlotLabel","PlotLabels","PlotLayout","PlotLegends","PlotMarkers","PlotPoints","PlotRange","PlotRangeClipping","PlotRangeClipPlanesStyle","PlotRangePadding","PlotRegion","PlotStyle","PlotTheme","Pluralize","Plus","PlusMinus","Pochhammer","PodStates","PodWidth","Point","Point3DBox","Point3DBoxOptions","PointBox","PointBoxOptions","PointFigureChart","PointLegend","PointSize","PoissonConsulDistribution","PoissonDistribution","PoissonProcess","PoissonWindow","PolarAxes","PolarAxesOrigin","PolarGridLines","PolarPlot","PolarTicks","PoleZeroMarkers","PolyaAeppliDistribution","PolyGamma","Polygon","Polygon3DBox","Polygon3DBoxOptions","PolygonalNumber","PolygonAngle","PolygonBox","PolygonBoxOptions","PolygonCoordinates","PolygonDecomposition","PolygonHoleScale","PolygonIntersections","PolygonScale","Polyhedron","PolyhedronAngle","PolyhedronCoordinates","PolyhedronData","PolyhedronDecomposition","PolyhedronGenus","PolyLog","PolynomialExtendedGCD","PolynomialForm","PolynomialGCD","PolynomialLCM","PolynomialMod","PolynomialQ","PolynomialQuotient","PolynomialQuotientRemainder","PolynomialReduce","PolynomialRemainder","Polynomials","PoolingLayer","PopupMenu","PopupMenuBox","PopupMenuBoxOptions","PopupView","PopupWindow","Position","PositionIndex","Positive","PositiveDefiniteMatrixQ","PositiveIntegers","PositiveRationals","PositiveReals","PositiveSemidefiniteMatrixQ","PossibleZeroQ","Postfix","PostScript","Power","PowerDistribution","PowerExpand","PowerMod","PowerModList","PowerRange","PowerSpectralDensity","PowersRepresentations","PowerSymmetricPolynomial","Precedence","PrecedenceForm","Precedes","PrecedesEqual","PrecedesSlantEqual","PrecedesTilde","Precision","PrecisionGoal","PreDecrement","Predict","PredictionRoot","PredictorFunction","PredictorInformation","PredictorMeasurements","PredictorMeasurementsObject","PreemptProtect","PreferencesPath","Prefix","PreIncrement","Prepend","PrependLayer","PrependTo","PreprocessingRules","PreserveColor","PreserveImageOptions","Previous","PreviousCell","PreviousDate","PriceGraphDistribution","PrimaryPlaceholder","Prime","PrimeNu","PrimeOmega","PrimePi","PrimePowerQ","PrimeQ","Primes","PrimeZetaP","PrimitivePolynomialQ","PrimitiveRoot","PrimitiveRootList","PrincipalComponents","PrincipalValue","Print","PrintableASCIIQ","PrintAction","PrintForm","PrintingCopies","PrintingOptions","PrintingPageRange","PrintingStartingPageNumber","PrintingStyleEnvironment","Printout3D","Printout3DPreviewer","PrintPrecision","PrintTemporary","Prism","PrismBox","PrismBoxOptions","PrivateCellOptions","PrivateEvaluationOptions","PrivateFontOptions","PrivateFrontEndOptions","PrivateKey","PrivateNotebookOptions","PrivatePaths","Probability","ProbabilityDistribution","ProbabilityPlot","ProbabilityPr","ProbabilityScalePlot","ProbitModelFit","ProcessConnection","ProcessDirectory","ProcessEnvironment","Processes","ProcessEstimator","ProcessInformation","ProcessObject","ProcessParameterAssumptions","ProcessParameterQ","ProcessStateDomain","ProcessStatus","ProcessTimeDomain","Product","ProductDistribution","ProductLog","ProgressIndicator","ProgressIndicatorBox","ProgressIndicatorBoxOptions","Projection","Prolog","PromptForm","ProofObject","Properties","Property","PropertyList","PropertyValue","Proportion","Proportional","Protect","Protected","ProteinData","Pruning","PseudoInverse","PsychrometricPropertyData","PublicKey","PublisherID","PulsarData","PunctuationCharacter","Purple","Put","PutAppend","Pyramid","PyramidBox","PyramidBoxOptions","QBinomial","QFactorial","QGamma","QHypergeometricPFQ","QnDispersion","QPochhammer","QPolyGamma","QRDecomposition","QuadraticIrrationalQ","QuadraticOptimization","Quantile","QuantilePlot","Quantity","QuantityArray","QuantityDistribution","QuantityForm","QuantityMagnitude","QuantityQ","QuantityUnit","QuantityVariable","QuantityVariableCanonicalUnit","QuantityVariableDimensions","QuantityVariableIdentifier","QuantityVariablePhysicalQuantity","Quartics","QuartileDeviation","Quartiles","QuartileSkewness","Query","QueueingNetworkProcess","QueueingProcess","QueueProperties","Quiet","Quit","Quotient","QuotientRemainder","RadialGradientImage","RadialityCentrality","RadicalBox","RadicalBoxOptions","RadioButton","RadioButtonBar","RadioButtonBox","RadioButtonBoxOptions","Radon","RadonTransform","RamanujanTau","RamanujanTauL","RamanujanTauTheta","RamanujanTauZ","Ramp","Random","RandomChoice","RandomColor","RandomComplex","RandomEntity","RandomFunction","RandomGeoPosition","RandomGraph","RandomImage","RandomInstance","RandomInteger","RandomPermutation","RandomPoint","RandomPolygon","RandomPolyhedron","RandomPrime","RandomReal","RandomSample","RandomSeed","RandomSeeding","RandomVariate","RandomWalkProcess","RandomWord","Range","RangeFilter","RangeSpecification","RankedMax","RankedMin","RarerProbability","Raster","Raster3D","Raster3DBox","Raster3DBoxOptions","RasterArray","RasterBox","RasterBoxOptions","Rasterize","RasterSize","Rational","RationalFunctions","Rationalize","Rationals","Ratios","RawArray","RawBoxes","RawData","RawMedium","RayleighDistribution","Re","Read","ReadByteArray","ReadLine","ReadList","ReadProtected","ReadString","Real","RealAbs","RealBlockDiagonalForm","RealDigits","RealExponent","Reals","RealSign","Reap","RebuildPacletData","RecognitionPrior","RecognitionThreshold","Record","RecordLists","RecordSeparators","Rectangle","RectangleBox","RectangleBoxOptions","RectangleChart","RectangleChart3D","RectangularRepeatingElement","RecurrenceFilter","RecurrenceTable","RecurringDigitsForm","Red","Reduce","RefBox","ReferenceLineStyle","ReferenceMarkers","ReferenceMarkerStyle","Refine","ReflectionMatrix","ReflectionTransform","Refresh","RefreshRate","Region","RegionBinarize","RegionBoundary","RegionBoundaryStyle","RegionBounds","RegionCentroid","RegionDifference","RegionDimension","RegionDisjoint","RegionDistance","RegionDistanceFunction","RegionEmbeddingDimension","RegionEqual","RegionFillingStyle","RegionFunction","RegionImage","RegionIntersection","RegionMeasure","RegionMember","RegionMemberFunction","RegionMoment","RegionNearest","RegionNearestFunction","RegionPlot","RegionPlot3D","RegionProduct","RegionQ","RegionResize","RegionSize","RegionSymmetricDifference","RegionUnion","RegionWithin","RegisterExternalEvaluator","RegularExpression","Regularization","RegularlySampledQ","RegularPolygon","ReIm","ReImLabels","ReImPlot","ReImStyle","Reinstall","RelationalDatabase","RelationGraph","Release","ReleaseHold","ReliabilityDistribution","ReliefImage","ReliefPlot","RemoteAuthorizationCaching","RemoteConnect","RemoteConnectionObject","RemoteFile","RemoteRun","RemoteRunProcess","Remove","RemoveAlphaChannel","RemoveAsynchronousTask","RemoveAudioStream","RemoveBackground","RemoveChannelListener","RemoveChannelSubscribers","Removed","RemoveDiacritics","RemoveInputStreamMethod","RemoveOutputStreamMethod","RemoveProperty","RemoveScheduledTask","RemoveUsers","RemoveVideoStream","RenameDirectory","RenameFile","RenderAll","RenderingOptions","RenewalProcess","RenkoChart","RepairMesh","Repeated","RepeatedNull","RepeatedString","RepeatedTiming","RepeatingElement","Replace","ReplaceAll","ReplaceHeldPart","ReplaceImageValue","ReplaceList","ReplacePart","ReplacePixelValue","ReplaceRepeated","ReplicateLayer","RequiredPhysicalQuantities","Resampling","ResamplingAlgorithmData","ResamplingMethod","Rescale","RescalingTransform","ResetDirectory","ResetMenusPacket","ResetScheduledTask","ReshapeLayer","Residue","ResizeLayer","Resolve","ResourceAcquire","ResourceData","ResourceFunction","ResourceObject","ResourceRegister","ResourceRemove","ResourceSearch","ResourceSubmissionObject","ResourceSubmit","ResourceSystemBase","ResourceSystemPath","ResourceUpdate","ResourceVersion","ResponseForm","Rest","RestartInterval","Restricted","Resultant","ResumePacket","Return","ReturnEntersInput","ReturnExpressionPacket","ReturnInputFormPacket","ReturnPacket","ReturnReceiptFunction","ReturnTextPacket","Reverse","ReverseApplied","ReverseBiorthogonalSplineWavelet","ReverseElement","ReverseEquilibrium","ReverseGraph","ReverseSort","ReverseSortBy","ReverseUpEquilibrium","RevolutionAxis","RevolutionPlot3D","RGBColor","RiccatiSolve","RiceDistribution","RidgeFilter","RiemannR","RiemannSiegelTheta","RiemannSiegelZ","RiemannXi","Riffle","Right","RightArrow","RightArrowBar","RightArrowLeftArrow","RightComposition","RightCosetRepresentative","RightDownTeeVector","RightDownVector","RightDownVectorBar","RightTee","RightTeeArrow","RightTeeVector","RightTriangle","RightTriangleBar","RightTriangleEqual","RightUpDownVector","RightUpTeeVector","RightUpVector","RightUpVectorBar","RightVector","RightVectorBar","RiskAchievementImportance","RiskReductionImportance","RogersTanimotoDissimilarity","RollPitchYawAngles","RollPitchYawMatrix","RomanNumeral","Root","RootApproximant","RootIntervals","RootLocusPlot","RootMeanSquare","RootOfUnityQ","RootReduce","Roots","RootSum","Rotate","RotateLabel","RotateLeft","RotateRight","RotationAction","RotationBox","RotationBoxOptions","RotationMatrix","RotationTransform","Round","RoundImplies","RoundingRadius","Row","RowAlignments","RowBackgrounds","RowBox","RowHeights","RowLines","RowMinHeight","RowReduce","RowsEqual","RowSpacings","RSolve","RSolveValue","RudinShapiro","RudvalisGroupRu","Rule","RuleCondition","RuleDelayed","RuleForm","RulePlot","RulerUnits","Run","RunProcess","RunScheduledTask","RunThrough","RuntimeAttributes","RuntimeOptions","RussellRaoDissimilarity","SameQ","SameTest","SameTestProperties","SampledEntityClass","SampleDepth","SampledSoundFunction","SampledSoundList","SampleRate","SamplingPeriod","SARIMAProcess","SARMAProcess","SASTriangle","SatelliteData","SatisfiabilityCount","SatisfiabilityInstances","SatisfiableQ","Saturday","Save","Saveable","SaveAutoDelete","SaveConnection","SaveDefinitions","SavitzkyGolayMatrix","SawtoothWave","Scale","Scaled","ScaleDivisions","ScaledMousePosition","ScaleOrigin","ScalePadding","ScaleRanges","ScaleRangeStyle","ScalingFunctions","ScalingMatrix","ScalingTransform","Scan","ScheduledTask","ScheduledTaskActiveQ","ScheduledTaskInformation","ScheduledTaskInformationData","ScheduledTaskObject","ScheduledTasks","SchurDecomposition","ScientificForm","ScientificNotationThreshold","ScorerGi","ScorerGiPrime","ScorerHi","ScorerHiPrime","ScreenRectangle","ScreenStyleEnvironment","ScriptBaselineShifts","ScriptForm","ScriptLevel","ScriptMinSize","ScriptRules","ScriptSizeMultipliers","Scrollbars","ScrollingOptions","ScrollPosition","SearchAdjustment","SearchIndexObject","SearchIndices","SearchQueryString","SearchResultObject","Sec","Sech","SechDistribution","SecondOrderConeOptimization","SectionGrouping","SectorChart","SectorChart3D","SectorOrigin","SectorSpacing","SecuredAuthenticationKey","SecuredAuthenticationKeys","SeedRandom","Select","Selectable","SelectComponents","SelectedCells","SelectedNotebook","SelectFirst","Selection","SelectionAnimate","SelectionCell","SelectionCellCreateCell","SelectionCellDefaultStyle","SelectionCellParentStyle","SelectionCreateCell","SelectionDebuggerTag","SelectionDuplicateCell","SelectionEvaluate","SelectionEvaluateCreateCell","SelectionMove","SelectionPlaceholder","SelectionSetStyle","SelectWithContents","SelfLoops","SelfLoopStyle","SemanticImport","SemanticImportString","SemanticInterpretation","SemialgebraicComponentInstances","SemidefiniteOptimization","SendMail","SendMessage","Sequence","SequenceAlignment","SequenceAttentionLayer","SequenceCases","SequenceCount","SequenceFold","SequenceFoldList","SequenceForm","SequenceHold","SequenceLastLayer","SequenceMostLayer","SequencePosition","SequencePredict","SequencePredictorFunction","SequenceReplace","SequenceRestLayer","SequenceReverseLayer","SequenceSplit","Series","SeriesCoefficient","SeriesData","SeriesTermGoal","ServiceConnect","ServiceDisconnect","ServiceExecute","ServiceObject","ServiceRequest","ServiceResponse","ServiceSubmit","SessionSubmit","SessionTime","Set","SetAccuracy","SetAlphaChannel","SetAttributes","Setbacks","SetBoxFormNamesPacket","SetCloudDirectory","SetCookies","SetDelayed","SetDirectory","SetEnvironment","SetEvaluationNotebook","SetFileDate","SetFileLoadingContext","SetNotebookStatusLine","SetOptions","SetOptionsPacket","SetPermissions","SetPrecision","SetProperty","SetSecuredAuthenticationKey","SetSelectedNotebook","SetSharedFunction","SetSharedVariable","SetSpeechParametersPacket","SetStreamPosition","SetSystemModel","SetSystemOptions","Setter","SetterBar","SetterBox","SetterBoxOptions","Setting","SetUsers","SetValue","Shading","Shallow","ShannonWavelet","ShapiroWilkTest","Share","SharingList","Sharpen","ShearingMatrix","ShearingTransform","ShellRegion","ShenCastanMatrix","ShiftedGompertzDistribution","ShiftRegisterSequence","Short","ShortDownArrow","Shortest","ShortestMatch","ShortestPathFunction","ShortLeftArrow","ShortRightArrow","ShortTimeFourier","ShortTimeFourierData","ShortUpArrow","Show","ShowAutoConvert","ShowAutoSpellCheck","ShowAutoStyles","ShowCellBracket","ShowCellLabel","ShowCellTags","ShowClosedCellArea","ShowCodeAssist","ShowContents","ShowControls","ShowCursorTracker","ShowGroupOpenCloseIcon","ShowGroupOpener","ShowInvisibleCharacters","ShowPageBreaks","ShowPredictiveInterface","ShowSelection","ShowShortBoxForm","ShowSpecialCharacters","ShowStringCharacters","ShowSyntaxStyles","ShrinkingDelay","ShrinkWrapBoundingBox","SiderealTime","SiegelTheta","SiegelTukeyTest","SierpinskiCurve","SierpinskiMesh","Sign","Signature","SignedRankTest","SignedRegionDistance","SignificanceLevel","SignPadding","SignTest","SimilarityRules","SimpleGraph","SimpleGraphQ","SimplePolygonQ","SimplePolyhedronQ","Simplex","Simplify","Sin","Sinc","SinghMaddalaDistribution","SingleEvaluation","SingleLetterItalics","SingleLetterStyle","SingularValueDecomposition","SingularValueList","SingularValuePlot","SingularValues","Sinh","SinhIntegral","SinIntegral","SixJSymbol","Skeleton","SkeletonTransform","SkellamDistribution","Skewness","SkewNormalDistribution","SkinStyle","Skip","SliceContourPlot3D","SliceDensityPlot3D","SliceDistribution","SliceVectorPlot3D","Slider","Slider2D","Slider2DBox","Slider2DBoxOptions","SliderBox","SliderBoxOptions","SlideView","Slot","SlotSequence","Small","SmallCircle","Smaller","SmithDecomposition","SmithDelayCompensator","SmithWatermanSimilarity","SmoothDensityHistogram","SmoothHistogram","SmoothHistogram3D","SmoothKernelDistribution","SnDispersion","Snippet","SnubPolyhedron","SocialMediaData","Socket","SocketConnect","SocketListen","SocketListener","SocketObject","SocketOpen","SocketReadMessage","SocketReadyQ","Sockets","SocketWaitAll","SocketWaitNext","SoftmaxLayer","SokalSneathDissimilarity","SolarEclipse","SolarSystemFeatureData","SolidAngle","SolidData","SolidRegionQ","Solve","SolveAlways","SolveDelayed","Sort","SortBy","SortedBy","SortedEntityClass","Sound","SoundAndGraphics","SoundNote","SoundVolume","SourceLink","Sow","Space","SpaceCurveData","SpaceForm","Spacer","Spacings","Span","SpanAdjustments","SpanCharacterRounding","SpanFromAbove","SpanFromBoth","SpanFromLeft","SpanLineThickness","SpanMaxSize","SpanMinSize","SpanningCharacters","SpanSymmetric","SparseArray","SpatialGraphDistribution","SpatialMedian","SpatialTransformationLayer","Speak","SpeakerMatchQ","SpeakTextPacket","SpearmanRankTest","SpearmanRho","SpeciesData","SpecificityGoal","SpectralLineData","Spectrogram","SpectrogramArray","Specularity","SpeechCases","SpeechInterpreter","SpeechRecognize","SpeechSynthesize","SpellingCorrection","SpellingCorrectionList","SpellingDictionaries","SpellingDictionariesPath","SpellingOptions","SpellingSuggestionsPacket","Sphere","SphereBox","SpherePoints","SphericalBesselJ","SphericalBesselY","SphericalHankelH1","SphericalHankelH2","SphericalHarmonicY","SphericalPlot3D","SphericalRegion","SphericalShell","SpheroidalEigenvalue","SpheroidalJoiningFactor","SpheroidalPS","SpheroidalPSPrime","SpheroidalQS","SpheroidalQSPrime","SpheroidalRadialFactor","SpheroidalS1","SpheroidalS1Prime","SpheroidalS2","SpheroidalS2Prime","Splice","SplicedDistribution","SplineClosed","SplineDegree","SplineKnots","SplineWeights","Split","SplitBy","SpokenString","Sqrt","SqrtBox","SqrtBoxOptions","Square","SquaredEuclideanDistance","SquareFreeQ","SquareIntersection","SquareMatrixQ","SquareRepeatingElement","SquaresR","SquareSubset","SquareSubsetEqual","SquareSuperset","SquareSupersetEqual","SquareUnion","SquareWave","SSSTriangle","StabilityMargins","StabilityMarginsStyle","StableDistribution","Stack","StackBegin","StackComplete","StackedDateListPlot","StackedListPlot","StackInhibit","StadiumShape","StandardAtmosphereData","StandardDeviation","StandardDeviationFilter","StandardForm","Standardize","Standardized","StandardOceanData","StandbyDistribution","Star","StarClusterData","StarData","StarGraph","StartAsynchronousTask","StartExternalSession","StartingStepSize","StartOfLine","StartOfString","StartProcess","StartScheduledTask","StartupSound","StartWebSession","StateDimensions","StateFeedbackGains","StateOutputEstimator","StateResponse","StateSpaceModel","StateSpaceRealization","StateSpaceTransform","StateTransformationLinearize","StationaryDistribution","StationaryWaveletPacketTransform","StationaryWaveletTransform","StatusArea","StatusCentrality","StepMonitor","StereochemistryElements","StieltjesGamma","StippleShading","StirlingS1","StirlingS2","StopAsynchronousTask","StoppingPowerData","StopScheduledTask","StrataVariables","StratonovichProcess","StreamColorFunction","StreamColorFunctionScaling","StreamDensityPlot","StreamMarkers","StreamPlot","StreamPoints","StreamPosition","Streams","StreamScale","StreamStyle","String","StringBreak","StringByteCount","StringCases","StringContainsQ","StringCount","StringDelete","StringDrop","StringEndsQ","StringExpression","StringExtract","StringForm","StringFormat","StringFreeQ","StringInsert","StringJoin","StringLength","StringMatchQ","StringPadLeft","StringPadRight","StringPart","StringPartition","StringPosition","StringQ","StringRepeat","StringReplace","StringReplaceList","StringReplacePart","StringReverse","StringRiffle","StringRotateLeft","StringRotateRight","StringSkeleton","StringSplit","StringStartsQ","StringTake","StringTemplate","StringToByteArray","StringToStream","StringTrim","StripBoxes","StripOnInput","StripWrapperBoxes","StrokeForm","StructuralImportance","StructuredArray","StructuredArrayHeadQ","StructuredSelection","StruveH","StruveL","Stub","StudentTDistribution","Style","StyleBox","StyleBoxAutoDelete","StyleData","StyleDefinitions","StyleForm","StyleHints","StyleKeyMapping","StyleMenuListing","StyleNameDialogSettings","StyleNames","StylePrint","StyleSheetPath","Subdivide","Subfactorial","Subgraph","SubMinus","SubPlus","SubresultantPolynomialRemainders","SubresultantPolynomials","Subresultants","Subscript","SubscriptBox","SubscriptBoxOptions","Subscripted","Subsequences","Subset","SubsetCases","SubsetCount","SubsetEqual","SubsetMap","SubsetPosition","SubsetQ","SubsetReplace","Subsets","SubStar","SubstitutionSystem","Subsuperscript","SubsuperscriptBox","SubsuperscriptBoxOptions","SubtitleEncoding","SubtitleTracks","Subtract","SubtractFrom","SubtractSides","SubValues","Succeeds","SucceedsEqual","SucceedsSlantEqual","SucceedsTilde","Success","SuchThat","Sum","SumConvergence","SummationLayer","Sunday","SunPosition","Sunrise","Sunset","SuperDagger","SuperMinus","SupernovaData","SuperPlus","Superscript","SuperscriptBox","SuperscriptBoxOptions","Superset","SupersetEqual","SuperStar","Surd","SurdForm","SurfaceAppearance","SurfaceArea","SurfaceColor","SurfaceData","SurfaceGraphics","SurvivalDistribution","SurvivalFunction","SurvivalModel","SurvivalModelFit","SuspendPacket","SuzukiDistribution","SuzukiGroupSuz","SwatchLegend","Switch","Symbol","SymbolName","SymletWavelet","Symmetric","SymmetricGroup","SymmetricKey","SymmetricMatrixQ","SymmetricPolynomial","SymmetricReduction","Symmetrize","SymmetrizedArray","SymmetrizedArrayRules","SymmetrizedDependentComponents","SymmetrizedIndependentComponents","SymmetrizedReplacePart","SynchronousInitialization","SynchronousUpdating","Synonyms","Syntax","SyntaxForm","SyntaxInformation","SyntaxLength","SyntaxPacket","SyntaxQ","SynthesizeMissingValues","SystemCredential","SystemCredentialData","SystemCredentialKey","SystemCredentialKeys","SystemCredentialStoreObject","SystemDialogInput","SystemException","SystemGet","SystemHelpPath","SystemInformation","SystemInformationData","SystemInstall","SystemModel","SystemModeler","SystemModelExamples","SystemModelLinearize","SystemModelParametricSimulate","SystemModelPlot","SystemModelProgressReporting","SystemModelReliability","SystemModels","SystemModelSimulate","SystemModelSimulateSensitivity","SystemModelSimulationData","SystemOpen","SystemOptions","SystemProcessData","SystemProcesses","SystemsConnectionsModel","SystemsModelDelay","SystemsModelDelayApproximate","SystemsModelDelete","SystemsModelDimensions","SystemsModelExtract","SystemsModelFeedbackConnect","SystemsModelLabels","SystemsModelLinearity","SystemsModelMerge","SystemsModelOrder","SystemsModelParallelConnect","SystemsModelSeriesConnect","SystemsModelStateFeedbackConnect","SystemsModelVectorRelativeOrders","SystemStub","SystemTest","Tab","TabFilling","Table","TableAlignments","TableDepth","TableDirections","TableForm","TableHeadings","TableSpacing","TableView","TableViewBox","TableViewBoxBackground","TableViewBoxItemSize","TableViewBoxOptions","TabSpacings","TabView","TabViewBox","TabViewBoxOptions","TagBox","TagBoxNote","TagBoxOptions","TaggingRules","TagSet","TagSetDelayed","TagStyle","TagUnset","Take","TakeDrop","TakeLargest","TakeLargestBy","TakeList","TakeSmallest","TakeSmallestBy","TakeWhile","Tally","Tan","Tanh","TargetDevice","TargetFunctions","TargetSystem","TargetUnits","TaskAbort","TaskExecute","TaskObject","TaskRemove","TaskResume","Tasks","TaskSuspend","TaskWait","TautologyQ","TelegraphProcess","TemplateApply","TemplateArgBox","TemplateBox","TemplateBoxOptions","TemplateEvaluate","TemplateExpression","TemplateIf","TemplateObject","TemplateSequence","TemplateSlot","TemplateSlotSequence","TemplateUnevaluated","TemplateVerbatim","TemplateWith","TemporalData","TemporalRegularity","Temporary","TemporaryVariable","TensorContract","TensorDimensions","TensorExpand","TensorProduct","TensorQ","TensorRank","TensorReduce","TensorSymmetry","TensorTranspose","TensorWedge","TestID","TestReport","TestReportObject","TestResultObject","Tetrahedron","TetrahedronBox","TetrahedronBoxOptions","TeXForm","TeXSave","Text","Text3DBox","Text3DBoxOptions","TextAlignment","TextBand","TextBoundingBox","TextBox","TextCases","TextCell","TextClipboardType","TextContents","TextData","TextElement","TextForm","TextGrid","TextJustification","TextLine","TextPacket","TextParagraph","TextPosition","TextRecognize","TextSearch","TextSearchReport","TextSentences","TextString","TextStructure","TextStyle","TextTranslation","Texture","TextureCoordinateFunction","TextureCoordinateScaling","TextWords","Therefore","ThermodynamicData","ThermometerGauge","Thick","Thickness","Thin","Thinning","ThisLink","ThompsonGroupTh","Thread","ThreadingLayer","ThreeJSymbol","Threshold","Through","Throw","ThueMorse","Thumbnail","Thursday","Ticks","TicksStyle","TideData","Tilde","TildeEqual","TildeFullEqual","TildeTilde","TimeConstrained","TimeConstraint","TimeDirection","TimeFormat","TimeGoal","TimelinePlot","TimeObject","TimeObjectQ","TimeRemaining","Times","TimesBy","TimeSeries","TimeSeriesAggregate","TimeSeriesForecast","TimeSeriesInsert","TimeSeriesInvertibility","TimeSeriesMap","TimeSeriesMapThread","TimeSeriesModel","TimeSeriesModelFit","TimeSeriesResample","TimeSeriesRescale","TimeSeriesShift","TimeSeriesThread","TimeSeriesWindow","TimeUsed","TimeValue","TimeWarpingCorrespondence","TimeWarpingDistance","TimeZone","TimeZoneConvert","TimeZoneOffset","Timing","Tiny","TitleGrouping","TitsGroupT","ToBoxes","ToCharacterCode","ToColor","ToContinuousTimeModel","ToDate","Today","ToDiscreteTimeModel","ToEntity","ToeplitzMatrix","ToExpression","ToFileName","Together","Toggle","ToggleFalse","Toggler","TogglerBar","TogglerBox","TogglerBoxOptions","ToHeldExpression","ToInvertibleTimeSeries","TokenWords","Tolerance","ToLowerCase","Tomorrow","ToNumberField","TooBig","Tooltip","TooltipBox","TooltipBoxOptions","TooltipDelay","TooltipStyle","ToonShading","Top","TopHatTransform","ToPolarCoordinates","TopologicalSort","ToRadicals","ToRules","ToSphericalCoordinates","ToString","Total","TotalHeight","TotalLayer","TotalVariationFilter","TotalWidth","TouchPosition","TouchscreenAutoZoom","TouchscreenControlPlacement","ToUpperCase","Tr","Trace","TraceAbove","TraceAction","TraceBackward","TraceDepth","TraceDialog","TraceForward","TraceInternal","TraceLevel","TraceOff","TraceOn","TraceOriginal","TracePrint","TraceScan","TrackedSymbols","TrackingFunction","TracyWidomDistribution","TradingChart","TraditionalForm","TraditionalFunctionNotation","TraditionalNotation","TraditionalOrder","TrainingProgressCheckpointing","TrainingProgressFunction","TrainingProgressMeasurements","TrainingProgressReporting","TrainingStoppingCriterion","TrainingUpdateSchedule","TransferFunctionCancel","TransferFunctionExpand","TransferFunctionFactor","TransferFunctionModel","TransferFunctionPoles","TransferFunctionTransform","TransferFunctionZeros","TransformationClass","TransformationFunction","TransformationFunctions","TransformationMatrix","TransformedDistribution","TransformedField","TransformedProcess","TransformedRegion","TransitionDirection","TransitionDuration","TransitionEffect","TransitiveClosureGraph","TransitiveReductionGraph","Translate","TranslationOptions","TranslationTransform","Transliterate","Transparent","TransparentColor","Transpose","TransposeLayer","TrapSelection","TravelDirections","TravelDirectionsData","TravelDistance","TravelDistanceList","TravelMethod","TravelTime","TreeForm","TreeGraph","TreeGraphQ","TreePlot","TrendStyle","Triangle","TriangleCenter","TriangleConstruct","TriangleMeasurement","TriangleWave","TriangularDistribution","TriangulateMesh","Trig","TrigExpand","TrigFactor","TrigFactorList","Trigger","TrigReduce","TrigToExp","TrimmedMean","TrimmedVariance","TropicalStormData","True","TrueQ","TruncatedDistribution","TruncatedPolyhedron","TsallisQExponentialDistribution","TsallisQGaussianDistribution","TTest","Tube","TubeBezierCurveBox","TubeBezierCurveBoxOptions","TubeBox","TubeBoxOptions","TubeBSplineCurveBox","TubeBSplineCurveBoxOptions","Tuesday","TukeyLambdaDistribution","TukeyWindow","TunnelData","Tuples","TuranGraph","TuringMachine","TuttePolynomial","TwoWayRule","Typed","TypeSpecifier","UnateQ","Uncompress","UnconstrainedParameters","Undefined","UnderBar","Underflow","Underlined","Underoverscript","UnderoverscriptBox","UnderoverscriptBoxOptions","Underscript","UnderscriptBox","UnderscriptBoxOptions","UnderseaFeatureData","UndirectedEdge","UndirectedGraph","UndirectedGraphQ","UndoOptions","UndoTrackedVariables","Unequal","UnequalTo","Unevaluated","UniformDistribution","UniformGraphDistribution","UniformPolyhedron","UniformSumDistribution","Uninstall","Union","UnionedEntityClass","UnionPlus","Unique","UnitaryMatrixQ","UnitBox","UnitConvert","UnitDimensions","Unitize","UnitRootTest","UnitSimplify","UnitStep","UnitSystem","UnitTriangle","UnitVector","UnitVectorLayer","UnityDimensions","UniverseModelData","UniversityData","UnixTime","Unprotect","UnregisterExternalEvaluator","UnsameQ","UnsavedVariables","Unset","UnsetShared","UntrackedVariables","Up","UpArrow","UpArrowBar","UpArrowDownArrow","Update","UpdateDynamicObjects","UpdateDynamicObjectsSynchronous","UpdateInterval","UpdatePacletSites","UpdateSearchIndex","UpDownArrow","UpEquilibrium","UpperCaseQ","UpperLeftArrow","UpperRightArrow","UpperTriangularize","UpperTriangularMatrixQ","Upsample","UpSet","UpSetDelayed","UpTee","UpTeeArrow","UpTo","UpValues","URL","URLBuild","URLDecode","URLDispatcher","URLDownload","URLDownloadSubmit","URLEncode","URLExecute","URLExpand","URLFetch","URLFetchAsynchronous","URLParse","URLQueryDecode","URLQueryEncode","URLRead","URLResponseTime","URLSave","URLSaveAsynchronous","URLShorten","URLSubmit","UseGraphicsRange","UserDefinedWavelet","Using","UsingFrontEnd","UtilityFunction","V2Get","ValenceErrorHandling","ValidationLength","ValidationSet","Value","ValueBox","ValueBoxOptions","ValueDimensions","ValueForm","ValuePreprocessingFunction","ValueQ","Values","ValuesData","Variables","Variance","VarianceEquivalenceTest","VarianceEstimatorFunction","VarianceGammaDistribution","VarianceTest","VectorAngle","VectorAround","VectorAspectRatio","VectorColorFunction","VectorColorFunctionScaling","VectorDensityPlot","VectorGlyphData","VectorGreater","VectorGreaterEqual","VectorLess","VectorLessEqual","VectorMarkers","VectorPlot","VectorPlot3D","VectorPoints","VectorQ","VectorRange","Vectors","VectorScale","VectorScaling","VectorSizes","VectorStyle","Vee","Verbatim","Verbose","VerboseConvertToPostScriptPacket","VerificationTest","VerifyConvergence","VerifyDerivedKey","VerifyDigitalSignature","VerifyFileSignature","VerifyInterpretation","VerifySecurityCertificates","VerifySolutions","VerifyTestAssumptions","Version","VersionedPreferences","VersionNumber","VertexAdd","VertexCapacity","VertexColors","VertexComponent","VertexConnectivity","VertexContract","VertexCoordinateRules","VertexCoordinates","VertexCorrelationSimilarity","VertexCosineSimilarity","VertexCount","VertexCoverQ","VertexDataCoordinates","VertexDegree","VertexDelete","VertexDiceSimilarity","VertexEccentricity","VertexInComponent","VertexInDegree","VertexIndex","VertexJaccardSimilarity","VertexLabeling","VertexLabels","VertexLabelStyle","VertexList","VertexNormals","VertexOutComponent","VertexOutDegree","VertexQ","VertexRenderingFunction","VertexReplace","VertexShape","VertexShapeFunction","VertexSize","VertexStyle","VertexTextureCoordinates","VertexWeight","VertexWeightedGraphQ","Vertical","VerticalBar","VerticalForm","VerticalGauge","VerticalSeparator","VerticalSlider","VerticalTilde","Video","VideoEncoding","VideoExtractFrames","VideoFrameList","VideoFrameMap","VideoPause","VideoPlay","VideoQ","VideoStop","VideoStream","VideoStreams","VideoTimeSeries","VideoTracks","VideoTrim","ViewAngle","ViewCenter","ViewMatrix","ViewPoint","ViewPointSelectorSettings","ViewPort","ViewProjection","ViewRange","ViewVector","ViewVertical","VirtualGroupData","Visible","VisibleCell","VoiceStyleData","VoigtDistribution","VolcanoData","Volume","VonMisesDistribution","VoronoiMesh","WaitAll","WaitAsynchronousTask","WaitNext","WaitUntil","WakebyDistribution","WalleniusHypergeometricDistribution","WaringYuleDistribution","WarpingCorrespondence","WarpingDistance","WatershedComponents","WatsonUSquareTest","WattsStrogatzGraphDistribution","WaveletBestBasis","WaveletFilterCoefficients","WaveletImagePlot","WaveletListPlot","WaveletMapIndexed","WaveletMatrixPlot","WaveletPhi","WaveletPsi","WaveletScale","WaveletScalogram","WaveletThreshold","WeaklyConnectedComponents","WeaklyConnectedGraphComponents","WeaklyConnectedGraphQ","WeakStationarity","WeatherData","WeatherForecastData","WebAudioSearch","WebElementObject","WeberE","WebExecute","WebImage","WebImageSearch","WebSearch","WebSessionObject","WebSessions","WebWindowObject","Wedge","Wednesday","WeibullDistribution","WeierstrassE1","WeierstrassE2","WeierstrassE3","WeierstrassEta1","WeierstrassEta2","WeierstrassEta3","WeierstrassHalfPeriods","WeierstrassHalfPeriodW1","WeierstrassHalfPeriodW2","WeierstrassHalfPeriodW3","WeierstrassInvariantG2","WeierstrassInvariantG3","WeierstrassInvariants","WeierstrassP","WeierstrassPPrime","WeierstrassSigma","WeierstrassZeta","WeightedAdjacencyGraph","WeightedAdjacencyMatrix","WeightedData","WeightedGraphQ","Weights","WelchWindow","WheelGraph","WhenEvent","Which","While","White","WhiteNoiseProcess","WhitePoint","Whitespace","WhitespaceCharacter","WhittakerM","WhittakerW","WienerFilter","WienerProcess","WignerD","WignerSemicircleDistribution","WikidataData","WikidataSearch","WikipediaData","WikipediaSearch","WilksW","WilksWTest","WindDirectionData","WindingCount","WindingPolygon","WindowClickSelect","WindowElements","WindowFloating","WindowFrame","WindowFrameElements","WindowMargins","WindowMovable","WindowOpacity","WindowPersistentStyles","WindowSelected","WindowSize","WindowStatusArea","WindowTitle","WindowToolbars","WindowWidth","WindSpeedData","WindVectorData","WinsorizedMean","WinsorizedVariance","WishartMatrixDistribution","With","WolframAlpha","WolframAlphaDate","WolframAlphaQuantity","WolframAlphaResult","WolframLanguageData","Word","WordBoundary","WordCharacter","WordCloud","WordCount","WordCounts","WordData","WordDefinition","WordFrequency","WordFrequencyData","WordList","WordOrientation","WordSearch","WordSelectionFunction","WordSeparators","WordSpacings","WordStem","WordTranslation","WorkingPrecision","WrapAround","Write","WriteLine","WriteString","Wronskian","XMLElement","XMLObject","XMLTemplate","Xnor","Xor","XYZColor","Yellow","Yesterday","YuleDissimilarity","ZernikeR","ZeroSymmetric","ZeroTest","ZeroWidthTimes","Zeta","ZetaZero","ZIPCodeData","ZipfDistribution","ZoomCenter","ZoomFactor","ZTest","ZTransform","$Aborted","$ActivationGroupID","$ActivationKey","$ActivationUserRegistered","$AddOnsDirectory","$AllowDataUpdates","$AllowExternalChannelFunctions","$AllowInternet","$AssertFunction","$Assumptions","$AsynchronousTask","$AudioDecoders","$AudioEncoders","$AudioInputDevices","$AudioOutputDevices","$BaseDirectory","$BasePacletsDirectory","$BatchInput","$BatchOutput","$BlockchainBase","$BoxForms","$ByteOrdering","$CacheBaseDirectory","$Canceled","$ChannelBase","$CharacterEncoding","$CharacterEncodings","$CloudAccountName","$CloudBase","$CloudConnected","$CloudConnection","$CloudCreditsAvailable","$CloudEvaluation","$CloudExpressionBase","$CloudObjectNameFormat","$CloudObjectURLType","$CloudRootDirectory","$CloudSymbolBase","$CloudUserID","$CloudUserUUID","$CloudVersion","$CloudVersionNumber","$CloudWolframEngineVersionNumber","$CommandLine","$CompilationTarget","$ConditionHold","$ConfiguredKernels","$Context","$ContextPath","$ControlActiveSetting","$Cookies","$CookieStore","$CreationDate","$CurrentLink","$CurrentTask","$CurrentWebSession","$DataStructures","$DateStringFormat","$DefaultAudioInputDevice","$DefaultAudioOutputDevice","$DefaultFont","$DefaultFrontEnd","$DefaultImagingDevice","$DefaultLocalBase","$DefaultMailbox","$DefaultNetworkInterface","$DefaultPath","$DefaultProxyRules","$DefaultSystemCredentialStore","$Display","$DisplayFunction","$DistributedContexts","$DynamicEvaluation","$Echo","$EmbedCodeEnvironments","$EmbeddableServices","$EntityStores","$Epilog","$EvaluationCloudBase","$EvaluationCloudObject","$EvaluationEnvironment","$ExportFormats","$ExternalIdentifierTypes","$ExternalStorageBase","$Failed","$FinancialDataSource","$FontFamilies","$FormatType","$FrontEnd","$FrontEndSession","$GeoEntityTypes","$GeoLocation","$GeoLocationCity","$GeoLocationCountry","$GeoLocationPrecision","$GeoLocationSource","$HistoryLength","$HomeDirectory","$HTMLExportRules","$HTTPCookies","$HTTPRequest","$IgnoreEOF","$ImageFormattingWidth","$ImageResolution","$ImagingDevice","$ImagingDevices","$ImportFormats","$IncomingMailSettings","$InitialDirectory","$Initialization","$InitializationContexts","$Input","$InputFileName","$InputStreamMethods","$Inspector","$InstallationDate","$InstallationDirectory","$InterfaceEnvironment","$InterpreterTypes","$IterationLimit","$KernelCount","$KernelID","$Language","$LaunchDirectory","$LibraryPath","$LicenseExpirationDate","$LicenseID","$LicenseProcesses","$LicenseServer","$LicenseSubprocesses","$LicenseType","$Line","$Linked","$LinkSupported","$LoadedFiles","$LocalBase","$LocalSymbolBase","$MachineAddresses","$MachineDomain","$MachineDomains","$MachineEpsilon","$MachineID","$MachineName","$MachinePrecision","$MachineType","$MaxExtraPrecision","$MaxLicenseProcesses","$MaxLicenseSubprocesses","$MaxMachineNumber","$MaxNumber","$MaxPiecewiseCases","$MaxPrecision","$MaxRootDegree","$MessageGroups","$MessageList","$MessagePrePrint","$Messages","$MinMachineNumber","$MinNumber","$MinorReleaseNumber","$MinPrecision","$MobilePhone","$ModuleNumber","$NetworkConnected","$NetworkInterfaces","$NetworkLicense","$NewMessage","$NewSymbol","$NotebookInlineStorageLimit","$Notebooks","$NoValue","$NumberMarks","$Off","$OperatingSystem","$Output","$OutputForms","$OutputSizeLimit","$OutputStreamMethods","$Packages","$ParentLink","$ParentProcessID","$PasswordFile","$PatchLevelID","$Path","$PathnameSeparator","$PerformanceGoal","$Permissions","$PermissionsGroupBase","$PersistenceBase","$PersistencePath","$PipeSupported","$PlotTheme","$Post","$Pre","$PreferencesDirectory","$PreInitialization","$PrePrint","$PreRead","$PrintForms","$PrintLiteral","$Printout3DPreviewer","$ProcessID","$ProcessorCount","$ProcessorType","$ProductInformation","$ProgramName","$PublisherID","$RandomState","$RecursionLimit","$RegisteredDeviceClasses","$RegisteredUserName","$ReleaseNumber","$RequesterAddress","$RequesterWolframID","$RequesterWolframUUID","$RootDirectory","$ScheduledTask","$ScriptCommandLine","$ScriptInputString","$SecuredAuthenticationKeyTokens","$ServiceCreditsAvailable","$Services","$SessionID","$SetParentLink","$SharedFunctions","$SharedVariables","$SoundDisplay","$SoundDisplayFunction","$SourceLink","$SSHAuthentication","$SubtitleDecoders","$SubtitleEncoders","$SummaryBoxDataSizeLimit","$SuppressInputFormHeads","$SynchronousEvaluation","$SyntaxHandler","$System","$SystemCharacterEncoding","$SystemCredentialStore","$SystemID","$SystemMemory","$SystemShell","$SystemTimeZone","$SystemWordLength","$TemplatePath","$TemporaryDirectory","$TemporaryPrefix","$TestFileName","$TextStyle","$TimedOut","$TimeUnit","$TimeZone","$TimeZoneEntity","$TopDirectory","$TraceOff","$TraceOn","$TracePattern","$TracePostAction","$TracePreAction","$UnitSystem","$Urgent","$UserAddOnsDirectory","$UserAgentLanguages","$UserAgentMachine","$UserAgentName","$UserAgentOperatingSystem","$UserAgentString","$UserAgentVersion","$UserBaseDirectory","$UserBasePacletsDirectory","$UserDocumentsDirectory","$Username","$UserName","$UserURLBase","$Version","$VersionNumber","$VideoDecoders","$VideoEncoders","$VoiceStyles","$WolframDocumentsDirectory","$WolframID","$WolframUUID"];function VS(e){return e?"string"==typeof e?e:e.source:null}function qS(e){return zS("(",e,")?")}function zS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return VS(e)})).join("");return a}function WS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return VS(e)})).join("|")+")";return a}var $S=function(e){var t=WS(zS(/([2-9]|[1-2]\d|[3][0-5])\^\^/,/(\w*\.\w+|\w+\.\w*|\w+)/),/(\d*\.\d+|\d+\.\d*|\d+)/),n={className:"number",relevance:0,begin:zS(t,qS(WS(/``[+-]?(\d*\.\d+|\d+\.\d*|\d+)/,/`([+-]?(\d*\.\d+|\d+\.\d*|\d+))?/)),qS(/\*\^[+-]?\d+/))},a=/[a-zA-Z$][a-zA-Z0-9$]*/,r=new Set(HS),i={variants:[{className:"builtin-symbol",begin:a,"on:begin":function(e,t){r.has(e[0])||t.ignoreMatch()}},{className:"symbol",relevance:0,begin:a}]},o={className:"message-name",relevance:0,begin:zS("::",a)};return{name:"Mathematica",aliases:["mma","wl"],classNameAliases:{brace:"punctuation",pattern:"type",slot:"type",symbol:"variable","named-character":"variable","builtin-symbol":"built_in","message-name":"string"},contains:[e.COMMENT(/\(\*/,/\*\)/,{contains:["self"]}),{className:"pattern",relevance:0,begin:/([a-zA-Z$][a-zA-Z0-9$]*)?_+([a-zA-Z$][a-zA-Z0-9$]*)?/},{className:"slot",relevance:0,begin:/#[a-zA-Z$][a-zA-Z0-9$]*|#+[0-9]?/},o,i,{className:"named-character",begin:/\\\[[$a-zA-Z][$a-zA-Z0-9]+\]/},e.QUOTE_STRING_MODE,n,{className:"operator",relevance:0,begin:/[+\-*/,;.:@~=><&|_`'^?!%]+/},{className:"brace",relevance:0,begin:/[[\](){}]/}]}};var QS=function(e){var t="('|\\.')+",n={relevance:0,contains:[{begin:t}]};return{name:"Matlab",keywords:{keyword:"arguments break case catch classdef continue else elseif end enumeration events for function global if methods otherwise parfor persistent properties return spmd switch try while",built_in:"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i|0 inf nan isnan isinf isfinite j|0 why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson max min nanmax nanmin mean nanmean type table readtable writetable sortrows sort figure plot plot3 scatter scatter3 cellfun legend intersect ismember procrustes hold num2cell "},illegal:'(//|"|#|/\\*|\\s+/\\w+)',contains:[{className:"function",beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}]}]},{className:"built_in",begin:/true|false/,relevance:0,starts:n},{begin:"[a-zA-Z][a-zA-Z_0-9]*('|\\.')+",relevance:0},{className:"number",begin:e.C_NUMBER_RE,relevance:0,starts:n},{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{begin:"''"}]},{begin:/\]|\}|\)/,relevance:0,starts:n},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE,{begin:'""'}],starts:n},e.COMMENT("^\\s*%\\{\\s*$","^\\s*%\\}\\s*$"),e.COMMENT("%","$")]}};var KS=function(e){return{name:"Maxima",keywords:{$pattern:"[A-Za-z_%][0-9A-Za-z_%]*",keyword:"if then else elseif for thru do while unless step in and or not",literal:"true false unknown inf minf ind und %e %i %pi %phi %gamma",built_in:" abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type alias allroots alphacharp alphanumericp amortization %and annuity_fv annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2 applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method av average_degree backtrace bars barsplot barsplot_description base64 base64_decode bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description break bug_report build_info|10 buildq build_sample burn cabs canform canten cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2 charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps chinese cholesky christof chromatic_index chromatic_number cint circulant_graph clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse collectterms columnop columnspace columnswap columnvector combination combine comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph complete_graph complex_number_p components compose_functions concan concat conjugate conmetderiv connected_components connect_vertices cons constant constantp constituent constvalue cont2part content continuous_freq contortion contour_plot contract contract_edge contragrad contrib_ode convert coord copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1 covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate declare declare_constvalue declare_dimensions declare_fundamental_dimensions declare_fundamental_units declare_qty declare_translated declare_unit_conversion declare_units declare_weights decsym defcon define define_alt_display define_variable defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten delta demo demoivre denom depends derivdegree derivlist describe desolve determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export dimacs_import dimension dimensionless dimensions dimensions_as_list direct directory discrete_freq disjoin disjointp disolate disp dispcon dispform dispfun dispJordan display disprule dispterms distrib divide divisors divsum dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors euler ev eval_string evenp every evolution evolution2d evundiff example exp expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li expintegral_shi expintegral_si explicit explose exponentialize express expt exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge file_search file_type fillarray findde find_root find_root_abs find_root_error find_root_rel first fix flatten flength float floatnump floor flower_snark flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string get_pixel get_plot_option get_tex_environment get_tex_environment_default get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart imetric implicit implicit_derivative implicit_plot indexed_tensor indices induced_subgraph inferencep inference_result infix info_display init_atensor init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions integrate intersect intersection intervalp intopois intosum invariant1 invariant2 inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2 kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit Lindstedt linear linearinterpol linear_program linear_regression line_graph linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country make_polygon make_random_state make_rgb_picture makeset make_string_input_stream make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker max max_clique max_degree max_flow maximize_lp max_independent_set max_matching maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext newdet new_graph newline newton new_variable next_prime nicedummies niceindices ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst nthroot nullity nullspace num numbered_boundaries numberp number_to_octets num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin oid_to_octets op opena opena_binary openr openr_binary openw openw_binary operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface parg parGosper parse_string parse_timedate part part2cont partfrac partition partition_set partpol path_digraph path_graph pathname_directory pathname_name pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod powerseries powerset prefix prev_prime primep primes principal_components print printf printfile print_graph printpois printprops prodrac product properties propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2 quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan radius random random_bernoulli random_beta random_binomial random_bipartite_graph random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform random_exp random_f random_gamma random_general_finite_discrete random_geometric random_graph random_graph1 random_gumbel random_hypergeometric random_laplace random_logistic random_lognormal random_negative_binomial random_network random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto random_permutation random_poisson random_rayleigh random_regular_graph random_student_t random_tournament random_tree random_weibull range rank rat ratcoef ratdenom ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus rem remainder remarray rembox remcomps remcon remcoord remfun remfunction remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions remove_fundamental_units remove_plot_option remove_vertex rempart remrule remsym remvalue rename rename_file reset reset_displays residue resolvante resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann rinvariant risch rk rmdir rncombine romberg room rootscontract round row rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1 spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot starplot_description status std std1 std_bernoulli std_beta std_binomial std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull stemplot stirling stirling1 stirling2 strim striml strimr string stringout stringp strong_components struve_h struve_l sublis sublist sublist_indices submatrix subsample subset subsetp subst substinpart subst_parallel substpart substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext symbolp symmdifference symmetricp system take_channel take_inference tan tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference test_normality test_proportion test_proportions_difference test_rank_sum test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep totalfourier totient tpartpol trace tracematrix trace_options transform_sample translate translate_file transpose treefale tree_reduce treillis treinat triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget ultraspherical underlying_graph undiff union unique uniteigenvectors unitp units unit_step unitvector unorder unsum untellrat untimer untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table absboxchar activecontexts adapt_depth additive adim aform algebraic algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top azimuth background background_color backsubst berlefact bernstein_explicit besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest border boundaries_array box boxchar breakup %c capping cauchysum cbrange cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics colorbox columns commutative complex cone context contexts contour contour_levels cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp cube current_let_rule_package cylinder data_file_name debugmode decreasing default_let_rule_package delay dependencies derivabbrev derivsubst detout diagmetric diff dim dimensions dispflag display2d|10 display_format_internal distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart edge_color edge_coloring edge_partition edge_type edge_width %edispflag elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine factlim factorflag factorial_expand factors_only fb feature features file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10 file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color fill_density filled_func fixed_vertices flipflag float2bf font font_size fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both head_length head_type height hypergeometric_representation %iargs ibase icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued integrate_use_rootsof integration_constant integration_constant_counter interpolate_color intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10 maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties opsubst optimprefix optionset orientation origin orthopoly_returns_intervals outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart png_file pochhammer_max_index points pointsize point_size points_joined point_type poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list poly_secondary_elimination_order poly_top_reduction_only posfun position powerdisp pred prederror primep_number_of_tests product_use_gamma program programmode promote_float_to_bigfloat prompt proportional_axes props psexpand ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type show_vertices show_weight simp simplified_output simplify_products simpproduct simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch tr track transcompile transform transform_xy translate_fast_arrays transparent transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest",symbol:"_ __ %|0 %%|0"},contains:[{className:"comment",begin:"/\\*",end:"\\*/",contains:["self"]},e.QUOTE_STRING_MODE,{className:"number",relevance:0,variants:[{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b"},{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Bb][-+]?\\d+\\b",relevance:10},{begin:"\\b(\\.\\d+|\\d+\\.\\d+)\\b"},{begin:"\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b"}]}],illegal:/@/}};var jS=function(e){return{name:"MEL",keywords:"int float string vector matrix if else switch case default while do for in break continue global proc return about abs addAttr addAttributeEditorNodeHelp addDynamic addNewShelfTab addPP addPanelCategory addPrefixToName advanceToNextDrivenKey affectedNet affects aimConstraint air alias aliasAttr align alignCtx alignCurve alignSurface allViewFit ambientLight angle angleBetween animCone animCurveEditor animDisplay animView annotate appendStringArray applicationName applyAttrPreset applyTake arcLenDimContext arcLengthDimension arclen arrayMapper art3dPaintCtx artAttrCtx artAttrPaintVertexCtx artAttrSkinPaintCtx artAttrTool artBuildPaintMenu artFluidAttrCtx artPuttyCtx artSelectCtx artSetPaintCtx artUserPaintCtx assignCommand assignInputDevice assignViewportFactories attachCurve attachDeviceAttr attachSurface attrColorSliderGrp attrCompatibility attrControlGrp attrEnumOptionMenu attrEnumOptionMenuGrp attrFieldGrp attrFieldSliderGrp attrNavigationControlGrp attrPresetEditWin attributeExists attributeInfo attributeMenu attributeQuery autoKeyframe autoPlace bakeClip bakeFluidShading bakePartialHistory bakeResults bakeSimulation basename basenameEx batchRender bessel bevel bevelPlus binMembership bindSkin blend2 blendShape blendShapeEditor blendShapePanel blendTwoAttr blindDataType boneLattice boundary boxDollyCtx boxZoomCtx bufferCurve buildBookmarkMenu buildKeyframeMenu button buttonManip CBG cacheFile cacheFileCombine cacheFileMerge cacheFileTrack camera cameraView canCreateManip canvas capitalizeString catch catchQuiet ceil changeSubdivComponentDisplayLevel changeSubdivRegion channelBox character characterMap characterOutlineEditor characterize chdir checkBox checkBoxGrp checkDefaultRenderGlobals choice circle circularFillet clamp clear clearCache clip clipEditor clipEditorCurrentTimeCtx clipSchedule clipSchedulerOutliner clipTrimBefore closeCurve closeSurface cluster cmdFileOutput cmdScrollFieldExecuter cmdScrollFieldReporter cmdShell coarsenSubdivSelectionList collision color colorAtPoint colorEditor colorIndex colorIndexSliderGrp colorSliderButtonGrp colorSliderGrp columnLayout commandEcho commandLine commandPort compactHairSystem componentEditor compositingInterop computePolysetVolume condition cone confirmDialog connectAttr connectControl connectDynamic connectJoint connectionInfo constrain constrainValue constructionHistory container containsMultibyte contextInfo control convertFromOldLayers convertIffToPsd convertLightmap convertSolidTx convertTessellation convertUnit copyArray copyFlexor copyKey copySkinWeights cos cpButton cpCache cpClothSet cpCollision cpConstraint cpConvClothToMesh cpForces cpGetSolverAttr cpPanel cpProperty cpRigidCollisionFilter cpSeam cpSetEdit cpSetSolverAttr cpSolver cpSolverTypes cpTool cpUpdateClothUVs createDisplayLayer createDrawCtx createEditor createLayeredPsdFile createMotionField createNewShelf createNode createRenderLayer createSubdivRegion cross crossProduct ctxAbort ctxCompletion ctxEditMode ctxTraverse currentCtx currentTime currentTimeCtx currentUnit curve curveAddPtCtx curveCVCtx curveEPCtx curveEditorCtx curveIntersect curveMoveEPCtx curveOnSurface curveSketchCtx cutKey cycleCheck cylinder dagPose date defaultLightListCheckBox defaultNavigation defineDataServer defineVirtualDevice deformer deg_to_rad delete deleteAttr deleteShadingGroupsAndMaterials deleteShelfTab deleteUI deleteUnusedBrushes delrandstr detachCurve detachDeviceAttr detachSurface deviceEditor devicePanel dgInfo dgdirty dgeval dgtimer dimWhen directKeyCtx directionalLight dirmap dirname disable disconnectAttr disconnectJoint diskCache displacementToPoly displayAffected displayColor displayCull displayLevelOfDetail displayPref displayRGBColor displaySmoothness displayStats displayString displaySurface distanceDimContext distanceDimension doBlur dolly dollyCtx dopeSheetEditor dot dotProduct doubleProfileBirailSurface drag dragAttrContext draggerContext dropoffLocator duplicate duplicateCurve duplicateSurface dynCache dynControl dynExport dynExpression dynGlobals dynPaintEditor dynParticleCtx dynPref dynRelEdPanel dynRelEditor dynamicLoad editAttrLimits editDisplayLayerGlobals editDisplayLayerMembers editRenderLayerAdjustment editRenderLayerGlobals editRenderLayerMembers editor editorTemplate effector emit emitter enableDevice encodeString endString endsWith env equivalent equivalentTol erf error eval evalDeferred evalEcho event exactWorldBoundingBox exclusiveLightCheckBox exec executeForEachObject exists exp expression expressionEditorListen extendCurve extendSurface extrude fcheck fclose feof fflush fgetline fgetword file fileBrowserDialog fileDialog fileExtension fileInfo filetest filletCurve filter filterCurve filterExpand filterStudioImport findAllIntersections findAnimCurves findKeyframe findMenuItem findRelatedSkinCluster finder firstParentOf fitBspline flexor floatEq floatField floatFieldGrp floatScrollBar floatSlider floatSlider2 floatSliderButtonGrp floatSliderGrp floor flow fluidCacheInfo fluidEmitter fluidVoxelInfo flushUndo fmod fontDialog fopen formLayout format fprint frameLayout fread freeFormFillet frewind fromNativePath fwrite gamma gauss geometryConstraint getApplicationVersionAsFloat getAttr getClassification getDefaultBrush getFileList getFluidAttr getInputDeviceRange getMayaPanelTypes getModifiers getPanel getParticleAttr getPluginResource getenv getpid glRender glRenderEditor globalStitch gmatch goal gotoBindPose grabColor gradientControl gradientControlNoAttr graphDollyCtx graphSelectContext graphTrackCtx gravity grid gridLayout group groupObjectsByName HfAddAttractorToAS HfAssignAS HfBuildEqualMap HfBuildFurFiles HfBuildFurImages HfCancelAFR HfConnectASToHF HfCreateAttractor HfDeleteAS HfEditAS HfPerformCreateAS HfRemoveAttractorFromAS HfSelectAttached HfSelectAttractors HfUnAssignAS hardenPointCurve hardware hardwareRenderPanel headsUpDisplay headsUpMessage help helpLine hermite hide hilite hitTest hotBox hotkey hotkeyCheck hsv_to_rgb hudButton hudSlider hudSliderButton hwReflectionMap hwRender hwRenderLoad hyperGraph hyperPanel hyperShade hypot iconTextButton iconTextCheckBox iconTextRadioButton iconTextRadioCollection iconTextScrollList iconTextStaticLabel ikHandle ikHandleCtx ikHandleDisplayScale ikSolver ikSplineHandleCtx ikSystem ikSystemInfo ikfkDisplayMethod illustratorCurves image imfPlugins inheritTransform insertJoint insertJointCtx insertKeyCtx insertKnotCurve insertKnotSurface instance instanceable instancer intField intFieldGrp intScrollBar intSlider intSliderGrp interToUI internalVar intersect iprEngine isAnimCurve isConnected isDirty isParentOf isSameObject isTrue isValidObjectName isValidString isValidUiName isolateSelect itemFilter itemFilterAttr itemFilterRender itemFilterType joint jointCluster jointCtx jointDisplayScale jointLattice keyTangent keyframe keyframeOutliner keyframeRegionCurrentTimeCtx keyframeRegionDirectKeyCtx keyframeRegionDollyCtx keyframeRegionInsertKeyCtx keyframeRegionMoveKeyCtx keyframeRegionScaleKeyCtx keyframeRegionSelectKeyCtx keyframeRegionSetKeyCtx keyframeRegionTrackCtx keyframeStats lassoContext lattice latticeDeformKeyCtx launch launchImageEditor layerButton layeredShaderPort layeredTexturePort layout layoutDialog lightList lightListEditor lightListPanel lightlink lineIntersection linearPrecision linstep listAnimatable listAttr listCameras listConnections listDeviceAttachments listHistory listInputDeviceAxes listInputDeviceButtons listInputDevices listMenuAnnotation listNodeTypes listPanelCategories listRelatives listSets listTransforms listUnselected listerEditor loadFluid loadNewShelf loadPlugin loadPluginLanguageResources loadPrefObjects localizedPanelLabel lockNode loft log longNameOf lookThru ls lsThroughFilter lsType lsUI Mayatomr mag makeIdentity makeLive makePaintable makeRoll makeSingleSurface makeTubeOn makebot manipMoveContext manipMoveLimitsCtx manipOptions manipRotateContext manipRotateLimitsCtx manipScaleContext manipScaleLimitsCtx marker match max memory menu menuBarLayout menuEditor menuItem menuItemToShelf menuSet menuSetPref messageLine min minimizeApp mirrorJoint modelCurrentTimeCtx modelEditor modelPanel mouse movIn movOut move moveIKtoFK moveKeyCtx moveVertexAlongDirection multiProfileBirailSurface mute nParticle nameCommand nameField namespace namespaceInfo newPanelItems newton nodeCast nodeIconButton nodeOutliner nodePreset nodeType noise nonLinear normalConstraint normalize nurbsBoolean nurbsCopyUVSet nurbsCube nurbsEditUV nurbsPlane nurbsSelect nurbsSquare nurbsToPoly nurbsToPolygonsPref nurbsToSubdiv nurbsToSubdivPref nurbsUVSet nurbsViewDirectionVector objExists objectCenter objectLayer objectType objectTypeUI obsoleteProc oceanNurbsPreviewPlane offsetCurve offsetCurveOnSurface offsetSurface openGLExtension openMayaPref optionMenu optionMenuGrp optionVar orbit orbitCtx orientConstraint outlinerEditor outlinerPanel overrideModifier paintEffectsDisplay pairBlend palettePort paneLayout panel panelConfiguration panelHistory paramDimContext paramDimension paramLocator parent parentConstraint particle particleExists particleInstancer particleRenderInfo partition pasteKey pathAnimation pause pclose percent performanceOptions pfxstrokes pickWalk picture pixelMove planarSrf plane play playbackOptions playblast plugAttr plugNode pluginInfo pluginResourceUtil pointConstraint pointCurveConstraint pointLight pointMatrixMult pointOnCurve pointOnSurface pointPosition poleVectorConstraint polyAppend polyAppendFacetCtx polyAppendVertex polyAutoProjection polyAverageNormal polyAverageVertex polyBevel polyBlendColor polyBlindData polyBoolOp polyBridgeEdge polyCacheMonitor polyCheck polyChipOff polyClipboard polyCloseBorder polyCollapseEdge polyCollapseFacet polyColorBlindData polyColorDel polyColorPerVertex polyColorSet polyCompare polyCone polyCopyUV polyCrease polyCreaseCtx polyCreateFacet polyCreateFacetCtx polyCube polyCut polyCutCtx polyCylinder polyCylindricalProjection polyDelEdge polyDelFacet polyDelVertex polyDuplicateAndConnect polyDuplicateEdge polyEditUV polyEditUVShell polyEvaluate polyExtrudeEdge polyExtrudeFacet polyExtrudeVertex polyFlipEdge polyFlipUV polyForceUV polyGeoSampler polyHelix polyInfo polyInstallAction polyLayoutUV polyListComponentConversion polyMapCut polyMapDel polyMapSew polyMapSewMove polyMergeEdge polyMergeEdgeCtx polyMergeFacet polyMergeFacetCtx polyMergeUV polyMergeVertex polyMirrorFace polyMoveEdge polyMoveFacet polyMoveFacetUV polyMoveUV polyMoveVertex polyNormal polyNormalPerVertex polyNormalizeUV polyOptUvs polyOptions polyOutput polyPipe polyPlanarProjection polyPlane polyPlatonicSolid polyPoke polyPrimitive polyPrism polyProjection polyPyramid polyQuad polyQueryBlindData polyReduce polySelect polySelectConstraint polySelectConstraintMonitor polySelectCtx polySelectEditCtx polySeparate polySetToFaceNormal polySewEdge polyShortestPathCtx polySmooth polySoftEdge polySphere polySphericalProjection polySplit polySplitCtx polySplitEdge polySplitRing polySplitVertex polyStraightenUVBorder polySubdivideEdge polySubdivideFacet polyToSubdiv polyTorus polyTransfer polyTriangulate polyUVSet polyUnite polyWedgeFace popen popupMenu pose pow preloadRefEd print progressBar progressWindow projFileViewer projectCurve projectTangent projectionContext projectionManip promptDialog propModCtx propMove psdChannelOutliner psdEditTextureFile psdExport psdTextureFile putenv pwd python querySubdiv quit rad_to_deg radial radioButton radioButtonGrp radioCollection radioMenuItemCollection rampColorPort rand randomizeFollicles randstate rangeControl readTake rebuildCurve rebuildSurface recordAttr recordDevice redo reference referenceEdit referenceQuery refineSubdivSelectionList refresh refreshAE registerPluginResource rehash reloadImage removeJoint removeMultiInstance removePanelCategory rename renameAttr renameSelectionList renameUI render renderGlobalsNode renderInfo renderLayerButton renderLayerParent renderLayerPostProcess renderLayerUnparent renderManip renderPartition renderQualityNode renderSettings renderThumbnailUpdate renderWindowEditor renderWindowSelectContext renderer reorder reorderDeformers requires reroot resampleFluid resetAE resetPfxToPolyCamera resetTool resolutionNode retarget reverseCurve reverseSurface revolve rgb_to_hsv rigidBody rigidSolver roll rollCtx rootOf rot rotate rotationInterpolation roundConstantRadius rowColumnLayout rowLayout runTimeCommand runup sampleImage saveAllShelves saveAttrPreset saveFluid saveImage saveInitialState saveMenu savePrefObjects savePrefs saveShelf saveToolSettings scale scaleBrushBrightness scaleComponents scaleConstraint scaleKey scaleKeyCtx sceneEditor sceneUIReplacement scmh scriptCtx scriptEditorInfo scriptJob scriptNode scriptTable scriptToShelf scriptedPanel scriptedPanelType scrollField scrollLayout sculpt searchPathArray seed selLoadSettings select selectContext selectCurveCV selectKey selectKeyCtx selectKeyframeRegionCtx selectMode selectPref selectPriority selectType selectedNodes selectionConnection separator setAttr setAttrEnumResource setAttrMapping setAttrNiceNameResource setConstraintRestPosition setDefaultShadingGroup setDrivenKeyframe setDynamic setEditCtx setEditor setFluidAttr setFocus setInfinity setInputDeviceMapping setKeyCtx setKeyPath setKeyframe setKeyframeBlendshapeTargetWts setMenuMode setNodeNiceNameResource setNodeTypeFlag setParent setParticleAttr setPfxToPolyCamera setPluginResource setProject setStampDensity setStartupMessage setState setToolTo setUITemplate setXformManip sets shadingConnection shadingGeometryRelCtx shadingLightRelCtx shadingNetworkCompare shadingNode shapeCompare shelfButton shelfLayout shelfTabLayout shellField shortNameOf showHelp showHidden showManipCtx showSelectionInTitle showShadingGroupAttrEditor showWindow sign simplify sin singleProfileBirailSurface size sizeBytes skinCluster skinPercent smoothCurve smoothTangentSurface smoothstep snap2to2 snapKey snapMode snapTogetherCtx snapshot soft softMod softModCtx sort sound soundControl source spaceLocator sphere sphrand spotLight spotLightPreviewPort spreadSheetEditor spring sqrt squareSurface srtContext stackTrace startString startsWith stitchAndExplodeShell stitchSurface stitchSurfacePoints strcmp stringArrayCatenate stringArrayContains stringArrayCount stringArrayInsertAtIndex stringArrayIntersector stringArrayRemove stringArrayRemoveAtIndex stringArrayRemoveDuplicates stringArrayRemoveExact stringArrayToString stringToStringArray strip stripPrefixFromName stroke subdAutoProjection subdCleanTopology subdCollapse subdDuplicateAndConnect subdEditUV subdListComponentConversion subdMapCut subdMapSewMove subdMatchTopology subdMirror subdToBlind subdToPoly subdTransferUVsToCache subdiv subdivCrease subdivDisplaySmoothness substitute substituteAllString substituteGeometry substring surface surfaceSampler surfaceShaderList swatchDisplayPort switchTable symbolButton symbolCheckBox sysFile system tabLayout tan tangentConstraint texLatticeDeformContext texManipContext texMoveContext texMoveUVShellContext texRotateContext texScaleContext texSelectContext texSelectShortestPathCtx texSmudgeUVContext texWinToolCtx text textCurves textField textFieldButtonGrp textFieldGrp textManip textScrollList textToShelf textureDisplacePlane textureHairColor texturePlacementContext textureWindow threadCount threePointArcCtx timeControl timePort timerX toNativePath toggle toggleAxis toggleWindowVisibility tokenize tokenizeList tolerance tolower toolButton toolCollection toolDropped toolHasOptions toolPropertyWindow torus toupper trace track trackCtx transferAttributes transformCompare transformLimits translator trim trunc truncateFluidCache truncateHairCache tumble tumbleCtx turbulence twoPointArcCtx uiRes uiTemplate unassignInputDevice undo undoInfo ungroup uniform unit unloadPlugin untangleUV untitledFileName untrim upAxis updateAE userCtx uvLink uvSnapshot validateShelfName vectorize view2dToolCtx viewCamera viewClipPlane viewFit viewHeadOn viewLookAt viewManip viewPlace viewSet visor volumeAxis vortex waitCursor warning webBrowser webBrowserPrefs whatIs window windowPref wire wireContext workspace wrinkle wrinkleContext writeTake xbmLangPathList xform",illegal:"</",contains:[e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/[$%@](\^\w\b|#\w+|[^\s\w{]|\{\w+\}|\w+)/},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var XS=function(e){var t=e.COMMENT("%","$"),n=e.inherit(e.APOS_STRING_MODE,{relevance:0}),a=e.inherit(e.QUOTE_STRING_MODE,{relevance:0});return a.contains=a.contains.slice(),a.contains.push({className:"subst",begin:"\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]",relevance:0}),{name:"Mercury",aliases:["m","moo"],keywords:{keyword:"module use_module import_module include_module end_module initialise mutable initialize finalize finalise interface implementation pred mode func type inst solver any_pred any_func is semidet det nondet multi erroneous failure cc_nondet cc_multi typeclass instance where pragma promise external trace atomic or_else require_complete_switch require_det require_semidet require_multi require_nondet require_cc_multi require_cc_nondet require_erroneous require_failure",meta:"inline no_inline type_spec source_file fact_table obsolete memo loop_check minimal_model terminates does_not_terminate check_termination promise_equivalent_clauses foreign_proc foreign_decl foreign_code foreign_type foreign_import_module foreign_export_enum foreign_export foreign_enum may_call_mercury will_not_call_mercury thread_safe not_thread_safe maybe_thread_safe promise_pure promise_semipure tabled_for_io local untrailed trailed attach_to_io_state can_pass_as_mercury_type stable will_not_throw_exception may_modify_trail will_not_modify_trail may_duplicate may_not_duplicate affects_liveness does_not_affect_liveness doesnt_affect_liveness no_sharing unknown_sharing sharing",built_in:"some all not if then else true fail false try catch catch_any semidet_true semidet_false semidet_fail impure_true impure semipure"},contains:[{className:"built_in",variants:[{begin:"<=>"},{begin:"<=",relevance:0},{begin:"=>",relevance:0},{begin:"/\\\\"},{begin:"\\\\/"}]},{className:"built_in",variants:[{begin:":-\\|--\x3e"},{begin:"=",relevance:0}]},t,e.C_BLOCK_COMMENT_MODE,{className:"number",begin:"0'.\\|0[box][0-9a-fA-F]*"},e.NUMBER_MODE,n,a,{begin:/:-/},{begin:/\.$/}]}};var ZS=function(e){return{name:"MIPS Assembly",case_insensitive:!0,aliases:["mips"],keywords:{$pattern:"\\.?"+e.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .ltorg ",built_in:"$0 $1 $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 $31 zero at v0 v1 a0 a1 a2 a3 a4 a5 a6 a7 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 s0 s1 s2 s3 s4 s5 s6 s7 s8 k0 k1 gp sp fp ra $f0 $f1 $f2 $f2 $f4 $f5 $f6 $f7 $f8 $f9 $f10 $f11 $f12 $f13 $f14 $f15 $f16 $f17 $f18 $f19 $f20 $f21 $f22 $f23 $f24 $f25 $f26 $f27 $f28 $f29 $f30 $f31 Context Random EntryLo0 EntryLo1 Context PageMask Wired EntryHi HWREna BadVAddr Count Compare SR IntCtl SRSCtl SRSMap Cause EPC PRId EBase Config Config1 Config2 Config3 LLAddr Debug DEPC DESAVE CacheErr ECC ErrorEPC TagLo DataLo TagHi DataHi WatchLo WatchHi PerfCtl PerfCnt "},contains:[{className:"keyword",begin:"\\b(addi?u?|andi?|b(al)?|beql?|bgez(al)?l?|bgtzl?|blezl?|bltz(al)?l?|bnel?|cl[oz]|divu?|ext|ins|j(al)?|jalr(\\.hb)?|jr(\\.hb)?|lbu?|lhu?|ll|lui|lw[lr]?|maddu?|mfhi|mflo|movn|movz|move|msubu?|mthi|mtlo|mul|multu?|nop|nor|ori?|rotrv?|sb|sc|se[bh]|sh|sllv?|slti?u?|srav?|srlv?|subu?|sw[lr]?|xori?|wsbh|abs\\.[sd]|add\\.[sd]|alnv.ps|bc1[ft]l?|c\\.(s?f|un|u?eq|[ou]lt|[ou]le|ngle?|seq|l[et]|ng[et])\\.[sd]|(ceil|floor|round|trunc)\\.[lw]\\.[sd]|cfc1|cvt\\.d\\.[lsw]|cvt\\.l\\.[dsw]|cvt\\.ps\\.s|cvt\\.s\\.[dlw]|cvt\\.s\\.p[lu]|cvt\\.w\\.[dls]|div\\.[ds]|ldx?c1|luxc1|lwx?c1|madd\\.[sd]|mfc1|mov[fntz]?\\.[ds]|msub\\.[sd]|mth?c1|mul\\.[ds]|neg\\.[ds]|nmadd\\.[ds]|nmsub\\.[ds]|p[lu][lu]\\.ps|recip\\.fmt|r?sqrt\\.[ds]|sdx?c1|sub\\.[ds]|suxc1|swx?c1|break|cache|d?eret|[de]i|ehb|mfc0|mtc0|pause|prefx?|rdhwr|rdpgpr|sdbbp|ssnop|synci?|syscall|teqi?|tgei?u?|tlb(p|r|w[ir])|tlti?u?|tnei?|wait|wrpgpr)",end:"\\s"},e.COMMENT("[;#](?!\\s*$)","$"),e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"0x[0-9a-f]+"},{begin:"\\b-?\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^\\s*[0-9]+:"},{begin:"[0-9]+[bf]"}],relevance:0}],illegal:/\//}};var JS=function(e){return{name:"Mizar",keywords:"environ vocabularies notations constructors definitions registrations theorems schemes requirements begin end definition registration cluster existence pred func defpred deffunc theorem proof let take assume then thus hence ex for st holds consider reconsider such that and in provided of as from be being by means equals implies iff redefine define now not or attr is mode suppose per cases set thesis contradiction scheme reserve struct correctness compatibility coherence symmetry assymetry reflexivity irreflexivity connectedness uniqueness commutativity idempotence involutiveness projectivity",contains:[e.COMMENT("::","$")]}};function eb(e){return e?"string"==typeof e?e:e.source:null}function tb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return eb(e)})).join("");return a}function nb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return eb(e)})).join("|")+")";return a}var ab=function(e){var t=/[dualxmsipngr]{0,12}/,n={$pattern:/[\w.]+/,keyword:["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"].join(" ")},a={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:n},r={begin:/->\{/,end:/\}/},i={variants:[{begin:/\$\d/},{begin:tb(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@][^\s\w{]/,relevance:0}]},o=[e.BACKSLASH_ESCAPE,a,i],s=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],l=function(e,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"\\1",r="\\1"===a?a:tb(a,n);return tb(tb("(?:",e,")"),n,/(?:\\.|[^\\\/])*?/,r,/(?:\\.|[^\\\/])*?/,a,t)},c=function(e,n,a){return tb(tb("(?:",e,")"),n,/(?:\\.|[^\\\/])*?/,a,t)},_=[i,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),r,{className:"string",contains:o,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:l("s|tr|y",nb.apply(void 0,s))},{begin:l("s|tr|y","\\(","\\)")},{begin:l("s|tr|y","\\[","\\]")},{begin:l("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:c("(?:m|qr)?",/\//,/\//)},{begin:c("m|qr",nb.apply(void 0,s),/\1/)},{begin:c("m|qr",/\(/,/\)/)},{begin:c("m|qr",/\[/,/\]/)},{begin:c("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return a.contains=_,r.contains=_,{name:"Perl",aliases:["pl","pm"],keywords:n,contains:_}};var rb=function(e){return{name:"Mojolicious",subLanguage:"xml",contains:[{className:"meta",begin:"^__(END|DATA)__$"},{begin:"^\\s*%{1,2}={0,2}",end:"$",subLanguage:"perl"},{begin:"<%{1,2}={0,2}",end:"={0,1}%>",subLanguage:"perl",excludeBegin:!0,excludeEnd:!0}]}};var ib=function(e){var t={className:"number",relevance:0,variants:[{begin:"[$][a-fA-F0-9]+"},e.NUMBER_MODE]};return{name:"Monkey",case_insensitive:!0,keywords:{keyword:"public private property continue exit extern new try catch eachin not abstract final select case default const local global field end if then else elseif endif while wend repeat until forever for to step next return module inline throw import",built_in:"DebugLog DebugStop Error Print ACos ACosr ASin ASinr ATan ATan2 ATan2r ATanr Abs Abs Ceil Clamp Clamp Cos Cosr Exp Floor Log Max Max Min Min Pow Sgn Sgn Sin Sinr Sqrt Tan Tanr Seed PI HALFPI TWOPI",literal:"true false null and or shl shr mod"},illegal:/\/\*/,contains:[e.COMMENT("#rem","#end"),e.COMMENT("'","$",{relevance:0}),{className:"function",beginKeywords:"function method",end:"[(=:]|$",illegal:/\n/,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"class",beginKeywords:"class interface",end:"$",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{className:"built_in",begin:"\\b(self|super)\\b"},{className:"meta",begin:"\\s*#",end:"$",keywords:{"meta-keyword":"if else elseif endif end then"}},{className:"meta",begin:"^\\s*strict\\b"},{beginKeywords:"alias",end:"=",contains:[e.UNDERSCORE_TITLE_MODE]},e.QUOTE_STRING_MODE,t]}};var ob=function(e){var t={keyword:"if then not for in while do return else elseif break continue switch and or unless when class extends super local import export from using",literal:"true false nil",built_in:"_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug io math os package string table"},n="[A-Za-z$_][0-9A-Za-z$_]*",a={className:"subst",begin:/#\{/,end:/\}/,keywords:t},r=[e.inherit(e.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a]}]},{className:"built_in",begin:"@__"+e.IDENT_RE},{begin:"@"+e.IDENT_RE},{begin:e.IDENT_RE+"\\\\"+e.IDENT_RE}];a.contains=r;var i=e.inherit(e.TITLE_MODE,{begin:n}),o="(\\(.*\\)\\s*)?\\B[-=]>",s={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(r)}]};return{name:"MoonScript",aliases:["moon"],keywords:t,illegal:/\/\*/,contains:r.concat([e.COMMENT("--","$"),{className:"function",begin:"^\\s*"+n+"\\s*=\\s*"+o,end:"[-=]>",returnBegin:!0,contains:[i,s]},{begin:/[\(,:=]\s*/,relevance:0,contains:[{className:"function",begin:o,end:"[-=]>",returnBegin:!0,contains:[s]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[i]},i]},{className:"name",begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}};var sb=function(e){return{name:"N1QL",case_insensitive:!0,contains:[{beginKeywords:"build create index delete drop explain infer|10 insert merge prepare select update upsert|10",end:/;/,endsWithParent:!0,keywords:{keyword:"all alter analyze and any array as asc begin between binary boolean break bucket build by call case cast cluster collate collection commit connect continue correlate cover create database dataset datastore declare decrement delete derived desc describe distinct do drop each element else end every except exclude execute exists explain fetch first flatten for force from function grant group gsi having if ignore ilike in include increment index infer inline inner insert intersect into is join key keys keyspace known last left let letting like limit lsm map mapping matched materialized merge minus namespace nest not number object offset on option or order outer over parse partition password path pool prepare primary private privilege procedure public raw realm reduce rename return returning revoke right role rollback satisfies schema select self semi set show some start statistics string system then to transaction trigger truncate under union unique unknown unnest unset update upsert use user using validate value valued values via view when where while with within work xor",literal:"true false null missing|5",built_in:"array_agg array_append array_concat array_contains array_count array_distinct array_ifnull array_length array_max array_min array_position array_prepend array_put array_range array_remove array_repeat array_replace array_reverse array_sort array_sum avg count max min sum greatest least ifmissing ifmissingornull ifnull missingif nullif ifinf ifnan ifnanorinf naninf neginfif posinfif clock_millis clock_str date_add_millis date_add_str date_diff_millis date_diff_str date_part_millis date_part_str date_trunc_millis date_trunc_str duration_to_str millis str_to_millis millis_to_str millis_to_utc millis_to_zone_name now_millis now_str str_to_duration str_to_utc str_to_zone_name decode_json encode_json encoded_size poly_length base64 base64_encode base64_decode meta uuid abs acos asin atan atan2 ceil cos degrees e exp ln log floor pi power radians random round sign sin sqrt tan trunc object_length object_names object_pairs object_inner_pairs object_values object_inner_values object_add object_put object_remove object_unwrap regexp_contains regexp_like regexp_position regexp_replace contains initcap length lower ltrim position repeat replace rtrim split substr title trim upper isarray isatom isboolean isnumber isobject isstring type toarray toatom toboolean tonumber toobject tostring"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE],relevance:2},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE]}};var lb=function(e){var t={className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{/,end:/\}/},{begin:/[$@]/+e.UNDERSCORE_IDENT_RE}]},n={endsWithParent:!0,keywords:{$pattern:"[a-z/_]+",literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[t]},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:"\\s\\^",end:"\\s|\\{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|\\{|;",returnEnd:!0},{begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number",begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{className:"number",begin:"\\b\\d+[kKmMgGdshdwy]*\\b",relevance:0},t]};return{name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{begin:e.UNDERSCORE_IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\{/,contains:[{className:"section",begin:e.UNDERSCORE_IDENT_RE}],relevance:0},{begin:e.UNDERSCORE_IDENT_RE+"\\s",end:";|\\{",returnBegin:!0,contains:[{className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:n}],relevance:0}],illegal:"[^\\s\\}]"}};var cb=function(e){return{name:"Nim",keywords:{keyword:"addr and as asm bind block break case cast const continue converter discard distinct div do elif else end enum except export finally for from func generic if import in include interface is isnot iterator let macro method mixin mod nil not notin object of or out proc ptr raise ref return shl shr static template try tuple type using var when while with without xor yield",literal:"shared guarded stdin stdout stderr result true false",built_in:"int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float float32 float64 bool char string cstring pointer expr stmt void auto any range array openarray varargs seq set clong culong cchar cschar cshort cint csize clonglong cfloat cdouble clongdouble cuchar cushort cuint culonglong cstringarray semistatic"},contains:[{className:"meta",begin:/\{\./,end:/\.\}/,relevance:10},{className:"string",begin:/[a-zA-Z]\w*"/,end:/"/,contains:[{begin:/""/}]},{className:"string",begin:/([a-zA-Z]\w*)?"""/,end:/"""/},e.QUOTE_STRING_MODE,{className:"type",begin:/\b[A-Z]\w+\b/,relevance:0},{className:"number",relevance:0,variants:[{begin:/\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/},{begin:/\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/}]},e.HASH_COMMENT_MODE]}};var _b=function(e){var t={keyword:"rec with let in inherit assert if else then",literal:"true false or and null",built_in:"import abort baseNameOf dirOf isNull builtins map removeAttrs throw toString derivation"},n={className:"subst",begin:/\$\{/,end:/\}/,keywords:t},a={className:"string",contains:[n],variants:[{begin:"''",end:"''"},{begin:'"',end:'"'}]},r=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/\S+/}]}];return n.contains=r,{name:"Nix",aliases:["nixos"],keywords:t,contains:r}};var db=function(e){return{name:"Node REPL",contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"javascript"}},variants:[{begin:/^>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}};var ub=function(e){var t={className:"variable",begin:/\$+\{[\w.:-]+\}/},n={className:"variable",begin:/\$+\w+/,illegal:/\(\)\{\}/},a={className:"variable",begin:/\$+\([\w^.:-]+\)/},r={className:"string",variants:[{begin:'"',end:'"'},{begin:"'",end:"'"},{begin:"`",end:"`"}],illegal:/\n/,contains:[{className:"meta",begin:/\$(\\[nrt]|\$)/},{className:"variable",begin:/\$(ADMINTOOLS|APPDATA|CDBURN_AREA|CMDLINE|COMMONFILES32|COMMONFILES64|COMMONFILES|COOKIES|DESKTOP|DOCUMENTS|EXEDIR|EXEFILE|EXEPATH|FAVORITES|FONTS|HISTORY|HWNDPARENT|INSTDIR|INTERNET_CACHE|LANGUAGE|LOCALAPPDATA|MUSIC|NETHOOD|OUTDIR|PICTURES|PLUGINSDIR|PRINTHOOD|PROFILE|PROGRAMFILES32|PROGRAMFILES64|PROGRAMFILES|QUICKLAUNCH|RECENT|RESOURCES_LOCALIZED|RESOURCES|SENDTO|SMPROGRAMS|SMSTARTUP|STARTMENU|SYSDIR|TEMP|TEMPLATES|VIDEOS|WINDIR)/},t,n,a]};return{name:"NSIS",case_insensitive:!1,keywords:{keyword:"Abort AddBrandingImage AddSize AllowRootDirInstall AllowSkipFiles AutoCloseWindow BGFont BGGradient BrandingText BringToFront Call CallInstDLL Caption ChangeUI CheckBitmap ClearErrors CompletedText ComponentText CopyFiles CRCCheck CreateDirectory CreateFont CreateShortCut Delete DeleteINISec DeleteINIStr DeleteRegKey DeleteRegValue DetailPrint DetailsButtonText DirText DirVar DirVerify EnableWindow EnumRegKey EnumRegValue Exch Exec ExecShell ExecShellWait ExecWait ExpandEnvStrings File FileBufSize FileClose FileErrorText FileOpen FileRead FileReadByte FileReadUTF16LE FileReadWord FileWriteUTF16LE FileSeek FileWrite FileWriteByte FileWriteWord FindClose FindFirst FindNext FindWindow FlushINI GetCurInstType GetCurrentAddress GetDlgItem GetDLLVersion GetDLLVersionLocal GetErrorLevel GetFileTime GetFileTimeLocal GetFullPathName GetFunctionAddress GetInstDirError GetKnownFolderPath GetLabelAddress GetTempFileName Goto HideWindow Icon IfAbort IfErrors IfFileExists IfRebootFlag IfRtlLanguage IfShellVarContextAll IfSilent InitPluginsDir InstallButtonText InstallColors InstallDir InstallDirRegKey InstProgressFlags InstType InstTypeGetText InstTypeSetText Int64Cmp Int64CmpU Int64Fmt IntCmp IntCmpU IntFmt IntOp IntPtrCmp IntPtrCmpU IntPtrOp IsWindow LangString LicenseBkColor LicenseData LicenseForceSelection LicenseLangString LicenseText LoadAndSetImage LoadLanguageFile LockWindow LogSet LogText ManifestDPIAware ManifestLongPathAware ManifestMaxVersionTested ManifestSupportedOS MessageBox MiscButtonText Name Nop OutFile Page PageCallbacks PEAddResource PEDllCharacteristics PERemoveResource PESubsysVer Pop Push Quit ReadEnvStr ReadINIStr ReadRegDWORD ReadRegStr Reboot RegDLL Rename RequestExecutionLevel ReserveFile Return RMDir SearchPath SectionGetFlags SectionGetInstTypes SectionGetSize SectionGetText SectionIn SectionSetFlags SectionSetInstTypes SectionSetSize SectionSetText SendMessage SetAutoClose SetBrandingImage SetCompress SetCompressor SetCompressorDictSize SetCtlColors SetCurInstType SetDatablockOptimize SetDateSave SetDetailsPrint SetDetailsView SetErrorLevel SetErrors SetFileAttributes SetFont SetOutPath SetOverwrite SetRebootFlag SetRegView SetShellVarContext SetSilent ShowInstDetails ShowUninstDetails ShowWindow SilentInstall SilentUnInstall Sleep SpaceTexts StrCmp StrCmpS StrCpy StrLen SubCaption Unicode UninstallButtonText UninstallCaption UninstallIcon UninstallSubCaption UninstallText UninstPage UnRegDLL Var VIAddVersionKey VIFileVersion VIProductVersion WindowIcon WriteINIStr WriteRegBin WriteRegDWORD WriteRegExpandStr WriteRegMultiStr WriteRegNone WriteRegStr WriteUninstaller XPStyle",literal:"admin all auto both bottom bzip2 colored components current custom directory false force hide highest ifdiff ifnewer instfiles lastused leave left license listonly lzma nevershow none normal notset off on open print right show silent silentlog smooth textonly top true try un.components un.custom un.directory un.instfiles un.license uninstConfirm user Win10 Win7 Win8 WinVista zlib"},contains:[e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(";","$",{relevance:0}),{className:"function",beginKeywords:"Function PageEx Section SectionGroup",end:"$"},r,{className:"keyword",begin:/!(addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|if|ifdef|ifmacrodef|ifmacrondef|ifndef|include|insertmacro|macro|macroend|makensis|packhdr|searchparse|searchreplace|system|tempfile|undef|verbose|warning)/},t,n,a,{className:"params",begin:"(ARCHIVE|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_OFFLINE|FILE_ATTRIBUTE_READONLY|FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_TEMPORARY|HKCR|HKCU|HKDD|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_DYN_DATA|HKEY_LOCAL_MACHINE|HKEY_PERFORMANCE_DATA|HKEY_USERS|HKLM|HKPD|HKU|IDABORT|IDCANCEL|IDIGNORE|IDNO|IDOK|IDRETRY|IDYES|MB_ABORTRETRYIGNORE|MB_DEFBUTTON1|MB_DEFBUTTON2|MB_DEFBUTTON3|MB_DEFBUTTON4|MB_ICONEXCLAMATION|MB_ICONINFORMATION|MB_ICONQUESTION|MB_ICONSTOP|MB_OK|MB_OKCANCEL|MB_RETRYCANCEL|MB_RIGHT|MB_RTLREADING|MB_SETFOREGROUND|MB_TOPMOST|MB_USERICON|MB_YESNO|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY)"},{className:"class",begin:/\w+::\w+/},e.NUMBER_MODE]}};var mb=function(e){var t=/[a-zA-Z@][a-zA-Z0-9_]*/,n={$pattern:t,keyword:"@interface @class @protocol @implementation"};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:{$pattern:t,keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},illegal:"</",contains:[{className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+n.keyword.split(" ").join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:n,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}};var pb=function(e){return{name:"OCaml",aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?",keyword:"and as assert asr begin class constraint do done downto else end exception external for fun function functor if in include inherit! inherit initializer land lazy let lor lsl lsr lxor match method!|10 method mod module mutable new object of open! open or private rec sig struct then to try type val! val virtual when while with parser value",built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 string unit in_channel out_channel ref",literal:"true false"},illegal:/\/\/|>>/,contains:[{className:"literal",begin:"\\[(\\|\\|)?\\]|\\(\\)",relevance:0},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*",relevance:0},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",relevance:0},{begin:/->/}]}};var gb=function(e){var t={className:"keyword",begin:"\\$(f[asn]|t|vp[rtd]|children)"},n={className:"number",begin:"\\b\\d+(\\.\\d+)?(e-?\\d+)?",relevance:0},a=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),r={className:"function",beginKeywords:"module function",end:/=|\{/,contains:[{className:"params",begin:"\\(",end:"\\)",contains:["self",n,a,t,{className:"literal",begin:"false|true|PI|undef"}]},e.UNDERSCORE_TITLE_MODE]};return{name:"OpenSCAD",aliases:["scad"],keywords:{keyword:"function module include use for intersection_for if else \\%",literal:"false true PI undef",built_in:"circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"meta",keywords:{"meta-keyword":"include use"},begin:"include|use <",end:">"},a,t,{begin:"[*!#%]",relevance:0},r]}};var Eb=function(e){var t={$pattern:/\.?\w+/,keyword:"abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained"},n=e.COMMENT(/\{/,/\}/,{relevance:0}),a=e.COMMENT("\\(\\*","\\*\\)",{relevance:10}),r={className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},i={className:"string",begin:"(#\\d+)+"},o={className:"function",beginKeywords:"function constructor destructor procedure method",end:"[:;]",keywords:"function constructor|10 destructor|10 procedure|10 method|10",contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",keywords:t,contains:[r,i]},n,a]};return{name:"Oxygene",case_insensitive:!0,keywords:t,illegal:'("|\\$[G-Zg-z]|\\/\\*|</|=>|->)',contains:[n,a,e.C_LINE_COMMENT_MODE,r,i,e.NUMBER_MODE,o,{className:"class",begin:"=\\bclass\\b",end:"end;",keywords:t,contains:[r,i,n,a,e.C_LINE_COMMENT_MODE,o]}]}};var Sb=function(e){var t=e.COMMENT(/\{/,/\}/,{contains:["self"]});return{name:"Parser3",subLanguage:"xml",relevance:0,contains:[e.COMMENT("^#","$"),e.COMMENT(/\^rem\{/,/\}/,{relevance:10,contains:[t]}),{className:"meta",begin:"^@(?:BASE|USE|CLASS|OPTIONS)$",relevance:10},{className:"title",begin:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{className:"variable",begin:/\$\{?[\w\-.:]+\}?/},{className:"keyword",begin:/\^[\w\-.:]+/},{className:"number",begin:"\\^#[0-9a-fA-F]+"},e.C_NUMBER_MODE]}};var bb=function(e){return{name:"Packet Filter config",aliases:["pf.conf"],keywords:{$pattern:/[a-z0-9_<>-]+/,built_in:"block match pass load anchor|5 antispoof|10 set table",keyword:"in out log quick on rdomain inet inet6 proto from port os to route allow-opts divert-packet divert-reply divert-to flags group icmp-type icmp6-type label once probability recieved-on rtable prio queue tos tag tagged user keep fragment for os drop af-to|10 binat-to|10 nat-to|10 rdr-to|10 bitmask least-stats random round-robin source-hash static-port dup-to reply-to route-to parent bandwidth default min max qlimit block-policy debug fingerprints hostid limit loginterface optimization reassemble ruleset-optimization basic none profile skip state-defaults state-policy timeout const counters persist no modulate synproxy state|5 floating if-bound no-sync pflow|10 sloppy source-track global rule max-src-nodes max-src-states max-src-conn max-src-conn-rate overload flush scrub|5 max-mss min-ttl no-df|10 random-id",literal:"all any no-route self urpf-failed egress|5 unknown"},contains:[e.HASH_COMMENT_MODE,e.NUMBER_MODE,e.QUOTE_STRING_MODE,{className:"variable",begin:/\$[\w\d#@][\w\d_]*/},{className:"variable",begin:/<(?!\/)/,end:/>/}]}};var fb=function(e){var t=e.COMMENT("--","$"),n="\\$([a-zA-Z_]?|[a-zA-Z_][a-zA-Z_0-9]*)\\$",a="BIGINT INT8 BIGSERIAL SERIAL8 BIT VARYING VARBIT BOOLEAN BOOL BOX BYTEA CHARACTER CHAR VARCHAR CIDR CIRCLE DATE DOUBLE PRECISION FLOAT8 FLOAT INET INTEGER INT INT4 INTERVAL JSON JSONB LINE LSEG|10 MACADDR MACADDR8 MONEY NUMERIC DEC DECIMAL PATH POINT POLYGON REAL FLOAT4 SMALLINT INT2 SMALLSERIAL|10 SERIAL2|10 SERIAL|10 SERIAL4|10 TEXT TIME ZONE TIMETZ|10 TIMESTAMP TIMESTAMPTZ|10 TSQUERY|10 TSVECTOR|10 TXID_SNAPSHOT|10 UUID XML NATIONAL NCHAR INT4RANGE|10 INT8RANGE|10 NUMRANGE|10 TSRANGE|10 TSTZRANGE|10 DATERANGE|10 ANYELEMENT ANYARRAY ANYNONARRAY ANYENUM ANYRANGE CSTRING INTERNAL RECORD PG_DDL_COMMAND VOID UNKNOWN OPAQUE REFCURSOR NAME OID REGPROC|10 REGPROCEDURE|10 REGOPER|10 REGOPERATOR|10 REGCLASS|10 REGTYPE|10 REGROLE|10 REGNAMESPACE|10 REGCONFIG|10 REGDICTIONARY|10 ",r=a.trim().split(" ").map((function(e){return e.split("|")[0]})).join("|"),i="ARRAY_AGG AVG BIT_AND BIT_OR BOOL_AND BOOL_OR COUNT EVERY JSON_AGG JSONB_AGG JSON_OBJECT_AGG JSONB_OBJECT_AGG MAX MIN MODE STRING_AGG SUM XMLAGG CORR COVAR_POP COVAR_SAMP REGR_AVGX REGR_AVGY REGR_COUNT REGR_INTERCEPT REGR_R2 REGR_SLOPE REGR_SXX REGR_SXY REGR_SYY STDDEV STDDEV_POP STDDEV_SAMP VARIANCE VAR_POP VAR_SAMP PERCENTILE_CONT PERCENTILE_DISC ROW_NUMBER RANK DENSE_RANK PERCENT_RANK CUME_DIST NTILE LAG LEAD FIRST_VALUE LAST_VALUE NTH_VALUE NUM_NONNULLS NUM_NULLS ABS CBRT CEIL CEILING DEGREES DIV EXP FLOOR LN LOG MOD PI POWER RADIANS ROUND SCALE SIGN SQRT TRUNC WIDTH_BUCKET RANDOM SETSEED ACOS ACOSD ASIN ASIND ATAN ATAND ATAN2 ATAN2D COS COSD COT COTD SIN SIND TAN TAND BIT_LENGTH CHAR_LENGTH CHARACTER_LENGTH LOWER OCTET_LENGTH OVERLAY POSITION SUBSTRING TREAT TRIM UPPER ASCII BTRIM CHR CONCAT CONCAT_WS CONVERT CONVERT_FROM CONVERT_TO DECODE ENCODE INITCAP LEFT LENGTH LPAD LTRIM MD5 PARSE_IDENT PG_CLIENT_ENCODING QUOTE_IDENT|10 QUOTE_LITERAL|10 QUOTE_NULLABLE|10 REGEXP_MATCH REGEXP_MATCHES REGEXP_REPLACE REGEXP_SPLIT_TO_ARRAY REGEXP_SPLIT_TO_TABLE REPEAT REPLACE REVERSE RIGHT RPAD RTRIM SPLIT_PART STRPOS SUBSTR TO_ASCII TO_HEX TRANSLATE OCTET_LENGTH GET_BIT GET_BYTE SET_BIT SET_BYTE TO_CHAR TO_DATE TO_NUMBER TO_TIMESTAMP AGE CLOCK_TIMESTAMP|10 DATE_PART DATE_TRUNC ISFINITE JUSTIFY_DAYS JUSTIFY_HOURS JUSTIFY_INTERVAL MAKE_DATE MAKE_INTERVAL|10 MAKE_TIME MAKE_TIMESTAMP|10 MAKE_TIMESTAMPTZ|10 NOW STATEMENT_TIMESTAMP|10 TIMEOFDAY TRANSACTION_TIMESTAMP|10 ENUM_FIRST ENUM_LAST ENUM_RANGE AREA CENTER DIAMETER HEIGHT ISCLOSED ISOPEN NPOINTS PCLOSE POPEN RADIUS WIDTH BOX BOUND_BOX CIRCLE LINE LSEG PATH POLYGON ABBREV BROADCAST HOST HOSTMASK MASKLEN NETMASK NETWORK SET_MASKLEN TEXT INET_SAME_FAMILY INET_MERGE MACADDR8_SET7BIT ARRAY_TO_TSVECTOR GET_CURRENT_TS_CONFIG NUMNODE PLAINTO_TSQUERY PHRASETO_TSQUERY WEBSEARCH_TO_TSQUERY QUERYTREE SETWEIGHT STRIP TO_TSQUERY TO_TSVECTOR JSON_TO_TSVECTOR JSONB_TO_TSVECTOR TS_DELETE TS_FILTER TS_HEADLINE TS_RANK TS_RANK_CD TS_REWRITE TSQUERY_PHRASE TSVECTOR_TO_ARRAY TSVECTOR_UPDATE_TRIGGER TSVECTOR_UPDATE_TRIGGER_COLUMN XMLCOMMENT XMLCONCAT XMLELEMENT XMLFOREST XMLPI XMLROOT XMLEXISTS XML_IS_WELL_FORMED XML_IS_WELL_FORMED_DOCUMENT XML_IS_WELL_FORMED_CONTENT XPATH XPATH_EXISTS XMLTABLE XMLNAMESPACES TABLE_TO_XML TABLE_TO_XMLSCHEMA TABLE_TO_XML_AND_XMLSCHEMA QUERY_TO_XML QUERY_TO_XMLSCHEMA QUERY_TO_XML_AND_XMLSCHEMA CURSOR_TO_XML CURSOR_TO_XMLSCHEMA SCHEMA_TO_XML SCHEMA_TO_XMLSCHEMA SCHEMA_TO_XML_AND_XMLSCHEMA DATABASE_TO_XML DATABASE_TO_XMLSCHEMA DATABASE_TO_XML_AND_XMLSCHEMA XMLATTRIBUTES TO_JSON TO_JSONB ARRAY_TO_JSON ROW_TO_JSON JSON_BUILD_ARRAY JSONB_BUILD_ARRAY JSON_BUILD_OBJECT JSONB_BUILD_OBJECT JSON_OBJECT JSONB_OBJECT JSON_ARRAY_LENGTH JSONB_ARRAY_LENGTH JSON_EACH JSONB_EACH JSON_EACH_TEXT JSONB_EACH_TEXT JSON_EXTRACT_PATH JSONB_EXTRACT_PATH JSON_OBJECT_KEYS JSONB_OBJECT_KEYS JSON_POPULATE_RECORD JSONB_POPULATE_RECORD JSON_POPULATE_RECORDSET JSONB_POPULATE_RECORDSET JSON_ARRAY_ELEMENTS JSONB_ARRAY_ELEMENTS JSON_ARRAY_ELEMENTS_TEXT JSONB_ARRAY_ELEMENTS_TEXT JSON_TYPEOF JSONB_TYPEOF JSON_TO_RECORD JSONB_TO_RECORD JSON_TO_RECORDSET JSONB_TO_RECORDSET JSON_STRIP_NULLS JSONB_STRIP_NULLS JSONB_SET JSONB_INSERT JSONB_PRETTY CURRVAL LASTVAL NEXTVAL SETVAL COALESCE NULLIF GREATEST LEAST ARRAY_APPEND ARRAY_CAT ARRAY_NDIMS ARRAY_DIMS ARRAY_FILL ARRAY_LENGTH ARRAY_LOWER ARRAY_POSITION ARRAY_POSITIONS ARRAY_PREPEND ARRAY_REMOVE ARRAY_REPLACE ARRAY_TO_STRING ARRAY_UPPER CARDINALITY STRING_TO_ARRAY UNNEST ISEMPTY LOWER_INC UPPER_INC LOWER_INF UPPER_INF RANGE_MERGE GENERATE_SERIES GENERATE_SUBSCRIPTS CURRENT_DATABASE CURRENT_QUERY CURRENT_SCHEMA|10 CURRENT_SCHEMAS|10 INET_CLIENT_ADDR INET_CLIENT_PORT INET_SERVER_ADDR INET_SERVER_PORT ROW_SECURITY_ACTIVE FORMAT_TYPE TO_REGCLASS TO_REGPROC TO_REGPROCEDURE TO_REGOPER TO_REGOPERATOR TO_REGTYPE TO_REGNAMESPACE TO_REGROLE COL_DESCRIPTION OBJ_DESCRIPTION SHOBJ_DESCRIPTION TXID_CURRENT TXID_CURRENT_IF_ASSIGNED TXID_CURRENT_SNAPSHOT TXID_SNAPSHOT_XIP TXID_SNAPSHOT_XMAX TXID_SNAPSHOT_XMIN TXID_VISIBLE_IN_SNAPSHOT TXID_STATUS CURRENT_SETTING SET_CONFIG BRIN_SUMMARIZE_NEW_VALUES BRIN_SUMMARIZE_RANGE BRIN_DESUMMARIZE_RANGE GIN_CLEAN_PENDING_LIST SUPPRESS_REDUNDANT_UPDATES_TRIGGER LO_FROM_BYTEA LO_PUT LO_GET LO_CREAT LO_CREATE LO_UNLINK LO_IMPORT LO_EXPORT LOREAD LOWRITE GROUPING CAST ".trim().split(" ").map((function(e){return e.split("|")[0]})).join("|");return{name:"PostgreSQL",aliases:["postgres","postgresql"],case_insensitive:!0,keywords:{keyword:"ABORT ALTER ANALYZE BEGIN CALL CHECKPOINT|10 CLOSE CLUSTER COMMENT COMMIT COPY CREATE DEALLOCATE DECLARE DELETE DISCARD DO DROP END EXECUTE EXPLAIN FETCH GRANT IMPORT INSERT LISTEN LOAD LOCK MOVE NOTIFY PREPARE REASSIGN|10 REFRESH REINDEX RELEASE RESET REVOKE ROLLBACK SAVEPOINT SECURITY SELECT SET SHOW START TRUNCATE UNLISTEN|10 UPDATE VACUUM|10 VALUES AGGREGATE COLLATION CONVERSION|10 DATABASE DEFAULT PRIVILEGES DOMAIN TRIGGER EXTENSION FOREIGN WRAPPER|10 TABLE FUNCTION GROUP LANGUAGE LARGE OBJECT MATERIALIZED VIEW OPERATOR CLASS FAMILY POLICY PUBLICATION|10 ROLE RULE SCHEMA SEQUENCE SERVER STATISTICS SUBSCRIPTION SYSTEM TABLESPACE CONFIGURATION DICTIONARY PARSER TEMPLATE TYPE USER MAPPING PREPARED ACCESS METHOD CAST AS TRANSFORM TRANSACTION OWNED TO INTO SESSION AUTHORIZATION INDEX PROCEDURE ASSERTION ALL ANALYSE AND ANY ARRAY ASC ASYMMETRIC|10 BOTH CASE CHECK COLLATE COLUMN CONCURRENTLY|10 CONSTRAINT CROSS DEFERRABLE RANGE DESC DISTINCT ELSE EXCEPT FOR FREEZE|10 FROM FULL HAVING ILIKE IN INITIALLY INNER INTERSECT IS ISNULL JOIN LATERAL LEADING LIKE LIMIT NATURAL NOT NOTNULL NULL OFFSET ON ONLY OR ORDER OUTER OVERLAPS PLACING PRIMARY REFERENCES RETURNING SIMILAR SOME SYMMETRIC TABLESAMPLE THEN TRAILING UNION UNIQUE USING VARIADIC|10 VERBOSE WHEN WHERE WINDOW WITH BY RETURNS INOUT OUT SETOF|10 IF STRICT CURRENT CONTINUE OWNER LOCATION OVER PARTITION WITHIN BETWEEN ESCAPE EXTERNAL INVOKER DEFINER WORK RENAME VERSION CONNECTION CONNECT TABLES TEMP TEMPORARY FUNCTIONS SEQUENCES TYPES SCHEMAS OPTION CASCADE RESTRICT ADD ADMIN EXISTS VALID VALIDATE ENABLE DISABLE REPLICA|10 ALWAYS PASSING COLUMNS PATH REF VALUE OVERRIDING IMMUTABLE STABLE VOLATILE BEFORE AFTER EACH ROW PROCEDURAL ROUTINE NO HANDLER VALIDATOR OPTIONS STORAGE OIDS|10 WITHOUT INHERIT DEPENDS CALLED INPUT LEAKPROOF|10 COST ROWS NOWAIT SEARCH UNTIL ENCRYPTED|10 PASSWORD CONFLICT|10 INSTEAD INHERITS CHARACTERISTICS WRITE CURSOR ALSO STATEMENT SHARE EXCLUSIVE INLINE ISOLATION REPEATABLE READ COMMITTED SERIALIZABLE UNCOMMITTED LOCAL GLOBAL SQL PROCEDURES RECURSIVE SNAPSHOT ROLLUP CUBE TRUSTED|10 INCLUDE FOLLOWING PRECEDING UNBOUNDED RANGE GROUPS UNENCRYPTED|10 SYSID FORMAT DELIMITER HEADER QUOTE ENCODING FILTER OFF FORCE_QUOTE FORCE_NOT_NULL FORCE_NULL COSTS BUFFERS TIMING SUMMARY DISABLE_PAGE_SKIPPING RESTART CYCLE GENERATED IDENTITY DEFERRED IMMEDIATE LEVEL LOGGED UNLOGGED OF NOTHING NONE EXCLUDE ATTRIBUTE USAGE ROUTINES TRUE FALSE NAN INFINITY ALIAS BEGIN CONSTANT DECLARE END EXCEPTION RETURN PERFORM|10 RAISE GET DIAGNOSTICS STACKED|10 FOREACH LOOP ELSIF EXIT WHILE REVERSE SLICE DEBUG LOG INFO NOTICE WARNING ASSERT OPEN SUPERUSER NOSUPERUSER CREATEDB NOCREATEDB CREATEROLE NOCREATEROLE INHERIT NOINHERIT LOGIN NOLOGIN REPLICATION NOREPLICATION BYPASSRLS NOBYPASSRLS ",built_in:"CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURRENT_CATALOG|10 CURRENT_DATE LOCALTIME LOCALTIMESTAMP CURRENT_ROLE|10 CURRENT_SCHEMA|10 SESSION_USER PUBLIC FOUND NEW OLD TG_NAME|10 TG_WHEN|10 TG_LEVEL|10 TG_OP|10 TG_RELID|10 TG_RELNAME|10 TG_TABLE_NAME|10 TG_TABLE_SCHEMA|10 TG_NARGS|10 TG_ARGV|10 TG_EVENT|10 TG_TAG|10 ROW_COUNT RESULT_OID|10 PG_CONTEXT|10 RETURNED_SQLSTATE COLUMN_NAME CONSTRAINT_NAME PG_DATATYPE_NAME|10 MESSAGE_TEXT TABLE_NAME SCHEMA_NAME PG_EXCEPTION_DETAIL|10 PG_EXCEPTION_HINT|10 PG_EXCEPTION_CONTEXT|10 SQLSTATE SQLERRM|10 SUCCESSFUL_COMPLETION WARNING DYNAMIC_RESULT_SETS_RETURNED IMPLICIT_ZERO_BIT_PADDING NULL_VALUE_ELIMINATED_IN_SET_FUNCTION PRIVILEGE_NOT_GRANTED PRIVILEGE_NOT_REVOKED STRING_DATA_RIGHT_TRUNCATION DEPRECATED_FEATURE NO_DATA NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED SQL_STATEMENT_NOT_YET_COMPLETE CONNECTION_EXCEPTION CONNECTION_DOES_NOT_EXIST CONNECTION_FAILURE SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION TRANSACTION_RESOLUTION_UNKNOWN PROTOCOL_VIOLATION TRIGGERED_ACTION_EXCEPTION FEATURE_NOT_SUPPORTED INVALID_TRANSACTION_INITIATION LOCATOR_EXCEPTION INVALID_LOCATOR_SPECIFICATION INVALID_GRANTOR INVALID_GRANT_OPERATION INVALID_ROLE_SPECIFICATION DIAGNOSTICS_EXCEPTION STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER CASE_NOT_FOUND CARDINALITY_VIOLATION DATA_EXCEPTION ARRAY_SUBSCRIPT_ERROR CHARACTER_NOT_IN_REPERTOIRE DATETIME_FIELD_OVERFLOW DIVISION_BY_ZERO ERROR_IN_ASSIGNMENT ESCAPE_CHARACTER_CONFLICT INDICATOR_OVERFLOW INTERVAL_FIELD_OVERFLOW INVALID_ARGUMENT_FOR_LOGARITHM INVALID_ARGUMENT_FOR_NTILE_FUNCTION INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION INVALID_ARGUMENT_FOR_POWER_FUNCTION INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION INVALID_CHARACTER_VALUE_FOR_CAST INVALID_DATETIME_FORMAT INVALID_ESCAPE_CHARACTER INVALID_ESCAPE_OCTET INVALID_ESCAPE_SEQUENCE NONSTANDARD_USE_OF_ESCAPE_CHARACTER INVALID_INDICATOR_PARAMETER_VALUE INVALID_PARAMETER_VALUE INVALID_REGULAR_EXPRESSION INVALID_ROW_COUNT_IN_LIMIT_CLAUSE INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE INVALID_TABLESAMPLE_ARGUMENT INVALID_TABLESAMPLE_REPEAT INVALID_TIME_ZONE_DISPLACEMENT_VALUE INVALID_USE_OF_ESCAPE_CHARACTER MOST_SPECIFIC_TYPE_MISMATCH NULL_VALUE_NOT_ALLOWED NULL_VALUE_NO_INDICATOR_PARAMETER NUMERIC_VALUE_OUT_OF_RANGE SEQUENCE_GENERATOR_LIMIT_EXCEEDED STRING_DATA_LENGTH_MISMATCH STRING_DATA_RIGHT_TRUNCATION SUBSTRING_ERROR TRIM_ERROR UNTERMINATED_C_STRING ZERO_LENGTH_CHARACTER_STRING FLOATING_POINT_EXCEPTION INVALID_TEXT_REPRESENTATION INVALID_BINARY_REPRESENTATION BAD_COPY_FILE_FORMAT UNTRANSLATABLE_CHARACTER NOT_AN_XML_DOCUMENT INVALID_XML_DOCUMENT INVALID_XML_CONTENT INVALID_XML_COMMENT INVALID_XML_PROCESSING_INSTRUCTION INTEGRITY_CONSTRAINT_VIOLATION RESTRICT_VIOLATION NOT_NULL_VIOLATION FOREIGN_KEY_VIOLATION UNIQUE_VIOLATION CHECK_VIOLATION EXCLUSION_VIOLATION INVALID_CURSOR_STATE INVALID_TRANSACTION_STATE ACTIVE_SQL_TRANSACTION BRANCH_TRANSACTION_ALREADY_ACTIVE HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION READ_ONLY_SQL_TRANSACTION SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED NO_ACTIVE_SQL_TRANSACTION IN_FAILED_SQL_TRANSACTION IDLE_IN_TRANSACTION_SESSION_TIMEOUT INVALID_SQL_STATEMENT_NAME TRIGGERED_DATA_CHANGE_VIOLATION INVALID_AUTHORIZATION_SPECIFICATION INVALID_PASSWORD DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST DEPENDENT_OBJECTS_STILL_EXIST INVALID_TRANSACTION_TERMINATION SQL_ROUTINE_EXCEPTION FUNCTION_EXECUTED_NO_RETURN_STATEMENT MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED INVALID_CURSOR_NAME EXTERNAL_ROUTINE_EXCEPTION CONTAINING_SQL_NOT_PERMITTED MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED EXTERNAL_ROUTINE_INVOCATION_EXCEPTION INVALID_SQLSTATE_RETURNED NULL_VALUE_NOT_ALLOWED TRIGGER_PROTOCOL_VIOLATED SRF_PROTOCOL_VIOLATED EVENT_TRIGGER_PROTOCOL_VIOLATED SAVEPOINT_EXCEPTION INVALID_SAVEPOINT_SPECIFICATION INVALID_CATALOG_NAME INVALID_SCHEMA_NAME TRANSACTION_ROLLBACK TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION SERIALIZATION_FAILURE STATEMENT_COMPLETION_UNKNOWN DEADLOCK_DETECTED SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION SYNTAX_ERROR INSUFFICIENT_PRIVILEGE CANNOT_COERCE GROUPING_ERROR WINDOWING_ERROR INVALID_RECURSION INVALID_FOREIGN_KEY INVALID_NAME NAME_TOO_LONG RESERVED_NAME DATATYPE_MISMATCH INDETERMINATE_DATATYPE COLLATION_MISMATCH INDETERMINATE_COLLATION WRONG_OBJECT_TYPE GENERATED_ALWAYS UNDEFINED_COLUMN UNDEFINED_FUNCTION UNDEFINED_TABLE UNDEFINED_PARAMETER UNDEFINED_OBJECT DUPLICATE_COLUMN DUPLICATE_CURSOR DUPLICATE_DATABASE DUPLICATE_FUNCTION DUPLICATE_PREPARED_STATEMENT DUPLICATE_SCHEMA DUPLICATE_TABLE DUPLICATE_ALIAS DUPLICATE_OBJECT AMBIGUOUS_COLUMN AMBIGUOUS_FUNCTION AMBIGUOUS_PARAMETER AMBIGUOUS_ALIAS INVALID_COLUMN_REFERENCE INVALID_COLUMN_DEFINITION INVALID_CURSOR_DEFINITION INVALID_DATABASE_DEFINITION INVALID_FUNCTION_DEFINITION INVALID_PREPARED_STATEMENT_DEFINITION INVALID_SCHEMA_DEFINITION INVALID_TABLE_DEFINITION INVALID_OBJECT_DEFINITION WITH_CHECK_OPTION_VIOLATION INSUFFICIENT_RESOURCES DISK_FULL OUT_OF_MEMORY TOO_MANY_CONNECTIONS CONFIGURATION_LIMIT_EXCEEDED PROGRAM_LIMIT_EXCEEDED STATEMENT_TOO_COMPLEX TOO_MANY_COLUMNS TOO_MANY_ARGUMENTS OBJECT_NOT_IN_PREREQUISITE_STATE OBJECT_IN_USE CANT_CHANGE_RUNTIME_PARAM LOCK_NOT_AVAILABLE OPERATOR_INTERVENTION QUERY_CANCELED ADMIN_SHUTDOWN CRASH_SHUTDOWN CANNOT_CONNECT_NOW DATABASE_DROPPED SYSTEM_ERROR IO_ERROR UNDEFINED_FILE DUPLICATE_FILE SNAPSHOT_TOO_OLD CONFIG_FILE_ERROR LOCK_FILE_EXISTS FDW_ERROR FDW_COLUMN_NAME_NOT_FOUND FDW_DYNAMIC_PARAMETER_VALUE_NEEDED FDW_FUNCTION_SEQUENCE_ERROR FDW_INCONSISTENT_DESCRIPTOR_INFORMATION FDW_INVALID_ATTRIBUTE_VALUE FDW_INVALID_COLUMN_NAME FDW_INVALID_COLUMN_NUMBER FDW_INVALID_DATA_TYPE FDW_INVALID_DATA_TYPE_DESCRIPTORS FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER FDW_INVALID_HANDLE FDW_INVALID_OPTION_INDEX FDW_INVALID_OPTION_NAME FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH FDW_INVALID_STRING_FORMAT FDW_INVALID_USE_OF_NULL_POINTER FDW_TOO_MANY_HANDLES FDW_OUT_OF_MEMORY FDW_NO_SCHEMAS FDW_OPTION_NAME_NOT_FOUND FDW_REPLY_HANDLE FDW_SCHEMA_NOT_FOUND FDW_TABLE_NOT_FOUND FDW_UNABLE_TO_CREATE_EXECUTION FDW_UNABLE_TO_CREATE_REPLY FDW_UNABLE_TO_ESTABLISH_CONNECTION PLPGSQL_ERROR RAISE_EXCEPTION NO_DATA_FOUND TOO_MANY_ROWS ASSERT_FAILURE INTERNAL_ERROR DATA_CORRUPTED INDEX_CORRUPTED "},illegal:/:==|\W\s*\(\*|(^|\s)\$[a-z]|\{\{|[a-z]:\s*$|\.\.\.|TO:|DO:/,contains:[{className:"keyword",variants:[{begin:/\bTEXT\s*SEARCH\b/},{begin:/\b(PRIMARY|FOREIGN|FOR(\s+NO)?)\s+KEY\b/},{begin:/\bPARALLEL\s+(UNSAFE|RESTRICTED|SAFE)\b/},{begin:/\bSTORAGE\s+(PLAIN|EXTERNAL|EXTENDED|MAIN)\b/},{begin:/\bMATCH\s+(FULL|PARTIAL|SIMPLE)\b/},{begin:/\bNULLS\s+(FIRST|LAST)\b/},{begin:/\bEVENT\s+TRIGGER\b/},{begin:/\b(MAPPING|OR)\s+REPLACE\b/},{begin:/\b(FROM|TO)\s+(PROGRAM|STDIN|STDOUT)\b/},{begin:/\b(SHARE|EXCLUSIVE)\s+MODE\b/},{begin:/\b(LEFT|RIGHT)\s+(OUTER\s+)?JOIN\b/},{begin:/\b(FETCH|MOVE)\s+(NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE|FORWARD|BACKWARD)\b/},{begin:/\bPRESERVE\s+ROWS\b/},{begin:/\bDISCARD\s+PLANS\b/},{begin:/\bREFERENCING\s+(OLD|NEW)\b/},{begin:/\bSKIP\s+LOCKED\b/},{begin:/\bGROUPING\s+SETS\b/},{begin:/\b(BINARY|INSENSITIVE|SCROLL|NO\s+SCROLL)\s+(CURSOR|FOR)\b/},{begin:/\b(WITH|WITHOUT)\s+HOLD\b/},{begin:/\bWITH\s+(CASCADED|LOCAL)\s+CHECK\s+OPTION\b/},{begin:/\bEXCLUDE\s+(TIES|NO\s+OTHERS)\b/},{begin:/\bFORMAT\s+(TEXT|XML|JSON|YAML)\b/},{begin:/\bSET\s+((SESSION|LOCAL)\s+)?NAMES\b/},{begin:/\bIS\s+(NOT\s+)?UNKNOWN\b/},{begin:/\bSECURITY\s+LABEL\b/},{begin:/\bSTANDALONE\s+(YES|NO|NO\s+VALUE)\b/},{begin:/\bWITH\s+(NO\s+)?DATA\b/},{begin:/\b(FOREIGN|SET)\s+DATA\b/},{begin:/\bSET\s+(CATALOG|CONSTRAINTS)\b/},{begin:/\b(WITH|FOR)\s+ORDINALITY\b/},{begin:/\bIS\s+(NOT\s+)?DOCUMENT\b/},{begin:/\bXML\s+OPTION\s+(DOCUMENT|CONTENT)\b/},{begin:/\b(STRIP|PRESERVE)\s+WHITESPACE\b/},{begin:/\bNO\s+(ACTION|MAXVALUE|MINVALUE)\b/},{begin:/\bPARTITION\s+BY\s+(RANGE|LIST|HASH)\b/},{begin:/\bAT\s+TIME\s+ZONE\b/},{begin:/\bGRANTED\s+BY\b/},{begin:/\bRETURN\s+(QUERY|NEXT)\b/},{begin:/\b(ATTACH|DETACH)\s+PARTITION\b/},{begin:/\bFORCE\s+ROW\s+LEVEL\s+SECURITY\b/},{begin:/\b(INCLUDING|EXCLUDING)\s+(COMMENTS|CONSTRAINTS|DEFAULTS|IDENTITY|INDEXES|STATISTICS|STORAGE|ALL)\b/},{begin:/\bAS\s+(ASSIGNMENT|IMPLICIT|PERMISSIVE|RESTRICTIVE|ENUM|RANGE)\b/}]},{begin:/\b(FORMAT|FAMILY|VERSION)\s*\(/},{begin:/\bINCLUDE\s*\(/,keywords:"INCLUDE"},{begin:/\bRANGE(?!\s*(BETWEEN|UNBOUNDED|CURRENT|[-0-9]+))/},{begin:/\b(VERSION|OWNER|TEMPLATE|TABLESPACE|CONNECTION\s+LIMIT|PROCEDURE|RESTRICT|JOIN|PARSER|COPY|START|END|COLLATION|INPUT|ANALYZE|STORAGE|LIKE|DEFAULT|DELIMITER|ENCODING|COLUMN|CONSTRAINT|TABLE|SCHEMA)\s*=/},{begin:/\b(PG_\w+?|HAS_[A-Z_]+_PRIVILEGE)\b/,relevance:10},{begin:/\bEXTRACT\s*\(/,end:/\bFROM\b/,returnEnd:!0,keywords:{type:"CENTURY DAY DECADE DOW DOY EPOCH HOUR ISODOW ISOYEAR MICROSECONDS MILLENNIUM MILLISECONDS MINUTE MONTH QUARTER SECOND TIMEZONE TIMEZONE_HOUR TIMEZONE_MINUTE WEEK YEAR"}},{begin:/\b(XMLELEMENT|XMLPI)\s*\(\s*NAME/,keywords:{keyword:"NAME"}},{begin:/\b(XMLPARSE|XMLSERIALIZE)\s*\(\s*(DOCUMENT|CONTENT)/,keywords:{keyword:"DOCUMENT CONTENT"}},{beginKeywords:"CACHE INCREMENT MAXVALUE MINVALUE",end:e.C_NUMBER_RE,returnEnd:!0,keywords:"BY CACHE INCREMENT MAXVALUE MINVALUE"},{className:"type",begin:/\b(WITH|WITHOUT)\s+TIME\s+ZONE\b/},{className:"type",begin:/\bINTERVAL\s+(YEAR|MONTH|DAY|HOUR|MINUTE|SECOND)(\s+TO\s+(MONTH|HOUR|MINUTE|SECOND))?\b/},{begin:/\bRETURNS\s+(LANGUAGE_HANDLER|TRIGGER|EVENT_TRIGGER|FDW_HANDLER|INDEX_AM_HANDLER|TSM_HANDLER)\b/,keywords:{keyword:"RETURNS",type:"LANGUAGE_HANDLER TRIGGER EVENT_TRIGGER FDW_HANDLER INDEX_AM_HANDLER TSM_HANDLER"}},{begin:"\\b("+i+")\\s*\\("},{begin:"\\.("+r+")\\b"},{begin:"\\b("+r+")\\s+PATH\\b",keywords:{keyword:"PATH",type:a.replace("PATH ","")}},{className:"type",begin:"\\b("+r+")\\b"},{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:"(e|E|u&|U&)'",end:"'",contains:[{begin:"\\\\."}],relevance:10},e.END_SAME_AS_BEGIN({begin:n,end:n,contains:[{subLanguage:["pgsql","perl","python","tcl","r","lua","java","php","ruby","bash","scheme","xml","json"],endsWithParent:!0}]}),{begin:'"',end:'"',contains:[{begin:'""'}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,{className:"meta",variants:[{begin:"%(ROW)?TYPE",relevance:10},{begin:"\\$\\d+"},{begin:"^#\\w",end:"$"}]},{className:"symbol",begin:"<<\\s*[a-zA-Z_][a-zA-Z_0-9$]*\\s*>>",relevance:10}]}};var Tb=function(e){var t={className:"variable",begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*(?![A-Za-z0-9])(?![$])"},n={className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},a={className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},r=e.inherit(e.APOS_STRING_MODE,{illegal:null}),i=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(a)}),o=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(a)}),s={className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[e.inherit(r,{begin:"b'",end:"'"}),e.inherit(i,{begin:'b"',end:'"'}),i,r,o]},l={className:"number",variants:[{begin:"\\b0b[01]+(?:_[01]+)*\\b"},{begin:"\\b0o[0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0x[\\da-f]+(?:_[\\da-f]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:e[+-]?\\d+)?"}],relevance:0},c={keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile enum eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list match|0 mixed new object or private protected public real return string switch throw trait try unset use var void while xor yield",literal:"false null true",built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException UnhandledMatchError ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Stringable Throwable Traversable WeakReference WeakMap Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass"};return{aliases:["php3","php4","php5","php6","php7","php8"],case_insensitive:!0,keywords:c,contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[n]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler"}),n,{className:"keyword",begin:/\$this\b/},t,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{className:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:c,contains:["self",t,e.C_BLOCK_COMMENT_MODE,s,l]}]},{className:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",relevance:0,end:";",contains:[e.UNDERSCORE_TITLE_MODE]},s,l]}};var Cb=function(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}};var Nb=function(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}};var Rb=function(e){return{name:"Pony",keywords:{keyword:"actor addressof and as be break class compile_error compile_intrinsic consume continue delegate digestof do else elseif embed end error for fun if ifdef in interface is isnt lambda let match new not object or primitive recover repeat return struct then trait try type until use var where while with xor",meta:"iso val tag trn box ref",literal:"this false true"},contains:[{className:"type",begin:"\\b_?[A-Z][\\w]*",relevance:0},{className:"string",begin:'"""',end:'"""',relevance:10},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE],relevance:0},{begin:e.IDENT_RE+"'",relevance:0},{className:"number",begin:"(-?)(\\b0[xX][a-fA-F0-9]+|\\b0[bB][01]+|(\\b\\d+(_\\d+)?(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",relevance:0},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var vb=function(e){var t={$pattern:/-?[A-z\.\-]+\b/,keyword:"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter",built_in:"ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write"},n={begin:"`[\\s\\S]",relevance:0},a={className:"variable",variants:[{begin:/\$\B/},{className:"keyword",begin:/\$this/},{begin:/\$[\w\d][\w\d_:]*/}]},r={className:"string",variants:[{begin:/"/,end:/"/},{begin:/@"/,end:/^"@/}],contains:[n,a,{className:"variable",begin:/\$[A-z]/,end:/[^A-z]/}]},i={className:"string",variants:[{begin:/'/,end:/'/},{begin:/@'/,end:/^'@/}]},o=e.inherit(e.COMMENT(null,null),{variants:[{begin:/#/,end:/$/},{begin:/<#/,end:/#>/}],contains:[{className:"doctag",variants:[{begin:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{begin:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/}]}]}),s={className:"built_in",variants:[{begin:"(".concat("Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|Mount|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Build|Complete|Confirm|Deny|Deploy|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where",")+(-)[\\w\\d]+")}]},l={className:"class",beginKeywords:"class enum",end:/\s*[{]/,excludeEnd:!0,relevance:0,contains:[e.TITLE_MODE]},c={className:"function",begin:/function\s+/,end:/\s*\{|$/,excludeEnd:!0,returnBegin:!0,relevance:0,contains:[{begin:"function",relevance:0,className:"keyword"},{className:"title",begin:/\w[\w\d]*((-)[\w\d]+)*/,relevance:0},{begin:/\(/,end:/\)/,className:"params",relevance:0,contains:[a]}]},_={begin:/using\s/,end:/$/,returnBegin:!0,contains:[r,i,{className:"keyword",begin:/(using|assembly|command|module|namespace|type)/}]},d={variants:[{className:"operator",begin:"(".concat("-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor",")\\b")},{className:"literal",begin:/(-)[\w\d]+/,relevance:0}]},u={className:"function",begin:/\[.*\]\s*[\w]+[ ]??\(/,end:/$/,returnBegin:!0,relevance:0,contains:[{className:"keyword",begin:"(".concat(t.keyword.toString().replace(/\s/g,"|"),")\\b"),endsParent:!0,relevance:0},e.inherit(e.TITLE_MODE,{endsParent:!0})]},m=[u,o,n,e.NUMBER_MODE,r,i,s,a,{className:"literal",begin:/\$(null|true|false)\b/},{className:"selector-tag",begin:/@\B/,relevance:0}],p={begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[].concat("self",m,{begin:"("+["string","char","byte","int","long","bool","decimal","single","double","DateTime","xml","array","hashtable","void"].join("|")+")",className:"built_in",relevance:0},{className:"type",begin:/[\.\w\d]+/,relevance:0})};return u.contains.unshift(p),{name:"PowerShell",aliases:["ps","ps1"],case_insensitive:!0,keywords:t,contains:m.concat(l,c,_,d,p)}};var Ob=function(e){return{name:"Processing",keywords:{keyword:"BufferedReader PVector PFont PImage PGraphics HashMap boolean byte char color double float int long String Array FloatDict FloatList IntDict IntList JSONArray JSONObject Object StringDict StringList Table TableRow XML false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private",literal:"P2D P3D HALF_PI PI QUARTER_PI TAU TWO_PI",title:"setup draw",built_in:"displayHeight displayWidth mouseY mouseX mousePressed pmouseX pmouseY key keyCode pixels focused frameCount frameRate height width size createGraphics beginDraw createShape loadShape PShape arc ellipse line point quad rect triangle bezier bezierDetail bezierPoint bezierTangent curve curveDetail curvePoint curveTangent curveTightness shape shapeMode beginContour beginShape bezierVertex curveVertex endContour endShape quadraticVertex vertex ellipseMode noSmooth rectMode smooth strokeCap strokeJoin strokeWeight mouseClicked mouseDragged mouseMoved mousePressed mouseReleased mouseWheel keyPressed keyPressedkeyReleased keyTyped print println save saveFrame day hour millis minute month second year background clear colorMode fill noFill noStroke stroke alpha blue brightness color green hue lerpColor red saturation modelX modelY modelZ screenX screenY screenZ ambient emissive shininess specular add createImage beginCamera camera endCamera frustum ortho perspective printCamera printProjection cursor frameRate noCursor exit loop noLoop popStyle pushStyle redraw binary boolean byte char float hex int str unbinary unhex join match matchAll nf nfc nfp nfs split splitTokens trim append arrayCopy concat expand reverse shorten sort splice subset box sphere sphereDetail createInput createReader loadBytes loadJSONArray loadJSONObject loadStrings loadTable loadXML open parseXML saveTable selectFolder selectInput beginRaw beginRecord createOutput createWriter endRaw endRecord PrintWritersaveBytes saveJSONArray saveJSONObject saveStream saveStrings saveXML selectOutput popMatrix printMatrix pushMatrix resetMatrix rotate rotateX rotateY rotateZ scale shearX shearY translate ambientLight directionalLight lightFalloff lights lightSpecular noLights normal pointLight spotLight image imageMode loadImage noTint requestImage tint texture textureMode textureWrap blend copy filter get loadPixels set updatePixels blendMode loadShader PShaderresetShader shader createFont loadFont text textFont textAlign textLeading textMode textSize textWidth textAscent textDescent abs ceil constrain dist exp floor lerp log mag map max min norm pow round sq sqrt acos asin atan atan2 cos degrees radians sin tan noise noiseDetail noiseSeed random randomGaussian randomSeed"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};var hb=function(e){return{name:"Python profiler",contains:[e.C_NUMBER_MODE,{begin:"[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}",end:":",excludeEnd:!0},{begin:"(ncalls|tottime|cumtime)",end:"$",keywords:"ncalls tottime|10 cumtime|10 filename",relevance:10},{begin:"function calls",end:"$",contains:[e.C_NUMBER_MODE],relevance:10},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"\\(",end:"\\)$",excludeBegin:!0,excludeEnd:!0,relevance:0}]}};var yb=function(e){var t={begin:/\(/,end:/\)/,relevance:0},n={begin:/\[/,end:/\]/},a={className:"comment",begin:/%/,end:/$/,contains:[e.PHRASAL_WORDS_MODE]},r={className:"string",begin:/`/,end:/`/,contains:[e.BACKSLASH_ESCAPE]},i=[{begin:/[a-z][A-Za-z0-9_]*/,relevance:0},{className:"symbol",variants:[{begin:/[A-Z][a-zA-Z0-9_]*/},{begin:/_[A-Za-z0-9_]*/}],relevance:0},t,{begin:/:-/},n,a,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,r,{className:"string",begin:/0'(\\'|.)/},{className:"string",begin:/0'\\s/},e.C_NUMBER_MODE];return t.contains=i,n.contains=i,{name:"Prolog",contains:i.concat([{begin:/\.$/}])}};var Ib=function(e){var t="[ \\t\\f]*",n=t+"[:=]"+t,a="[ \\t\\f]+",r="("+n+"|"+"[ \\t\\f]+)",i="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",o="([^\\\\:= \\t\\f\\n]|\\\\.)+",s={end:r,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\\\"},{begin:"\\\\\\n"}]}};return{name:".properties",case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{returnBegin:!0,variants:[{begin:i+n,relevance:1},{begin:i+a,relevance:0}],contains:[{className:"attr",begin:i,endsParent:!0,relevance:0}],starts:s},{begin:o+r,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:o,endsParent:!0,relevance:0}],starts:s},{className:"attr",relevance:0,begin:o+t+"$"}]}};var Ab=function(e){return{name:"Protocol Buffers",keywords:{keyword:"package import option optional required repeated group oneof",built_in:"double float int32 int64 uint32 uint64 sint32 sint64 fixed32 fixed64 sfixed32 sfixed64 bool string bytes",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"message enum service",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"function",beginKeywords:"rpc",end:/[{;]/,excludeEnd:!0,keywords:"rpc returns"},{begin:/^\s*[A-Z_]+(?=\s*=[^\n]+;$)/}]}};var Db=function(e){var t=e.COMMENT("#","$"),n="([A-Za-z_]|::)(\\w|::)*",a=e.inherit(e.TITLE_MODE,{begin:n}),r={className:"variable",begin:"\\$"+n},i={className:"string",contains:[e.BACKSLASH_ESCAPE,r],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/}]};return{name:"Puppet",aliases:["pp"],contains:[t,r,i,{beginKeywords:"class",end:"\\{|;",illegal:/=/,contains:[a,t]},{beginKeywords:"define",end:/\{/,contains:[{className:"section",begin:e.IDENT_RE,endsParent:!0}]},{begin:e.IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\S/,contains:[{className:"keyword",begin:e.IDENT_RE},{begin:/\{/,end:/\}/,keywords:{keyword:"and case default else elsif false if in import enherits node or true undef unless main settings $string ",literal:"alias audit before loglevel noop require subscribe tag owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check en_address ip_address realname command environment hour monute month monthday special target weekday creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options device fstype enable hasrestart directory present absent link atboot blockdevice device dump pass remounts poller_tag use message withpath adminfile allow_virtual allowcdrom category configfiles flavor install_options instance package_settings platform responsefile status uninstall_options vendor unless_system_user unless_uid binary control flags hasstatus manifest pattern restart running start stop allowdupe auths expiry gid groups home iterations key_membership keys managehome membership password password_max_age password_min_age profile_membership profiles project purge_ssh_keys role_membership roles salt shell uid baseurl cost descr enabled enablegroups exclude failovermethod gpgcheck gpgkey http_caching include includepkgs keepalive metadata_expire metalink mirrorlist priority protect proxy proxy_password proxy_username repo_gpgcheck s3_enabled skip_if_unavailable sslcacert sslclientcert sslclientkey sslverify mounted",built_in:"architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version"},relevance:0,contains:[i,t,{begin:"[a-zA-Z_]+\\s*=>",returnBegin:!0,end:"=>",contains:[{className:"attr",begin:e.IDENT_RE}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},r]}],relevance:0}]}};var Mb=function(e){return{name:"PureBASIC",aliases:["pb","pbi"],keywords:"Align And Array As Break CallDebugger Case CompilerCase CompilerDefault CompilerElse CompilerElseIf CompilerEndIf CompilerEndSelect CompilerError CompilerIf CompilerSelect CompilerWarning Continue Data DataSection Debug DebugLevel Declare DeclareC DeclareCDLL DeclareDLL DeclareModule Default Define Dim DisableASM DisableDebugger DisableExplicit Else ElseIf EnableASM EnableDebugger EnableExplicit End EndDataSection EndDeclareModule EndEnumeration EndIf EndImport EndInterface EndMacro EndModule EndProcedure EndSelect EndStructure EndStructureUnion EndWith Enumeration EnumerationBinary Extends FakeReturn For ForEach ForEver Global Gosub Goto If Import ImportC IncludeBinary IncludeFile IncludePath Interface List Macro MacroExpandedCount Map Module NewList NewMap Next Not Or Procedure ProcedureC ProcedureCDLL ProcedureDLL ProcedureReturn Protected Prototype PrototypeC ReDim Read Repeat Restore Return Runtime Select Shared Static Step Structure StructureUnion Swap Threaded To UndefineMacro Until Until UnuseModule UseModule Wend While With XIncludeFile XOr",contains:[e.COMMENT(";","$",{relevance:0}),{className:"function",begin:"\\b(Procedure|Declare)(C|CDLL|DLL)?\\b",end:"\\(",excludeEnd:!0,returnBegin:!0,contains:[{className:"keyword",begin:"(Procedure|Declare)(C|CDLL|DLL)?",excludeEnd:!0},{className:"type",begin:"\\.\\w*"},e.UNDERSCORE_TITLE_MODE]},{className:"string",begin:'(~)?"',end:'"',illegal:"\\n"},{className:"symbol",begin:"#[a-zA-Z_]\\w*\\$?"}]}};function Lb(e){return e?"string"==typeof e?e:e.source:null}function wb(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e){return Lb(e)})).join("")}("(?=",e,")")}var xb=function(e){var t={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:["and","as","assert","async","await","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},n={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:t,illegal:/#/},r={begin:/\{\{/,relevance:0},i={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,n],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,n],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,n,r,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,n,r,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,r,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},o="[0-9](_?[0-9])*",s="(\\b(".concat(o,"))?\\.(").concat(o,")|\\b(").concat(o,")\\."),l={className:"number",relevance:0,variants:[{begin:"(\\b(".concat(o,")|(").concat(s,"))[eE][+-]?(").concat(o,")[jJ]?\\b")},{begin:"(".concat(s,")[jJ]?")},{begin:"\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?\\b"},{begin:"\\b0[bB](_?[01])+[lL]?\\b"},{begin:"\\b0[oO](_?[0-7])+[lL]?\\b"},{begin:"\\b0[xX](_?[0-9a-fA-F])+[lL]?\\b"},{begin:"\\b(".concat(o,")[jJ]\\b")}]},c={className:"comment",begin:wb(/# type:/),end:/$/,keywords:t,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},_={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:["self",n,l,i,e.HASH_COMMENT_MODE]}]};return a.contains=[i,l,n],{name:"Python",aliases:["py","gyp","ipython"],keywords:t,illegal:/(<\/|->|\?)|=>/,contains:[n,l,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},i,c,e.HASH_COMMENT_MODE,{variants:[{className:"function",beginKeywords:"def"},{className:"class",beginKeywords:"class"}],end:/:/,illegal:/[${=;\n,]/,contains:[e.UNDERSCORE_TITLE_MODE,_,{begin:/->/,endsWithParent:!0,keywords:t}]},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[l,_,i]}]}};var Pb=function(e){return{aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}};var kb=function(e){return{name:"Q",aliases:["k","kdb"],keywords:{$pattern:/(`?)[A-Za-z0-9_]+\b/,keyword:"do while select delete by update from",literal:"0b 1b",built_in:"neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum",type:"`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid"},contains:[e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}};function Ub(e){return e?"string"==typeof e?e:e.source:null}function Fb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Ub(e)})).join("");return a}var Bb=function(e){var t="[a-zA-Z_][a-zA-Z0-9\\._]*",n={className:"attribute",begin:"\\bid\\s*:",starts:{className:"string",end:t,returnEnd:!1}},a={begin:t+"\\s*:",returnBegin:!0,contains:[{className:"attribute",begin:t,end:"\\s*:",excludeEnd:!0,relevance:0}],relevance:0},r={begin:Fb(t,/\s*\{/),end:/\{/,returnBegin:!0,relevance:0,contains:[e.inherit(e.TITLE_MODE,{begin:t})]};return{name:"QML",aliases:["qt"],case_insensitive:!1,keywords:{keyword:"in of on if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await import",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Behavior bool color coordinate date double enumeration font geocircle georectangle geoshape int list matrix4x4 parent point quaternion real rect size string url variant vector2d vector3d vector4d Promise"},contains:[{className:"meta",begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{begin:/</,end:/>\s*[);\]]/,relevance:0,subLanguage:"xml"}],relevance:0},{className:"keyword",begin:"\\bsignal\\b",starts:{className:"string",end:"(\\(|:|=|;|,|//|/\\*|$)",returnEnd:!0}},{className:"keyword",begin:"\\bproperty\\b",starts:{className:"string",end:"(:|=|;|,|//|/\\*|$)",returnEnd:!0}},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}],illegal:/\[|%/},{begin:"\\."+e.IDENT_RE,relevance:0},n,a,r],illegal:/#/}};function Gb(e){return e?"string"==typeof e?e:e.source:null}function Yb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Gb(e)})).join("");return a}var Hb=function(e){var t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/;return{name:"R",illegal:/->/,keywords:{$pattern:t,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},compilerExtensions:[function(e,t){if(e.beforeMatch){if(e.starts)throw new Error("beforeMatch cannot be used with starts");var n=Object.assign({},e);Object.keys(e).forEach((function(t){delete e[t]})),e.begin=Yb(n.beforeMatch,Yb("(?=",n.begin,")")),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch}}],contains:[e.COMMENT(/#'/,/$/,{contains:[{className:"doctag",begin:"@examples",starts:{contains:[{begin:/\n/},{begin:/#'\s*(?=@[a-zA-Z]+)/,endsParent:!0},{begin:/#'/,end:/$/,excludeBegin:!0}]}},{className:"doctag",begin:"@param",end:/$/,contains:[{className:"variable",variants:[{begin:t},{begin:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{className:"doctag",begin:/@[a-zA-Z]+/},{className:"meta-keyword",begin:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{className:"number",relevance:0,beforeMatch:/([^a-zA-Z0-9._])/,variants:[{match:/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/},{match:/0[xX][0-9a-fA-F]+([pP][+-]?\d+)?[Li]?/},{match:/(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?[Li]?/}]},{begin:"%",end:"%"},{begin:Yb(/[a-zA-Z][a-zA-Z_0-9]*/,"\\s+<-\\s+")},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}};var Vb=function(e){var t="~?[a-z$_][0-9a-zA-Z$_]*",n="`?[A-Z$_][0-9a-zA-Z$_]*",a="("+(["||","++","**","+.","*","/","*.","/.","..."].map((function(e){return e.split("").map((function(e){return"\\"+e})).join("")})).join("|")+"|\\|>|&&|==|===)"),r="\\s+"+a+"\\s+",i={keyword:"and as asr assert begin class constraint do done downto else end exception external for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new nonrec object of open or private rec sig struct then to try type val virtual when while with",built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 ref string unit ",literal:"true false"},o="\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",s={className:"number",relevance:0,variants:[{begin:o},{begin:"\\(-"+o+"\\)"}]},l={className:"operator",relevance:0,begin:a},c=[{className:"identifier",relevance:0,begin:t},l,s],_=[e.QUOTE_STRING_MODE,l,{className:"module",begin:"\\b"+n,returnBegin:!0,end:".",contains:[{className:"identifier",begin:n,relevance:0}]}],d=[{className:"module",begin:"\\b"+n,returnBegin:!0,end:".",relevance:0,contains:[{className:"identifier",begin:n,relevance:0}]}],u={className:"function",relevance:0,keywords:i,variants:[{begin:"\\s(\\(\\.?.*?\\)|"+t+")\\s*=>",end:"\\s*=>",returnBegin:!0,relevance:0,contains:[{className:"params",variants:[{begin:t},{begin:"~?[a-z$_][0-9a-zA-Z$_]*(\\s*:\\s*[a-z$_][0-9a-z$_]*(\\(\\s*('?[a-z$_][0-9a-z$_]*\\s*(,'?[a-z$_][0-9a-z$_]*\\s*)*)?\\))?){0,2}"},{begin:/\(\s*\)/}]}]},{begin:"\\s\\(\\.?[^;\\|]*\\)\\s*=>",end:"\\s=>",returnBegin:!0,relevance:0,contains:[{className:"params",relevance:0,variants:[{begin:t,end:"(,|\\n|\\))",relevance:0,contains:[l,{className:"typing",begin:":",end:"(,|\\n)",returnBegin:!0,relevance:0,contains:d}]}]}]},{begin:"\\(\\.\\s"+t+"\\)\\s*=>"}]};_.push(u);var m={className:"constructor",begin:n+"\\(",end:"\\)",illegal:"\\n",keywords:i,contains:[e.QUOTE_STRING_MODE,l,{className:"params",begin:"\\b"+t}]},p={className:"pattern-match",begin:"\\|",returnBegin:!0,keywords:i,end:"=>",relevance:0,contains:[m,l,{relevance:0,className:"constructor",begin:n}]},g={className:"module-access",keywords:i,returnBegin:!0,variants:[{begin:"\\b("+n+"\\.)+"+t},{begin:"\\b("+n+"\\.)+\\(",end:"\\)",returnBegin:!0,contains:[u,{begin:"\\(",end:"\\)",skip:!0}].concat(_)},{begin:"\\b("+n+"\\.)+\\{",end:/\}/}],contains:_};return d.push(g),{name:"ReasonML",aliases:["re"],keywords:i,illegal:"(:-|:=|\\$\\{|\\+=)",contains:[e.COMMENT("/\\*","\\*/",{illegal:"^(#,\\/\\/)"}),{className:"character",begin:"'(\\\\[^']+|[^'])'",illegal:"\\n",relevance:0},e.QUOTE_STRING_MODE,{className:"literal",begin:"\\(\\)",relevance:0},{className:"literal",begin:"\\[\\|",end:"\\|\\]",relevance:0,contains:c},{className:"literal",begin:"\\[",end:"\\]",relevance:0,contains:c},m,{className:"operator",begin:r,illegal:"--\x3e",relevance:0},s,e.C_LINE_COMMENT_MODE,p,u,{className:"module-def",begin:"\\bmodule\\s+"+t+"\\s+"+n+"\\s+=\\s+\\{",end:/\}/,returnBegin:!0,keywords:i,relevance:0,contains:[{className:"module",relevance:0,begin:n},{begin:/\{/,end:/\}/,skip:!0}].concat(_)},g]}};var qb=function(e){return{name:"RenderMan RIB",keywords:"ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry Hider Hyperboloid Identity Illuminate Imager Interior LightSource MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd TransformPoints Translate TrimCurve WorldBegin WorldEnd",illegal:"</",contains:[e.HASH_COMMENT_MODE,e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}};var zb=function(e){var t="[a-zA-Z-_][^\\n{]+\\{",n={className:"attribute",begin:/[a-zA-Z-_]+/,end:/\s*:/,excludeEnd:!0,starts:{end:";",relevance:0,contains:[{className:"variable",begin:/\.[a-zA-Z-_]+/},{className:"keyword",begin:/\(optional\)/}]}};return{name:"Roboconf",aliases:["graph","instances"],case_insensitive:!0,keywords:"import",contains:[{begin:"^facet "+t,end:/\}/,keywords:"facet",contains:[n,e.HASH_COMMENT_MODE]},{begin:"^\\s*instance of "+t,end:/\}/,keywords:"name count channels instance-data instance-state instance of",illegal:/\S/,contains:["self",n,e.HASH_COMMENT_MODE]},{begin:"^"+t,end:/\}/,contains:[n,e.HASH_COMMENT_MODE]},e.HASH_COMMENT_MODE]}};var Wb=function(e){var t="foreach do while for if from to step else on-error and or not in",n="true false yes no nothing nil null",a={className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},r={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a,{className:"variable",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]}]},i={className:"string",begin:/'/,end:/'/};return{name:"Microtik RouterOS script",aliases:["mikrotik"],case_insensitive:!0,keywords:{$pattern:/:?[\w-]+/,literal:n,keyword:t+" :"+t.split(" ").join(" :")+" :"+"global local beep delay put len typeof pick log time set find environment terminal error execute parse resolve toarray tobool toid toip toip6 tonum tostr totime".split(" ").join(" :")},contains:[{variants:[{begin:/\/\*/,end:/\*\//},{begin:/\/\//,end:/$/},{begin:/<\//,end:/>/}],illegal:/./},e.COMMENT("^#","$"),r,i,a,{begin:/[\w-]+=([^\s{}[\]()>]+)/,relevance:0,returnBegin:!0,contains:[{className:"attribute",begin:/[^=]+/},{begin:/=/,endsWithParent:!0,relevance:0,contains:[r,i,a,{className:"literal",begin:"\\b("+n.split(" ").join("|")+")\\b"},{begin:/("[^"]*"|[^\s{}[\]]+)/}]}]},{className:"number",begin:/\*[0-9a-fA-F]+/},{begin:"\\b("+"add remove enable disable set get print export edit find run debug error info warning".split(" ").join("|")+")([\\s[(\\]|])",returnBegin:!0,contains:[{className:"builtin-name",begin:/\w+/}]},{className:"built_in",variants:[{begin:"(\\.\\./|/|\\s)(("+"traffic-flow traffic-generator firewall scheduler aaa accounting address-list address align area bandwidth-server bfd bgp bridge client clock community config connection console customer default dhcp-client dhcp-server discovery dns e-mail ethernet filter firmware gps graphing group hardware health hotspot identity igmp-proxy incoming instance interface ip ipsec ipv6 irq l2tp-server lcd ldp logging mac-server mac-winbox mangle manual mirror mme mpls nat nd neighbor network note ntp ospf ospf-v3 ovpn-server page peer pim ping policy pool port ppp pppoe-client pptp-server prefix profile proposal proxy queue radius resource rip ripng route routing screen script security-profiles server service service-port settings shares smb sms sniffer snmp snooper socks sstp-server system tool tracking type upgrade upnp user-manager users user vlan secret vrrp watchdog web-access wireless pptp pppoe lan wan layer7-protocol lease simple raw".split(" ").join("|")+");?\\s)+"},{begin:/\.\./,relevance:0}]}]}};var $b=function(e){return{name:"RenderMan RSL",keywords:{keyword:"float color point normal vector matrix while for if do return else break extern continue",built_in:"abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp faceforward filterstep floor format fresnel incident length lightsource log match max min mod noise normalize ntransform opposite option phong pnoise pow printf ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan texture textureinfo trace transform vtransform xcomp ycomp zcomp"},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$"},{className:"class",beginKeywords:"surface displacement light volume imager",end:"\\("},{beginKeywords:"illuminate illuminance gather",end:"\\("}]}};var Qb=function(e){return{name:"Oracle Rules Language",keywords:{keyword:"BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM NUMDAYS READ_DATE STAGING",built_in:"IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"literal",variants:[{begin:"#\\s+",relevance:0},{begin:"#[a-zA-Z .]+"}]}]}};var Kb=function(e){var t="([ui](8|16|32|64|128|size)|f(32|64))?",n="drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!";return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",keyword:"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield",literal:"true false Some None Ok Err",built_in:n},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"string",variants:[{begin:/r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/}]},{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*/},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+t}],relevance:0},{className:"function",beginKeywords:"fn",end:"(\\(|<)",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"meta-string",begin:/"/,end:/"/}]},{className:"class",beginKeywords:"type",end:";",contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{endsParent:!0})],illegal:"\\S"},{className:"class",beginKeywords:"trait enum struct union",end:/\{/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{endsParent:!0})],illegal:"[\\w\\d]"},{begin:e.IDENT_RE+"::",keywords:{built_in:n}},{begin:"->"}]}};var jb=function(e){return{name:"SAS",case_insensitive:!0,keywords:{literal:"null missing _all_ _automatic_ _character_ _infile_ _n_ _name_ _null_ _numeric_ _user_ _webout_",meta:"do if then else end until while abort array attrib by call cards cards4 catname continue datalines datalines4 delete delim delimiter display dm drop endsas error file filename footnote format goto in infile informat input keep label leave length libname link list lostcard merge missing modify options output out page put redirect remove rename replace retain return select set skip startsas stop title update waitsas where window x systask add and alter as cascade check create delete describe distinct drop foreign from group having index insert into in key like message modify msgtype not null on or order primary references reset restrict select set table unique update validate view where"},contains:[{className:"keyword",begin:/^\s*(proc [\w\d_]+|data|run|quit)[\s;]/},{className:"variable",begin:/&[a-zA-Z_&][a-zA-Z0-9_]*\.?/},{className:"emphasis",begin:/^\s*datalines|cards.*;/,end:/^\s*;\s*$/},{className:"built_in",begin:"%(bquote|nrbquote|cmpres|qcmpres|compstor|datatyp|display|do|else|end|eval|global|goto|if|index|input|keydef|label|left|length|let|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qcmpres|qleft|qlowcase|qscan|qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|substr|superq|syscall|sysevalf|sysexec|sysfunc|sysget|syslput|sysprod|sysrc|sysrput|then|to|trim|unquote|until|upcase|verify|while|window)"},{className:"name",begin:/%[a-zA-Z_][a-zA-Z_0-9]*/},{className:"meta",begin:"[^%](abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|cexist|cinv|close|cnonct|collate|compbl|compound|compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|filename|fileref|finfo|finv|fipname|fipnamel|fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|hms|hosthelp|hour|ibessel|index|indexc|indexw|input|inputc|inputn|int|intck|intnx|intrr|irr|jbessel|juldate|kurtosis|lag|lbound|left|length|lgamma|libname|libref|log|log10|log2|logpdf|logpmf|logsdf|lowcase|max|mdy|mean|min|minute|mod|month|mopen|mort|n|netpv|nmiss|normal|note|npv|open|ordinal|pathname|pdf|peek|peekc|pmf|point|poisson|poke|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probt|put|putc|putn|qtr|quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|rewind|right|round|saving|scan|sdf|second|sign|sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|stfips|stname|stnamel|substr|sum|symget|sysget|sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|tinv|tnonct|today|translate|tranwrd|trigamma|trim|trimn|trunc|uniform|upcase|uss|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|zipnamel|zipstate)[(]"},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.COMMENT("\\*",";"),e.C_BLOCK_COMMENT_MODE]}};var Xb=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:/\$\{/,end:/\}/}]},n={className:"string",variants:[{begin:'"""',end:'"""'},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'[a-z]+"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t]},{className:"string",begin:'[a-z]+"""',end:'"""',contains:[t],relevance:10}]},a={className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},r={className:"title",begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,relevance:0},i={className:"class",beginKeywords:"class object trait type",end:/[:={\[\n;]/,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a]},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a]},r]},o={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[r]};return{name:"Scala",keywords:{literal:"true false null",keyword:"type yield lazy override def with val var sealed abstract private trait object if forSome for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"symbol",begin:"'\\w[\\w\\d_]*(?!')"},a,o,i,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}};var Zb=function(e){var t="[^\\(\\)\\[\\]\\{\\}\",'`;#|\\\\\\s]+",n="(-|\\+)?\\d+([./]\\d+)?",a={$pattern:t,"builtin-name":"case-lambda call/cc class define-class exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules ' * + , ,@ - ... / ; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci<? string-ci=? string-ci>=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string<? string=? string>=? string>? string? substring symbol->string symbol? tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"},r={className:"literal",begin:"(#t|#f|#\\\\"+t+"|#\\\\.)"},i={className:"number",variants:[{begin:n,relevance:0},{begin:"(-|\\+)?\\d+([./]\\d+)?[+\\-](-|\\+)?\\d+([./]\\d+)?i",relevance:0},{begin:"#b[0-1]+(/[0-1]+)?"},{begin:"#o[0-7]+(/[0-7]+)?"},{begin:"#x[0-9a-f]+(/[0-9a-f]+)?"}]},o=e.QUOTE_STRING_MODE,s=[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#\\|","\\|#")],l={begin:t,relevance:0},c={className:"symbol",begin:"'"+t},_={endsWithParent:!0,relevance:0},d={variants:[{begin:/'/},{begin:"`"}],contains:[{begin:"\\(",end:"\\)",contains:["self",r,o,i,l,c]}]},u={className:"name",relevance:0,begin:t,keywords:a},m={variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}],contains:[{begin:/lambda/,endsWithParent:!0,returnBegin:!0,contains:[u,{endsParent:!0,variants:[{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/}],contains:[l]}]},u,_]};return _.contains=[r,i,o,l,c,d,m].concat(s),{name:"Scheme",illegal:/\S/,contains:[e.SHEBANG(),i,o,c,d,m].concat(s)}};var Jb=function(e){var t=[e.C_NUMBER_MODE,{className:"string",begin:"'|\"",end:"'|\"",contains:[e.BACKSLASH_ESCAPE,{begin:"''"}]}];return{name:"Scilab",aliases:["sci"],keywords:{$pattern:/%?\w+/,keyword:"abort break case clear catch continue do elseif else endfunction end for function global if pause return resume select try then while",literal:"%f %F %t %T %pi %eps %inf %nan %e %i %z %s",built_in:"abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan type typename warning zeros matrix"},illegal:'("|#|/\\*|\\s+/\\w+)',contains:[{className:"function",beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{begin:"[a-zA-Z_][a-zA-Z_0-9]*[\\.']+",relevance:0},{begin:"\\[",end:"\\][\\.']*",relevance:0,contains:t},e.COMMENT("//","$")].concat(t)}},ef=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],tf=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],nf=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],af=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],rf=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();var of=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n=af,a=nf,r="@[a-z-]+",i={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+ef.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+a.join("|")+")"},{className:"selector-pseudo",begin:"::("+n.join("|")+")"},i,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},{className:"attribute",begin:"\\b("+rf.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[i,t.HEXCOLOR,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT]},{begin:"@(page|font-face)",lexemes:r,keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:tf.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},i,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,e.CSS_NUMBER_MODE]}]}};var sf=function(e){return{name:"Shell Session",aliases:["console"],contains:[{className:"meta",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#]/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}};var lf=function(e){var t=["add","and","cmp","cmpg","cmpl","const","div","double","float","goto","if","int","long","move","mul","neg","new","nop","not","or","rem","return","shl","shr","sput","sub","throw","ushr","xor"];return{name:"Smali",contains:[{className:"string",begin:'"',end:'"',relevance:0},e.COMMENT("#","$",{relevance:0}),{className:"keyword",variants:[{begin:"\\s*\\.end\\s[a-zA-Z0-9]*"},{begin:"^[ ]*\\.[a-zA-Z]*",relevance:0},{begin:"\\s:[a-zA-Z_0-9]*",relevance:0},{begin:"\\s("+["transient","constructor","abstract","final","synthetic","public","private","protected","static","bridge","system"].join("|")+")"}]},{className:"built_in",variants:[{begin:"\\s("+t.join("|")+")\\s"},{begin:"\\s("+t.join("|")+")((-|/)[a-zA-Z0-9]+)+\\s",relevance:10},{begin:"\\s("+["aget","aput","array","check","execute","fill","filled","goto/16","goto/32","iget","instance","invoke","iput","monitor","packed","sget","sparse"].join("|")+")((-|/)[a-zA-Z0-9]+)*\\s",relevance:10}]},{className:"class",begin:"L[^(;:\n]*;",relevance:0},{begin:"[vp][0-9]+"}]}};var cf=function(e){var t="[a-z][a-zA-Z0-9_]*",n={className:"string",begin:"\\$.{1}"},a={className:"symbol",begin:"#"+e.UNDERSCORE_IDENT_RE};return{name:"Smalltalk",aliases:["st"],keywords:"self super nil true false thisContext",contains:[e.COMMENT('"','"'),e.APOS_STRING_MODE,{className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},{begin:t+":",relevance:0},e.C_NUMBER_MODE,a,n,{begin:"\\|[ ]*"+t+"([ ]+"+t+")*[ ]*\\|",returnBegin:!0,end:/\|/,illegal:/\S/,contains:[{begin:"(\\|[ ]*)?"+t}]},{begin:"#\\(",end:"\\)",contains:[e.APOS_STRING_MODE,n,e.C_NUMBER_MODE,a]}]}};var _f=function(e){return{name:"SML (Standard ML)",aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?",keyword:"abstype and andalso as case datatype do else end eqtype exception fn fun functor handle if in include infix infixr let local nonfix of op open orelse raise rec sharing sig signature struct structure then type val with withtype where while",built_in:"array bool char exn int list option order real ref string substring vector unit word",literal:"true false NONE SOME LESS EQUAL GREATER nil"},illegal:/\/\/|>>/,contains:[{className:"literal",begin:/\[(\|\|)?\]|\(\)/,relevance:0},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*"},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",relevance:0},{begin:/[-=]>/}]}};var df=function(e){var t={className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]},{begin:"'",end:"'",contains:[{begin:"''",relevance:0}]}]},n={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"define undef ifdef ifndef else endif include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(t,{className:"meta-string"}),{className:"meta-string",begin:/<[^\n>]*>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]};return{name:"SQF",case_insensitive:!0,keywords:{keyword:"case catch default do else exit exitWith for forEach from if private switch then throw to try waitUntil while with",built_in:"abs accTime acos action actionIDs actionKeys actionKeysImages actionKeysNames actionKeysNamesArray actionName actionParams activateAddons activatedAddons activateKey add3DENConnection add3DENEventHandler add3DENLayer addAction addBackpack addBackpackCargo addBackpackCargoGlobal addBackpackGlobal addCamShake addCuratorAddons addCuratorCameraArea addCuratorEditableObjects addCuratorEditingArea addCuratorPoints addEditorObject addEventHandler addForce addGoggles addGroupIcon addHandgunItem addHeadgear addItem addItemCargo addItemCargoGlobal addItemPool addItemToBackpack addItemToUniform addItemToVest addLiveStats addMagazine addMagazineAmmoCargo addMagazineCargo addMagazineCargoGlobal addMagazineGlobal addMagazinePool addMagazines addMagazineTurret addMenu addMenuItem addMissionEventHandler addMPEventHandler addMusicEventHandler addOwnedMine addPlayerScores addPrimaryWeaponItem addPublicVariableEventHandler addRating addResources addScore addScoreSide addSecondaryWeaponItem addSwitchableUnit addTeamMember addToRemainsCollector addTorque addUniform addVehicle addVest addWaypoint addWeapon addWeaponCargo addWeaponCargoGlobal addWeaponGlobal addWeaponItem addWeaponPool addWeaponTurret admin agent agents AGLToASL aimedAtTarget aimPos airDensityRTD airplaneThrottle airportSide AISFinishHeal alive all3DENEntities allAirports allControls allCurators allCutLayers allDead allDeadMen allDisplays allGroups allMapMarkers allMines allMissionObjects allow3DMode allowCrewInImmobile allowCuratorLogicIgnoreAreas allowDamage allowDammage allowFileOperations allowFleeing allowGetIn allowSprint allPlayers allSimpleObjects allSites allTurrets allUnits allUnitsUAV allVariables ammo ammoOnPylon and animate animateBay animateDoor animatePylon animateSource animationNames animationPhase animationSourcePhase animationState append apply armoryPoints arrayIntersect asin ASLToAGL ASLToATL assert assignAsCargo assignAsCargoIndex assignAsCommander assignAsDriver assignAsGunner assignAsTurret assignCurator assignedCargo assignedCommander assignedDriver assignedGunner assignedItems assignedTarget assignedTeam assignedVehicle assignedVehicleRole assignItem assignTeam assignToAirport atan atan2 atg ATLToASL attachedObject attachedObjects attachedTo attachObject attachTo attackEnabled backpack backpackCargo backpackContainer backpackItems backpackMagazines backpackSpaceFor behaviour benchmark binocular boundingBox boundingBoxReal boundingCenter breakOut breakTo briefingName buildingExit buildingPos buttonAction buttonSetAction cadetMode call callExtension camCommand camCommit camCommitPrepared camCommitted camConstuctionSetParams camCreate camDestroy cameraEffect cameraEffectEnableHUD cameraInterest cameraOn cameraView campaignConfigFile camPreload camPreloaded camPrepareBank camPrepareDir camPrepareDive camPrepareFocus camPrepareFov camPrepareFovRange camPreparePos camPrepareRelPos camPrepareTarget camSetBank camSetDir camSetDive camSetFocus camSetFov camSetFovRange camSetPos camSetRelPos camSetTarget camTarget camUseNVG canAdd canAddItemToBackpack canAddItemToUniform canAddItemToVest cancelSimpleTaskDestination canFire canMove canSlingLoad canStand canSuspend canTriggerDynamicSimulation canUnloadInCombat canVehicleCargo captive captiveNum cbChecked cbSetChecked ceil channelEnabled cheatsEnabled checkAIFeature checkVisibility className clearAllItemsFromBackpack clearBackpackCargo clearBackpackCargoGlobal clearGroupIcons clearItemCargo clearItemCargoGlobal clearItemPool clearMagazineCargo clearMagazineCargoGlobal clearMagazinePool clearOverlay clearRadio clearWeaponCargo clearWeaponCargoGlobal clearWeaponPool clientOwner closeDialog closeDisplay closeOverlay collapseObjectTree collect3DENHistory collectiveRTD combatMode commandArtilleryFire commandChat commander commandFire commandFollow commandFSM commandGetOut commandingMenu commandMove commandRadio commandStop commandSuppressiveFire commandTarget commandWatch comment commitOverlay compile compileFinal completedFSM composeText configClasses configFile configHierarchy configName configProperties configSourceAddonList configSourceMod configSourceModList confirmSensorTarget connectTerminalToUAV controlsGroupCtrl copyFromClipboard copyToClipboard copyWaypoints cos count countEnemy countFriendly countSide countType countUnknown create3DENComposition create3DENEntity createAgent createCenter createDialog createDiaryLink createDiaryRecord createDiarySubject createDisplay createGearDialog createGroup createGuardedPoint createLocation createMarker createMarkerLocal createMenu createMine createMissionDisplay createMPCampaignDisplay createSimpleObject createSimpleTask createSite createSoundSource createTask createTeam createTrigger createUnit createVehicle createVehicleCrew createVehicleLocal crew ctAddHeader ctAddRow ctClear ctCurSel ctData ctFindHeaderRows ctFindRowHeader ctHeaderControls ctHeaderCount ctRemoveHeaders ctRemoveRows ctrlActivate ctrlAddEventHandler ctrlAngle ctrlAutoScrollDelay ctrlAutoScrollRewind ctrlAutoScrollSpeed ctrlChecked ctrlClassName ctrlCommit ctrlCommitted ctrlCreate ctrlDelete ctrlEnable ctrlEnabled ctrlFade ctrlHTMLLoaded ctrlIDC ctrlIDD ctrlMapAnimAdd ctrlMapAnimClear ctrlMapAnimCommit ctrlMapAnimDone ctrlMapCursor ctrlMapMouseOver ctrlMapScale ctrlMapScreenToWorld ctrlMapWorldToScreen ctrlModel ctrlModelDirAndUp ctrlModelScale ctrlParent ctrlParentControlsGroup ctrlPosition ctrlRemoveAllEventHandlers ctrlRemoveEventHandler ctrlScale ctrlSetActiveColor ctrlSetAngle ctrlSetAutoScrollDelay ctrlSetAutoScrollRewind ctrlSetAutoScrollSpeed ctrlSetBackgroundColor ctrlSetChecked ctrlSetEventHandler ctrlSetFade ctrlSetFocus ctrlSetFont ctrlSetFontH1 ctrlSetFontH1B ctrlSetFontH2 ctrlSetFontH2B ctrlSetFontH3 ctrlSetFontH3B ctrlSetFontH4 ctrlSetFontH4B ctrlSetFontH5 ctrlSetFontH5B ctrlSetFontH6 ctrlSetFontH6B ctrlSetFontHeight ctrlSetFontHeightH1 ctrlSetFontHeightH2 ctrlSetFontHeightH3 ctrlSetFontHeightH4 ctrlSetFontHeightH5 ctrlSetFontHeightH6 ctrlSetFontHeightSecondary ctrlSetFontP ctrlSetFontPB ctrlSetFontSecondary ctrlSetForegroundColor ctrlSetModel ctrlSetModelDirAndUp ctrlSetModelScale ctrlSetPixelPrecision ctrlSetPosition ctrlSetScale ctrlSetStructuredText ctrlSetText ctrlSetTextColor ctrlSetTooltip ctrlSetTooltipColorBox ctrlSetTooltipColorShade ctrlSetTooltipColorText ctrlShow ctrlShown ctrlText ctrlTextHeight ctrlTextWidth ctrlType ctrlVisible ctRowControls ctRowCount ctSetCurSel ctSetData ctSetHeaderTemplate ctSetRowTemplate ctSetValue ctValue curatorAddons curatorCamera curatorCameraArea curatorCameraAreaCeiling curatorCoef curatorEditableObjects curatorEditingArea curatorEditingAreaType curatorMouseOver curatorPoints curatorRegisteredObjects curatorSelected curatorWaypointCost current3DENOperation currentChannel currentCommand currentMagazine currentMagazineDetail currentMagazineDetailTurret currentMagazineTurret currentMuzzle currentNamespace currentTask currentTasks currentThrowable currentVisionMode currentWaypoint currentWeapon currentWeaponMode currentWeaponTurret currentZeroing cursorObject cursorTarget customChat customRadio cutFadeOut cutObj cutRsc cutText damage date dateToNumber daytime deActivateKey debriefingText debugFSM debugLog deg delete3DENEntities deleteAt deleteCenter deleteCollection deleteEditorObject deleteGroup deleteGroupWhenEmpty deleteIdentity deleteLocation deleteMarker deleteMarkerLocal deleteRange deleteResources deleteSite deleteStatus deleteTeam deleteVehicle deleteVehicleCrew deleteWaypoint detach detectedMines diag_activeMissionFSMs diag_activeScripts diag_activeSQFScripts diag_activeSQSScripts diag_captureFrame diag_captureFrameToFile diag_captureSlowFrame diag_codePerformance diag_drawMode diag_enable diag_enabled diag_fps diag_fpsMin diag_frameNo diag_lightNewLoad diag_list diag_log diag_logSlowFrame diag_mergeConfigFile diag_recordTurretLimits diag_setLightNew diag_tickTime diag_toggle dialog diarySubjectExists didJIP didJIPOwner difficulty difficultyEnabled difficultyEnabledRTD difficultyOption direction directSay disableAI disableCollisionWith disableConversation disableDebriefingStats disableMapIndicators disableNVGEquipment disableRemoteSensors disableSerialization disableTIEquipment disableUAVConnectability disableUserInput displayAddEventHandler displayCtrl displayParent displayRemoveAllEventHandlers displayRemoveEventHandler displaySetEventHandler dissolveTeam distance distance2D distanceSqr distributionRegion do3DENAction doArtilleryFire doFire doFollow doFSM doGetOut doMove doorPhase doStop doSuppressiveFire doTarget doWatch drawArrow drawEllipse drawIcon drawIcon3D drawLine drawLine3D drawLink drawLocation drawPolygon drawRectangle drawTriangle driver drop dynamicSimulationDistance dynamicSimulationDistanceCoef dynamicSimulationEnabled dynamicSimulationSystemEnabled echo edit3DENMissionAttributes editObject editorSetEventHandler effectiveCommander emptyPositions enableAI enableAIFeature enableAimPrecision enableAttack enableAudioFeature enableAutoStartUpRTD enableAutoTrimRTD enableCamShake enableCaustics enableChannel enableCollisionWith enableCopilot enableDebriefingStats enableDiagLegend enableDynamicSimulation enableDynamicSimulationSystem enableEndDialog enableEngineArtillery enableEnvironment enableFatigue enableGunLights enableInfoPanelComponent enableIRLasers enableMimics enablePersonTurret enableRadio enableReload enableRopeAttach enableSatNormalOnDetail enableSaving enableSentences enableSimulation enableSimulationGlobal enableStamina enableTeamSwitch enableTraffic enableUAVConnectability enableUAVWaypoints enableVehicleCargo enableVehicleSensor enableWeaponDisassembly endLoadingScreen endMission engineOn enginesIsOnRTD enginesRpmRTD enginesTorqueRTD entities environmentEnabled estimatedEndServerTime estimatedTimeLeft evalObjectArgument everyBackpack everyContainer exec execEditorScript execFSM execVM exp expectedDestination exportJIPMessages eyeDirection eyePos face faction fadeMusic fadeRadio fadeSound fadeSpeech failMission fillWeaponsFromPool find findCover findDisplay findEditorObject findEmptyPosition findEmptyPositionReady findIf findNearestEnemy finishMissionInit finite fire fireAtTarget firstBackpack flag flagAnimationPhase flagOwner flagSide flagTexture fleeing floor flyInHeight flyInHeightASL fog fogForecast fogParams forceAddUniform forcedMap forceEnd forceFlagTexture forceFollowRoad forceMap forceRespawn forceSpeed forceWalk forceWeaponFire forceWeatherChange forEachMember forEachMemberAgent forEachMemberTeam forgetTarget format formation formationDirection formationLeader formationMembers formationPosition formationTask formatText formLeader freeLook fromEditor fuel fullCrew gearIDCAmmoCount gearSlotAmmoCount gearSlotData get3DENActionState get3DENAttribute get3DENCamera get3DENConnections get3DENEntity get3DENEntityID get3DENGrid get3DENIconsVisible get3DENLayerEntities get3DENLinesVisible get3DENMissionAttribute get3DENMouseOver get3DENSelected getAimingCoef getAllEnvSoundControllers getAllHitPointsDamage getAllOwnedMines getAllSoundControllers getAmmoCargo getAnimAimPrecision getAnimSpeedCoef getArray getArtilleryAmmo getArtilleryComputerSettings getArtilleryETA getAssignedCuratorLogic getAssignedCuratorUnit getBackpackCargo getBleedingRemaining getBurningValue getCameraViewDirection getCargoIndex getCenterOfMass getClientState getClientStateNumber getCompatiblePylonMagazines getConnectedUAV getContainerMaxLoad getCursorObjectParams getCustomAimCoef getDammage getDescription getDir getDirVisual getDLCAssetsUsage getDLCAssetsUsageByName getDLCs getEditorCamera getEditorMode getEditorObjectScope getElevationOffset getEnvSoundController getFatigue getForcedFlagTexture getFriend getFSMVariable getFuelCargo getGroupIcon getGroupIconParams getGroupIcons getHideFrom getHit getHitIndex getHitPointDamage getItemCargo getMagazineCargo getMarkerColor getMarkerPos getMarkerSize getMarkerType getMass getMissionConfig getMissionConfigValue getMissionDLCs getMissionLayerEntities getModelInfo getMousePosition getMusicPlayedTime getNumber getObjectArgument getObjectChildren getObjectDLC getObjectMaterials getObjectProxy getObjectTextures getObjectType getObjectViewDistance getOxygenRemaining getPersonUsedDLCs getPilotCameraDirection getPilotCameraPosition getPilotCameraRotation getPilotCameraTarget getPlateNumber getPlayerChannel getPlayerScores getPlayerUID getPos getPosASL getPosASLVisual getPosASLW getPosATL getPosATLVisual getPosVisual getPosWorld getPylonMagazines getRelDir getRelPos getRemoteSensorsDisabled getRepairCargo getResolution getShadowDistance getShotParents getSlingLoad getSoundController getSoundControllerResult getSpeed getStamina getStatValue getSuppression getTerrainGrid getTerrainHeightASL getText getTotalDLCUsageTime getUnitLoadout getUnitTrait getUserMFDText getUserMFDvalue getVariable getVehicleCargo getWeaponCargo getWeaponSway getWingsOrientationRTD getWingsPositionRTD getWPPos glanceAt globalChat globalRadio goggles goto group groupChat groupFromNetId groupIconSelectable groupIconsVisible groupId groupOwner groupRadio groupSelectedUnits groupSelectUnit gunner gusts halt handgunItems handgunMagazine handgunWeapon handsHit hasInterface hasPilotCamera hasWeapon hcAllGroups hcGroupParams hcLeader hcRemoveAllGroups hcRemoveGroup hcSelected hcSelectGroup hcSetGroup hcShowBar hcShownBar headgear hideBody hideObject hideObjectGlobal hideSelection hint hintC hintCadet hintSilent hmd hostMission htmlLoad HUDMovementLevels humidity image importAllGroups importance in inArea inAreaArray incapacitatedState inflame inflamed infoPanel infoPanelComponentEnabled infoPanelComponents infoPanels inGameUISetEventHandler inheritsFrom initAmbientLife inPolygon inputAction inRangeOfArtillery insertEditorObject intersect is3DEN is3DENMultiplayer isAbleToBreathe isAgent isArray isAutoHoverOn isAutonomous isAutotest isBleeding isBurning isClass isCollisionLightOn isCopilotEnabled isDamageAllowed isDedicated isDLCAvailable isEngineOn isEqualTo isEqualType isEqualTypeAll isEqualTypeAny isEqualTypeArray isEqualTypeParams isFilePatchingEnabled isFlashlightOn isFlatEmpty isForcedWalk isFormationLeader isGroupDeletedWhenEmpty isHidden isInRemainsCollector isInstructorFigureEnabled isIRLaserOn isKeyActive isKindOf isLaserOn isLightOn isLocalized isManualFire isMarkedForCollection isMultiplayer isMultiplayerSolo isNil isNull isNumber isObjectHidden isObjectRTD isOnRoad isPipEnabled isPlayer isRealTime isRemoteExecuted isRemoteExecutedJIP isServer isShowing3DIcons isSimpleObject isSprintAllowed isStaminaEnabled isSteamMission isStreamFriendlyUIEnabled isText isTouchingGround isTurnedOut isTutHintsEnabled isUAVConnectable isUAVConnected isUIContext isUniformAllowed isVehicleCargo isVehicleRadarOn isVehicleSensorEnabled isWalking isWeaponDeployed isWeaponRested itemCargo items itemsWithMagazines join joinAs joinAsSilent joinSilent joinString kbAddDatabase kbAddDatabaseTargets kbAddTopic kbHasTopic kbReact kbRemoveTopic kbTell kbWasSaid keyImage keyName knowsAbout land landAt landResult language laserTarget lbAdd lbClear lbColor lbColorRight lbCurSel lbData lbDelete lbIsSelected lbPicture lbPictureRight lbSelection lbSetColor lbSetColorRight lbSetCurSel lbSetData lbSetPicture lbSetPictureColor lbSetPictureColorDisabled lbSetPictureColorSelected lbSetPictureRight lbSetPictureRightColor lbSetPictureRightColorDisabled lbSetPictureRightColorSelected lbSetSelectColor lbSetSelectColorRight lbSetSelected lbSetText lbSetTextRight lbSetTooltip lbSetValue lbSize lbSort lbSortByValue lbText lbTextRight lbValue leader leaderboardDeInit leaderboardGetRows leaderboardInit leaderboardRequestRowsFriends leaderboardsRequestUploadScore leaderboardsRequestUploadScoreKeepBest leaderboardState leaveVehicle libraryCredits libraryDisclaimers lifeState lightAttachObject lightDetachObject lightIsOn lightnings limitSpeed linearConversion lineIntersects lineIntersectsObjs lineIntersectsSurfaces lineIntersectsWith linkItem list listObjects listRemoteTargets listVehicleSensors ln lnbAddArray lnbAddColumn lnbAddRow lnbClear lnbColor lnbCurSelRow lnbData lnbDeleteColumn lnbDeleteRow lnbGetColumnsPosition lnbPicture lnbSetColor lnbSetColumnsPos lnbSetCurSelRow lnbSetData lnbSetPicture lnbSetText lnbSetValue lnbSize lnbSort lnbSortByValue lnbText lnbValue load loadAbs loadBackpack loadFile loadGame loadIdentity loadMagazine loadOverlay loadStatus loadUniform loadVest local localize locationPosition lock lockCameraTo lockCargo lockDriver locked lockedCargo lockedDriver lockedTurret lockIdentity lockTurret lockWP log logEntities logNetwork logNetworkTerminate lookAt lookAtPos magazineCargo magazines magazinesAllTurrets magazinesAmmo magazinesAmmoCargo magazinesAmmoFull magazinesDetail magazinesDetailBackpack magazinesDetailUniform magazinesDetailVest magazinesTurret magazineTurretAmmo mapAnimAdd mapAnimClear mapAnimCommit mapAnimDone mapCenterOnCamera mapGridPosition markAsFinishedOnSteam markerAlpha markerBrush markerColor markerDir markerPos markerShape markerSize markerText markerType max members menuAction menuAdd menuChecked menuClear menuCollapse menuData menuDelete menuEnable menuEnabled menuExpand menuHover menuPicture menuSetAction menuSetCheck menuSetData menuSetPicture menuSetValue menuShortcut menuShortcutText menuSize menuSort menuText menuURL menuValue min mineActive mineDetectedBy missionConfigFile missionDifficulty missionName missionNamespace missionStart missionVersion mod modelToWorld modelToWorldVisual modelToWorldVisualWorld modelToWorldWorld modParams moonIntensity moonPhase morale move move3DENCamera moveInAny moveInCargo moveInCommander moveInDriver moveInGunner moveInTurret moveObjectToEnd moveOut moveTime moveTo moveToCompleted moveToFailed musicVolume name nameSound nearEntities nearestBuilding nearestLocation nearestLocations nearestLocationWithDubbing nearestObject nearestObjects nearestTerrainObjects nearObjects nearObjectsReady nearRoads nearSupplies nearTargets needReload netId netObjNull newOverlay nextMenuItemIndex nextWeatherChange nMenuItems not numberOfEnginesRTD numberToDate objectCurators objectFromNetId objectParent objStatus onBriefingGroup onBriefingNotes onBriefingPlan onBriefingTeamSwitch onCommandModeChanged onDoubleClick onEachFrame onGroupIconClick onGroupIconOverEnter onGroupIconOverLeave onHCGroupSelectionChanged onMapSingleClick onPlayerConnected onPlayerDisconnected onPreloadFinished onPreloadStarted onShowNewObject onTeamSwitch openCuratorInterface openDLCPage openMap openSteamApp openYoutubeVideo or orderGetIn overcast overcastForecast owner param params parseNumber parseSimpleArray parseText parsingNamespace particlesQuality pickWeaponPool pitch pixelGrid pixelGridBase pixelGridNoUIScale pixelH pixelW playableSlotsNumber playableUnits playAction playActionNow player playerRespawnTime playerSide playersNumber playGesture playMission playMove playMoveNow playMusic playScriptedMission playSound playSound3D position positionCameraToWorld posScreenToWorld posWorldToScreen ppEffectAdjust ppEffectCommit ppEffectCommitted ppEffectCreate ppEffectDestroy ppEffectEnable ppEffectEnabled ppEffectForceInNVG precision preloadCamera preloadObject preloadSound preloadTitleObj preloadTitleRsc preprocessFile preprocessFileLineNumbers primaryWeapon primaryWeaponItems primaryWeaponMagazine priority processDiaryLink productVersion profileName profileNamespace profileNameSteam progressLoadingScreen progressPosition progressSetPosition publicVariable publicVariableClient publicVariableServer pushBack pushBackUnique putWeaponPool queryItemsPool queryMagazinePool queryWeaponPool rad radioChannelAdd radioChannelCreate radioChannelRemove radioChannelSetCallSign radioChannelSetLabel radioVolume rain rainbow random rank rankId rating rectangular registeredTasks registerTask reload reloadEnabled remoteControl remoteExec remoteExecCall remoteExecutedOwner remove3DENConnection remove3DENEventHandler remove3DENLayer removeAction removeAll3DENEventHandlers removeAllActions removeAllAssignedItems removeAllContainers removeAllCuratorAddons removeAllCuratorCameraAreas removeAllCuratorEditingAreas removeAllEventHandlers removeAllHandgunItems removeAllItems removeAllItemsWithMagazines removeAllMissionEventHandlers removeAllMPEventHandlers removeAllMusicEventHandlers removeAllOwnedMines removeAllPrimaryWeaponItems removeAllWeapons removeBackpack removeBackpackGlobal removeCuratorAddons removeCuratorCameraArea removeCuratorEditableObjects removeCuratorEditingArea removeDrawIcon removeDrawLinks removeEventHandler removeFromRemainsCollector removeGoggles removeGroupIcon removeHandgunItem removeHeadgear removeItem removeItemFromBackpack removeItemFromUniform removeItemFromVest removeItems removeMagazine removeMagazineGlobal removeMagazines removeMagazinesTurret removeMagazineTurret removeMenuItem removeMissionEventHandler removeMPEventHandler removeMusicEventHandler removeOwnedMine removePrimaryWeaponItem removeSecondaryWeaponItem removeSimpleTask removeSwitchableUnit removeTeamMember removeUniform removeVest removeWeapon removeWeaponAttachmentCargo removeWeaponCargo removeWeaponGlobal removeWeaponTurret reportRemoteTarget requiredVersion resetCamShake resetSubgroupDirection resize resources respawnVehicle restartEditorCamera reveal revealMine reverse reversedMouseY roadAt roadsConnectedTo roleDescription ropeAttachedObjects ropeAttachedTo ropeAttachEnabled ropeAttachTo ropeCreate ropeCut ropeDestroy ropeDetach ropeEndPosition ropeLength ropes ropeUnwind ropeUnwound rotorsForcesRTD rotorsRpmRTD round runInitScript safeZoneH safeZoneW safeZoneWAbs safeZoneX safeZoneXAbs safeZoneY save3DENInventory saveGame saveIdentity saveJoysticks saveOverlay saveProfileNamespace saveStatus saveVar savingEnabled say say2D say3D scopeName score scoreSide screenshot screenToWorld scriptDone scriptName scudState secondaryWeapon secondaryWeaponItems secondaryWeaponMagazine select selectBestPlaces selectDiarySubject selectedEditorObjects selectEditorObject selectionNames selectionPosition selectLeader selectMax selectMin selectNoPlayer selectPlayer selectRandom selectRandomWeighted selectWeapon selectWeaponTurret sendAUMessage sendSimpleCommand sendTask sendTaskResult sendUDPMessage serverCommand serverCommandAvailable serverCommandExecutable serverName serverTime set set3DENAttribute set3DENAttributes set3DENGrid set3DENIconsVisible set3DENLayer set3DENLinesVisible set3DENLogicType set3DENMissionAttribute set3DENMissionAttributes set3DENModelsVisible set3DENObjectType set3DENSelected setAccTime setActualCollectiveRTD setAirplaneThrottle setAirportSide setAmmo setAmmoCargo setAmmoOnPylon setAnimSpeedCoef setAperture setApertureNew setArmoryPoints setAttributes setAutonomous setBehaviour setBleedingRemaining setBrakesRTD setCameraInterest setCamShakeDefParams setCamShakeParams setCamUseTI setCaptive setCenterOfMass setCollisionLight setCombatMode setCompassOscillation setConvoySeparation setCuratorCameraAreaCeiling setCuratorCoef setCuratorEditingAreaType setCuratorWaypointCost setCurrentChannel setCurrentTask setCurrentWaypoint setCustomAimCoef setCustomWeightRTD setDamage setDammage setDate setDebriefingText setDefaultCamera setDestination setDetailMapBlendPars setDir setDirection setDrawIcon setDriveOnPath setDropInterval setDynamicSimulationDistance setDynamicSimulationDistanceCoef setEditorMode setEditorObjectScope setEffectCondition setEngineRPMRTD setFace setFaceAnimation setFatigue setFeatureType setFlagAnimationPhase setFlagOwner setFlagSide setFlagTexture setFog setFormation setFormationTask setFormDir setFriend setFromEditor setFSMVariable setFuel setFuelCargo setGroupIcon setGroupIconParams setGroupIconsSelectable setGroupIconsVisible setGroupId setGroupIdGlobal setGroupOwner setGusts setHideBehind setHit setHitIndex setHitPointDamage setHorizonParallaxCoef setHUDMovementLevels setIdentity setImportance setInfoPanel setLeader setLightAmbient setLightAttenuation setLightBrightness setLightColor setLightDayLight setLightFlareMaxDistance setLightFlareSize setLightIntensity setLightnings setLightUseFlare setLocalWindParams setMagazineTurretAmmo setMarkerAlpha setMarkerAlphaLocal setMarkerBrush setMarkerBrushLocal setMarkerColor setMarkerColorLocal setMarkerDir setMarkerDirLocal setMarkerPos setMarkerPosLocal setMarkerShape setMarkerShapeLocal setMarkerSize setMarkerSizeLocal setMarkerText setMarkerTextLocal setMarkerType setMarkerTypeLocal setMass setMimic setMousePosition setMusicEffect setMusicEventHandler setName setNameSound setObjectArguments setObjectMaterial setObjectMaterialGlobal setObjectProxy setObjectTexture setObjectTextureGlobal setObjectViewDistance setOvercast setOwner setOxygenRemaining setParticleCircle setParticleClass setParticleFire setParticleParams setParticleRandom setPilotCameraDirection setPilotCameraRotation setPilotCameraTarget setPilotLight setPiPEffect setPitch setPlateNumber setPlayable setPlayerRespawnTime setPos setPosASL setPosASL2 setPosASLW setPosATL setPosition setPosWorld setPylonLoadOut setPylonsPriority setRadioMsg setRain setRainbow setRandomLip setRank setRectangular setRepairCargo setRotorBrakeRTD setShadowDistance setShotParents setSide setSimpleTaskAlwaysVisible setSimpleTaskCustomData setSimpleTaskDescription setSimpleTaskDestination setSimpleTaskTarget setSimpleTaskType setSimulWeatherLayers setSize setSkill setSlingLoad setSoundEffect setSpeaker setSpeech setSpeedMode setStamina setStaminaScheme setStatValue setSuppression setSystemOfUnits setTargetAge setTaskMarkerOffset setTaskResult setTaskState setTerrainGrid setText setTimeMultiplier setTitleEffect setTrafficDensity setTrafficDistance setTrafficGap setTrafficSpeed setTriggerActivation setTriggerArea setTriggerStatements setTriggerText setTriggerTimeout setTriggerType setType setUnconscious setUnitAbility setUnitLoadout setUnitPos setUnitPosWeak setUnitRank setUnitRecoilCoefficient setUnitTrait setUnloadInCombat setUserActionText setUserMFDText setUserMFDvalue setVariable setVectorDir setVectorDirAndUp setVectorUp setVehicleAmmo setVehicleAmmoDef setVehicleArmor setVehicleCargo setVehicleId setVehicleLock setVehiclePosition setVehicleRadar setVehicleReceiveRemoteTargets setVehicleReportOwnPosition setVehicleReportRemoteTargets setVehicleTIPars setVehicleVarName setVelocity setVelocityModelSpace setVelocityTransformation setViewDistance setVisibleIfTreeCollapsed setWantedRPMRTD setWaves setWaypointBehaviour setWaypointCombatMode setWaypointCompletionRadius setWaypointDescription setWaypointForceBehaviour setWaypointFormation setWaypointHousePosition setWaypointLoiterRadius setWaypointLoiterType setWaypointName setWaypointPosition setWaypointScript setWaypointSpeed setWaypointStatements setWaypointTimeout setWaypointType setWaypointVisible setWeaponReloadingTime setWind setWindDir setWindForce setWindStr setWingForceScaleRTD setWPPos show3DIcons showChat showCinemaBorder showCommandingMenu showCompass showCuratorCompass showGPS showHUD showLegend showMap shownArtilleryComputer shownChat shownCompass shownCuratorCompass showNewEditorObject shownGPS shownHUD shownMap shownPad shownRadio shownScoretable shownUAVFeed shownWarrant shownWatch showPad showRadio showScoretable showSubtitles showUAVFeed showWarrant showWatch showWaypoint showWaypoints side sideChat sideEnemy sideFriendly sideRadio simpleTasks simulationEnabled simulCloudDensity simulCloudOcclusion simulInClouds simulWeatherSync sin size sizeOf skill skillFinal skipTime sleep sliderPosition sliderRange sliderSetPosition sliderSetRange sliderSetSpeed sliderSpeed slingLoadAssistantShown soldierMagazines someAmmo sort soundVolume spawn speaker speed speedMode splitString sqrt squadParams stance startLoadingScreen step stop stopEngineRTD stopped str sunOrMoon supportInfo suppressFor surfaceIsWater surfaceNormal surfaceType swimInDepth switchableUnits switchAction switchCamera switchGesture switchLight switchMove synchronizedObjects synchronizedTriggers synchronizedWaypoints synchronizeObjectsAdd synchronizeObjectsRemove synchronizeTrigger synchronizeWaypoint systemChat systemOfUnits tan targetKnowledge targets targetsAggregate targetsQuery taskAlwaysVisible taskChildren taskCompleted taskCustomData taskDescription taskDestination taskHint taskMarkerOffset taskParent taskResult taskState taskType teamMember teamName teams teamSwitch teamSwitchEnabled teamType terminate terrainIntersect terrainIntersectASL terrainIntersectAtASL text textLog textLogFormat tg time timeMultiplier titleCut titleFadeOut titleObj titleRsc titleText toArray toFixed toLower toString toUpper triggerActivated triggerActivation triggerArea triggerAttachedVehicle triggerAttachObject triggerAttachVehicle triggerDynamicSimulation triggerStatements triggerText triggerTimeout triggerTimeoutCurrent triggerType turretLocal turretOwner turretUnit tvAdd tvClear tvCollapse tvCollapseAll tvCount tvCurSel tvData tvDelete tvExpand tvExpandAll tvPicture tvSetColor tvSetCurSel tvSetData tvSetPicture tvSetPictureColor tvSetPictureColorDisabled tvSetPictureColorSelected tvSetPictureRight tvSetPictureRightColor tvSetPictureRightColorDisabled tvSetPictureRightColorSelected tvSetText tvSetTooltip tvSetValue tvSort tvSortByValue tvText tvTooltip tvValue type typeName typeOf UAVControl uiNamespace uiSleep unassignCurator unassignItem unassignTeam unassignVehicle underwater uniform uniformContainer uniformItems uniformMagazines unitAddons unitAimPosition unitAimPositionVisual unitBackpack unitIsUAV unitPos unitReady unitRecoilCoefficient units unitsBelowHeight unlinkItem unlockAchievement unregisterTask updateDrawIcon updateMenuItem updateObjectTree useAISteeringComponent useAudioTimeForMoves userInputDisabled vectorAdd vectorCos vectorCrossProduct vectorDiff vectorDir vectorDirVisual vectorDistance vectorDistanceSqr vectorDotProduct vectorFromTo vectorMagnitude vectorMagnitudeSqr vectorModelToWorld vectorModelToWorldVisual vectorMultiply vectorNormalized vectorUp vectorUpVisual vectorWorldToModel vectorWorldToModelVisual vehicle vehicleCargoEnabled vehicleChat vehicleRadio vehicleReceiveRemoteTargets vehicleReportOwnPosition vehicleReportRemoteTargets vehicles vehicleVarName velocity velocityModelSpace verifySignature vest vestContainer vestItems vestMagazines viewDistance visibleCompass visibleGPS visibleMap visiblePosition visiblePositionASL visibleScoretable visibleWatch waves waypointAttachedObject waypointAttachedVehicle waypointAttachObject waypointAttachVehicle waypointBehaviour waypointCombatMode waypointCompletionRadius waypointDescription waypointForceBehaviour waypointFormation waypointHousePosition waypointLoiterRadius waypointLoiterType waypointName waypointPosition waypoints waypointScript waypointsEnabledUAV waypointShow waypointSpeed waypointStatements waypointTimeout waypointTimeoutCurrent waypointType waypointVisible weaponAccessories weaponAccessoriesCargo weaponCargo weaponDirection weaponInertia weaponLowered weapons weaponsItems weaponsItemsCargo weaponState weaponsTurret weightRTD WFSideText wind ",literal:"blufor civilian configNull controlNull displayNull east endl false grpNull independent lineBreak locationNull nil objNull opfor pi resistance scriptNull sideAmbientLife sideEmpty sideLogic sideUnknown taskNull teamMemberNull true west"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.NUMBER_MODE,{className:"variable",begin:/\b_+[a-zA-Z]\w*/},{className:"title",begin:/[a-zA-Z][a-zA-Z0-9]+_fnc_\w*/},t,n],illegal:/#|^\$ /}};var uf=function(e){var t=e.COMMENT("--","$");return{name:"SQL (more)",aliases:["mysql","oracle"],disableAutodetect:!0,case_insensitive:!0,illegal:/[<>{}*]/,contains:[{beginKeywords:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with",end:/;/,endsWithParent:!0,keywords:{$pattern:/[\w\.]+/,keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varchar2 varying void"},contains:[{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:'"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:"`",end:"`"},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]}};function mf(e){return e?"string"==typeof e?e:e.source:null}function pf(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return mf(e)})).join("");return a}function gf(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return mf(e)})).join("|")+")";return a}var Ef=function(e){var t=e.COMMENT("--","$"),n=["true","false","unknown"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],r=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],i=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],o=r,s=[].concat(["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update ","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],["add","asc","collation","desc","final","first","last","view"]).filter((function(e){return!r.includes(e)})),l={begin:pf(/\b/,gf.apply(void 0,o),/\s*\(/),keywords:{built_in:o}};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.exceptions,a=t.when,r=a;return n=n||[],e.map((function(e){return e.match(/\|\d+$/)||n.includes(e)?e:r(e)?"".concat(e,"|0"):e}))}(s,{when:function(e){return e.length<3}}),literal:n,type:a,built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{begin:gf.apply(void 0,i),keywords:{$pattern:/[\w\.]+/,keyword:s.concat(i),literal:n,type:a}},{className:"type",begin:gf.apply(void 0,["double precision","large object","with timezone","without timezone"])},l,{className:"variable",begin:/@[a-z0-9]+/},{className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/"/,end:/"/,contains:[{begin:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,{className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}};var Sf=function(e){return{name:"Stan",aliases:["stanfuncs"],keywords:{$pattern:e.IDENT_RE,title:["functions","model","data","parameters","quantities","transformed","generated"],keyword:["for","in","if","else","while","break","continue","return"].concat(["int","real","vector","ordered","positive_ordered","simplex","unit_vector","row_vector","matrix","cholesky_factor_corr|10","cholesky_factor_cov|10","corr_matrix|10","cov_matrix|10","void"]).concat(["print","reject","increment_log_prob|10","integrate_ode|10","integrate_ode_rk45|10","integrate_ode_bdf|10","algebra_solver"]),built_in:["Phi","Phi_approx","abs","acos","acosh","algebra_solver","append_array","append_col","append_row","asin","asinh","atan","atan2","atanh","bernoulli_cdf","bernoulli_lccdf","bernoulli_lcdf","bernoulli_logit_lpmf","bernoulli_logit_rng","bernoulli_lpmf","bernoulli_rng","bessel_first_kind","bessel_second_kind","beta_binomial_cdf","beta_binomial_lccdf","beta_binomial_lcdf","beta_binomial_lpmf","beta_binomial_rng","beta_cdf","beta_lccdf","beta_lcdf","beta_lpdf","beta_rng","binary_log_loss","binomial_cdf","binomial_coefficient_log","binomial_lccdf","binomial_lcdf","binomial_logit_lpmf","binomial_lpmf","binomial_rng","block","categorical_logit_lpmf","categorical_logit_rng","categorical_lpmf","categorical_rng","cauchy_cdf","cauchy_lccdf","cauchy_lcdf","cauchy_lpdf","cauchy_rng","cbrt","ceil","chi_square_cdf","chi_square_lccdf","chi_square_lcdf","chi_square_lpdf","chi_square_rng","cholesky_decompose","choose","col","cols","columns_dot_product","columns_dot_self","cos","cosh","cov_exp_quad","crossprod","csr_extract_u","csr_extract_v","csr_extract_w","csr_matrix_times_vector","csr_to_dense_matrix","cumulative_sum","determinant","diag_matrix","diag_post_multiply","diag_pre_multiply","diagonal","digamma","dims","dirichlet_lpdf","dirichlet_rng","distance","dot_product","dot_self","double_exponential_cdf","double_exponential_lccdf","double_exponential_lcdf","double_exponential_lpdf","double_exponential_rng","e","eigenvalues_sym","eigenvectors_sym","erf","erfc","exp","exp2","exp_mod_normal_cdf","exp_mod_normal_lccdf","exp_mod_normal_lcdf","exp_mod_normal_lpdf","exp_mod_normal_rng","expm1","exponential_cdf","exponential_lccdf","exponential_lcdf","exponential_lpdf","exponential_rng","fabs","falling_factorial","fdim","floor","fma","fmax","fmin","fmod","frechet_cdf","frechet_lccdf","frechet_lcdf","frechet_lpdf","frechet_rng","gamma_cdf","gamma_lccdf","gamma_lcdf","gamma_lpdf","gamma_p","gamma_q","gamma_rng","gaussian_dlm_obs_lpdf","get_lp","gumbel_cdf","gumbel_lccdf","gumbel_lcdf","gumbel_lpdf","gumbel_rng","head","hypergeometric_lpmf","hypergeometric_rng","hypot","inc_beta","int_step","integrate_ode","integrate_ode_bdf","integrate_ode_rk45","inv","inv_Phi","inv_chi_square_cdf","inv_chi_square_lccdf","inv_chi_square_lcdf","inv_chi_square_lpdf","inv_chi_square_rng","inv_cloglog","inv_gamma_cdf","inv_gamma_lccdf","inv_gamma_lcdf","inv_gamma_lpdf","inv_gamma_rng","inv_logit","inv_sqrt","inv_square","inv_wishart_lpdf","inv_wishart_rng","inverse","inverse_spd","is_inf","is_nan","lbeta","lchoose","lgamma","lkj_corr_cholesky_lpdf","lkj_corr_cholesky_rng","lkj_corr_lpdf","lkj_corr_rng","lmgamma","lmultiply","log","log10","log1m","log1m_exp","log1m_inv_logit","log1p","log1p_exp","log2","log_determinant","log_diff_exp","log_falling_factorial","log_inv_logit","log_mix","log_rising_factorial","log_softmax","log_sum_exp","logistic_cdf","logistic_lccdf","logistic_lcdf","logistic_lpdf","logistic_rng","logit","lognormal_cdf","lognormal_lccdf","lognormal_lcdf","lognormal_lpdf","lognormal_rng","machine_precision","matrix_exp","max","mdivide_left_spd","mdivide_left_tri_low","mdivide_right_spd","mdivide_right_tri_low","mean","min","modified_bessel_first_kind","modified_bessel_second_kind","multi_gp_cholesky_lpdf","multi_gp_lpdf","multi_normal_cholesky_lpdf","multi_normal_cholesky_rng","multi_normal_lpdf","multi_normal_prec_lpdf","multi_normal_rng","multi_student_t_lpdf","multi_student_t_rng","multinomial_lpmf","multinomial_rng","multiply_log","multiply_lower_tri_self_transpose","neg_binomial_2_cdf","neg_binomial_2_lccdf","neg_binomial_2_lcdf","neg_binomial_2_log_lpmf","neg_binomial_2_log_rng","neg_binomial_2_lpmf","neg_binomial_2_rng","neg_binomial_cdf","neg_binomial_lccdf","neg_binomial_lcdf","neg_binomial_lpmf","neg_binomial_rng","negative_infinity","normal_cdf","normal_lccdf","normal_lcdf","normal_lpdf","normal_rng","not_a_number","num_elements","ordered_logistic_lpmf","ordered_logistic_rng","owens_t","pareto_cdf","pareto_lccdf","pareto_lcdf","pareto_lpdf","pareto_rng","pareto_type_2_cdf","pareto_type_2_lccdf","pareto_type_2_lcdf","pareto_type_2_lpdf","pareto_type_2_rng","pi","poisson_cdf","poisson_lccdf","poisson_lcdf","poisson_log_lpmf","poisson_log_rng","poisson_lpmf","poisson_rng","positive_infinity","pow","print","prod","qr_Q","qr_R","quad_form","quad_form_diag","quad_form_sym","rank","rayleigh_cdf","rayleigh_lccdf","rayleigh_lcdf","rayleigh_lpdf","rayleigh_rng","reject","rep_array","rep_matrix","rep_row_vector","rep_vector","rising_factorial","round","row","rows","rows_dot_product","rows_dot_self","scaled_inv_chi_square_cdf","scaled_inv_chi_square_lccdf","scaled_inv_chi_square_lcdf","scaled_inv_chi_square_lpdf","scaled_inv_chi_square_rng","sd","segment","sin","singular_values","sinh","size","skew_normal_cdf","skew_normal_lccdf","skew_normal_lcdf","skew_normal_lpdf","skew_normal_rng","softmax","sort_asc","sort_desc","sort_indices_asc","sort_indices_desc","sqrt","sqrt2","square","squared_distance","step","student_t_cdf","student_t_lccdf","student_t_lcdf","student_t_lpdf","student_t_rng","sub_col","sub_row","sum","tail","tan","tanh","target","tcrossprod","tgamma","to_array_1d","to_array_2d","to_matrix","to_row_vector","to_vector","trace","trace_gen_quad_form","trace_quad_form","trigamma","trunc","uniform_cdf","uniform_lccdf","uniform_lcdf","uniform_lpdf","uniform_rng","variance","von_mises_lpdf","von_mises_rng","weibull_cdf","weibull_lccdf","weibull_lcdf","weibull_lpdf","weibull_rng","wiener_lpdf","wishart_lpdf","wishart_rng"]},contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/#/,/$/,{relevance:0,keywords:{"meta-keyword":"include"}}),e.COMMENT(/\/\*/,/\*\//,{relevance:0,contains:[{className:"doctag",begin:/@(return|param)/}]}),{begin:/<\s*lower\s*=/,keywords:"lower"},{begin:/[<,]\s*upper\s*=/,keywords:"upper"},{className:"keyword",begin:/\btarget\s*\+=/,relevance:10},{begin:"~\\s*("+e.IDENT_RE+")\\s*\\(",keywords:["bernoulli","bernoulli_logit","beta","beta_binomial","binomial","binomial_logit","categorical","categorical_logit","cauchy","chi_square","dirichlet","double_exponential","exp_mod_normal","exponential","frechet","gamma","gaussian_dlm_obs","gumbel","hypergeometric","inv_chi_square","inv_gamma","inv_wishart","lkj_corr","lkj_corr_cholesky","logistic","lognormal","multi_gp","multi_gp_cholesky","multi_normal","multi_normal_cholesky","multi_normal_prec","multi_student_t","multinomial","neg_binomial","neg_binomial_2","neg_binomial_2_log","normal","ordered_logistic","pareto","pareto_type_2","poisson","poisson_log","rayleigh","scaled_inv_chi_square","skew_normal","student_t","uniform","von_mises","weibull","wiener","wishart"]},{className:"number",variants:[{begin:/\b\d+(?:\.\d*)?(?:[eE][+-]?\d+)?/},{begin:/\.\d+(?:[eE][+-]?\d+)?\b/}],relevance:0},{className:"string",begin:'"',end:'"',relevance:0}]}};var bf=function(e){return{name:"Stata",aliases:["do","ado"],case_insensitive:!0,keywords:"if else in foreach for forv forva forval forvalu forvalue forvalues by bys bysort xi quietly qui capture about ac ac_7 acprplot acprplot_7 adjust ado adopath adoupdate alpha ameans an ano anov anova anova_estat anova_terms anovadef aorder ap app appe appen append arch arch_dr arch_estat arch_p archlm areg areg_p args arima arima_dr arima_estat arima_p as asmprobit asmprobit_estat asmprobit_lf asmprobit_mfx__dlg asmprobit_p ass asse asser assert avplot avplot_7 avplots avplots_7 bcskew0 bgodfrey bias binreg bip0_lf biplot bipp_lf bipr_lf bipr_p biprobit bitest bitesti bitowt blogit bmemsize boot bootsamp bootstrap bootstrap_8 boxco_l boxco_p boxcox boxcox_6 boxcox_p bprobit br break brier bro brow brows browse brr brrstat bs bs_7 bsampl_w bsample bsample_7 bsqreg bstat bstat_7 bstat_8 bstrap bstrap_7 bubble bubbleplot ca ca_estat ca_p cabiplot camat canon canon_8 canon_8_p canon_estat canon_p cap caprojection capt captu captur capture cat cc cchart cchart_7 cci cd censobs_table centile cf char chdir checkdlgfiles checkestimationsample checkhlpfiles checksum chelp ci cii cl class classutil clear cli clis clist clo clog clog_lf clog_p clogi clogi_sw clogit clogit_lf clogit_p clogitp clogl_sw cloglog clonevar clslistarray cluster cluster_measures cluster_stop cluster_tree cluster_tree_8 clustermat cmdlog cnr cnre cnreg cnreg_p cnreg_sw cnsreg codebook collaps4 collapse colormult_nb colormult_nw compare compress conf confi confir confirm conren cons const constr constra constrai constrain constraint continue contract copy copyright copysource cor corc corr corr2data corr_anti corr_kmo corr_smc corre correl correla correlat correlate corrgram cou coun count cox cox_p cox_sw coxbase coxhaz coxvar cprplot cprplot_7 crc cret cretu cretur creturn cross cs cscript cscript_log csi ct ct_is ctset ctst_5 ctst_st cttost cumsp cumsp_7 cumul cusum cusum_7 cutil d|0 datasig datasign datasigna datasignat datasignatu datasignatur datasignature datetof db dbeta de dec deco decod decode deff des desc descr descri describ describe destring dfbeta dfgls dfuller di di_g dir dirstats dis discard disp disp_res disp_s displ displa display distinct do doe doed doedi doedit dotplot dotplot_7 dprobit drawnorm drop ds ds_util dstdize duplicates durbina dwstat dydx e|0 ed edi edit egen eivreg emdef en enc enco encod encode eq erase ereg ereg_lf ereg_p ereg_sw ereghet ereghet_glf ereghet_glf_sh ereghet_gp ereghet_ilf ereghet_ilf_sh ereghet_ip eret eretu eretur ereturn err erro error esize est est_cfexist est_cfname est_clickable est_expand est_hold est_table est_unhold est_unholdok estat estat_default estat_summ estat_vce_only esti estimates etodow etof etomdy ex exi exit expand expandcl fac fact facto factor factor_estat factor_p factor_pca_rotated factor_rotate factormat fcast fcast_compute fcast_graph fdades fdadesc fdadescr fdadescri fdadescrib fdadescribe fdasav fdasave fdause fh_st file open file read file close file filefilter fillin find_hlp_file findfile findit findit_7 fit fl fli flis flist for5_0 forest forestplot form forma format fpredict frac_154 frac_adj frac_chk frac_cox frac_ddp frac_dis frac_dv frac_in frac_mun frac_pp frac_pq frac_pv frac_wgt frac_xo fracgen fracplot fracplot_7 fracpoly fracpred fron_ex fron_hn fron_p fron_tn fron_tn2 frontier ftodate ftoe ftomdy ftowdate funnel funnelplot g|0 gamhet_glf gamhet_gp gamhet_ilf gamhet_ip gamma gamma_d2 gamma_p gamma_sw gammahet gdi_hexagon gdi_spokes ge gen gene gener genera generat generate genrank genstd genvmean gettoken gl gladder gladder_7 glim_l01 glim_l02 glim_l03 glim_l04 glim_l05 glim_l06 glim_l07 glim_l08 glim_l09 glim_l10 glim_l11 glim_l12 glim_lf glim_mu glim_nw1 glim_nw2 glim_nw3 glim_p glim_v1 glim_v2 glim_v3 glim_v4 glim_v5 glim_v6 glim_v7 glm glm_6 glm_p glm_sw glmpred glo glob globa global glogit glogit_8 glogit_p gmeans gnbre_lf gnbreg gnbreg_5 gnbreg_p gomp_lf gompe_sw gomper_p gompertz gompertzhet gomphet_glf gomphet_glf_sh gomphet_gp gomphet_ilf gomphet_ilf_sh gomphet_ip gphdot gphpen gphprint gprefs gprobi_p gprobit gprobit_8 gr gr7 gr_copy gr_current gr_db gr_describe gr_dir gr_draw gr_draw_replay gr_drop gr_edit gr_editviewopts gr_example gr_example2 gr_export gr_print gr_qscheme gr_query gr_read gr_rename gr_replay gr_save gr_set gr_setscheme gr_table gr_undo gr_use graph graph7 grebar greigen greigen_7 greigen_8 grmeanby grmeanby_7 gs_fileinfo gs_filetype gs_graphinfo gs_stat gsort gwood h|0 hadimvo hareg hausman haver he heck_d2 heckma_p heckman heckp_lf heckpr_p heckprob hel help hereg hetpr_lf hetpr_p hetprob hettest hexdump hilite hist hist_7 histogram hlogit hlu hmeans hotel hotelling hprobit hreg hsearch icd9 icd9_ff icd9p iis impute imtest inbase include inf infi infil infile infix inp inpu input ins insheet insp inspe inspec inspect integ inten intreg intreg_7 intreg_p intrg2_ll intrg_ll intrg_ll2 ipolate iqreg ir irf irf_create irfm iri is_svy is_svysum isid istdize ivprob_1_lf ivprob_lf ivprobit ivprobit_p ivreg ivreg_footnote ivtob_1_lf ivtob_lf ivtobit ivtobit_p jackknife jacknife jknife jknife_6 jknife_8 jkstat joinby kalarma1 kap kap_3 kapmeier kappa kapwgt kdensity kdensity_7 keep ksm ksmirnov ktau kwallis l|0 la lab labbe labbeplot labe label labelbook ladder levels levelsof leverage lfit lfit_p li lincom line linktest lis list lloghet_glf lloghet_glf_sh lloghet_gp lloghet_ilf lloghet_ilf_sh lloghet_ip llogi_sw llogis_p llogist llogistic llogistichet lnorm_lf lnorm_sw lnorma_p lnormal lnormalhet lnormhet_glf lnormhet_glf_sh lnormhet_gp lnormhet_ilf lnormhet_ilf_sh lnormhet_ip lnskew0 loadingplot loc loca local log logi logis_lf logistic logistic_p logit logit_estat logit_p loglogs logrank loneway lookfor lookup lowess lowess_7 lpredict lrecomp lroc lroc_7 lrtest ls lsens lsens_7 lsens_x lstat ltable ltable_7 ltriang lv lvr2plot lvr2plot_7 m|0 ma mac macr macro makecns man manova manova_estat manova_p manovatest mantel mark markin markout marksample mat mat_capp mat_order mat_put_rr mat_rapp mata mata_clear mata_describe mata_drop mata_matdescribe mata_matsave mata_matuse mata_memory mata_mlib mata_mosave mata_rename mata_which matalabel matcproc matlist matname matr matri matrix matrix_input__dlg matstrik mcc mcci md0_ md1_ md1debug_ md2_ md2debug_ mds mds_estat mds_p mdsconfig mdslong mdsmat mdsshepard mdytoe mdytof me_derd mean means median memory memsize menl meqparse mer merg merge meta mfp mfx mhelp mhodds minbound mixed_ll mixed_ll_reparm mkassert mkdir mkmat mkspline ml ml_5 ml_adjs ml_bhhhs ml_c_d ml_check ml_clear ml_cnt ml_debug ml_defd ml_e0 ml_e0_bfgs ml_e0_cycle ml_e0_dfp ml_e0i ml_e1 ml_e1_bfgs ml_e1_bhhh ml_e1_cycle ml_e1_dfp ml_e2 ml_e2_cycle ml_ebfg0 ml_ebfr0 ml_ebfr1 ml_ebh0q ml_ebhh0 ml_ebhr0 ml_ebr0i ml_ecr0i ml_edfp0 ml_edfr0 ml_edfr1 ml_edr0i ml_eds ml_eer0i ml_egr0i ml_elf ml_elf_bfgs ml_elf_bhhh ml_elf_cycle ml_elf_dfp ml_elfi ml_elfs ml_enr0i ml_enrr0 ml_erdu0 ml_erdu0_bfgs ml_erdu0_bhhh ml_erdu0_bhhhq ml_erdu0_cycle ml_erdu0_dfp ml_erdu0_nrbfgs ml_exde ml_footnote ml_geqnr ml_grad0 ml_graph ml_hbhhh ml_hd0 ml_hold ml_init ml_inv ml_log ml_max ml_mlout ml_mlout_8 ml_model ml_nb0 ml_opt ml_p ml_plot ml_query ml_rdgrd ml_repor ml_s_e ml_score ml_searc ml_technique ml_unhold mleval mlf_ mlmatbysum mlmatsum mlog mlogi mlogit mlogit_footnote mlogit_p mlopts mlsum mlvecsum mnl0_ mor more mov move mprobit mprobit_lf mprobit_p mrdu0_ mrdu1_ mvdecode mvencode mvreg mvreg_estat n|0 nbreg nbreg_al nbreg_lf nbreg_p nbreg_sw nestreg net newey newey_7 newey_p news nl nl_7 nl_9 nl_9_p nl_p nl_p_7 nlcom nlcom_p nlexp2 nlexp2_7 nlexp2a nlexp2a_7 nlexp3 nlexp3_7 nlgom3 nlgom3_7 nlgom4 nlgom4_7 nlinit nllog3 nllog3_7 nllog4 nllog4_7 nlog_rd nlogit nlogit_p nlogitgen nlogittree nlpred no nobreak noi nois noisi noisil noisily note notes notes_dlg nptrend numlabel numlist odbc old_ver olo olog ologi ologi_sw ologit ologit_p ologitp on one onew onewa oneway op_colnm op_comp op_diff op_inv op_str opr opro oprob oprob_sw oprobi oprobi_p oprobit oprobitp opts_exclusive order orthog orthpoly ou out outf outfi outfil outfile outs outsh outshe outshee outsheet ovtest pac pac_7 palette parse parse_dissim pause pca pca_8 pca_display pca_estat pca_p pca_rotate pcamat pchart pchart_7 pchi pchi_7 pcorr pctile pentium pergram pergram_7 permute permute_8 personal peto_st pkcollapse pkcross pkequiv pkexamine pkexamine_7 pkshape pksumm pksumm_7 pl plo plot plugin pnorm pnorm_7 poisgof poiss_lf poiss_sw poisso_p poisson poisson_estat post postclose postfile postutil pperron pr prais prais_e prais_e2 prais_p predict predictnl preserve print pro prob probi probit probit_estat probit_p proc_time procoverlay procrustes procrustes_estat procrustes_p profiler prog progr progra program prop proportion prtest prtesti pwcorr pwd q\\s qby qbys qchi qchi_7 qladder qladder_7 qnorm qnorm_7 qqplot qqplot_7 qreg qreg_c qreg_p qreg_sw qu quadchk quantile quantile_7 que quer query range ranksum ratio rchart rchart_7 rcof recast reclink recode reg reg3 reg3_p regdw regr regre regre_p2 regres regres_p regress regress_estat regriv_p remap ren rena renam rename renpfix repeat replace report reshape restore ret retu retur return rm rmdir robvar roccomp roccomp_7 roccomp_8 rocf_lf rocfit rocfit_8 rocgold rocplot rocplot_7 roctab roctab_7 rolling rologit rologit_p rot rota rotat rotate rotatemat rreg rreg_p ru run runtest rvfplot rvfplot_7 rvpplot rvpplot_7 sa safesum sample sampsi sav save savedresults saveold sc sca scal scala scalar scatter scm_mine sco scob_lf scob_p scobi_sw scobit scor score scoreplot scoreplot_help scree screeplot screeplot_help sdtest sdtesti se search separate seperate serrbar serrbar_7 serset set set_defaults sfrancia sh she shel shell shewhart shewhart_7 signestimationsample signrank signtest simul simul_7 simulate simulate_8 sktest sleep slogit slogit_d2 slogit_p smooth snapspan so sor sort spearman spikeplot spikeplot_7 spikeplt spline_x split sqreg sqreg_p sret sretu sretur sreturn ssc st st_ct st_hc st_hcd st_hcd_sh st_is st_issys st_note st_promo st_set st_show st_smpl st_subid stack statsby statsby_8 stbase stci stci_7 stcox stcox_estat stcox_fr stcox_fr_ll stcox_p stcox_sw stcoxkm stcoxkm_7 stcstat stcurv stcurve stcurve_7 stdes stem stepwise stereg stfill stgen stir stjoin stmc stmh stphplot stphplot_7 stphtest stphtest_7 stptime strate strate_7 streg streg_sw streset sts sts_7 stset stsplit stsum sttocc sttoct stvary stweib su suest suest_8 sum summ summa summar summari summariz summarize sunflower sureg survcurv survsum svar svar_p svmat svy svy_disp svy_dreg svy_est svy_est_7 svy_estat svy_get svy_gnbreg_p svy_head svy_header svy_heckman_p svy_heckprob_p svy_intreg_p svy_ivreg_p svy_logistic_p svy_logit_p svy_mlogit_p svy_nbreg_p svy_ologit_p svy_oprobit_p svy_poisson_p svy_probit_p svy_regress_p svy_sub svy_sub_7 svy_x svy_x_7 svy_x_p svydes svydes_8 svygen svygnbreg svyheckman svyheckprob svyintreg svyintreg_7 svyintrg svyivreg svylc svylog_p svylogit svymarkout svymarkout_8 svymean svymlog svymlogit svynbreg svyolog svyologit svyoprob svyoprobit svyopts svypois svypois_7 svypoisson svyprobit svyprobt svyprop svyprop_7 svyratio svyreg svyreg_p svyregress svyset svyset_7 svyset_8 svytab svytab_7 svytest svytotal sw sw_8 swcnreg swcox swereg swilk swlogis swlogit swologit swoprbt swpois swprobit swqreg swtobit swweib symmetry symmi symplot symplot_7 syntax sysdescribe sysdir sysuse szroeter ta tab tab1 tab2 tab_or tabd tabdi tabdis tabdisp tabi table tabodds tabodds_7 tabstat tabu tabul tabula tabulat tabulate te tempfile tempname tempvar tes test testnl testparm teststd tetrachoric time_it timer tis tob tobi tobit tobit_p tobit_sw token tokeni tokeniz tokenize tostring total translate translator transmap treat_ll treatr_p treatreg trim trimfill trnb_cons trnb_mean trpoiss_d2 trunc_ll truncr_p truncreg tsappend tset tsfill tsline tsline_ex tsreport tsrevar tsrline tsset tssmooth tsunab ttest ttesti tut_chk tut_wait tutorial tw tware_st two twoway twoway__fpfit_serset twoway__function_gen twoway__histogram_gen twoway__ipoint_serset twoway__ipoints_serset twoway__kdensity_gen twoway__lfit_serset twoway__normgen_gen twoway__pci_serset twoway__qfit_serset twoway__scatteri_serset twoway__sunflower_gen twoway_ksm_serset ty typ type typeof u|0 unab unabbrev unabcmd update us use uselabel var var_mkcompanion var_p varbasic varfcast vargranger varirf varirf_add varirf_cgraph varirf_create varirf_ctable varirf_describe varirf_dir varirf_drop varirf_erase varirf_graph varirf_ograph varirf_rename varirf_set varirf_table varlist varlmar varnorm varsoc varstable varstable_w varstable_w2 varwle vce vec vec_fevd vec_mkphi vec_p vec_p_w vecirf_create veclmar veclmar_w vecnorm vecnorm_w vecrank vecstable verinst vers versi versio version view viewsource vif vwls wdatetof webdescribe webseek webuse weib1_lf weib2_lf weib_lf weib_lf0 weibhet_glf weibhet_glf_sh weibhet_glfa weibhet_glfa_sh weibhet_gp weibhet_ilf weibhet_ilf_sh weibhet_ilfa weibhet_ilfa_sh weibhet_ip weibu_sw weibul_p weibull weibull_c weibull_s weibullhet wh whelp whi which whil while wilc_st wilcoxon win wind windo window winexec wntestb wntestb_7 wntestq xchart xchart_7 xcorr xcorr_7 xi xi_6 xmlsav xmlsave xmluse xpose xsh xshe xshel xshell xt_iis xt_tis xtab_p xtabond xtbin_p xtclog xtcloglog xtcloglog_8 xtcloglog_d2 xtcloglog_pa_p xtcloglog_re_p xtcnt_p xtcorr xtdata xtdes xtfront_p xtfrontier xtgee xtgee_elink xtgee_estat xtgee_makeivar xtgee_p xtgee_plink xtgls xtgls_p xthaus xthausman xtht_p xthtaylor xtile xtint_p xtintreg xtintreg_8 xtintreg_d2 xtintreg_p xtivp_1 xtivp_2 xtivreg xtline xtline_ex xtlogit xtlogit_8 xtlogit_d2 xtlogit_fe_p xtlogit_pa_p xtlogit_re_p xtmixed xtmixed_estat xtmixed_p xtnb_fe xtnb_lf xtnbreg xtnbreg_pa_p xtnbreg_refe_p xtpcse xtpcse_p xtpois xtpoisson xtpoisson_d2 xtpoisson_pa_p xtpoisson_refe_p xtpred xtprobit xtprobit_8 xtprobit_d2 xtprobit_re_p xtps_fe xtps_lf xtps_ren xtps_ren_8 xtrar_p xtrc xtrc_p xtrchh xtrefe_p xtreg xtreg_be xtreg_fe xtreg_ml xtreg_pa_p xtreg_re xtregar xtrere_p xtset xtsf_ll xtsf_llti xtsum xttab xttest0 xttobit xttobit_8 xttobit_p xttrans yx yxview__barlike_draw yxview_area_draw yxview_bar_draw yxview_dot_draw yxview_dropline_draw yxview_function_draw yxview_iarrow_draw yxview_ilabels_draw yxview_normal_draw yxview_pcarrow_draw yxview_pcbarrow_draw yxview_pccapsym_draw yxview_pcscatter_draw yxview_pcspike_draw yxview_rarea_draw yxview_rbar_draw yxview_rbarm_draw yxview_rcap_draw yxview_rcapsym_draw yxview_rconnected_draw yxview_rline_draw yxview_rscatter_draw yxview_rspike_draw yxview_spike_draw yxview_sunflower_draw zap_s zinb zinb_llf zinb_plf zip zip_llf zip_p zip_plf zt_ct_5 zt_hc_5 zt_hcd_5 zt_is_5 zt_iss_5 zt_sho_5 zt_smp_5 ztbase_5 ztcox_5 ztdes_5 ztereg_5 ztfill_5 ztgen_5 ztir_5 ztjoin_5 ztnb ztnb_p ztp ztp_p zts_5 ztset_5 ztspli_5 ztsum_5 zttoct_5 ztvary_5 ztweib_5",contains:[{className:"symbol",begin:/`[a-zA-Z0-9_]+'/},{className:"variable",begin:/\$\{?[a-zA-Z0-9_]+\}?/},{className:"string",variants:[{begin:'`"[^\r\n]*?"\''},{begin:'"[^\r\n"]*"'}]},{className:"built_in",variants:[{begin:"\\b(abs|acos|asin|atan|atan2|atanh|ceil|cloglog|comb|cos|digamma|exp|floor|invcloglog|invlogit|ln|lnfact|lnfactorial|lngamma|log|log10|max|min|mod|reldif|round|sign|sin|sqrt|sum|tan|tanh|trigamma|trunc|betaden|Binomial|binorm|binormal|chi2|chi2tail|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|F|Fden|Ftail|gammaden|gammap|ibeta|invbinomial|invchi2|invchi2tail|invF|invFtail|invgammap|invibeta|invnchi2|invnFtail|invnibeta|invnorm|invnormal|invttail|nbetaden|nchi2|nFden|nFtail|nibeta|norm|normal|normalden|normd|npnchi2|tden|ttail|uniform|abbrev|char|index|indexnot|length|lower|ltrim|match|plural|proper|real|regexm|regexr|regexs|reverse|rtrim|string|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrtrim|strtrim|strupper|subinstr|subinword|substr|trim|upper|word|wordcount|_caller|autocode|byteorder|chop|clip|cond|e|epsdouble|epsfloat|group|inlist|inrange|irecode|matrix|maxbyte|maxdouble|maxfloat|maxint|maxlong|mi|minbyte|mindouble|minfloat|minint|minlong|missing|r|recode|replay|return|s|scalar|d|date|day|dow|doy|halfyear|mdy|month|quarter|week|year|d|daily|dofd|dofh|dofm|dofq|dofw|dofy|h|halfyearly|hofd|m|mofd|monthly|q|qofd|quarterly|tin|twithin|w|weekly|wofd|y|yearly|yh|ym|yofd|yq|yw|cholesky|colnumb|colsof|corr|det|diag|diag0cnt|el|get|hadamard|I|inv|invsym|issym|issymmetric|J|matmissing|matuniform|mreldif|nullmat|rownumb|rowsof|sweep|syminv|trace|vec|vecdiag)(?=\\()"}]},e.COMMENT("^[ \t]*\\*.*$",!1),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}};var ff=function(e){return{name:"STEP Part 21",aliases:["p21","step","stp"],case_insensitive:!0,keywords:{$pattern:"[A-Z_][A-Z0-9_.]*",keyword:"HEADER ENDSEC DATA"},contains:[{className:"meta",begin:"ISO-10303-21;",relevance:10},{className:"meta",begin:"END-ISO-10303-21;",relevance:10},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#",end:"\\d+",illegal:"\\W"}]}]}},Tf=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Cf=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],Nf=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],Rf=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],vf=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();var Of=function(e){var t=function(e){return{IMPORTANT:{className:"meta",begin:"!important"},HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}}(e),n={className:"variable",begin:"\\$"+e.IDENT_RE},a="(?=[.\\s\\n[:,(])";return{name:"Stylus",aliases:["styl"],case_insensitive:!1,keywords:"if else for in",illegal:"("+["\\?","(\\bReturn\\b)","(\\bEnd\\b)","(\\bend\\b)","(\\bdef\\b)",";","#\\s","\\*\\s","===\\s","\\|","%"].join("|")+")",contains:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.HEXCOLOR,{begin:"\\.[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-class"},{begin:"#[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-id"},{begin:"\\b("+Tf.join("|")+")"+a,className:"selector-tag"},{className:"selector-pseudo",begin:"&?:("+Nf.join("|")+")"+a},{className:"selector-pseudo",begin:"&?::("+Rf.join("|")+")"+a},t.ATTRIBUTE_SELECTOR_MODE,{className:"keyword",begin:/@media/,starts:{end:/[{;}]/,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Cf.join(" ")},contains:[e.CSS_NUMBER_MODE]}},{className:"keyword",begin:"@((-(o|moz|ms|webkit)-)?("+["charset","css","debug","extend","font-face","for","import","include","keyframes","media","mixin","page","warn","while"].join("|")+"))\\b"},n,e.CSS_NUMBER_MODE,{className:"function",begin:"^[a-zA-Z][a-zA-Z0-9_-]*\\(.*\\)",illegal:"[\\n]",returnBegin:!0,contains:[{className:"title",begin:"\\b[a-zA-Z][a-zA-Z0-9_-]*"},{className:"params",begin:/\(/,end:/\)/,contains:[t.HEXCOLOR,n,e.APOS_STRING_MODE,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE]}]},{className:"attribute",begin:"\\b("+vf.join("|")+")\\b",starts:{end:/;|$/,contains:[t.HEXCOLOR,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t.IMPORTANT],illegal:/\./,relevance:0}}]}};var hf=function(e){return{name:"SubUnit",case_insensitive:!0,contains:[{className:"string",begin:"\\[\n(multipart)?",end:"\\]\n"},{className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z"},{className:"string",begin:"(\\+|-)\\d+"},{className:"keyword",relevance:10,variants:[{begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?"},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]}]}};function yf(e){return e?"string"==typeof e?e:e.source:null}function If(e){return Af("(?=",e,")")}function Af(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return yf(e)})).join("");return a}function Df(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return yf(e)})).join("|")+")";return a}var Mf=function(e){return Af(/\b/,e,/\w$/.test(e)?/\b/:/\B/)},Lf=["Protocol","Type"].map(Mf),wf=["init","self"].map(Mf),xf=["Any","Self"],Pf=["associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],kf=["false","nil","true"],Uf=["assignment","associativity","higherThan","left","lowerThan","none","right"],Ff=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Bf=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Gf=Df(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Yf=Df(Gf,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),Hf=Af(Gf,Yf,"*"),Vf=Df(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),qf=Df(Vf,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),zf=Af(Vf,qf,"*"),Wf=Af(/[A-Z]/,qf,"*"),$f=["autoclosure",Af(/convention\(/,Df("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Af(/objc\(/,zf,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","testable","UIApplicationMain","unknown","usableFromInline"],Qf=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];var Kf=function(e){var t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a=[e.C_LINE_COMMENT_MODE,n],r={className:"keyword",begin:Af(/\./,If(Df.apply(void 0,c(Lf).concat(c(wf))))),end:Df.apply(void 0,c(Lf).concat(c(wf))),excludeBegin:!0},i={match:Af(/\./,Df.apply(void 0,Pf)),relevance:0},o=Pf.filter((function(e){return"string"==typeof e})).concat(["_|0"]),s=Pf.filter((function(e){return"string"!=typeof e})).concat(xf).map(Mf),l={variants:[{className:"keyword",match:Df.apply(void 0,c(s).concat(c(wf)))}]},d={$pattern:Df(/\b\w+/,/#\w+/),keyword:o.concat(Ff),literal:kf},u=[r,i,l],m=[{match:Af(/\./,Df.apply(void 0,Bf)),relevance:0},{className:"built_in",match:Af(/\b/,Df.apply(void 0,Bf),/(?=\()/)}],p={match:/->/,relevance:0},g=[p,{className:"operator",relevance:0,variants:[{match:Hf},{match:"\\.(\\.|".concat(Yf,")+")}]}],E="([0-9]_*)+",S="([0-9a-fA-F]_*)+",b={className:"number",relevance:0,variants:[{match:"\\b(".concat(E,")(\\.(").concat(E,"))?")+"([eE][+-]?(".concat(E,"))?\\b")},{match:"\\b0x(".concat(S,")(\\.(").concat(S,"))?")+"([pP][+-]?(".concat(E,"))?\\b")},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},f=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",variants:[{match:Af(/\\/,e,/[0\\tnr"']/)},{match:Af(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}},T=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",match:Af(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}},C=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{className:"subst",label:"interpol",begin:Af(/\\/,e,/\(/),end:/\)/}},N=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{begin:Af(e,/"""/),end:Af(/"""/,e),contains:[f(e),T(e),C(e)]}},R=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return{begin:Af(e,/"/),end:Af(/"/,e),contains:[f(e),C(e)]}},v={className:"string",variants:[N(),N("#"),N("##"),N("###"),R(),R("#"),R("##"),R("###")]},O={match:Af(/`/,zf,/`/)},h=[O,{className:"variable",match:/\$\d+/},{className:"variable",match:"\\$".concat(qf,"+")}],y=[{match:/(@|#)available/,className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Qf,contains:[].concat(g,[b,v])}]}},{className:"keyword",match:Af(/@/,Df.apply(void 0,$f))},{className:"meta",match:Af(/@/,zf)}],I={match:If(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Af(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,qf,"+")},{className:"type",match:Wf,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Af(/\s+&\s+/,If(Wf)),relevance:0}]},A={begin:/</,end:/>/,keywords:d,contains:[].concat(a,u,y,[p,I])};I.contains.push(A);var D,M={begin:/\(/,end:/\)/,relevance:0,keywords:d,contains:["self",{match:Af(zf,/\s*:/),keywords:"_|0",relevance:0}].concat(a,u,m,g,[b,v],h,y,[I])},L={beginKeywords:"func",contains:[{className:"title",match:Df(O.match,zf,Hf),endsParent:!0,relevance:0},t]},w={begin:/</,end:/>/,contains:[].concat(a,[I])},x={begin:/\(/,end:/\)/,keywords:d,contains:[{begin:Df(If(Af(zf,/\s*:/)),If(Af(zf,/\s+/,zf,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:zf}]}].concat(a,u,g,[b,v],y,[I,M]),endsParent:!0,illegal:/["']/},P={className:"function",match:If(/\bfunc\b/),contains:[L,w,x,t],illegal:[/\[/,/%/]},k={className:"function",match:/\b(subscript|init[?!]?)\s*(?=[<(])/,keywords:{keyword:"subscript init init? init!",$pattern:/\w+[?!]?/},contains:[w,x,t],illegal:/\[|%/},U={beginKeywords:"operator",end:e.MATCH_NOTHING_RE,contains:[{className:"title",match:Hf,endsParent:!0,relevance:0}]},F={beginKeywords:"precedencegroup",end:e.MATCH_NOTHING_RE,contains:[{className:"title",match:Wf,relevance:0},{begin:/{/,end:/}/,relevance:0,endsParent:!0,keywords:[].concat(Uf,kf),contains:[I]}]},B=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=_(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,r=function(){};return{s:r,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw i}}}}(v.variants);try{for(B.s();!(D=B.n()).done;){var G=D.value.contains.find((function(e){return"interpol"===e.label}));G.keywords=d;var Y=[].concat(u,m,g,[b,v],h);G.contains=[].concat(c(Y),[{begin:/\(/,end:/\)/,contains:["self"].concat(c(Y))}])}}catch(e){B.e(e)}finally{B.f()}return{name:"Swift",keywords:d,contains:[].concat(a,[P,k,{className:"class",beginKeywords:"struct protocol class extension enum",end:"\\{",excludeEnd:!0,keywords:d,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})].concat(u)},U,F,{beginKeywords:"import",end:/$/,contains:[].concat(a),relevance:0}],u,m,g,[b,v],h,y,[I,M])}};var jf=function(e){return{name:"Tagger Script",contains:[{className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\(/,end:/\)/,contains:["self",{begin:/\\./}]}],relevance:10},{className:"keyword",begin:/\$(?!noop)[a-zA-Z][_a-zA-Z0-9]*/,end:/\(/,excludeEnd:!0},{className:"variable",begin:/%[_a-zA-Z0-9:]*/,end:"%"},{className:"symbol",begin:/\\./}]}};var Xf=function(e){var t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},r=e.inherit(a,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i={className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},o={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},s={begin:/\{/,end:/\}/,contains:[o],illegal:"\\n",relevance:0},l={begin:"\\[",end:"\\]",contains:[o],illegal:"\\n",relevance:0},c=[{className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},i,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},s,l,a],_=[].concat(c);return _.pop(),_.push(r),o.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:c}};var Zf=function(e){return{name:"Test Anything Protocol",case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:/---$/,end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number",begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}]}]}};function Jf(e){return e?"string"==typeof e?e:e.source:null}function eT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return Jf(e)})).join("");return a}var tT=function(e){var t,n=/[a-zA-Z_][a-zA-Z0-9_]*/,a={className:"number",variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"Tcl",aliases:["tk"],keywords:"after append apply array auto_execok auto_import auto_load auto_mkindex auto_mkindex_old auto_qualify auto_reset bgerror binary break catch cd chan clock close concat continue dde dict encoding eof error eval exec exit expr fblocked fconfigure fcopy file fileevent filename flush for foreach format gets glob global history http if incr info interp join lappend|10 lassign|10 lindex|10 linsert|10 list llength|10 load lrange|10 lrepeat|10 lreplace|10 lreverse|10 lsearch|10 lset|10 lsort|10 mathfunc mathop memory msgcat namespace open package parray pid pkg::create pkg_mkIndex platform platform::shell proc puts pwd read refchan regexp registry regsub|10 rename return safe scan seek set socket source split string subst switch tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord tcl_wordBreakAfter tcl_wordBreakBefore tcltest tclvars tell time tm trace unknown unload unset update uplevel upvar variable vwait while",contains:[e.COMMENT(";[ \\t]*#","$"),e.COMMENT("^[ \\t]*#","$"),{beginKeywords:"proc",end:"[\\{]",excludeEnd:!0,contains:[{className:"title",begin:"[ \\t\\n\\r]+(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"[ \\t\\n\\r]",endsWithParent:!0,excludeEnd:!0}]},{className:"variable",variants:[{begin:eT(/\$/,(t=/::/,eT("(",t,")?")),n,"(::",n,")*")},{begin:"\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"\\}",contains:[a]}]},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},a]}};var nT=function(e){var t="bool byte i16 i32 i64 double string binary";return{name:"Thrift",keywords:{keyword:"namespace const typedef struct enum service exception void oneway set list map required optional",built_in:t,literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"struct enum service exception",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{begin:"\\b(set|list|map)\\s*<",end:">",keywords:t,contains:["self"]}]}};var aT=function(e){var t={className:"number",begin:"[1-9][0-9]*",relevance:0},n={className:"symbol",begin:":[^\\]]+"};return{name:"TP",keywords:{keyword:"ABORT ACC ADJUST AND AP_LD BREAK CALL CNT COL CONDITION CONFIG DA DB DIV DETECT ELSE END ENDFOR ERR_NUM ERROR_PROG FINE FOR GP GUARD INC IF JMP LINEAR_MAX_SPEED LOCK MOD MONITOR OFFSET Offset OR OVERRIDE PAUSE PREG PTH RT_LD RUN SELECT SKIP Skip TA TB TO TOOL_OFFSET Tool_Offset UF UT UFRAME_NUM UTOOL_NUM UNLOCK WAIT X Y Z W P R STRLEN SUBSTR FINDSTR VOFFSET PROG ATTR MN POS",literal:"ON OFF max_speed LPOS JPOS ENABLE DISABLE START STOP RESET"},contains:[{className:"built_in",begin:"(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[",end:"\\]",contains:["self",t,n]},{className:"built_in",begin:"(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[",end:"\\]",contains:["self",t,e.QUOTE_STRING_MODE,n]},{className:"keyword",begin:"/(PROG|ATTR|MN|POS|END)\\b"},{className:"keyword",begin:"(CALL|RUN|POINT_LOGIC|LBL)\\b"},{className:"keyword",begin:"\\b(ACC|CNT|Skip|Offset|PSPD|RT_LD|AP_LD|Tool_Offset)"},{className:"number",begin:"\\d+(sec|msec|mm/sec|cm/min|inch/min|deg/sec|mm|in|cm)?\\b",relevance:0},e.COMMENT("//","[;$]"),e.COMMENT("!","[;$]"),e.COMMENT("--eg:","$"),e.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"'"},e.C_NUMBER_MODE,{className:"variable",begin:"\\$[A-Za-z0-9_]+"}]}};var rT=function(e){var t="attribute block constant cycle date dump include max min parent random range source template_from_string",n={beginKeywords:t,keywords:{name:t},relevance:0,contains:[{className:"params",begin:"\\(",end:"\\)"}]},a={begin:/\|[A-Za-z_]+:?/,keywords:"abs batch capitalize column convert_encoding date date_modify default escape filter first format inky_to_html inline_css join json_encode keys last length lower map markdown merge nl2br number_format raw reduce replace reverse round slice sort spaceless split striptags title trim upper url_encode",contains:[n]},r="apply autoescape block deprecated do embed extends filter flush for from if import include macro sandbox set use verbatim with";return r=r+" "+r.split(" ").map((function(e){return"end"+e})).join(" "),{name:"Twig",aliases:["craftcms"],case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{#/,/#\}/),{className:"template-tag",begin:/\{%/,end:/%\}/,contains:[{className:"name",begin:/\w+/,keywords:r,starts:{endsWithParent:!0,contains:[a,n],relevance:0}}]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:["self",a,n]}]}},iT="[A-Za-z$_][0-9A-Za-z$_]*",oT=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],sT=["true","false","null","undefined","NaN","Infinity"],lT=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function cT(e){return e?"string"==typeof e?e:e.source:null}function _T(e){return dT("(?=",e,")")}function dT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return cT(e)})).join("");return a}var uT=function(e){var t={$pattern:iT,keyword:oT.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]),literal:sT,built_in:lT.concat(["any","void","number","boolean","string","object","never","enum"])},n={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},a=function(e,t,n){var a=e.contains.findIndex((function(e){return e.label===t}));if(-1===a)throw new Error("can not find mode to replace");e.contains.splice(a,1,n)},r=function(e){var t=iT,n="<>",a="</>",r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:function(e,t){var n=e[0].length+e.index,a=e.input[n];"<"!==a?">"===a&&(function(e,t){var n=t.after,a="</"+e[0].slice(1);return-1!==e.input.indexOf(a,n)}(e,{after:n})||t.ignoreMatch()):t.ignoreMatch()}},i={$pattern:iT,keyword:oT,literal:sT,built_in:lT},o="[0-9](_?[0-9])*",s="\\.(".concat(o,")"),l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:"(\\b(".concat(l,")((").concat(s,")|\\.)?|(").concat(s,"))")+"[eE][+-]?(".concat(o,")\\b")},{begin:"\\b(".concat(l,")\\b((").concat(s,")\\b|\\.)?|(").concat(s,")\\b")},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},_={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"xml"}},u={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,_],subLanguage:"css"}},m={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,_]},p={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},g=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,c,e.REGEXP_MODE];_.contains=g.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(g)});var E=[].concat(p,_.contains),S=E.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(E)}]),b={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:S},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,m,p,c,{begin:dT(/[{,\n]\s*/,_T(dT(/(((\/\/.*$)|(\/\*(\*[^/]|[^*])*\*\/))\s*)*/,t+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:t+_T("\\s*:"),relevance:0}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[p,e.REGEXP_MODE,{className:"function",begin:"(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:S}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:n,end:a},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:i,contains:["self",e.inherit(e.TITLE_MODE,{begin:t}),b],illegal:/%/},{beginKeywords:"while if switch catch for"},{className:"function",begin:e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,contains:[b,e.inherit(e.TITLE_MODE,{begin:t})]},{variants:[{begin:"\\."+t},{begin:"\\$"+t}],relevance:0},{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/,end:/[{;]/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),"self",b]},{begin:"(get|set)\\s+(?="+t+"\\()",end:/\{/,keywords:"get set",contains:[e.inherit(e.TITLE_MODE,{begin:t}),{begin:/\(\)/},b]},{begin:/\$[(.]/}]}}(e);return Object.assign(r.keywords,t),r.exports.PARAMS_CONTAINS.push(n),r.contains=r.contains.concat([n,{beginKeywords:"namespace",end:/\{/,excludeEnd:!0},{beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"}]),a(r,"shebang",e.SHEBANG()),a(r,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),r.contains.find((function(e){return"function"===e.className})).relevance=0,Object.assign(r,{name:"TypeScript",aliases:["ts","tsx"]}),r};var mT=function(e){return{name:"Vala",keywords:{keyword:"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override virtual delegate if while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var",built_in:"DBus GLib CCode Gee Object Gtk Posix",literal:"false true null"},contains:[{className:"class",beginKeywords:"class interface namespace",end:/\{/,excludeEnd:!0,illegal:"[^,:\\n\\s\\.]",contains:[e.UNDERSCORE_TITLE_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:'"""',end:'"""',relevance:5},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"^#",end:"$",relevance:2}]}};function pT(e){return e?"string"==typeof e?e:e.source:null}function gT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return pT(e)})).join("");return a}function ET(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return pT(e)})).join("|")+")";return a}var ST=function(e){var t=/\d{1,2}\/\d{1,2}\/\d{4}/,n=/\d{4}-\d{1,2}-\d{1,2}/,a=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,r=/\d{1,2}(:\d{1,2}){1,2}/,i={className:"literal",variants:[{begin:gT(/# */,ET(n,t),/ *#/)},{begin:gT(/# */,r,/ *#/)},{begin:gT(/# */,a,/ *#/)},{begin:gT(/# */,ET(n,t),/ +/,ET(a,r),/ *#/)}]},o=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),s=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[{className:"string",begin:/"(""|[^/n])"C\b/},{className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i,{className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},{className:"label",begin:/^\w+:/},o,s,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{"meta-keyword":"const disable else elseif enable end externalsource if region then"},contains:[s]}]}};function bT(e){return e?"string"==typeof e?e:e.source:null}function fT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a=t.map((function(e){return bT(e)})).join("");return a}function TT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var a="("+t.map((function(e){return bT(e)})).join("|")+")";return a}var CT=function(e){var t="lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid split cint sin datepart ltrim sqr time derived eval date formatpercent exp inputbox left ascw chrw regexp cstr err".split(" ");return{name:"VBScript",aliases:["vbs"],case_insensitive:!0,keywords:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:["server","response","request","scriptengine","scriptenginebuildversion","scriptengineminorversion","scriptenginemajorversion"],literal:"true false null nothing empty"},illegal:"//",contains:[{begin:fT(TT.apply(void 0,c(t)),"\\s*\\("),relevance:0,keywords:{built_in:t}},e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT(/'/,/$/,{relevance:0}),e.C_NUMBER_MODE]}};var NT=function(e){return{name:"VBScript in HTML",subLanguage:"xml",contains:[{begin:"<%",end:"%>",subLanguage:"vbscript"}]}};var RT=function(e){return{name:"Verilog",aliases:["v","sv","svh"],case_insensitive:!1,keywords:{$pattern:/[\w\$]+/,keyword:"accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf|0 bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate|5 genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor",literal:"null",built_in:"$finish $stop $exit $fatal $error $warning $info $realtime $time $printtimescale $bitstoreal $bitstoshortreal $itor $signed $cast $bits $stime $timeformat $realtobits $shortrealtobits $rtoi $unsigned $asserton $assertkill $assertpasson $assertfailon $assertnonvacuouson $assertoff $assertcontrol $assertpassoff $assertfailoff $assertvacuousoff $isunbounded $sampled $fell $changed $past_gclk $fell_gclk $changed_gclk $rising_gclk $steady_gclk $coverage_control $coverage_get $coverage_save $set_coverage_db_name $rose $stable $past $rose_gclk $stable_gclk $future_gclk $falling_gclk $changing_gclk $display $coverage_get_max $coverage_merge $get_coverage $load_coverage_db $typename $unpacked_dimensions $left $low $increment $clog2 $ln $log10 $exp $sqrt $pow $floor $ceil $sin $cos $tan $countbits $onehot $isunknown $fatal $warning $dimensions $right $high $size $asin $acos $atan $atan2 $hypot $sinh $cosh $tanh $asinh $acosh $atanh $countones $onehot0 $error $info $random $dist_chi_square $dist_erlang $dist_exponential $dist_normal $dist_poisson $dist_t $dist_uniform $q_initialize $q_remove $q_exam $async$and$array $async$nand$array $async$or$array $async$nor$array $sync$and$array $sync$nand$array $sync$or$array $sync$nor$array $q_add $q_full $psprintf $async$and$plane $async$nand$plane $async$or$plane $async$nor$plane $sync$and$plane $sync$nand$plane $sync$or$plane $sync$nor$plane $system $display $displayb $displayh $displayo $strobe $strobeb $strobeh $strobeo $write $readmemb $readmemh $writememh $value$plusargs $dumpvars $dumpon $dumplimit $dumpports $dumpportson $dumpportslimit $writeb $writeh $writeo $monitor $monitorb $monitorh $monitoro $writememb $dumpfile $dumpoff $dumpall $dumpflush $dumpportsoff $dumpportsall $dumpportsflush $fclose $fdisplay $fdisplayb $fdisplayh $fdisplayo $fstrobe $fstrobeb $fstrobeh $fstrobeo $swrite $swriteb $swriteh $swriteo $fscanf $fread $fseek $fflush $feof $fopen $fwrite $fwriteb $fwriteh $fwriteo $fmonitor $fmonitorb $fmonitorh $fmonitoro $sformat $sformatf $fgetc $ungetc $fgets $sscanf $rewind $ftell $ferror"},contains:[e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,{className:"number",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"\\b((\\d+'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)"},{begin:"\\B(('(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)"},{begin:"\\b([0-9_])+",relevance:0}]},{className:"variable",variants:[{begin:"#\\((?!parameter).+\\)"},{begin:"\\.\\w+",relevance:0}]},{className:"meta",begin:"`",end:"$",keywords:{"meta-keyword":"define __FILE__ __LINE__ begin_keywords celldefine default_nettype define else elsif end_keywords endcelldefine endif ifdef ifndef include line nounconnected_drive pragma resetall timescale unconnected_drive undef undefineall"},relevance:0}]}};var vT=function(e){return{name:"VHDL",case_insensitive:!0,keywords:{keyword:"abs access after alias all and architecture array assert assume assume_guarantee attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package parameter port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable view vmode vprop vunit wait when while with xnor xor",built_in:"boolean bit character integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_logic std_logic_vector unsigned signed boolean_vector integer_vector std_ulogic std_ulogic_vector unresolved_unsigned u_unsigned unresolved_signed u_signed real_vector time_vector",literal:"false true note warning error failure line text side width"},illegal:/\{/,contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT("--","$"),e.QUOTE_STRING_MODE,{className:"number",begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)",relevance:0},{className:"string",begin:"'(U|X|0|1|Z|W|L|H|-)'",contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"'[A-Za-z](_?[A-Za-z0-9])*",contains:[e.BACKSLASH_ESCAPE]}]}};var OT=function(e){return{name:"Vim Script",keywords:{$pattern:/[!#@\w]+/,keyword:"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank",built_in:"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp"},illegal:/;/,contains:[e.NUMBER_MODE,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:/"(\\"|\n\\|[^"\n])*"/},e.COMMENT('"',"$"),{className:"variable",begin:/[bwtglsav]:[\w\d_]*/},{className:"function",beginKeywords:"function function!",end:"$",relevance:0,contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{className:"symbol",begin:/<[\w-]+>/}]}};var hT=function(e){return{name:"Intel x86 Assembly",case_insensitive:!0,keywords:{$pattern:"[.%]?"+e.IDENT_RE,keyword:"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63",built_in:"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7 xmm8 xmm9 xmm10 xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0 ymm1 ymm2 ymm3 ymm4 ymm5 ymm6 ymm7 ymm8 ymm9 ymm10 ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0 zmm1 zmm2 zmm3 zmm4 zmm5 zmm6 zmm7 zmm8 zmm9 zmm10 zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr",meta:"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__ __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__ __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"number",variants:[{begin:"\\b(?:([0-9][0-9_]*)?\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*(\\.[0-9_]*)?(?:[pP](?:[+-]?[0-9_]+)?)?)\\b",relevance:0},{begin:"\\$[0-9][0-9A-Fa-f]*",relevance:0},{begin:"\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b"},{begin:"\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b"}]},e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:"'",end:"[^\\\\]'"},{begin:"`",end:"[^\\\\]`"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)"},{begin:"^\\s*%%[A-Za-z0-9_$#@~.?]*:"}],relevance:0},{className:"subst",begin:"%[0-9]+",relevance:0},{className:"subst",begin:"%!S+",relevance:0},{className:"meta",begin:/^\s*\.[\w_-]+/}]}};var yT=function(e){var t={$pattern:/[a-zA-Z][a-zA-Z0-9_?]*/,keyword:"if then else do while until for loop import with is as where when by data constant integer real text name boolean symbol infix prefix postfix block tree",literal:"true false nil",built_in:"in mod rem and or xor not abs sign floor ceil sqrt sin cos tan asin acos atan exp expm1 log log2 log10 log1p pi at text_length text_range text_find text_replace contains page slide basic_slide title_slide title subtitle fade_in fade_out fade_at clear_color color line_color line_width texture_wrap texture_transform texture scale_?x scale_?y scale_?z? translate_?x translate_?y translate_?z? rotate_?x rotate_?y rotate_?z? rectangle circle ellipse sphere path line_to move_to quad_to curve_to theme background contents locally time mouse_?x mouse_?y mouse_buttons ObjectLoader Animate MovieCredits Slides Filters Shading Materials LensFlare Mapping VLCAudioVideo StereoDecoder PointCloud NetworkAccess RemoteControl RegExp ChromaKey Snowfall NodeJS Speech Charts"},n={className:"string",begin:'"',end:'"',illegal:"\\n"},a={beginKeywords:"import",end:"$",keywords:t,contains:[n]},r={className:"function",begin:/[a-z][^\n]*->/,returnBegin:!0,end:/->/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,keywords:t}})]};return{name:"XL",aliases:["tao"],keywords:t,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:"<<",end:">>"},r,a,{className:"number",begin:"[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?"},e.NUMBER_MODE]}};var IT=function(e){return{name:"XQuery",aliases:["xpath","xq"],case_insensitive:!1,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{$pattern:/[a-zA-Z$][a-zA-Z0-9_:-]*/,keyword:"module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit declare import option function validate variable for at in let where order group by return if then else tumbling sliding window start when only end previous next stable ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch and or to union intersect instance of treat as castable cast map array delete insert into replace value rename copy modify update",type:"item document-node node attribute document element comment namespace namespace-node processing-instruction text construction xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration",literal:"eq ne lt le gt ge is self:: child:: descendant:: descendant-or-self:: attribute:: following:: following-sibling:: parent:: ancestor:: ancestor-or-self:: preceding:: preceding-sibling:: NaN"},contains:[{className:"variable",begin:/[$][\w\-:]+/},{className:"built_in",variants:[{begin:/\barray:/,end:/(?:append|filter|flatten|fold-(?:left|right)|for-each(?:-pair)?|get|head|insert-before|join|put|remove|reverse|size|sort|subarray|tail)\b/},{begin:/\bmap:/,end:/(?:contains|entry|find|for-each|get|keys|merge|put|remove|size)\b/},{begin:/\bmath:/,end:/(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/},{begin:/\bop:/,end:/\(/,excludeEnd:!0},{begin:/\bfn:/,end:/\(/,excludeEnd:!0},{begin:/[^</$:'"-]\b(?:abs|accumulator-(?:after|before)|adjust-(?:date(?:Time)?|time)-to-timezone|analyze-string|apply|available-(?:environment-variables|system-properties)|avg|base-uri|boolean|ceiling|codepoints?-(?:equal|to-string)|collation-key|collection|compare|concat|contains(?:-token)?|copy-of|count|current(?:-)?(?:date(?:Time)?|time|group(?:ing-key)?|output-uri|merge-(?:group|key))?data|dateTime|days?-from-(?:date(?:Time)?|duration)|deep-equal|default-(?:collation|language)|distinct-values|document(?:-uri)?|doc(?:-available)?|element-(?:available|with-id)|empty|encode-for-uri|ends-with|environment-variable|error|escape-html-uri|exactly-one|exists|false|filter|floor|fold-(?:left|right)|for-each(?:-pair)?|format-(?:date(?:Time)?|time|integer|number)|function-(?:arity|available|lookup|name)|generate-id|has-children|head|hours-from-(?:dateTime|duration|time)|id(?:ref)?|implicit-timezone|in-scope-prefixes|index-of|innermost|insert-before|iri-to-uri|json-(?:doc|to-xml)|key|lang|last|load-xquery-module|local-name(?:-from-QName)?|(?:lower|upper)-case|matches|max|minutes-from-(?:dateTime|duration|time)|min|months?-from-(?:date(?:Time)?|duration)|name(?:space-uri-?(?:for-prefix|from-QName)?)?|nilled|node-name|normalize-(?:space|unicode)|not|number|one-or-more|outermost|parse-(?:ietf-date|json)|path|position|(?:prefix-from-)?QName|random-number-generator|regex-group|remove|replace|resolve-(?:QName|uri)|reverse|root|round(?:-half-to-even)?|seconds-from-(?:dateTime|duration|time)|snapshot|sort|starts-with|static-base-uri|stream-available|string-?(?:join|length|to-codepoints)?|subsequence|substring-?(?:after|before)?|sum|system-property|tail|timezone-from-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type-available|unordered|unparsed-(?:entity|text)?-?(?:public-id|uri|available|lines)?|uri-collection|xml-to-json|years?-from-(?:date(?:Time)?|duration)|zero-or-one)\b/},{begin:/\blocal:/,end:/\(/,excludeEnd:!0},{begin:/\bzip:/,end:/(?:zip-file|(?:xml|html|text|binary)-entry| (?:update-)?entries)\b/},{begin:/\b(?:util|db|functx|app|xdmp|xmldb):/,end:/\(/,excludeEnd:!0}]},{className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},{className:"number",begin:/(\b0[0-7_]+)|(\b0x[0-9a-fA-F_]+)|(\b[1-9][0-9_]*(\.[0-9_]+)?)|[0_]\b/,relevance:0},{className:"comment",begin:/\(:/,end:/:\)/,relevance:10,contains:[{className:"doctag",begin:/@\w+/}]},{className:"meta",begin:/%[\w\-:]+/},{className:"title",begin:/\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/,end:/;/},{beginKeywords:"element attribute comment document processing-instruction",end:/\{/,excludeEnd:!0},{begin:/<([\w._:-]+)(\s+\S*=('|").*('|"))?>/,end:/(\/[\w._:-]+>)/,subLanguage:"xml",contains:[{begin:/\{/,end:/\}/,subLanguage:"xquery"},"self"]}]}};var AT=function(e){var t={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},n=e.UNDERSCORE_TITLE_MODE,a={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]},r="namespace class interface use extends function return abstract final public protected private static deprecated throw try catch Exception echo empty isset instanceof unset let var new const self require if else elseif switch case default do while loop for continue break likely unlikely __LINE__ __FILE__ __DIR__ __FUNCTION__ __CLASS__ __TRAIT__ __METHOD__ __NAMESPACE__ array boolean float double integer object resource string char long unsigned bool int uint ulong uchar true false null undefined";return{name:"Zephir",aliases:["zep"],keywords:r,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/\/\*/,/\*\//,{contains:[{className:"doctag",begin:/@[A-Za-z]+/}]}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;/,contains:[e.BACKSLASH_ESCAPE]},{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function fn",end:/[;{]/,excludeEnd:!0,illegal:/\$|\[|%/,contains:[n,{className:"params",begin:/\(/,end:/\)/,keywords:r,contains:["self",e.C_BLOCK_COMMENT_MODE,t,a]}]},{className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0,illegal:/[:($"]/,contains:[{beginKeywords:"extends implements"},n]},{beginKeywords:"namespace",end:/;/,illegal:/[.']/,contains:[n]},{beginKeywords:"use",end:/;/,contains:[n]},{begin:/=>/},t,a]}},DT=rp;DT.registerLanguage("1c",ip),DT.registerLanguage("abnf",lp),DT.registerLanguage("accesslog",up),DT.registerLanguage("actionscript",gp),DT.registerLanguage("ada",Ep),DT.registerLanguage("angelscript",Sp),DT.registerLanguage("apache",bp),DT.registerLanguage("applescript",Np),DT.registerLanguage("arcade",Rp),DT.registerLanguage("arduino",yp),DT.registerLanguage("armasm",Ip),DT.registerLanguage("xml",wp),DT.registerLanguage("asciidoc",kp),DT.registerLanguage("aspectj",Bp),DT.registerLanguage("autohotkey",Gp),DT.registerLanguage("autoit",Yp),DT.registerLanguage("avrasm",Hp),DT.registerLanguage("awk",Vp),DT.registerLanguage("axapta",qp),DT.registerLanguage("bash",$p),DT.registerLanguage("basic",Qp),DT.registerLanguage("bnf",Kp),DT.registerLanguage("brainfuck",jp),DT.registerLanguage("c-like",eg),DT.registerLanguage("c",ag),DT.registerLanguage("cal",rg),DT.registerLanguage("capnproto",ig),DT.registerLanguage("ceylon",og),DT.registerLanguage("clean",sg),DT.registerLanguage("clojure",lg),DT.registerLanguage("clojure-repl",cg),DT.registerLanguage("cmake",_g),DT.registerLanguage("coffeescript",pg),DT.registerLanguage("coq",gg),DT.registerLanguage("cos",Eg),DT.registerLanguage("cpp",Tg),DT.registerLanguage("crmsh",Cg),DT.registerLanguage("crystal",Ng),DT.registerLanguage("csharp",Rg),DT.registerLanguage("csp",vg),DT.registerLanguage("css",Lg),DT.registerLanguage("d",wg),DT.registerLanguage("markdown",kg),DT.registerLanguage("dart",Ug),DT.registerLanguage("delphi",Fg),DT.registerLanguage("diff",Bg),DT.registerLanguage("django",Gg),DT.registerLanguage("dns",Yg),DT.registerLanguage("dockerfile",Hg),DT.registerLanguage("dos",Vg),DT.registerLanguage("dsconfig",qg),DT.registerLanguage("dts",zg),DT.registerLanguage("dust",Wg),DT.registerLanguage("ebnf",$g),DT.registerLanguage("elixir",Qg),DT.registerLanguage("elm",Kg),DT.registerLanguage("ruby",Zg),DT.registerLanguage("erb",Jg),DT.registerLanguage("erlang-repl",nE),DT.registerLanguage("erlang",aE),DT.registerLanguage("excel",rE),DT.registerLanguage("fix",iE),DT.registerLanguage("flix",oE),DT.registerLanguage("fortran",cE),DT.registerLanguage("fsharp",_E),DT.registerLanguage("gams",mE),DT.registerLanguage("gauss",pE),DT.registerLanguage("gcode",gE),DT.registerLanguage("gherkin",EE),DT.registerLanguage("glsl",SE),DT.registerLanguage("gml",bE),DT.registerLanguage("go",fE),DT.registerLanguage("golo",TE),DT.registerLanguage("gradle",CE),DT.registerLanguage("groovy",OE),DT.registerLanguage("haml",hE),DT.registerLanguage("handlebars",AE),DT.registerLanguage("haskell",DE),DT.registerLanguage("haxe",ME),DT.registerLanguage("hsp",LE),DT.registerLanguage("htmlbars",kE),DT.registerLanguage("http",BE),DT.registerLanguage("hy",GE),DT.registerLanguage("inform7",YE),DT.registerLanguage("ini",qE),DT.registerLanguage("irpf90",$E),DT.registerLanguage("isbl",QE),DT.registerLanguage("java",JE),DT.registerLanguage("javascript",sS),DT.registerLanguage("jboss-cli",lS),DT.registerLanguage("json",cS),DT.registerLanguage("julia",_S),DT.registerLanguage("julia-repl",dS),DT.registerLanguage("kotlin",ES),DT.registerLanguage("lasso",SS),DT.registerLanguage("latex",TS),DT.registerLanguage("ldif",CS),DT.registerLanguage("leaf",NS),DT.registerLanguage("less",AS),DT.registerLanguage("lisp",DS),DT.registerLanguage("livecodeserver",MS),DT.registerLanguage("livescript",PS),DT.registerLanguage("llvm",FS),DT.registerLanguage("lsl",BS),DT.registerLanguage("lua",GS),DT.registerLanguage("makefile",YS),DT.registerLanguage("mathematica",$S),DT.registerLanguage("matlab",QS),DT.registerLanguage("maxima",KS),DT.registerLanguage("mel",jS),DT.registerLanguage("mercury",XS),DT.registerLanguage("mipsasm",ZS),DT.registerLanguage("mizar",JS),DT.registerLanguage("perl",ab),DT.registerLanguage("mojolicious",rb),DT.registerLanguage("monkey",ib),DT.registerLanguage("moonscript",ob),DT.registerLanguage("n1ql",sb),DT.registerLanguage("nginx",lb),DT.registerLanguage("nim",cb),DT.registerLanguage("nix",_b),DT.registerLanguage("node-repl",db),DT.registerLanguage("nsis",ub),DT.registerLanguage("objectivec",mb),DT.registerLanguage("ocaml",pb),DT.registerLanguage("openscad",gb),DT.registerLanguage("oxygene",Eb),DT.registerLanguage("parser3",Sb),DT.registerLanguage("pf",bb),DT.registerLanguage("pgsql",fb),DT.registerLanguage("php",Tb),DT.registerLanguage("php-template",Cb),DT.registerLanguage("plaintext",Nb),DT.registerLanguage("pony",Rb),DT.registerLanguage("powershell",vb),DT.registerLanguage("processing",Ob),DT.registerLanguage("profile",hb),DT.registerLanguage("prolog",yb),DT.registerLanguage("properties",Ib),DT.registerLanguage("protobuf",Ab),DT.registerLanguage("puppet",Db),DT.registerLanguage("purebasic",Mb),DT.registerLanguage("python",xb),DT.registerLanguage("python-repl",Pb),DT.registerLanguage("q",kb),DT.registerLanguage("qml",Bb),DT.registerLanguage("r",Hb),DT.registerLanguage("reasonml",Vb),DT.registerLanguage("rib",qb),DT.registerLanguage("roboconf",zb),DT.registerLanguage("routeros",Wb),DT.registerLanguage("rsl",$b),DT.registerLanguage("ruleslanguage",Qb),DT.registerLanguage("rust",Kb),DT.registerLanguage("sas",jb),DT.registerLanguage("scala",Xb),DT.registerLanguage("scheme",Zb),DT.registerLanguage("scilab",Jb),DT.registerLanguage("scss",of),DT.registerLanguage("shell",sf),DT.registerLanguage("smali",lf),DT.registerLanguage("smalltalk",cf),DT.registerLanguage("sml",_f),DT.registerLanguage("sqf",df),DT.registerLanguage("sql_more",uf),DT.registerLanguage("sql",Ef),DT.registerLanguage("stan",Sf),DT.registerLanguage("stata",bf),DT.registerLanguage("step21",ff),DT.registerLanguage("stylus",Of),DT.registerLanguage("subunit",hf),DT.registerLanguage("swift",Kf),DT.registerLanguage("taggerscript",jf),DT.registerLanguage("yaml",Xf),DT.registerLanguage("tap",Zf),DT.registerLanguage("tcl",tT),DT.registerLanguage("thrift",nT),DT.registerLanguage("tp",aT),DT.registerLanguage("twig",rT),DT.registerLanguage("typescript",uT),DT.registerLanguage("vala",mT),DT.registerLanguage("vbnet",ST),DT.registerLanguage("vbscript",CT),DT.registerLanguage("vbscript-html",NT),DT.registerLanguage("verilog",RT),DT.registerLanguage("vhdl",vT),DT.registerLanguage("vim",OT),DT.registerLanguage("x86asm",hT),DT.registerLanguage("xl",yT),DT.registerLanguage("xquery",IT),DT.registerLanguage("zephir",AT);var MT=DT;!function(t,n){var a,r="hljs-ln",i="hljs-ln-code",o="hljs-ln-n",s="data-line-number",l=/\r\n|\r|\n/g;function c(e){try{var a=n.querySelectorAll("code.hljs,code.nohighlight");for(var r in a)a.hasOwnProperty(r)&&(a[r].classList.contains("nohljsln")||_(a[r],e))}catch(e){t.console.error("LineNumbers error: ",e)}}function _(t,n){"object"==e(t)&&(t.innerHTML=d(t,n))}function d(e,t){var n,a,c=(n=e,{singleLine:function(e){return!!e.singleLine&&e.singleLine}(a=(a=t)||{}),startFrom:function(e,t){var n=1;isFinite(t.startFrom)&&(n=t.startFrom);var a=function(e,t){return e.hasAttribute(t)?e.getAttribute(t):null}(e,"data-ln-start-from");return null!==a&&(n=function(e,t){if(!e)return 1;var n=Number(e);return isFinite(n)?n:1}(a)),n}(n,a)});return function e(t){var n=t.childNodes;for(var a in n){var r;n.hasOwnProperty(a)&&(0<((r=n[a]).textContent.trim().match(l)||[]).length&&(0<r.childNodes.length?e(r):u(r.parentNode)))}}(e),function(e,t){var n=m(e);if(""===n[n.length-1].trim()&&n.pop(),1<n.length||t.singleLine){for(var a="",l=0,c=n.length;l<c;l++)a+=p('<tr><td class="{0} {1}" {3}="{5}"><div class="{2}" {3}="{5}"></div></td><td class="{0} {4}" {3}="{5}">{6}</td></tr>',["hljs-ln-line","hljs-ln-numbers",o,s,i,l+t.startFrom,0<n[l].length?n[l]:" "]);return p('<table class="{0}">{1}</table>',[r,a])}return e}(e.innerHTML,c)}function u(e){var t=e.className;if(/hljs-/.test(t)){for(var n=m(e.innerHTML),a=0,r="";a<n.length;a++)r+=p('<span class="{0}">{1}</span>\n',[t,0<n[a].length?n[a]:" "]);e.innerHTML=r.trim()}}function m(e){return 0===e.length?[]:e.split(l)}function p(e,t){return e.replace(/\{(\d+)\}/g,(function(e,n){return void 0!==t[n]?t[n]:e}))}MT?(MT.initLineNumbersOnLoad=function(e){"interactive"===n.readyState||"complete"===n.readyState?c(e):t.addEventListener("DOMContentLoaded",(function(){c(e)}))},MT.lineNumbersBlock=_,MT.lineNumbersValue=function(e,t){if("string"==typeof e){var n=document.createElement("code");return n.innerHTML=e,d(n,t)}},(a=n.createElement("style")).type="text/css",a.innerHTML=p(".{0}{border-collapse:collapse}.{0} td{padding:0}.{1}:before{content:attr({2})}",[r,o,s]),n.getElementsByTagName("head")[0].appendChild(a)):t.console.error("highlight.js not detected!"),document.addEventListener("copy",(function(e){var t,n=window.getSelection();!function(e){for(var t=e;t;){if(t.className&&-1!==t.className.indexOf("hljs-ln-code"))return 1;t=t.parentNode}}(n.anchorNode)||(t=-1!==window.navigator.userAgent.indexOf("Edge")?function(e){for(var t=e.toString(),n=e.anchorNode;"TD"!==n.nodeName;)n=n.parentNode;for(var a=e.focusNode;"TD"!==a.nodeName;)a=a.parentNode;var r=parseInt(n.dataset.lineNumber),o=parseInt(a.dataset.lineNumber);if(r==o)return t;var l,c=n.textContent,_=a.textContent;for(o<r&&(l=r,r=o,o=l,l=c,c=_,_=l);0!==t.indexOf(c);)c=c.slice(1);for(;-1===t.lastIndexOf(_);)_=_.slice(0,-1);for(var d=c,u=function(e){for(var t=e;"TABLE"!==t.nodeName;)t=t.parentNode;return t}(n),m=r+1;m<o;++m){var g=p('.{0}[{1}="{2}"]',[i,s,m]);d+="\n"+u.querySelector(g).textContent}return d+"\n"+_}(n):n.toString(),e.clipboardData.setData("text/plain",t),e.preventDefault())}))}(window,document); +/*! + * reveal.js plugin that adds syntax highlight support. + */ +var LT={id:"highlight",HIGHLIGHT_STEP_DELIMITER:"|",HIGHLIGHT_LINE_DELIMITER:",",HIGHLIGHT_LINE_RANGE_DELIMITER:"-",hljs:MT,init:function(e){var t=e.getConfig().highlight||{};t.highlightOnLoad="boolean"!=typeof t.highlightOnLoad||t.highlightOnLoad,t.escapeHTML="boolean"!=typeof t.escapeHTML||t.escapeHTML,Array.from(e.getRevealElement().querySelectorAll("pre code")).forEach((function(e){e.parentNode.classList.add("code-wrapper");var n=e.querySelector('script[type="text/template"]');n&&(e.textContent=n.innerHTML),e.hasAttribute("data-trim")&&"function"==typeof e.innerHTML.trim&&(e.innerHTML=function(e){function t(e){return e.replace(/^[\s\uFEFF\xA0]+/g,"")}function n(e){for(var t=e.split("\n"),n=0;n<t.length&&""===t[n].trim();n++)t.splice(n--,1);for(n=t.length-1;n>=0&&""===t[n].trim();n--)t.splice(n,1);return t.join("\n")}return function(e){var a=n(e.innerHTML).split("\n"),r=a.reduce((function(e,n){return n.length>0&&t(n).length>0&&e>n.length-t(n).length?n.length-t(n).length:e}),Number.POSITIVE_INFINITY);return a.map((function(e,t){return e.slice(r)})).join("\n")}(e)}(e)),t.escapeHTML&&!e.hasAttribute("data-noescape")&&(e.innerHTML=e.innerHTML.replace(/</g,"<").replace(/>/g,">")),e.addEventListener("focusout",(function(e){MT.highlightElement(e.currentTarget)}),!1)})),"function"==typeof t.beforeHighlight&&t.beforeHighlight(MT),t.highlightOnLoad&&Array.from(e.getRevealElement().querySelectorAll("pre code")).forEach((function(e){LT.highlightBlock(e)})),e.on("pdf-ready",(function(){[].slice.call(e.getRevealElement().querySelectorAll("pre code[data-line-numbers].current-fragment")).forEach((function(e){LT.scrollHighlightedLineIntoView(e,{},!0)}))}))},highlightBlock:function(e){if(MT.highlightElement(e),0!==e.innerHTML.trim().length&&e.hasAttribute("data-line-numbers")){MT.lineNumbersBlock(e,{singleLine:!0});var t={currentBlock:e},n=LT.deserializeHighlightSteps(e.getAttribute("data-line-numbers"));if(n.length>1){var a=parseInt(e.getAttribute("data-fragment-index"),10);("number"!=typeof a||isNaN(a))&&(a=null),n.slice(1).forEach((function(n){var r=e.cloneNode(!0);r.setAttribute("data-line-numbers",LT.serializeHighlightSteps([n])),r.classList.add("fragment"),e.parentNode.appendChild(r),LT.highlightLines(r),"number"==typeof a?(r.setAttribute("data-fragment-index",a),a+=1):r.removeAttribute("data-fragment-index"),r.addEventListener("visible",LT.scrollHighlightedLineIntoView.bind(LT,r,t)),r.addEventListener("hidden",LT.scrollHighlightedLineIntoView.bind(LT,r.previousSibling,t))})),e.removeAttribute("data-fragment-index"),e.setAttribute("data-line-numbers",LT.serializeHighlightSteps([n[0]]))}var r="function"==typeof e.closest?e.closest("section:not(.stack)"):null;if(r){r.addEventListener("visible",(function n(){LT.scrollHighlightedLineIntoView(e,t,!0),r.removeEventListener("visible",n)}))}LT.highlightLines(e)}},scrollHighlightedLineIntoView:function(e,t,n){cancelAnimationFrame(t.animationFrameID),t.currentBlock&&(e.scrollTop=t.currentBlock.scrollTop),t.currentBlock=e;var a=this.getHighlightedLineBounds(e),r=e.offsetHeight,i=getComputedStyle(e);r-=parseInt(i.paddingTop)+parseInt(i.paddingBottom);var o=e.scrollTop,s=a.top+(Math.min(a.bottom-a.top,r)-r)/2,l=e.querySelector(".hljs-ln");if(l&&(s+=l.offsetTop-parseInt(i.paddingTop)),s=Math.max(Math.min(s,e.scrollHeight-r),0),!0===n||o===s)e.scrollTop=s;else{if(e.scrollHeight<=r)return;var c=0;!function n(){c=Math.min(c+.02,1),e.scrollTop=o+(s-o)*LT.easeInOutQuart(c),c<1&&(t.animationFrameID=requestAnimationFrame(n))}()}},easeInOutQuart:function(e){return e<.5?8*e*e*e*e:1-8*--e*e*e*e},getHighlightedLineBounds:function(e){var t=e.querySelectorAll(".highlight-line");if(0===t.length)return{top:0,bottom:0};var n=t[0],a=t[t.length-1];return{top:n.offsetTop,bottom:a.offsetTop+a.offsetHeight}},highlightLines:function(e,t){var n=LT.deserializeHighlightSteps(t||e.getAttribute("data-line-numbers"));n.length&&n[0].forEach((function(t){var n=[];"number"==typeof t.end?n=[].slice.call(e.querySelectorAll("table tr:nth-child(n+"+t.start+"):nth-child(-n+"+t.end+")")):"number"==typeof t.start&&(n=[].slice.call(e.querySelectorAll("table tr:nth-child("+t.start+")"))),n.length&&(n.forEach((function(e){e.classList.add("highlight-line")})),e.classList.add("has-highlights"))}))},deserializeHighlightSteps:function(e){return(e=(e=e.replace(/\s/g,"")).split(LT.HIGHLIGHT_STEP_DELIMITER)).map((function(e){return e.split(LT.HIGHLIGHT_LINE_DELIMITER).map((function(e){if(/^[\d-]+$/.test(e)){e=e.split(LT.HIGHLIGHT_LINE_RANGE_DELIMITER);var t=parseInt(e[0],10),n=parseInt(e[1],10);return isNaN(n)?{start:t}:{start:t,end:n}}return{}}))}))},serializeHighlightSteps:function(e){return e.map((function(e){return e.map((function(e){return"number"==typeof e.end?e.start+LT.HIGHLIGHT_LINE_RANGE_DELIMITER+e.end:"number"==typeof e.start?e.start:""})).join(LT.HIGHLIGHT_LINE_DELIMITER)})).join(LT.HIGHLIGHT_STEP_DELIMITER)}};return function(){return LT}})); diff --git a/public/site_libs/revealjs/plugin/highlight/monokai.css b/public/site_libs/revealjs/plugin/highlight/monokai.css new file mode 100644 index 0000000..af24834 --- /dev/null +++ b/public/site_libs/revealjs/plugin/highlight/monokai.css @@ -0,0 +1,71 @@ +/* +Monokai style - ported by Luigi Maselli - http://grigio.org +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #272822; + color: #ddd; +} + +.hljs-tag, +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-strong, +.hljs-name { + color: #f92672; +} + +.hljs-code { + color: #66d9ef; +} + +.hljs-class .hljs-title { + color: white; +} + +.hljs-attribute, +.hljs-symbol, +.hljs-regexp, +.hljs-link { + color: #bf79db; +} + +.hljs-string, +.hljs-bullet, +.hljs-subst, +.hljs-title, +.hljs-section, +.hljs-emphasis, +.hljs-type, +.hljs-built_in, +.hljs-builtin-name, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-addition, +.hljs-variable, +.hljs-template-tag, +.hljs-template-variable { + color: #a6e22e; +} + +.hljs-comment, +.hljs-quote, +.hljs-deletion, +.hljs-meta { + color: #75715e; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-doctag, +.hljs-title, +.hljs-section, +.hljs-type, +.hljs-selector-id { + font-weight: bold; +} diff --git a/public/site_libs/revealjs/plugin/highlight/plugin.js b/public/site_libs/revealjs/plugin/highlight/plugin.js new file mode 100644 index 0000000..02ff878 --- /dev/null +++ b/public/site_libs/revealjs/plugin/highlight/plugin.js @@ -0,0 +1,439 @@ +import hljs from 'highlight.js'; + +/* highlightjs-line-numbers.js 2.8.0 | (C) 2018 Yauheni Pakala | MIT License | github.com/wcoder/highlightjs-line-numbers.js */ +!function(r,o){"use strict";var e,i="hljs-ln",l="hljs-ln-line",h="hljs-ln-code",s="hljs-ln-numbers",c="hljs-ln-n",m="data-line-number",a=/\r\n|\r|\n/g;function u(e){for(var n=e.toString(),t=e.anchorNode;"TD"!==t.nodeName;)t=t.parentNode;for(var r=e.focusNode;"TD"!==r.nodeName;)r=r.parentNode;var o=parseInt(t.dataset.lineNumber),a=parseInt(r.dataset.lineNumber);if(o==a)return n;var i,l=t.textContent,s=r.textContent;for(a<o&&(i=o,o=a,a=i,i=l,l=s,s=i);0!==n.indexOf(l);)l=l.slice(1);for(;-1===n.lastIndexOf(s);)s=s.slice(0,-1);for(var c=l,u=function(e){for(var n=e;"TABLE"!==n.nodeName;)n=n.parentNode;return n}(t),d=o+1;d<a;++d){var f=p('.{0}[{1}="{2}"]',[h,m,d]);c+="\n"+u.querySelector(f).textContent}return c+="\n"+s}function n(e){try{var n=o.querySelectorAll("code.hljs,code.nohighlight");for(var t in n)n.hasOwnProperty(t)&&(n[t].classList.contains("nohljsln")||d(n[t],e))}catch(e){r.console.error("LineNumbers error: ",e)}}function d(e,n){if("object"==typeof e)e.innerHTML=f(e,n)}function f(e,n){var t,r,o=(t=e,{singleLine:function(e){return!!e.singleLine&&e.singleLine}(r=(r=n)||{}),startFrom:function(e,n){var t=1;isFinite(n.startFrom)&&(t=n.startFrom);var r=function(e,n){return e.hasAttribute(n)?e.getAttribute(n):null}(e,"data-ln-start-from");return null!==r&&(t=function(e,n){if(!e)return n;var t=Number(e);return isFinite(t)?t:n}(r,1)),t}(t,r)});return function e(n){var t=n.childNodes;for(var r in t){var o;t.hasOwnProperty(r)&&(o=t[r],0<(o.textContent.trim().match(a)||[]).length&&(0<o.childNodes.length?e(o):v(o.parentNode)))}}(e),function(e,n){var t=g(e);""===t[t.length-1].trim()&&t.pop();if(1<t.length||n.singleLine){for(var r="",o=0,a=t.length;o<a;o++)r+=p('<tr><td class="{0} {1}" {3}="{5}"><div class="{2}" {3}="{5}"></div></td><td class="{0} {4}" {3}="{5}">{6}</td></tr>',[l,s,c,m,h,o+n.startFrom,0<t[o].length?t[o]:" "]);return p('<table class="{0}">{1}</table>',[i,r])}return e}(e.innerHTML,o)}function v(e){var n=e.className;if(/hljs-/.test(n)){for(var t=g(e.innerHTML),r=0,o="";r<t.length;r++){o+=p('<span class="{0}">{1}</span>\n',[n,0<t[r].length?t[r]:" "])}e.innerHTML=o.trim()}}function g(e){return 0===e.length?[]:e.split(a)}function p(e,t){return e.replace(/\{(\d+)\}/g,function(e,n){return void 0!==t[n]?t[n]:e})}hljs?(hljs.initLineNumbersOnLoad=function(e){"interactive"===o.readyState||"complete"===o.readyState?n(e):r.addEventListener("DOMContentLoaded",function(){n(e)})},hljs.lineNumbersBlock=d,hljs.lineNumbersValue=function(e,n){if("string"!=typeof e)return;var t=document.createElement("code");return t.innerHTML=e,f(t,n)},(e=o.createElement("style")).type="text/css",e.innerHTML=p(".{0}{border-collapse:collapse}.{0} td{padding:0}.{1}:before{content:attr({2})}",[i,c,m]),o.getElementsByTagName("head")[0].appendChild(e)):r.console.error("highlight.js not detected!"),document.addEventListener("copy",function(e){var n,t=window.getSelection();!function(e){for(var n=e;n;){if(n.className&&-1!==n.className.indexOf("hljs-ln-code"))return 1;n=n.parentNode}}(t.anchorNode)||(n=-1!==window.navigator.userAgent.indexOf("Edge")?u(t):t.toString(),e.clipboardData.setData("text/plain",n),e.preventDefault())})}(window,document); + + +/*! + * reveal.js plugin that adds syntax highlight support. + */ + +const Plugin = { + + id: 'highlight', + + HIGHLIGHT_STEP_DELIMITER: '|', + HIGHLIGHT_LINE_DELIMITER: ',', + HIGHLIGHT_LINE_RANGE_DELIMITER: '-', + + hljs, + + /** + * Highlights code blocks withing the given deck. + * + * Note that this can be called multiple times if + * there are multiple presentations on one page. + * + * @param {Reveal} reveal the reveal.js instance + */ + init: function( reveal ) { + + // Read the plugin config options and provide fallbacks + let config = reveal.getConfig().highlight || {}; + + config.highlightOnLoad = typeof config.highlightOnLoad === 'boolean' ? config.highlightOnLoad : true; + config.escapeHTML = typeof config.escapeHTML === 'boolean' ? config.escapeHTML : true; + + Array.from( reveal.getRevealElement().querySelectorAll( 'pre code' ) ).forEach( block => { + + block.parentNode.classList.add('code-wrapper'); + + // Code can optionally be wrapped in script template to avoid + // HTML being parsed by the browser (i.e. when you need to + // include <, > or & in your code). + let substitute = block.querySelector( 'script[type="text/template"]' ); + if( substitute ) { + // textContent handles the HTML entity escapes for us + block.textContent = substitute.innerHTML; + } + + // Trim whitespace if the "data-trim" attribute is present + if( block.hasAttribute( 'data-trim' ) && typeof block.innerHTML.trim === 'function' ) { + block.innerHTML = betterTrim( block ); + } + + // Escape HTML tags unless the "data-noescape" attrbute is present + if( config.escapeHTML && !block.hasAttribute( 'data-noescape' )) { + block.innerHTML = block.innerHTML.replace( /</g,"<").replace(/>/g, '>' ); + } + + // Re-highlight when focus is lost (for contenteditable code) + block.addEventListener( 'focusout', function( event ) { + hljs.highlightElement( event.currentTarget ); + }, false ); + + } ); + + // Triggers a callback function before we trigger highlighting + if( typeof config.beforeHighlight === 'function' ) { + config.beforeHighlight( hljs ); + } + + // Run initial highlighting for all code + if( config.highlightOnLoad ) { + Array.from( reveal.getRevealElement().querySelectorAll( 'pre code' ) ).forEach( block => { + Plugin.highlightBlock( block ); + } ); + } + + // If we're printing to PDF, scroll the code highlights of + // all blocks in the deck into view at once + reveal.on( 'pdf-ready', function() { + [].slice.call( reveal.getRevealElement().querySelectorAll( 'pre code[data-line-numbers].current-fragment' ) ).forEach( function( block ) { + Plugin.scrollHighlightedLineIntoView( block, {}, true ); + } ); + } ); + + }, + + /** + * Highlights a code block. If the <code> node has the + * 'data-line-numbers' attribute we also generate slide + * numbers. + * + * If the block contains multiple line highlight steps, + * we clone the block and create a fragment for each step. + */ + highlightBlock: function( block ) { + + hljs.highlightElement( block ); + + // Don't generate line numbers for empty code blocks + if( block.innerHTML.trim().length === 0 ) return; + + if( block.hasAttribute( 'data-line-numbers' ) ) { + hljs.lineNumbersBlock( block, { singleLine: true } ); + + var scrollState = { currentBlock: block }; + + // If there is at least one highlight step, generate + // fragments + var highlightSteps = Plugin.deserializeHighlightSteps( block.getAttribute( 'data-line-numbers' ) ); + if( highlightSteps.length > 1 ) { + + // If the original code block has a fragment-index, + // each clone should follow in an incremental sequence + var fragmentIndex = parseInt( block.getAttribute( 'data-fragment-index' ), 10 ); + + if( typeof fragmentIndex !== 'number' || isNaN( fragmentIndex ) ) { + fragmentIndex = null; + } + + // Generate fragments for all steps except the original block + highlightSteps.slice(1).forEach( function( highlight ) { + + var fragmentBlock = block.cloneNode( true ); + fragmentBlock.setAttribute( 'data-line-numbers', Plugin.serializeHighlightSteps( [ highlight ] ) ); + fragmentBlock.classList.add( 'fragment' ); + block.parentNode.appendChild( fragmentBlock ); + Plugin.highlightLines( fragmentBlock ); + + if( typeof fragmentIndex === 'number' ) { + fragmentBlock.setAttribute( 'data-fragment-index', fragmentIndex ); + fragmentIndex += 1; + } + else { + fragmentBlock.removeAttribute( 'data-fragment-index' ); + } + + // Scroll highlights into view as we step through them + fragmentBlock.addEventListener( 'visible', Plugin.scrollHighlightedLineIntoView.bind( Plugin, fragmentBlock, scrollState ) ); + fragmentBlock.addEventListener( 'hidden', Plugin.scrollHighlightedLineIntoView.bind( Plugin, fragmentBlock.previousSibling, scrollState ) ); + + } ); + + block.removeAttribute( 'data-fragment-index' ) + block.setAttribute( 'data-line-numbers', Plugin.serializeHighlightSteps( [ highlightSteps[0] ] ) ); + + } + + // Scroll the first highlight into view when the slide + // becomes visible. Note supported in IE11 since it lacks + // support for Element.closest. + var slide = typeof block.closest === 'function' ? block.closest( 'section:not(.stack)' ) : null; + if( slide ) { + var scrollFirstHighlightIntoView = function() { + Plugin.scrollHighlightedLineIntoView( block, scrollState, true ); + slide.removeEventListener( 'visible', scrollFirstHighlightIntoView ); + } + slide.addEventListener( 'visible', scrollFirstHighlightIntoView ); + } + + Plugin.highlightLines( block ); + + } + + }, + + /** + * Animates scrolling to the first highlighted line + * in the given code block. + */ + scrollHighlightedLineIntoView: function( block, scrollState, skipAnimation ) { + + cancelAnimationFrame( scrollState.animationFrameID ); + + // Match the scroll position of the currently visible + // code block + if( scrollState.currentBlock ) { + block.scrollTop = scrollState.currentBlock.scrollTop; + } + + // Remember the current code block so that we can match + // its scroll position when showing/hiding fragments + scrollState.currentBlock = block; + + var highlightBounds = this.getHighlightedLineBounds( block ) + var viewportHeight = block.offsetHeight; + + // Subtract padding from the viewport height + var blockStyles = getComputedStyle( block ); + viewportHeight -= parseInt( blockStyles.paddingTop ) + parseInt( blockStyles.paddingBottom ); + + // Scroll position which centers all highlights + var startTop = block.scrollTop; + var targetTop = highlightBounds.top + ( Math.min( highlightBounds.bottom - highlightBounds.top, viewportHeight ) - viewportHeight ) / 2; + + // Account for offsets in position applied to the + // <table> that holds our lines of code + var lineTable = block.querySelector( '.hljs-ln' ); + if( lineTable ) targetTop += lineTable.offsetTop - parseInt( blockStyles.paddingTop ); + + // Make sure the scroll target is within bounds + targetTop = Math.max( Math.min( targetTop, block.scrollHeight - viewportHeight ), 0 ); + + if( skipAnimation === true || startTop === targetTop ) { + block.scrollTop = targetTop; + } + else { + + // Don't attempt to scroll if there is no overflow + if( block.scrollHeight <= viewportHeight ) return; + + var time = 0; + var animate = function() { + time = Math.min( time + 0.02, 1 ); + + // Update our eased scroll position + block.scrollTop = startTop + ( targetTop - startTop ) * Plugin.easeInOutQuart( time ); + + // Keep animating unless we've reached the end + if( time < 1 ) { + scrollState.animationFrameID = requestAnimationFrame( animate ); + } + }; + + animate(); + + } + + }, + + /** + * The easing function used when scrolling. + */ + easeInOutQuart: function( t ) { + + // easeInOutQuart + return t<.5 ? 8*t*t*t*t : 1-8*(--t)*t*t*t; + + }, + + getHighlightedLineBounds: function( block ) { + + var highlightedLines = block.querySelectorAll( '.highlight-line' ); + if( highlightedLines.length === 0 ) { + return { top: 0, bottom: 0 }; + } + else { + var firstHighlight = highlightedLines[0]; + var lastHighlight = highlightedLines[ highlightedLines.length -1 ]; + + return { + top: firstHighlight.offsetTop, + bottom: lastHighlight.offsetTop + lastHighlight.offsetHeight + } + } + + }, + + /** + * Visually emphasize specific lines within a code block. + * This only works on blocks with line numbering turned on. + * + * @param {HTMLElement} block a <code> block + * @param {String} [linesToHighlight] The lines that should be + * highlighted in this format: + * "1" = highlights line 1 + * "2,5" = highlights lines 2 & 5 + * "2,5-7" = highlights lines 2, 5, 6 & 7 + */ + highlightLines: function( block, linesToHighlight ) { + + var highlightSteps = Plugin.deserializeHighlightSteps( linesToHighlight || block.getAttribute( 'data-line-numbers' ) ); + + if( highlightSteps.length ) { + + highlightSteps[0].forEach( function( highlight ) { + + var elementsToHighlight = []; + + // Highlight a range + if( typeof highlight.end === 'number' ) { + elementsToHighlight = [].slice.call( block.querySelectorAll( 'table tr:nth-child(n+'+highlight.start+'):nth-child(-n+'+highlight.end+')' ) ); + } + // Highlight a single line + else if( typeof highlight.start === 'number' ) { + elementsToHighlight = [].slice.call( block.querySelectorAll( 'table tr:nth-child('+highlight.start+')' ) ); + } + + if( elementsToHighlight.length ) { + elementsToHighlight.forEach( function( lineElement ) { + lineElement.classList.add( 'highlight-line' ); + } ); + + block.classList.add( 'has-highlights' ); + } + + } ); + + } + + }, + + /** + * Parses and formats a user-defined string of line + * numbers to highlight. + * + * @example + * Plugin.deserializeHighlightSteps( '1,2|3,5-10' ) + * // [ + * // [ { start: 1 }, { start: 2 } ], + * // [ { start: 3 }, { start: 5, end: 10 } ] + * // ] + */ + deserializeHighlightSteps: function( highlightSteps ) { + + // Remove whitespace + highlightSteps = highlightSteps.replace( /\s/g, '' ); + + // Divide up our line number groups + highlightSteps = highlightSteps.split( Plugin.HIGHLIGHT_STEP_DELIMITER ); + + return highlightSteps.map( function( highlights ) { + + return highlights.split( Plugin.HIGHLIGHT_LINE_DELIMITER ).map( function( highlight ) { + + // Parse valid line numbers + if( /^[\d-]+$/.test( highlight ) ) { + + highlight = highlight.split( Plugin.HIGHLIGHT_LINE_RANGE_DELIMITER ); + + var lineStart = parseInt( highlight[0], 10 ), + lineEnd = parseInt( highlight[1], 10 ); + + if( isNaN( lineEnd ) ) { + return { + start: lineStart + }; + } + else { + return { + start: lineStart, + end: lineEnd + }; + } + + } + // If no line numbers are provided, no code will be highlighted + else { + + return {}; + + } + + } ); + + } ); + + }, + + /** + * Serializes parsed line number data into a string so + * that we can store it in the DOM. + */ + serializeHighlightSteps: function( highlightSteps ) { + + return highlightSteps.map( function( highlights ) { + + return highlights.map( function( highlight ) { + + // Line range + if( typeof highlight.end === 'number' ) { + return highlight.start + Plugin.HIGHLIGHT_LINE_RANGE_DELIMITER + highlight.end; + } + // Single line + else if( typeof highlight.start === 'number' ) { + return highlight.start; + } + // All lines + else { + return ''; + } + + } ).join( Plugin.HIGHLIGHT_LINE_DELIMITER ); + + } ).join( Plugin.HIGHLIGHT_STEP_DELIMITER ); + + } + +} + +// Function to perform a better "data-trim" on code snippets +// Will slice an indentation amount on each line of the snippet (amount based on the line having the lowest indentation length) +function betterTrim(snippetEl) { + // Helper functions + function trimLeft(val) { + // Adapted from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill + return val.replace(/^[\s\uFEFF\xA0]+/g, ''); + } + function trimLineBreaks(input) { + var lines = input.split('\n'); + + // Trim line-breaks from the beginning + for (var i = 0; i < lines.length; i++) { + if (lines[i].trim() === '') { + lines.splice(i--, 1); + } else break; + } + + // Trim line-breaks from the end + for (var i = lines.length-1; i >= 0; i--) { + if (lines[i].trim() === '') { + lines.splice(i, 1); + } else break; + } + + return lines.join('\n'); + } + + // Main function for betterTrim() + return (function(snippetEl) { + var content = trimLineBreaks(snippetEl.innerHTML); + var lines = content.split('\n'); + // Calculate the minimum amount to remove on each line start of the snippet (can be 0) + var pad = lines.reduce(function(acc, line) { + if (line.length > 0 && trimLeft(line).length > 0 && acc > line.length - trimLeft(line).length) { + return line.length - trimLeft(line).length; + } + return acc; + }, Number.POSITIVE_INFINITY); + // Slice each line with this amount + return lines.map(function(line, index) { + return line.slice(pad); + }) + .join('\n'); + })(snippetEl); +} + +export default () => Plugin; diff --git a/public/site_libs/revealjs/plugin/highlight/zenburn.css b/public/site_libs/revealjs/plugin/highlight/zenburn.css new file mode 100644 index 0000000..07be502 --- /dev/null +++ b/public/site_libs/revealjs/plugin/highlight/zenburn.css @@ -0,0 +1,80 @@ +/* + +Zenburn style from voldmar.ru (c) Vladimir Epifanov <voldmar@voldmar.ru> +based on dark.css by Ivan Sagalaev + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #3f3f3f; + color: #dcdcdc; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-tag { + color: #e3ceab; +} + +.hljs-template-tag { + color: #dcdcdc; +} + +.hljs-number { + color: #8cd0d3; +} + +.hljs-variable, +.hljs-template-variable, +.hljs-attribute { + color: #efdcbc; +} + +.hljs-literal { + color: #efefaf; +} + +.hljs-subst { + color: #8f8f8f; +} + +.hljs-title, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-section, +.hljs-type { + color: #efef8f; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link { + color: #dca3a3; +} + +.hljs-deletion, +.hljs-string, +.hljs-built_in, +.hljs-builtin-name { + color: #cc9393; +} + +.hljs-addition, +.hljs-comment, +.hljs-quote, +.hljs-meta { + color: #7f9f7f; +} + + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/public/site_libs/revealjs/plugin/markdown/markdown.esm.js b/public/site_libs/revealjs/plugin/markdown/markdown.esm.js new file mode 100644 index 0000000..944e70c --- /dev/null +++ b/public/site_libs/revealjs/plugin/markdown/markdown.esm.js @@ -0,0 +1 @@ +function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function r(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(null==e)return{};var n,r,u=function(e,t){if(null==e)return{};var n,r,u={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==n)return;var r,u,i=[],o=!0,a=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);o=!0);}catch(e){a=!0,u=e}finally{try{o||null==n.return||n.return()}finally{if(a)throw u}}return i}(e,t)||a(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=a(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,u=function(){};return{s:u,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){l=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw i}}}}var c="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},f=function(e){return e&&e.Math==Math&&e},p=f("object"==typeof globalThis&&globalThis)||f("object"==typeof window&&window)||f("object"==typeof self&&self)||f("object"==typeof c&&c)||function(){return this}()||Function("return this")(),h={},D=function(e){try{return!!e()}catch(e){return!0}},g=!D((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),d={},v={}.propertyIsEnumerable,A=Object.getOwnPropertyDescriptor,y=A&&!v.call({1:2},1);d.f=y?function(e){var t=A(this,e);return!!t&&t.enumerable}:v;var E=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},m={}.toString,k=function(e){return m.call(e).slice(8,-1)},F=k,b="".split,C=D((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==F(e)?b.call(e,""):Object(e)}:Object,x=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},w=C,B=x,S=function(e){return w(B(e))},_=function(e){return"object"==typeof e?null!==e:"function"==typeof e},T=_,O=function(e,t){if(!T(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!T(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!T(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!T(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")},R=x,j=function(e){return Object(R(e))},I=j,z={}.hasOwnProperty,$=function(e,t){return z.call(I(e),t)},P=_,L=p.document,M=P(L)&&P(L.createElement),N=function(e){return M?L.createElement(e):{}},U=N,q=!g&&!D((function(){return 7!=Object.defineProperty(U("div"),"a",{get:function(){return 7}}).a})),Z=g,G=d,H=E,V=S,Y=O,K=$,X=q,W=Object.getOwnPropertyDescriptor;h.f=Z?W:function(e,t){if(e=V(e),t=Y(t,!0),X)try{return W(e,t)}catch(e){}if(K(e,t))return H(!G.f.call(e,t),e[t])};var J={},Q=_,ee=function(e){if(!Q(e))throw TypeError(String(e)+" is not an object");return e},te=g,ne=q,re=ee,ue=O,ie=Object.defineProperty;J.f=te?ie:function(e,t,n){if(re(e),t=ue(t,!0),re(n),ne)try{return ie(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var oe=J,ae=E,le=g?function(e,t,n){return oe.f(e,t,ae(1,n))}:function(e,t,n){return e[t]=n,e},se={exports:{}},ce=p,fe=le,pe=function(e,t){try{fe(ce,e,t)}catch(n){ce[e]=t}return t},he=pe,De=p["__core-js_shared__"]||he("__core-js_shared__",{}),ge=De,de=Function.toString;"function"!=typeof ge.inspectSource&&(ge.inspectSource=function(e){return de.call(e)});var ve=ge.inspectSource,Ae=ve,ye=p.WeakMap,Ee="function"==typeof ye&&/native code/.test(Ae(ye)),me={exports:{}},ke=De;(me.exports=function(e,t){return ke[e]||(ke[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var Fe,be,Ce,xe=0,we=Math.random(),Be=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++xe+we).toString(36)},Se=me.exports,_e=Be,Te=Se("keys"),Oe=function(e){return Te[e]||(Te[e]=_e(e))},Re={},je=Ee,Ie=_,ze=le,$e=$,Pe=De,Le=Oe,Me=Re,Ne=p.WeakMap;if(je||Pe.state){var Ue=Pe.state||(Pe.state=new Ne),qe=Ue.get,Ze=Ue.has,Ge=Ue.set;Fe=function(e,t){if(Ze.call(Ue,e))throw new TypeError("Object already initialized");return t.facade=e,Ge.call(Ue,e,t),t},be=function(e){return qe.call(Ue,e)||{}},Ce=function(e){return Ze.call(Ue,e)}}else{var He=Le("state");Me[He]=!0,Fe=function(e,t){if($e(e,He))throw new TypeError("Object already initialized");return t.facade=e,ze(e,He,t),t},be=function(e){return $e(e,He)?e[He]:{}},Ce=function(e){return $e(e,He)}}var Ve={set:Fe,get:be,has:Ce,enforce:function(e){return Ce(e)?be(e):Fe(e,{})},getterFor:function(e){return function(t){var n;if(!Ie(t)||(n=be(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},Ye=p,Ke=le,Xe=$,We=pe,Je=ve,Qe=Ve.get,et=Ve.enforce,tt=String(String).split("String");(se.exports=function(e,t,n,r){var u,i=!!r&&!!r.unsafe,o=!!r&&!!r.enumerable,a=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof t||Xe(n,"name")||Ke(n,"name",t),(u=et(n)).source||(u.source=tt.join("string"==typeof t?t:""))),e!==Ye?(i?!a&&e[t]&&(o=!0):delete e[t],o?e[t]=n:Ke(e,t,n)):o?e[t]=n:We(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Qe(this).source||Je(this)}));var nt=p,rt=p,ut=function(e){return"function"==typeof e?e:void 0},it=function(e,t){return arguments.length<2?ut(nt[e])||ut(rt[e]):nt[e]&&nt[e][t]||rt[e]&&rt[e][t]},ot={},at=Math.ceil,lt=Math.floor,st=function(e){return isNaN(e=+e)?0:(e>0?lt:at)(e)},ct=st,ft=Math.min,pt=function(e){return e>0?ft(ct(e),9007199254740991):0},ht=st,Dt=Math.max,gt=Math.min,dt=function(e,t){var n=ht(e);return n<0?Dt(n+t,0):gt(n,t)},vt=S,At=pt,yt=dt,Et=function(e){return function(t,n,r){var u,i=vt(t),o=At(i.length),a=yt(r,o);if(e&&n!=n){for(;o>a;)if((u=i[a++])!=u)return!0}else for(;o>a;a++)if((e||a in i)&&i[a]===n)return e||a||0;return!e&&-1}},mt={includes:Et(!0),indexOf:Et(!1)},kt=$,Ft=S,bt=mt.indexOf,Ct=Re,xt=function(e,t){var n,r=Ft(e),u=0,i=[];for(n in r)!kt(Ct,n)&&kt(r,n)&&i.push(n);for(;t.length>u;)kt(r,n=t[u++])&&(~bt(i,n)||i.push(n));return i},wt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Bt=xt,St=wt.concat("length","prototype");ot.f=Object.getOwnPropertyNames||function(e){return Bt(e,St)};var _t={};_t.f=Object.getOwnPropertySymbols;var Tt=ot,Ot=_t,Rt=ee,jt=it("Reflect","ownKeys")||function(e){var t=Tt.f(Rt(e)),n=Ot.f;return n?t.concat(n(e)):t},It=$,zt=jt,$t=h,Pt=J,Lt=D,Mt=/#|\.prototype\./,Nt=function(e,t){var n=qt[Ut(e)];return n==Gt||n!=Zt&&("function"==typeof t?Lt(t):!!t)},Ut=Nt.normalize=function(e){return String(e).replace(Mt,".").toLowerCase()},qt=Nt.data={},Zt=Nt.NATIVE="N",Gt=Nt.POLYFILL="P",Ht=Nt,Vt=p,Yt=h.f,Kt=le,Xt=se.exports,Wt=pe,Jt=function(e,t){for(var n=zt(t),r=Pt.f,u=$t.f,i=0;i<n.length;i++){var o=n[i];It(e,o)||r(e,o,u(t,o))}},Qt=Ht,en=function(e,t){var n,r,u,i,o,a=e.target,l=e.global,s=e.stat;if(n=l?Vt:s?Vt[a]||Wt(a,{}):(Vt[a]||{}).prototype)for(r in t){if(i=t[r],u=e.noTargetGet?(o=Yt(n,r))&&o.value:n[r],!Qt(l?r:a+(s?".":"#")+r,e.forced)&&void 0!==u){if(typeof i==typeof u)continue;Jt(i,u)}(e.sham||u&&u.sham)&&Kt(i,"sham",!0),Xt(n,r,i,e)}},tn=ee,nn=function(){var e=tn(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},rn={},un=D;function on(e,t){return RegExp(e,t)}rn.UNSUPPORTED_Y=un((function(){var e=on("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),rn.BROKEN_CARET=un((function(){var e=on("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var an=nn,ln=rn,sn=me.exports,cn=RegExp.prototype.exec,fn=sn("native-string-replace",String.prototype.replace),pn=cn,hn=function(){var e=/a/,t=/b*/g;return cn.call(e,"a"),cn.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),Dn=ln.UNSUPPORTED_Y||ln.BROKEN_CARET,gn=void 0!==/()??/.exec("")[1];(hn||gn||Dn)&&(pn=function(e){var t,n,r,u,i=this,o=Dn&&i.sticky,a=an.call(i),l=i.source,s=0,c=e;return o&&(-1===(a=a.replace("y","")).indexOf("g")&&(a+="g"),c=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(l="(?: "+l+")",c=" "+c,s++),n=new RegExp("^(?:"+l+")",a)),gn&&(n=new RegExp("^"+l+"$(?!\\s)",a)),hn&&(t=i.lastIndex),r=cn.call(o?n:i,c),o?r?(r.input=r.input.slice(s),r[0]=r[0].slice(s),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:hn&&r&&(i.lastIndex=i.global?r.index+r[0].length:t),gn&&r&&r.length>1&&fn.call(r[0],n,(function(){for(u=1;u<arguments.length-2;u++)void 0===arguments[u]&&(r[u]=void 0)})),r});var dn=pn;en({target:"RegExp",proto:!0,forced:/./.exec!==dn},{exec:dn});var vn,An,yn=it("navigator","userAgent")||"",En=yn,mn=p.process,kn=mn&&mn.versions,Fn=kn&&kn.v8;Fn?An=(vn=Fn.split("."))[0]<4?1:vn[0]+vn[1]:En&&(!(vn=En.match(/Edge\/(\d+)/))||vn[1]>=74)&&(vn=En.match(/Chrome\/(\d+)/))&&(An=vn[1]);var bn=An&&+An,Cn=bn,xn=D,wn=!!Object.getOwnPropertySymbols&&!xn((function(){return!String(Symbol())||!Symbol.sham&&Cn&&Cn<41})),Bn=wn&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Sn=p,_n=me.exports,Tn=$,On=Be,Rn=wn,jn=Bn,In=_n("wks"),zn=Sn.Symbol,$n=jn?zn:zn&&zn.withoutSetter||On,Pn=function(e){return Tn(In,e)&&(Rn||"string"==typeof In[e])||(Rn&&Tn(zn,e)?In[e]=zn[e]:In[e]=$n("Symbol."+e)),In[e]},Ln=se.exports,Mn=dn,Nn=D,Un=Pn,qn=le,Zn=Un("species"),Gn=RegExp.prototype,Hn=!Nn((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),Vn="$0"==="a".replace(/./,"$0"),Yn=Un("replace"),Kn=!!/./[Yn]&&""===/./[Yn]("a","$0"),Xn=!Nn((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Wn=function(e,t,n,r){var u=Un(e),i=!Nn((function(){var t={};return t[u]=function(){return 7},7!=""[e](t)})),o=i&&!Nn((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[Zn]=function(){return n},n.flags="",n[u]=/./[u]),n.exec=function(){return t=!0,null},n[u](""),!t}));if(!i||!o||"replace"===e&&(!Hn||!Vn||Kn)||"split"===e&&!Xn){var a=/./[u],l=n(u,""[e],(function(e,t,n,r,u){var o=t.exec;return o===Mn||o===Gn.exec?i&&!u?{done:!0,value:a.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Vn,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Kn}),s=l[0],c=l[1];Ln(String.prototype,e,s),Ln(Gn,u,2==t?function(e,t){return c.call(e,this,t)}:function(e){return c.call(e,this)})}r&&qn(Gn[u],"sham",!0)},Jn=st,Qn=x,er=function(e){return function(t,n){var r,u,i=String(Qn(t)),o=Jn(n),a=i.length;return o<0||o>=a?e?"":void 0:(r=i.charCodeAt(o))<55296||r>56319||o+1===a||(u=i.charCodeAt(o+1))<56320||u>57343?e?i.charAt(o):r:e?i.slice(o,o+2):u-56320+(r-55296<<10)+65536}},tr={codeAt:er(!1),charAt:er(!0)},nr=tr.charAt,rr=function(e,t,n){return t+(n?nr(e,t).length:1)},ur=j,ir=Math.floor,or="".replace,ar=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,lr=/\$([$&'`]|\d{1,2})/g,sr=k,cr=dn,fr=function(e,t){var n=e.exec;if("function"==typeof n){var r=n.call(e,t);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==sr(e))throw TypeError("RegExp#exec called on incompatible receiver");return cr.call(e,t)},pr=Wn,hr=ee,Dr=pt,gr=st,dr=x,vr=rr,Ar=function(e,t,n,r,u,i){var o=n+e.length,a=r.length,l=lr;return void 0!==u&&(u=ur(u),l=ar),or.call(i,l,(function(i,l){var s;switch(l.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(o);case"<":s=u[l.slice(1,-1)];break;default:var c=+l;if(0===c)return i;if(c>a){var f=ir(c/10);return 0===f?i:f<=a?void 0===r[f-1]?l.charAt(1):r[f-1]+l.charAt(1):i}s=r[c-1]}return void 0===s?"":s}))},yr=fr,Er=Math.max,mr=Math.min;pr("replace",2,(function(e,t,n,r){var u=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,o=u?"$":"$0";return[function(n,r){var u=dr(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,u,r):t.call(String(u),n,r)},function(e,r){if(!u&&i||"string"==typeof r&&-1===r.indexOf(o)){var a=n(t,e,this,r);if(a.done)return a.value}var l=hr(e),s=String(this),c="function"==typeof r;c||(r=String(r));var f=l.global;if(f){var p=l.unicode;l.lastIndex=0}for(var h=[];;){var D=yr(l,s);if(null===D)break;if(h.push(D),!f)break;""===String(D[0])&&(l.lastIndex=vr(s,Dr(l.lastIndex),p))}for(var g,d="",v=0,A=0;A<h.length;A++){D=h[A];for(var y=String(D[0]),E=Er(mr(gr(D.index),s.length),0),m=[],k=1;k<D.length;k++)m.push(void 0===(g=D[k])?g:String(g));var F=D.groups;if(c){var b=[y].concat(m,E,s);void 0!==F&&b.push(F);var C=String(r.apply(void 0,b))}else C=Ar(y,s,E,m,F,r);E>=v&&(d+=s.slice(v,E)+C,v=E+y.length)}return d+s.slice(v)}]}));var kr=_,Fr=ee,br=function(e){if(!kr(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},Cr=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,r){return Fr(n),br(r),t?e.call(n,r):n.__proto__=r,n}}():void 0),xr=_,wr=Cr,Br=_,Sr=k,_r=Pn("match"),Tr=function(e){var t;return Br(e)&&(void 0!==(t=e[_r])?!!t:"RegExp"==Sr(e))},Or=it,Rr=J,jr=g,Ir=Pn("species"),zr=function(e){var t=Or(e),n=Rr.f;jr&&t&&!t[Ir]&&n(t,Ir,{configurable:!0,get:function(){return this}})},$r=g,Pr=p,Lr=Ht,Mr=function(e,t,n){var r,u;return wr&&"function"==typeof(r=t.constructor)&&r!==n&&xr(u=r.prototype)&&u!==n.prototype&&wr(e,u),e},Nr=J.f,Ur=ot.f,qr=Tr,Zr=nn,Gr=rn,Hr=se.exports,Vr=D,Yr=Ve.enforce,Kr=zr,Xr=Pn("match"),Wr=Pr.RegExp,Jr=Wr.prototype,Qr=/a/g,eu=/a/g,tu=new Wr(Qr)!==Qr,nu=Gr.UNSUPPORTED_Y;if($r&&Lr("RegExp",!tu||nu||Vr((function(){return eu[Xr]=!1,Wr(Qr)!=Qr||Wr(eu)==eu||"/a/i"!=Wr(Qr,"i")})))){for(var ru=function(e,t){var n,r=this instanceof ru,u=qr(e),i=void 0===t;if(!r&&u&&e.constructor===ru&&i)return e;tu?u&&!i&&(e=e.source):e instanceof ru&&(i&&(t=Zr.call(e)),e=e.source),nu&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var o=Mr(tu?new Wr(e,t):Wr(e,t),r?this:Jr,ru);nu&&n&&(Yr(o).sticky=!0);return o},uu=function(e){e in ru||Nr(ru,e,{configurable:!0,get:function(){return Wr[e]},set:function(t){Wr[e]=t}})},iu=Ur(Wr),ou=0;iu.length>ou;)uu(iu[ou++]);Jr.constructor=ru,ru.prototype=Jr,Hr(Pr,"RegExp",ru)}Kr("RegExp");var au=se.exports,lu=ee,su=D,cu=nn,fu=RegExp.prototype,pu=fu.toString,hu=su((function(){return"/a/b"!=pu.call({source:"a",flags:"b"})})),Du="toString"!=pu.name;(hu||Du)&&au(RegExp.prototype,"toString",(function(){var e=lu(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in fu)?cu.call(e):n)}),{unsafe:!0});var gu=ee,du=pt,vu=x,Au=rr,yu=fr;Wn("match",1,(function(e,t,n){return[function(t){var n=vu(this),r=null==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var u=gu(e),i=String(this);if(!u.global)return yu(u,i);var o=u.unicode;u.lastIndex=0;for(var a,l=[],s=0;null!==(a=yu(u,i));){var c=String(a[0]);l[s]=c,""===c&&(u.lastIndex=Au(i,du(u.lastIndex),o)),s++}return 0===s?null:l}]}));var Eu=g,mu=J.f,ku=Function.prototype,Fu=ku.toString,bu=/^\s*function ([^ (]*)/;Eu&&!("name"in ku)&&mu(ku,"name",{configurable:!0,get:function(){try{return Fu.call(this).match(bu)[1]}catch(e){return""}}});var Cu=D,xu=function(e,t){var n=[][e];return!!n&&Cu((function(){n.call(null,t||function(){throw 1},1)}))},wu=en,Bu=S,Su=[].join,_u=C!=Object,Tu=xu("join",",");wu({target:"Array",proto:!0,forced:_u||!Tu},{join:function(e){return Su.call(Bu(this),void 0===e?",":e)}});var Ou=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},Ru=ee,ju=Ou,Iu=Pn("species"),zu=function(e,t){var n,r=Ru(e).constructor;return void 0===r||null==(n=Ru(r)[Iu])?t:ju(n)},$u=Wn,Pu=Tr,Lu=ee,Mu=x,Nu=zu,Uu=rr,qu=pt,Zu=fr,Gu=dn,Hu=rn.UNSUPPORTED_Y,Vu=[].push,Yu=Math.min;$u("split",2,(function(e,t,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var r=String(Mu(this)),u=void 0===n?4294967295:n>>>0;if(0===u)return[];if(void 0===e)return[r];if(!Pu(e))return t.call(r,e,u);for(var i,o,a,l=[],s=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),c=0,f=new RegExp(e.source,s+"g");(i=Gu.call(f,r))&&!((o=f.lastIndex)>c&&(l.push(r.slice(c,i.index)),i.length>1&&i.index<r.length&&Vu.apply(l,i.slice(1)),a=i[0].length,c=o,l.length>=u));)f.lastIndex===i.index&&f.lastIndex++;return c===r.length?!a&&f.test("")||l.push(""):l.push(r.slice(c)),l.length>u?l.slice(0,u):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var u=Mu(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,u,n):r.call(String(u),t,n)},function(e,u){var i=n(r,e,this,u,r!==t);if(i.done)return i.value;var o=Lu(e),a=String(this),l=Nu(o,RegExp),s=o.unicode,c=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(Hu?"g":"y"),f=new l(Hu?"^(?:"+o.source+")":o,c),p=void 0===u?4294967295:u>>>0;if(0===p)return[];if(0===a.length)return null===Zu(f,a)?[a]:[];for(var h=0,D=0,g=[];D<a.length;){f.lastIndex=Hu?0:D;var d,v=Zu(f,Hu?a.slice(D):a);if(null===v||(d=Yu(qu(f.lastIndex+(Hu?D:0)),a.length))===h)D=Uu(a,D,s);else{if(g.push(a.slice(h,D)),g.length===p)return g;for(var A=1;A<=v.length-1;A++)if(g.push(v[A]),g.length===p)return g;D=h=d}}return g.push(a.slice(h)),g}]}),Hu);var Ku=x,Xu="[\t\n\v\f\r \u2028\u2029\ufeff]",Wu=RegExp("^"+Xu+Xu+"*"),Ju=RegExp(Xu+Xu+"*$"),Qu=function(e){return function(t){var n=String(Ku(t));return 1&e&&(n=n.replace(Wu,"")),2&e&&(n=n.replace(Ju,"")),n}},ei={start:Qu(1),end:Qu(2),trim:Qu(3)},ti=D,ni="\t\n\v\f\r \u2028\u2029\ufeff",ri=ei.trim;en({target:"String",proto:!0,forced:function(e){return ti((function(){return!!ni[e]()||" "!=" "[e]()||ni[e].name!==e}))}("trim")},{trim:function(){return ri(this)}});var ui={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},ii=Ou,oi=function(e,t,n){if(ii(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,u){return e.call(t,n,r,u)}}return function(){return e.apply(t,arguments)}},ai=k,li=Array.isArray||function(e){return"Array"==ai(e)},si=_,ci=li,fi=Pn("species"),pi=function(e,t){var n;return ci(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!ci(n.prototype)?si(n)&&null===(n=n[fi])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},hi=oi,Di=C,gi=j,di=pt,vi=pi,Ai=[].push,yi=function(e){var t=1==e,n=2==e,r=3==e,u=4==e,i=6==e,o=7==e,a=5==e||i;return function(l,s,c,f){for(var p,h,D=gi(l),g=Di(D),d=hi(s,c,3),v=di(g.length),A=0,y=f||vi,E=t?y(l,v):n||o?y(l,0):void 0;v>A;A++)if((a||A in g)&&(h=d(p=g[A],A,D),e))if(t)E[A]=h;else if(h)switch(e){case 3:return!0;case 5:return p;case 6:return A;case 2:Ai.call(E,p)}else switch(e){case 4:return!1;case 7:Ai.call(E,p)}return i?-1:r||u?u:E}},Ei={forEach:yi(0),map:yi(1),filter:yi(2),some:yi(3),every:yi(4),find:yi(5),findIndex:yi(6),filterOut:yi(7)},mi=Ei.forEach,ki=p,Fi=ui,bi=xu("forEach")?[].forEach:function(e){return mi(this,e,arguments.length>1?arguments[1]:void 0)},Ci=le;for(var xi in Fi){var wi=ki[xi],Bi=wi&&wi.prototype;if(Bi&&Bi.forEach!==bi)try{Ci(Bi,"forEach",bi)}catch(e){Bi.forEach=bi}}var Si={};Si[Pn("toStringTag")]="z";var _i="[object z]"===String(Si),Ti=_i,Oi=k,Ri=Pn("toStringTag"),ji="Arguments"==Oi(function(){return arguments}()),Ii=Ti?Oi:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),Ri))?n:ji?Oi(t):"Object"==(r=Oi(t))&&"function"==typeof t.callee?"Arguments":r},zi=Ii,$i=_i?{}.toString:function(){return"[object "+zi(this)+"]"},Pi=_i,Li=se.exports,Mi=$i;Pi||Li(Object.prototype,"toString",Mi,{unsafe:!0});var Ni=p.Promise,Ui=se.exports,qi=J.f,Zi=$,Gi=Pn("toStringTag"),Hi=function(e,t,n){e&&!Zi(e=n?e:e.prototype,Gi)&&qi(e,Gi,{configurable:!0,value:t})},Vi={},Yi=Vi,Ki=Pn("iterator"),Xi=Array.prototype,Wi=Ii,Ji=Vi,Qi=Pn("iterator"),eo=ee,to=ee,no=function(e){return void 0!==e&&(Yi.Array===e||Xi[Ki]===e)},ro=pt,uo=oi,io=function(e){if(null!=e)return e[Qi]||e["@@iterator"]||Ji[Wi(e)]},oo=function(e){var t=e.return;if(void 0!==t)return eo(t.call(e)).value},ao=function(e,t){this.stopped=e,this.result=t},lo=Pn("iterator"),so=!1;try{var co=0,fo={next:function(){return{done:!!co++}},return:function(){so=!0}};fo[lo]=function(){return this},Array.from(fo,(function(){throw 2}))}catch(e){}var po,ho,Do,go=it("document","documentElement"),vo=/(?:iphone|ipod|ipad).*applewebkit/i.test(yn),Ao="process"==k(p.process),yo=p,Eo=D,mo=oi,ko=go,Fo=N,bo=vo,Co=Ao,xo=yo.location,wo=yo.setImmediate,Bo=yo.clearImmediate,So=yo.process,_o=yo.MessageChannel,To=yo.Dispatch,Oo=0,Ro={},jo=function(e){if(Ro.hasOwnProperty(e)){var t=Ro[e];delete Ro[e],t()}},Io=function(e){return function(){jo(e)}},zo=function(e){jo(e.data)},$o=function(e){yo.postMessage(e+"",xo.protocol+"//"+xo.host)};wo&&Bo||(wo=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return Ro[++Oo]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},po(Oo),Oo},Bo=function(e){delete Ro[e]},Co?po=function(e){So.nextTick(Io(e))}:To&&To.now?po=function(e){To.now(Io(e))}:_o&&!bo?(Do=(ho=new _o).port2,ho.port1.onmessage=zo,po=mo(Do.postMessage,Do,1)):yo.addEventListener&&"function"==typeof postMessage&&!yo.importScripts&&xo&&"file:"!==xo.protocol&&!Eo($o)?(po=$o,yo.addEventListener("message",zo,!1)):po="onreadystatechange"in Fo("script")?function(e){ko.appendChild(Fo("script")).onreadystatechange=function(){ko.removeChild(this),jo(e)}}:function(e){setTimeout(Io(e),0)});var Po,Lo,Mo,No,Uo,qo,Zo,Go,Ho={set:wo,clear:Bo},Vo=/web0s(?!.*chrome)/i.test(yn),Yo=p,Ko=h.f,Xo=Ho.set,Wo=vo,Jo=Vo,Qo=Ao,ea=Yo.MutationObserver||Yo.WebKitMutationObserver,ta=Yo.document,na=Yo.process,ra=Yo.Promise,ua=Ko(Yo,"queueMicrotask"),ia=ua&&ua.value;ia||(Po=function(){var e,t;for(Qo&&(e=na.domain)&&e.exit();Lo;){t=Lo.fn,Lo=Lo.next;try{t()}catch(e){throw Lo?No():Mo=void 0,e}}Mo=void 0,e&&e.enter()},Wo||Qo||Jo||!ea||!ta?ra&&ra.resolve?((Zo=ra.resolve(void 0)).constructor=ra,Go=Zo.then,No=function(){Go.call(Zo,Po)}):No=Qo?function(){na.nextTick(Po)}:function(){Xo.call(Yo,Po)}:(Uo=!0,qo=ta.createTextNode(""),new ea(Po).observe(qo,{characterData:!0}),No=function(){qo.data=Uo=!Uo}));var oa=ia||function(e){var t={fn:e,next:void 0};Mo&&(Mo.next=t),Lo||(Lo=t,No()),Mo=t},aa={},la=Ou,sa=function(e){var t,n;this.promise=new e((function(e,r){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor");t=e,n=r})),this.resolve=la(t),this.reject=la(n)};aa.f=function(e){return new sa(e)};var ca,fa,pa,ha,Da=ee,ga=_,da=aa,va=p,Aa="object"==typeof window,ya=en,Ea=p,ma=it,ka=Ni,Fa=se.exports,ba=function(e,t,n){for(var r in t)Ui(e,r,t[r],n);return e},Ca=Cr,xa=Hi,wa=zr,Ba=_,Sa=Ou,_a=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e},Ta=ve,Oa=function(e,t,n){var r,u,i,o,a,l,s,c=n&&n.that,f=!(!n||!n.AS_ENTRIES),p=!(!n||!n.IS_ITERATOR),h=!(!n||!n.INTERRUPTED),D=uo(t,c,1+f+h),g=function(e){return r&&oo(r),new ao(!0,e)},d=function(e){return f?(to(e),h?D(e[0],e[1],g):D(e[0],e[1])):h?D(e,g):D(e)};if(p)r=e;else{if("function"!=typeof(u=io(e)))throw TypeError("Target is not iterable");if(no(u)){for(i=0,o=ro(e.length);o>i;i++)if((a=d(e[i]))&&a instanceof ao)return a;return new ao(!1)}r=u.call(e)}for(l=r.next;!(s=l.call(r)).done;){try{a=d(s.value)}catch(e){throw oo(r),e}if("object"==typeof a&&a&&a instanceof ao)return a}return new ao(!1)},Ra=function(e,t){if(!t&&!so)return!1;var n=!1;try{var r={};r[lo]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(e){}return n},ja=zu,Ia=Ho.set,za=oa,$a=function(e,t){if(Da(e),ga(t)&&t.constructor===e)return t;var n=da.f(e);return(0,n.resolve)(t),n.promise},Pa=function(e,t){var n=va.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))},La=aa,Ma=function(e){try{return{error:!1,value:e()}}catch(e){return{error:!0,value:e}}},Na=Ve,Ua=Ht,qa=Aa,Za=Ao,Ga=bn,Ha=Pn("species"),Va="Promise",Ya=Na.get,Ka=Na.set,Xa=Na.getterFor(Va),Wa=ka&&ka.prototype,Ja=ka,Qa=Wa,el=Ea.TypeError,tl=Ea.document,nl=Ea.process,rl=La.f,ul=rl,il=!!(tl&&tl.createEvent&&Ea.dispatchEvent),ol="function"==typeof PromiseRejectionEvent,al=!1,ll=Ua(Va,(function(){var e=Ta(Ja)!==String(Ja);if(!e&&66===Ga)return!0;if(Ga>=51&&/native code/.test(Ja))return!1;var t=new Ja((function(e){e(1)})),n=function(e){e((function(){}),(function(){}))};return(t.constructor={})[Ha]=n,!(al=t.then((function(){}))instanceof n)||!e&&qa&&!ol})),sl=ll||!Ra((function(e){Ja.all(e).catch((function(){}))})),cl=function(e){var t;return!(!Ba(e)||"function"!=typeof(t=e.then))&&t},fl=function(e,t){if(!e.notified){e.notified=!0;var n=e.reactions;za((function(){for(var r=e.value,u=1==e.state,i=0;n.length>i;){var o,a,l,s=n[i++],c=u?s.ok:s.fail,f=s.resolve,p=s.reject,h=s.domain;try{c?(u||(2===e.rejection&&gl(e),e.rejection=1),!0===c?o=r:(h&&h.enter(),o=c(r),h&&(h.exit(),l=!0)),o===s.promise?p(el("Promise-chain cycle")):(a=cl(o))?a.call(o,f,p):f(o)):p(r)}catch(e){h&&!l&&h.exit(),p(e)}}e.reactions=[],e.notified=!1,t&&!e.rejection&&hl(e)}))}},pl=function(e,t,n){var r,u;il?((r=tl.createEvent("Event")).promise=t,r.reason=n,r.initEvent(e,!1,!0),Ea.dispatchEvent(r)):r={promise:t,reason:n},!ol&&(u=Ea["on"+e])?u(r):"unhandledrejection"===e&&Pa("Unhandled promise rejection",n)},hl=function(e){Ia.call(Ea,(function(){var t,n=e.facade,r=e.value;if(Dl(e)&&(t=Ma((function(){Za?nl.emit("unhandledRejection",r,n):pl("unhandledrejection",n,r)})),e.rejection=Za||Dl(e)?2:1,t.error))throw t.value}))},Dl=function(e){return 1!==e.rejection&&!e.parent},gl=function(e){Ia.call(Ea,(function(){var t=e.facade;Za?nl.emit("rejectionHandled",t):pl("rejectionhandled",t,e.value)}))},dl=function(e,t,n){return function(r){e(t,r,n)}},vl=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,fl(e,!0))},Al=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw el("Promise can't be resolved itself");var r=cl(t);r?za((function(){var n={done:!1};try{r.call(t,dl(Al,n,e),dl(vl,n,e))}catch(t){vl(n,t,e)}})):(e.value=t,e.state=1,fl(e,!1))}catch(t){vl({done:!1},t,e)}}};if(ll&&(Qa=(Ja=function(e){_a(this,Ja,Va),Sa(e),ca.call(this);var t=Ya(this);try{e(dl(Al,t),dl(vl,t))}catch(e){vl(t,e)}}).prototype,(ca=function(e){Ka(this,{type:Va,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=ba(Qa,{then:function(e,t){var n=Xa(this),r=rl(ja(this,Ja));return r.ok="function"!=typeof e||e,r.fail="function"==typeof t&&t,r.domain=Za?nl.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&fl(n,!1),r.promise},catch:function(e){return this.then(void 0,e)}}),fa=function(){var e=new ca,t=Ya(e);this.promise=e,this.resolve=dl(Al,t),this.reject=dl(vl,t)},La.f=rl=function(e){return e===Ja||e===pa?new fa(e):ul(e)},"function"==typeof ka&&Wa!==Object.prototype)){ha=Wa.then,al||(Fa(Wa,"then",(function(e,t){var n=this;return new Ja((function(e,t){ha.call(n,e,t)})).then(e,t)}),{unsafe:!0}),Fa(Wa,"catch",Qa.catch,{unsafe:!0}));try{delete Wa.constructor}catch(e){}Ca&&Ca(Wa,Qa)}ya({global:!0,wrap:!0,forced:ll},{Promise:Ja}),xa(Ja,Va,!1),wa(Va),pa=ma(Va),ya({target:Va,stat:!0,forced:ll},{reject:function(e){var t=rl(this);return t.reject.call(void 0,e),t.promise}}),ya({target:Va,stat:!0,forced:ll},{resolve:function(e){return $a(this,e)}}),ya({target:Va,stat:!0,forced:sl},{all:function(e){var t=this,n=rl(t),r=n.resolve,u=n.reject,i=Ma((function(){var n=Sa(t.resolve),i=[],o=0,a=1;Oa(e,(function(e){var l=o++,s=!1;i.push(void 0),a++,n.call(t,e).then((function(e){s||(s=!0,i[l]=e,--a||r(i))}),u)})),--a||r(i)}));return i.error&&u(i.value),n.promise},race:function(e){var t=this,n=rl(t),r=n.reject,u=Ma((function(){var u=Sa(t.resolve);Oa(e,(function(e){u.call(t,e).then(n.resolve,r)}))}));return u.error&&r(u.value),n.promise}});var yl=O,El=J,ml=E,kl=function(e,t,n){var r=yl(t);r in e?El.f(e,r,ml(0,n)):e[r]=n},Fl=D,bl=bn,Cl=Pn("species"),xl=function(e){return bl>=51||!Fl((function(){var t=[];return(t.constructor={})[Cl]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},wl=en,Bl=_,Sl=li,_l=dt,Tl=pt,Ol=S,Rl=kl,jl=Pn,Il=xl("slice"),zl=jl("species"),$l=[].slice,Pl=Math.max;wl({target:"Array",proto:!0,forced:!Il},{slice:function(e,t){var n,r,u,i=Ol(this),o=Tl(i.length),a=_l(e,o),l=_l(void 0===t?o:t,o);if(Sl(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!Sl(n.prototype)?Bl(n)&&null===(n=n[zl])&&(n=void 0):n=void 0,n===Array||void 0===n))return $l.call(i,a,l);for(r=new(void 0===n?Array:n)(Pl(l-a,0)),u=0;a<l;a++,u++)a in i&&Rl(r,u,i[a]);return r.length=u,r}});var Ll,Ml=xt,Nl=wt,Ul=Object.keys||function(e){return Ml(e,Nl)},ql=J,Zl=ee,Gl=Ul,Hl=g?Object.defineProperties:function(e,t){Zl(e);for(var n,r=Gl(t),u=r.length,i=0;u>i;)ql.f(e,n=r[i++],t[n]);return e},Vl=ee,Yl=Hl,Kl=wt,Xl=Re,Wl=go,Jl=N,Ql=Oe("IE_PROTO"),es=function(){},ts=function(e){return"<script>"+e+"<\/script>"},ns=function(){try{Ll=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;ns=Ll?function(e){e.write(ts("")),e.close();var t=e.parentWindow.Object;return e=null,t}(Ll):((t=Jl("iframe")).style.display="none",Wl.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(ts("document.F=Object")),e.close(),e.F);for(var n=Kl.length;n--;)delete ns.prototype[Kl[n]];return ns()};Xl[Ql]=!0;var rs=Object.create||function(e,t){var n;return null!==e?(es.prototype=Vl(e),n=new es,es.prototype=null,n[Ql]=e):n=ns(),void 0===t?n:Yl(n,t)},us=rs,is=J,os=Pn("unscopables"),as=Array.prototype;null==as[os]&&is.f(as,os,{configurable:!0,value:us(null)});var ls,ss,cs,fs=function(e){as[os][e]=!0},ps=!D((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),hs=$,Ds=j,gs=ps,ds=Oe("IE_PROTO"),vs=Object.prototype,As=gs?Object.getPrototypeOf:function(e){return e=Ds(e),hs(e,ds)?e[ds]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?vs:null},ys=D,Es=As,ms=le,ks=$,Fs=Pn("iterator"),bs=!1;[].keys&&("next"in(cs=[].keys())?(ss=Es(Es(cs)))!==Object.prototype&&(ls=ss):bs=!0),(null==ls||ys((function(){var e={};return ls[Fs].call(e)!==e})))&&(ls={}),ks(ls,Fs)||ms(ls,Fs,(function(){return this}));var Cs={IteratorPrototype:ls,BUGGY_SAFARI_ITERATORS:bs},xs=Cs.IteratorPrototype,ws=rs,Bs=E,Ss=Hi,_s=Vi,Ts=function(){return this},Os=en,Rs=function(e,t,n){var r=t+" Iterator";return e.prototype=ws(xs,{next:Bs(1,n)}),Ss(e,r,!1),_s[r]=Ts,e},js=As,Is=Cr,zs=Hi,$s=le,Ps=se.exports,Ls=Vi,Ms=Cs.IteratorPrototype,Ns=Cs.BUGGY_SAFARI_ITERATORS,Us=Pn("iterator"),qs=function(){return this},Zs=function(e,t,n,r,u,i,o){Rs(n,t,r);var a,l,s,c=function(e){if(e===u&&g)return g;if(!Ns&&e in h)return h[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},f=t+" Iterator",p=!1,h=e.prototype,D=h[Us]||h["@@iterator"]||u&&h[u],g=!Ns&&D||c(u),d="Array"==t&&h.entries||D;if(d&&(a=js(d.call(new e)),Ms!==Object.prototype&&a.next&&(js(a)!==Ms&&(Is?Is(a,Ms):"function"!=typeof a[Us]&&$s(a,Us,qs)),zs(a,f,!0))),"values"==u&&D&&"values"!==D.name&&(p=!0,g=function(){return D.call(this)}),h[Us]!==g&&$s(h,Us,g),Ls[t]=g,u)if(l={values:c("values"),keys:i?g:c("keys"),entries:c("entries")},o)for(s in l)(Ns||p||!(s in h))&&Ps(h,s,l[s]);else Os({target:t,proto:!0,forced:Ns||p},l);return l},Gs=S,Hs=fs,Vs=Vi,Ys=Ve,Ks=Zs,Xs=Ys.set,Ws=Ys.getterFor("Array Iterator"),Js=Ks(Array,"Array",(function(e,t){Xs(this,{type:"Array Iterator",target:Gs(e),index:0,kind:t})}),(function(){var e=Ws(this),t=e.target,n=e.kind,r=e.index++;return!t||r>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:t[r],done:!1}:{value:[r,t[r]],done:!1}}),"values");Vs.Arguments=Vs.Array,Hs("keys"),Hs("values"),Hs("entries");var Qs=tr.charAt,ec=Ve,tc=Zs,nc=ec.set,rc=ec.getterFor("String Iterator");tc(String,"String",(function(e){nc(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=rc(this),n=t.string,r=t.index;return r>=n.length?{value:void 0,done:!0}:(e=Qs(n,r),t.index+=e.length,{value:e,done:!1})}));var uc=p,ic=ui,oc=Js,ac=le,lc=Pn,sc=lc("iterator"),cc=lc("toStringTag"),fc=oc.values;for(var pc in ic){var hc=uc[pc],Dc=hc&&hc.prototype;if(Dc){if(Dc[sc]!==fc)try{ac(Dc,sc,fc)}catch(e){Dc[sc]=fc}if(Dc[cc]||ac(Dc,cc,pc),ic[pc])for(var gc in oc)if(Dc[gc]!==oc[gc])try{ac(Dc,gc,oc[gc])}catch(e){Dc[gc]=oc[gc]}}}var dc=en,vc=D,Ac=li,yc=_,Ec=j,mc=pt,kc=kl,Fc=pi,bc=xl,Cc=bn,xc=Pn("isConcatSpreadable"),wc=Cc>=51||!vc((function(){var e=[];return e[xc]=!1,e.concat()[0]!==e})),Bc=bc("concat"),Sc=function(e){if(!yc(e))return!1;var t=e[xc];return void 0!==t?!!t:Ac(e)};dc({target:"Array",proto:!0,forced:!wc||!Bc},{concat:function(e){var t,n,r,u,i,o=Ec(this),a=Fc(o,0),l=0;for(t=-1,r=arguments.length;t<r;t++)if(Sc(i=-1===t?o:arguments[t])){if(l+(u=mc(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<u;n++,l++)n in i&&kc(a,l,i[n])}else{if(l>=9007199254740991)throw TypeError("Maximum allowed index exceeded");kc(a,l++,i)}return a.length=l,a}});var _c=j,Tc=Ul;en({target:"Object",stat:!0,forced:D((function(){Tc(1)}))},{keys:function(e){return Tc(_c(e))}});var Oc=mt.includes,Rc=fs;en({target:"Array",proto:!0},{includes:function(e){return Oc(this,e,arguments.length>1?arguments[1]:void 0)}}),Rc("includes");var jc=Tr,Ic=Pn("match"),zc=function(e){if(jc(e))throw TypeError("The method doesn't accept regular expressions");return e},$c=x;en({target:"String",proto:!0,forced:!function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[Ic]=!1,"/./"[e](t)}catch(e){}}return!1}("includes")},{includes:function(e){return!!~String($c(this)).indexOf(zc(e),arguments.length>1?arguments[1]:void 0)}});var Pc=x,Lc=/"/g,Mc=D,Nc=function(e,t,n,r){var u=String(Pc(e)),i="<"+t;return""!==n&&(i+=" "+n+'="'+String(r).replace(Lc,""")+'"'),i+">"+u+"</"+t+">"};en({target:"String",proto:!0,forced:function(e){return Mc((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}("link")},{link:function(e){return Nc(this,"a","href",e)}});var Uc=Ei.map;en({target:"Array",proto:!0,forced:!xl("map")},{map:function(e){return Uc(this,e,arguments.length>1?arguments[1]:void 0)}});var qc=en,Zc=dt,Gc=st,Hc=pt,Vc=j,Yc=pi,Kc=kl,Xc=xl("splice"),Wc=Math.max,Jc=Math.min;qc({target:"Array",proto:!0,forced:!Xc},{splice:function(e,t){var n,r,u,i,o,a,l=Vc(this),s=Hc(l.length),c=Zc(e,s),f=arguments.length;if(0===f?n=r=0:1===f?(n=0,r=s-c):(n=f-2,r=Jc(Wc(Gc(t),0),s-c)),s+n-r>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(u=Yc(l,r),i=0;i<r;i++)(o=c+i)in l&&Kc(u,i,l[o]);if(u.length=r,n<r){for(i=c;i<s-r;i++)a=i+n,(o=i+r)in l?l[a]=l[o]:delete l[a];for(i=s;i>s-r+n;i--)delete l[i-1]}else if(n>r)for(i=s-r;i>c;i--)a=i+n-1,(o=i+r-1)in l?l[a]=l[o]:delete l[a];for(i=0;i<n;i++)l[i+c]=arguments[i+2];return l.length=s-r+n,u}});var Qc={exports:{}};function ef(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}Qc.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:ef,changeDefaults:function(e){Qc.exports.defaults=e}};var tf=/[&<>"']/,nf=/[&<>"']/g,rf=/[<>"']|&(?!#?\w+;)/,uf=/[<>"']|&(?!#?\w+;)/g,of={"&":"&","<":"<",">":">",'"':""","'":"'"},af=function(e){return of[e]};var lf=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function sf(e){return e.replace(lf,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}var cf=/(^|[^\[])\^/g;var ff=/[^\w:]/g,pf=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var hf={},Df=/^[^:]+:\/*[^/]*$/,gf=/^([^:]+:)[\s\S]*$/,df=/^([^:]+:\/*[^/]*)[\s\S]*$/;function vf(e,t){hf[" "+e]||(Df.test(e)?hf[" "+e]=e+"/":hf[" "+e]=Af(e,"/",!0));var n=-1===(e=hf[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(gf,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(df,"$1")+t:e+t}function Af(e,t,n){var r=e.length;if(0===r)return"";for(var u=0;u<r;){var i=e.charAt(r-u-1);if(i!==t||n){if(i===t||!n)break;u++}else u++}return e.substr(0,r-u)}var yf=function(e,t){if(t){if(tf.test(e))return e.replace(nf,af)}else if(rf.test(e))return e.replace(uf,af);return e},Ef=sf,mf=function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,r){return r=(r=r.source||r).replace(cf,"$1"),e=e.replace(t,r),n},getRegex:function(){return new RegExp(e,t)}};return n},kf=function(e,t,n){if(e){var r;try{r=decodeURIComponent(sf(n)).replace(ff,"").toLowerCase()}catch(e){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}t&&!pf.test(n)&&(n=vf(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n},Ff={exec:function(){}},bf=function(e){for(var t,n,r=1;r<arguments.length;r++)for(n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},Cf=function(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var r=!1,u=t;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"})).split(/ \|/),r=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},xf=Af,wf=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,r=0,u=0;u<n;u++)if("\\"===e[u])u++;else if(e[u]===t[0])r++;else if(e[u]===t[1]&&--r<0)return u;return-1},Bf=function(e){e&&e.sanitize&&!e.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")},Sf=function(e,t){if(t<1)return"";for(var n="";t>1;)1&t&&(n+=e),t>>=1,e+=e;return n+e},_f=Qc.exports.defaults,Tf=xf,Of=Cf,Rf=yf,jf=wf;function If(e,t,n){var r=t.href,u=t.title?Rf(t.title):null,i=e[1].replace(/\\([\[\]])/g,"$1");return"!"!==e[0].charAt(0)?{type:"link",raw:n,href:r,title:u,text:i}:{type:"image",raw:n,href:r,title:u,text:Rf(i)}}var zf=function(){function e(n){t(this,e),this.options=n||_f}return r(e,[{key:"space",value:function(e){var t=this.rules.block.newline.exec(e);if(t)return t[0].length>1?{type:"space",raw:t[0]}:{raw:"\n"}}},{key:"code",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Tf(n,"\n")}}}},{key:"fences",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var r=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);return null===t?e:o(t,1)[0].length>=r.length?e.slice(r.length):e})).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:r}}}},{key:"heading",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(/#$/.test(n)){var r=Tf(n,"#");this.options.pedantic?n=r.trim():r&&!/ $/.test(r)||(n=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n}}}},{key:"nptable",value:function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:Of(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=Of(n.cells[r],n.header.length);return n}}}},{key:"hr",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}},{key:"blockquote",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){var n=t[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}}},{key:"list",value:function(e){var t=this.rules.block.list.exec(e);if(t){var n,r,u,i,o,a,l,s,c,f=t[0],p=t[2],h=p.length>1,D={type:"list",raw:f,ordered:h,start:h?+p.slice(0,-1):"",loose:!1,items:[]},g=t[0].match(this.rules.block.item),d=!1,v=g.length;u=this.rules.block.listItemStart.exec(g[0]);for(var A=0;A<v;A++){if(f=n=g[A],this.options.pedantic||(c=n.match(new RegExp("\\n\\s*\\n {0,"+(u[0].length-1)+"}\\S")))&&(o=n.length-c.index+g.slice(A+1).join("\n").length,D.raw=D.raw.substring(0,D.raw.length-o),f=n=n.substring(0,c.index),v=A+1),A!==v-1){if(i=this.rules.block.listItemStart.exec(g[A+1]),this.options.pedantic?i[1].length>u[1].length:i[1].length>=u[0].length||i[1].length>3){g.splice(A,2,g[A]+(!this.options.pedantic&&i[1].length<u[0].length&&!g[A].match(/\n$/)?"":"\n")+g[A+1]),A--,v--;continue}(!this.options.pedantic||this.options.smartLists?i[2][i[2].length-1]!==p[p.length-1]:h===(1===i[2].length))&&(o=g.slice(A+1).join("\n").length,D.raw=D.raw.substring(0,D.raw.length-o),A=v-1),u=i}r=n.length,~(n=n.replace(/^ *([*+-]|\d+[.)]) ?/,"")).indexOf("\n ")&&(r-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+r+"}","gm"),"")),n=Tf(n,"\n"),A!==v-1&&(f+="\n"),a=d||/\n\n(?!\s*$)/.test(f),A!==v-1&&(d="\n\n"===f.slice(-2),a||(a=d)),a&&(D.loose=!0),this.options.gfm&&(s=void 0,(l=/^\[[ xX]\] /.test(n))&&(s=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,""))),D.items.push({type:"list_item",raw:f,task:l,checked:s,loose:a,text:n})}return D}}},{key:"html",value:function(e){var t=this.rules.block.html.exec(e);if(t)return{type:this.options.sanitize?"paragraph":"html",raw:t[0],pre:!this.options.sanitizer&&("pre"===t[1]||"script"===t[1]||"style"===t[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):Rf(t[0]):t[0]}}},{key:"def",value:function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{type:"def",tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}}},{key:"table",value:function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:"table",header:Of(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=t[0];var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=Of(n.cells[r].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}}},{key:"lheading",value:function(e){var t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1]}}},{key:"paragraph",value:function(e){var t=this.rules.block.paragraph.exec(e);if(t)return{type:"paragraph",raw:t[0],text:"\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1]}}},{key:"text",value:function(e){var t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0]}}},{key:"escape",value:function(e){var t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Rf(t[1])}}},{key:"tag",value:function(e,t,n){var r=this.rules.inline.tag.exec(e);if(r)return!t&&/^<a /i.test(r[0])?t=!0:t&&/^<\/a>/i.test(r[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:r[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):Rf(r[0]):r[0]}}},{key:"link",value:function(e){var t=this.rules.inline.link.exec(e);if(t){var n=t[2].trim();if(!this.options.pedantic&&/^</.test(n)){if(!/>$/.test(n))return;var r=Tf(n.slice(0,-1),"\\");if((n.length-r.length)%2==0)return}else{var u=jf(t[2],"()");if(u>-1){var i=(0===t[0].indexOf("!")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,i).trim(),t[3]=""}}var o=t[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=t[3]?t[3].slice(1,-1):"";return o=o.trim(),/^</.test(o)&&(o=this.options.pedantic&&!/>$/.test(n)?o.slice(1):o.slice(1,-1)),If(t,{href:o?o.replace(this.rules.inline._escapes,"$1"):o,title:a?a.replace(this.rules.inline._escapes,"$1"):a},t[0])}}},{key:"reflink",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=(n[2]||n[1]).replace(/\s+/g," ");if(!(r=t[r.toLowerCase()])||!r.href){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return If(n,r,n[0])}}},{key:"emStrong",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrong.lDelim.exec(e);if(r&&(!r[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var u=r[1]||r[2]||"";if(!u||u&&(""===n||this.rules.inline.punctuation.exec(n))){var i,o,a=r[0].length-1,l=a,s=0,c="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+a);null!=(r=c.exec(t));)if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(o=i.length,r[3]||r[4])l+=o;else if(!((r[5]||r[6])&&a%3)||(a+o)%3){if(!((l-=o)>0)){if(l+s-o<=0&&!t.slice(c.lastIndex).match(c)&&(o=Math.min(o,o+l+s)),Math.min(a,o)%2)return{type:"em",raw:e.slice(0,a+r.index+o+1),text:e.slice(1,a+r.index+o)};if(Math.min(a,o)%2==0)return{type:"strong",raw:e.slice(0,a+r.index+o+1),text:e.slice(2,a+r.index+o-1)}}}else s+=o}}}},{key:"codespan",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),r=/[^ ]/.test(n),u=/^ /.test(n)&&/ $/.test(n);return r&&u&&(n=n.substring(1,n.length-1)),n=Rf(n,!0),{type:"codespan",raw:t[0],text:n}}}},{key:"br",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}},{key:"del",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2]}}},{key:"autolink",value:function(e,t){var n,r,u=this.rules.inline.autolink.exec(e);if(u)return r="@"===u[2]?"mailto:"+(n=Rf(this.options.mangle?t(u[1]):u[1])):n=Rf(u[1]),{type:"link",raw:u[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}},{key:"url",value:function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var r,u;if("@"===n[2])u="mailto:"+(r=Rf(this.options.mangle?t(n[0]):n[0]));else{var i;do{i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(i!==n[0]);r=Rf(n[0]),u="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:u,tokens:[{type:"text",raw:r,text:r}]}}}},{key:"inlineText",value:function(e,t,n){var r,u=this.rules.inline.text.exec(e);if(u)return r=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(u[0]):Rf(u[0]):u[0]:Rf(this.options.smartypants?n(u[0]):u[0]),{type:"text",raw:u[0],text:r}}}]),e}(),$f=Ff,Pf=mf,Lf=bf,Mf={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:$f,table:$f,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};Mf.def=Pf(Mf.def).replace("label",Mf._label).replace("title",Mf._title).getRegex(),Mf.bullet=/(?:[*+-]|\d{1,9}[.)])/,Mf.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,Mf.item=Pf(Mf.item,"gm").replace(/bull/g,Mf.bullet).getRegex(),Mf.listItemStart=Pf(/^( *)(bull) */).replace("bull",Mf.bullet).getRegex(),Mf.list=Pf(Mf.list).replace(/bull/g,Mf.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+Mf.def.source+")").getRegex(),Mf._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Mf._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/,Mf.html=Pf(Mf.html,"i").replace("comment",Mf._comment).replace("tag",Mf._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Mf.paragraph=Pf(Mf._paragraph).replace("hr",Mf.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",Mf._tag).getRegex(),Mf.blockquote=Pf(Mf.blockquote).replace("paragraph",Mf.paragraph).getRegex(),Mf.normal=Lf({},Mf),Mf.gfm=Lf({},Mf.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),Mf.gfm.nptable=Pf(Mf.gfm.nptable).replace("hr",Mf.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",Mf._tag).getRegex(),Mf.gfm.table=Pf(Mf.gfm.table).replace("hr",Mf.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",Mf._tag).getRegex(),Mf.pedantic=Lf({},Mf.normal,{html:Pf("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",Mf._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:$f,paragraph:Pf(Mf.normal._paragraph).replace("hr",Mf.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",Mf.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var Nf={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:$f,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_]*?\*[^_]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^*]*?\_[^*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:$f,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/,_punctuation:"!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"};Nf.punctuation=Pf(Nf.punctuation).replace(/punctuation/g,Nf._punctuation).getRegex(),Nf.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,Nf.escapedEmSt=/\\\*|\\_/g,Nf._comment=Pf(Mf._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),Nf.emStrong.lDelim=Pf(Nf.emStrong.lDelim).replace(/punct/g,Nf._punctuation).getRegex(),Nf.emStrong.rDelimAst=Pf(Nf.emStrong.rDelimAst,"g").replace(/punct/g,Nf._punctuation).getRegex(),Nf.emStrong.rDelimUnd=Pf(Nf.emStrong.rDelimUnd,"g").replace(/punct/g,Nf._punctuation).getRegex(),Nf._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,Nf._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,Nf._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,Nf.autolink=Pf(Nf.autolink).replace("scheme",Nf._scheme).replace("email",Nf._email).getRegex(),Nf._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,Nf.tag=Pf(Nf.tag).replace("comment",Nf._comment).replace("attribute",Nf._attribute).getRegex(),Nf._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Nf._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,Nf._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,Nf.link=Pf(Nf.link).replace("label",Nf._label).replace("href",Nf._href).replace("title",Nf._title).getRegex(),Nf.reflink=Pf(Nf.reflink).replace("label",Nf._label).getRegex(),Nf.reflinkSearch=Pf(Nf.reflinkSearch,"g").replace("reflink",Nf.reflink).replace("nolink",Nf.nolink).getRegex(),Nf.normal=Lf({},Nf),Nf.pedantic=Lf({},Nf.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Pf(/^!?\[(label)\]\((.*?)\)/).replace("label",Nf._label).getRegex(),reflink:Pf(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nf._label).getRegex()}),Nf.gfm=Lf({},Nf.normal,{escape:Pf(Nf.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),Nf.gfm.url=Pf(Nf.gfm.url,"i").replace("email",Nf.gfm._extended_email).getRegex(),Nf.breaks=Lf({},Nf.gfm,{br:Pf(Nf.br).replace("{2,}","*").getRegex(),text:Pf(Nf.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var Uf={block:Mf,inline:Nf},qf=zf,Zf=Qc.exports.defaults,Gf=Uf.block,Hf=Uf.inline,Vf=Sf;function Yf(e){return e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function Kf(e){var t,n,r="",u=e.length;for(t=0;t<u;t++)n=e.charCodeAt(t),Math.random()>.5&&(n="x"+n.toString(16)),r+="&#"+n+";";return r}var Xf=function(){function e(n){t(this,e),this.tokens=[],this.tokens.links=Object.create(null),this.options=n||Zf,this.options.tokenizer=this.options.tokenizer||new qf,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var r={block:Gf.normal,inline:Hf.normal};this.options.pedantic?(r.block=Gf.pedantic,r.inline=Hf.pedantic):this.options.gfm&&(r.block=Gf.gfm,this.options.breaks?r.inline=Hf.breaks:r.inline=Hf.gfm),this.tokenizer.rules=r}return r(e,[{key:"lex",value:function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens}},{key:"blockTokens",value:function(e){var t,n,r,u,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];for(this.options.pedantic&&(e=e.replace(/^ +$/gm,""));e;)if(t=this.tokenizer.space(e))e=e.substring(t.raw.length),t.type&&i.push(t);else if(t=this.tokenizer.code(e))e=e.substring(t.raw.length),(u=i[i.length-1])&&"paragraph"===u.type?(u.raw+="\n"+t.raw,u.text+="\n"+t.text):i.push(t);else if(t=this.tokenizer.fences(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.heading(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.nptable(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.hr(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.blockquote(e))e=e.substring(t.raw.length),t.tokens=this.blockTokens(t.text,[],o),i.push(t);else if(t=this.tokenizer.list(e)){for(e=e.substring(t.raw.length),r=t.items.length,n=0;n<r;n++)t.items[n].tokens=this.blockTokens(t.items[n].text,[],!1);i.push(t)}else if(t=this.tokenizer.html(e))e=e.substring(t.raw.length),i.push(t);else if(o&&(t=this.tokenizer.def(e)))e=e.substring(t.raw.length),this.tokens.links[t.tag]||(this.tokens.links[t.tag]={href:t.href,title:t.title});else if(t=this.tokenizer.table(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.lheading(e))e=e.substring(t.raw.length),i.push(t);else if(o&&(t=this.tokenizer.paragraph(e)))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.text(e))e=e.substring(t.raw.length),(u=i[i.length-1])&&"text"===u.type?(u.raw+="\n"+t.raw,u.text+="\n"+t.text):i.push(t);else if(e){var a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}throw new Error(a)}return i}},{key:"inline",value:function(e){var t,n,r,u,i,o,a=e.length;for(t=0;t<a;t++)switch((o=e[t]).type){case"paragraph":case"text":case"heading":o.tokens=[],this.inlineTokens(o.text,o.tokens);break;case"table":for(o.tokens={header:[],cells:[]},u=o.header.length,n=0;n<u;n++)o.tokens.header[n]=[],this.inlineTokens(o.header[n],o.tokens.header[n]);for(u=o.cells.length,n=0;n<u;n++)for(i=o.cells[n],o.tokens.cells[n]=[],r=0;r<i.length;r++)o.tokens.cells[n][r]=[],this.inlineTokens(i[r],o.tokens.cells[n][r]);break;case"blockquote":this.inline(o.tokens);break;case"list":for(u=o.items.length,n=0;n<u;n++)this.inline(o.items[n].tokens)}return e}},{key:"inlineTokens",value:function(e){var t,n,r,u,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=e;if(this.tokens.links){var c=Object.keys(this.tokens.links);if(c.length>0)for(;null!=(r=this.tokenizer.rules.inline.reflinkSearch.exec(s));)c.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,r.index)+"["+Vf("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(r=this.tokenizer.rules.inline.blockSkip.exec(s));)s=s.slice(0,r.index)+"["+Vf("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(r=this.tokenizer.rules.inline.escapedEmSt.exec(s));)s=s.slice(0,r.index)+"++"+s.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;e;)if(u||(i=""),u=!1,t=this.tokenizer.escape(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.tag(e,a,l)){e=e.substring(t.raw.length),a=t.inLink,l=t.inRawBlock;var f=o[o.length-1];f&&"text"===t.type&&"text"===f.type?(f.raw+=t.raw,f.text+=t.text):o.push(t)}else if(t=this.tokenizer.link(e))e=e.substring(t.raw.length),"link"===t.type&&(t.tokens=this.inlineTokens(t.text,[],!0,l)),o.push(t);else if(t=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(t.raw.length);var p=o[o.length-1];"link"===t.type?(t.tokens=this.inlineTokens(t.text,[],!0,l),o.push(t)):p&&"text"===t.type&&"text"===p.type?(p.raw+=t.raw,p.text+=t.text):o.push(t)}else if(t=this.tokenizer.emStrong(e,s,i))e=e.substring(t.raw.length),t.tokens=this.inlineTokens(t.text,[],a,l),o.push(t);else if(t=this.tokenizer.codespan(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.br(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.del(e))e=e.substring(t.raw.length),t.tokens=this.inlineTokens(t.text,[],a,l),o.push(t);else if(t=this.tokenizer.autolink(e,Kf))e=e.substring(t.raw.length),o.push(t);else if(a||!(t=this.tokenizer.url(e,Kf))){if(t=this.tokenizer.inlineText(e,l,Yf))e=e.substring(t.raw.length),"_"!==t.raw.slice(-1)&&(i=t.raw.slice(-1)),u=!0,(n=o[o.length-1])&&"text"===n.type?(n.raw+=t.raw,n.text+=t.text):o.push(t);else if(e){var h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}throw new Error(h)}}else e=e.substring(t.raw.length),o.push(t);return o}}],[{key:"rules",get:function(){return{block:Gf,inline:Hf}}},{key:"lex",value:function(t,n){return new e(n).lex(t)}},{key:"lexInline",value:function(t,n){return new e(n).inlineTokens(t)}}]),e}(),Wf=Qc.exports.defaults,Jf=kf,Qf=yf,ep=function(){function e(n){t(this,e),this.options=n||Wf}return r(e,[{key:"code",value:function(e,t,n){var r=(t||"").match(/\S*/)[0];if(this.options.highlight){var u=this.options.highlight(e,r);null!=u&&u!==e&&(n=!0,e=u)}return e=e.replace(/\n$/,"")+"\n",r?'<pre><code class="'+this.options.langPrefix+Qf(r,!0)+'">'+(n?e:Qf(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:Qf(e,!0))+"</code></pre>\n"}},{key:"blockquote",value:function(e){return"<blockquote>\n"+e+"</blockquote>\n"}},{key:"html",value:function(e){return e}},{key:"heading",value:function(e,t,n,r){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+r.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"}},{key:"hr",value:function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}},{key:"list",value:function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"}},{key:"listitem",value:function(e){return"<li>"+e+"</li>\n"}},{key:"checkbox",value:function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}},{key:"paragraph",value:function(e){return"<p>"+e+"</p>\n"}},{key:"table",value:function(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}},{key:"tablerow",value:function(e){return"<tr>\n"+e+"</tr>\n"}},{key:"tablecell",value:function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"}},{key:"strong",value:function(e){return"<strong>"+e+"</strong>"}},{key:"em",value:function(e){return"<em>"+e+"</em>"}},{key:"codespan",value:function(e){return"<code>"+e+"</code>"}},{key:"br",value:function(){return this.options.xhtml?"<br/>":"<br>"}},{key:"del",value:function(e){return"<del>"+e+"</del>"}},{key:"link",value:function(e,t,n){if(null===(e=Jf(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<a href="'+Qf(e)+'"';return t&&(r+=' title="'+t+'"'),r+=">"+n+"</a>"}},{key:"image",value:function(e,t,n){if(null===(e=Jf(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<img src="'+e+'" alt="'+n+'"';return t&&(r+=' title="'+t+'"'),r+=this.options.xhtml?"/>":">"}},{key:"text",value:function(e){return e}}]),e}(),tp=function(){function e(){t(this,e)}return r(e,[{key:"strong",value:function(e){return e}},{key:"em",value:function(e){return e}},{key:"codespan",value:function(e){return e}},{key:"del",value:function(e){return e}},{key:"html",value:function(e){return e}},{key:"text",value:function(e){return e}},{key:"link",value:function(e,t,n){return""+n}},{key:"image",value:function(e,t,n){return""+n}},{key:"br",value:function(){return""}}]),e}(),np=function(){function e(){t(this,e),this.seen={}}return r(e,[{key:"serialize",value:function(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}},{key:"getNextSafeSlug",value:function(e,t){var n=e,r=0;if(this.seen.hasOwnProperty(n)){r=this.seen[e];do{n=e+"-"+ ++r}while(this.seen.hasOwnProperty(n))}return t||(this.seen[e]=r,this.seen[n]=0),n}},{key:"slug",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.serialize(e);return this.getNextSafeSlug(n,t.dryrun)}}]),e}(),rp=ep,up=tp,ip=np,op=Qc.exports.defaults,ap=Ef,lp=Xf,sp=function(){function e(n){t(this,e),this.options=n||op,this.options.renderer=this.options.renderer||new rp,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new up,this.slugger=new ip}return r(e,[{key:"parse",value:function(e){var t,n,r,u,i,o,a,l,s,c,f,p,h,D,g,d,v,A,y=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],E="",m=e.length;for(t=0;t<m;t++)switch((c=e[t]).type){case"space":continue;case"hr":E+=this.renderer.hr();continue;case"heading":E+=this.renderer.heading(this.parseInline(c.tokens),c.depth,ap(this.parseInline(c.tokens,this.textRenderer)),this.slugger);continue;case"code":E+=this.renderer.code(c.text,c.lang,c.escaped);continue;case"table":for(l="",a="",u=c.header.length,n=0;n<u;n++)a+=this.renderer.tablecell(this.parseInline(c.tokens.header[n]),{header:!0,align:c.align[n]});for(l+=this.renderer.tablerow(a),s="",u=c.cells.length,n=0;n<u;n++){for(a="",i=(o=c.tokens.cells[n]).length,r=0;r<i;r++)a+=this.renderer.tablecell(this.parseInline(o[r]),{header:!1,align:c.align[r]});s+=this.renderer.tablerow(a)}E+=this.renderer.table(l,s);continue;case"blockquote":s=this.parse(c.tokens),E+=this.renderer.blockquote(s);continue;case"list":for(f=c.ordered,p=c.start,h=c.loose,u=c.items.length,s="",n=0;n<u;n++)d=(g=c.items[n]).checked,v=g.task,D="",g.task&&(A=this.renderer.checkbox(d),h?g.tokens.length>0&&"text"===g.tokens[0].type?(g.tokens[0].text=A+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=A+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:A}):D+=A),D+=this.parse(g.tokens,h),s+=this.renderer.listitem(D,v,d);E+=this.renderer.list(s,f,p);continue;case"html":E+=this.renderer.html(c.text);continue;case"paragraph":E+=this.renderer.paragraph(this.parseInline(c.tokens));continue;case"text":for(s=c.tokens?this.parseInline(c.tokens):c.text;t+1<m&&"text"===e[t+1].type;)s+="\n"+((c=e[++t]).tokens?this.parseInline(c.tokens):c.text);E+=y?this.renderer.paragraph(s):s;continue;default:var k='Token with "'+c.type+'" type was not found.';if(this.options.silent)return void console.error(k);throw new Error(k)}return E}},{key:"parseInline",value:function(e,t){t=t||this.renderer;var n,r,u="",i=e.length;for(n=0;n<i;n++)switch((r=e[n]).type){case"escape":u+=t.text(r.text);break;case"html":u+=t.html(r.text);break;case"link":u+=t.link(r.href,r.title,this.parseInline(r.tokens,t));break;case"image":u+=t.image(r.href,r.title,r.text);break;case"strong":u+=t.strong(this.parseInline(r.tokens,t));break;case"em":u+=t.em(this.parseInline(r.tokens,t));break;case"codespan":u+=t.codespan(r.text);break;case"br":u+=t.br();break;case"del":u+=t.del(this.parseInline(r.tokens,t));break;case"text":u+=t.text(r.text);break;default:var o='Token with "'+r.type+'" type was not found.';if(this.options.silent)return void console.error(o);throw new Error(o)}return u}}],[{key:"parse",value:function(t,n){return new e(n).parse(t)}},{key:"parseInline",value:function(t,n){return new e(n).parseInline(t)}}]),e}(),cp=zf,fp=ep,pp=tp,hp=np,Dp=bf,gp=Bf,dp=yf,vp=Qc.exports.getDefaults,Ap=Qc.exports.changeDefaults,yp=Qc.exports.defaults;function Ep(e,t,n){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if("function"==typeof t&&(n=t,t=null),t=Dp({},Ep.defaults,t||{}),gp(t),n){var r,u=t.highlight;try{r=lp.lex(e,t)}catch(e){return n(e)}var i=function(e){var i;if(!e)try{i=sp.parse(r,t)}catch(t){e=t}return t.highlight=u,e?n(e):n(null,i)};if(!u||u.length<3)return i();if(delete t.highlight,!r.length)return i();var o=0;return Ep.walkTokens(r,(function(e){"code"===e.type&&(o++,setTimeout((function(){u(e.text,e.lang,(function(t,n){if(t)return i(t);null!=n&&n!==e.text&&(e.text=n,e.escaped=!0),0===--o&&i()}))}),0))})),void(0===o&&i())}try{var a=lp.lex(e,t);return t.walkTokens&&Ep.walkTokens(a,t.walkTokens),sp.parse(a,t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+dp(e.message+"",!0)+"</pre>";throw e}}Ep.options=Ep.setOptions=function(e){return Dp(Ep.defaults,e),Ap(Ep.defaults),Ep},Ep.getDefaults=vp,Ep.defaults=yp,Ep.use=function(e){var t=Dp({},e);if(e.renderer&&function(){var n=Ep.defaults.renderer||new fp,r=function(t){var r=n[t];n[t]=function(){for(var u=arguments.length,i=new Array(u),o=0;o<u;o++)i[o]=arguments[o];var a=e.renderer[t].apply(n,i);return!1===a&&(a=r.apply(n,i)),a}};for(var u in e.renderer)r(u);t.renderer=n}(),e.tokenizer&&function(){var n=Ep.defaults.tokenizer||new cp,r=function(t){var r=n[t];n[t]=function(){for(var u=arguments.length,i=new Array(u),o=0;o<u;o++)i[o]=arguments[o];var a=e.tokenizer[t].apply(n,i);return!1===a&&(a=r.apply(n,i)),a}};for(var u in e.tokenizer)r(u);t.tokenizer=n}(),e.walkTokens){var n=Ep.defaults.walkTokens;t.walkTokens=function(t){e.walkTokens(t),n&&n(t)}}Ep.setOptions(t)},Ep.walkTokens=function(e,t){var n,r=s(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;switch(t(u),u.type){case"table":var i,o=s(u.tokens.header);try{for(o.s();!(i=o.n()).done;){var a=i.value;Ep.walkTokens(a,t)}}catch(e){o.e(e)}finally{o.f()}var l,c=s(u.tokens.cells);try{for(c.s();!(l=c.n()).done;){var f,p=s(l.value);try{for(p.s();!(f=p.n()).done;){var h=f.value;Ep.walkTokens(h,t)}}catch(e){p.e(e)}finally{p.f()}}}catch(e){c.e(e)}finally{c.f()}break;case"list":Ep.walkTokens(u.items,t);break;default:u.tokens&&Ep.walkTokens(u.tokens,t)}}}catch(e){r.e(e)}finally{r.f()}},Ep.parseInline=function(e,t){if(null==e)throw new Error("marked.parseInline(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");t=Dp({},Ep.defaults,t||{}),gp(t);try{var n=lp.lexInline(e,t);return t.walkTokens&&Ep.walkTokens(n,t.walkTokens),sp.parseInline(n,t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+dp(e.message+"",!0)+"</pre>";throw e}},Ep.Parser=sp,Ep.parser=sp.parse,Ep.Renderer=fp,Ep.TextRenderer=pp,Ep.Lexer=lp,Ep.lexer=lp.lex,Ep.Tokenizer=cp,Ep.Slugger=hp,Ep.parse=Ep;var mp=Ep,kp=/\[([\s\d,|-]*)\]/,Fp={"&":"&","<":"<",">":">",'"':""","'":"'"};export default function(){var t;function n(e){var t=(e.querySelector("[data-template]")||e.querySelector("script")||e).textContent,n=(t=t.replace(new RegExp("__SCRIPT_END__","g"),"<\/script>")).match(/^\n?(\s*)/)[1].length,r=t.match(/^\n?(\t*)/)[1].length;return r>0?t=t.replace(new RegExp("\\n?\\t{"+r+"}","g"),"\n"):n>1&&(t=t.replace(new RegExp("\\n? {"+n+"}","g"),"\n")),t}function r(e){for(var t=e.attributes,n=[],r=0,u=t.length;r<u;r++){var i=t[r].name,o=t[r].value;/data\-(markdown|separator|vertical|notes)/gi.test(i)||(o?n.push(i+'="'+o+'"'):n.push(i))}return n.join(" ")}function o(e){return(e=e||{}).separator=e.separator||"\r?\n---\r?\n",e.notesSeparator=e.notesSeparator||"notes?:",e.attributes=e.attributes||"",e}function a(e,t){t=o(t);var n=e.split(new RegExp(t.notesSeparator,"mgi"));return 2===n.length&&(e=n[0]+'<aside class="notes">'+mp(n[1].trim())+"</aside>"),'<script type="text/template">'+(e=e.replace(/<\/script>/g,"__SCRIPT_END__"))+"<\/script>"}function l(e,t){t=o(t);for(var n,r,u,i=new RegExp(t.separator+(t.verticalSeparator?"|"+t.verticalSeparator:""),"mg"),l=new RegExp(t.separator),s=0,c=!0,f=[];n=i.exec(e);)!(r=l.test(n[0]))&&c&&f.push([]),u=e.substring(s,n.index),r&&c?f.push(u):f[f.length-1].push(u),s=i.lastIndex,c=r;(c?f:f[f.length-1]).push(e.substring(s));for(var p="",h=0,D=f.length;h<D;h++)f[h]instanceof Array?(p+="<section "+t.attributes+">",f[h].forEach((function(e){p+="<section data-markdown>"+a(e,t)+"</section>"})),p+="</section>"):p+="<section "+t.attributes+" data-markdown>"+a(f[h],t)+"</section>";return p}function s(e){return new Promise((function(t){var u=[];[].slice.call(e.querySelectorAll("section[data-markdown]:not([data-markdown-parsed])")).forEach((function(e,t){e.getAttribute("data-markdown").length?u.push(function(e){return new Promise((function(t,n){var r=new XMLHttpRequest,u=e.getAttribute("data-markdown"),i=e.getAttribute("data-charset");null!=i&&""!=i&&r.overrideMimeType("text/html; charset="+i),r.onreadystatechange=function(e,r){4===r.readyState&&(r.status>=200&&r.status<300||0===r.status?t(r,u):n(r,u))}.bind(this,e,r),r.open("GET",u,!0);try{r.send()}catch(e){console.warn("Failed to get the Markdown file "+u+". Make sure that the presentation and the file are served by a HTTP server and the file can be found there. "+e),t(r,u)}}))}(e).then((function(t,n){e.outerHTML=l(t.responseText,{separator:e.getAttribute("data-separator"),verticalSeparator:e.getAttribute("data-separator-vertical"),notesSeparator:e.getAttribute("data-separator-notes"),attributes:r(e)})}),(function(t,n){e.outerHTML='<section data-state="alert">ERROR: The attempt to fetch '+n+" failed with HTTP status "+t.status+".Check your browser's JavaScript console for more details.<p>Remember that you need to serve the presentation HTML from a HTTP server.</p></section>"}))):e.outerHTML=l(n(e),{separator:e.getAttribute("data-separator"),verticalSeparator:e.getAttribute("data-separator-vertical"),notesSeparator:e.getAttribute("data-separator-notes"),attributes:r(e)})})),Promise.all(u).then(t)}))}function c(e,t,n){var r,u,i=new RegExp(n,"mg"),o=new RegExp('([^"= ]+?)="([^"]+?)"|(data-[^"= ]+?)(?=[" ])',"mg"),a=e.nodeValue;if(r=i.exec(a)){var l=r[1];for(a=a.substring(0,r.index)+a.substring(i.lastIndex),e.nodeValue=a;u=o.exec(l);)u[2]?t.setAttribute(u[1],u[2]):t.setAttribute(u[3],"");return!0}return!1}function f(e,t,n,r,u){if(null!=t&&null!=t.childNodes&&t.childNodes.length>0)for(var i=t,o=0;o<t.childNodes.length;o++){var a=t.childNodes[o];if(o>0)for(var l=o-1;l>=0;){var s=t.childNodes[l];if("function"==typeof s.setAttribute&&"BR"!=s.tagName){i=s;break}l-=1}var p=e;"section"==a.nodeName&&(p=a,i=a),"function"!=typeof a.setAttribute&&a.nodeType!=Node.COMMENT_NODE||f(p,a,i,r,u)}t.nodeType==Node.COMMENT_NODE&&0==c(t,n,r)&&c(t,e,u)}function p(){var e=t.getRevealElement().querySelectorAll("[data-markdown]:not([data-markdown-parsed])");return[].slice.call(e).forEach((function(e){e.setAttribute("data-markdown-parsed",!0);var t=e.querySelector("aside.notes"),r=n(e);e.innerHTML=mp(r),f(e,e,null,e.getAttribute("data-element-attributes")||e.parentNode.getAttribute("data-element-attributes")||"\\.element\\s*?(.+?)$",e.getAttribute("data-attributes")||e.parentNode.getAttribute("data-attributes")||"\\.slide:\\s*?(\\S.+?)$"),t&&e.appendChild(t)})),Promise.resolve()}return{id:"markdown",init:function(n){var r=(t=n).getConfig().markdown||{},o=r.renderer,a=r.animateLists,l=i(r,["renderer","animateLists"]);return o||((o=new mp.Renderer).code=function(e,t){var n="";return kp.test(t)&&(n=t.match(kp)[1].trim(),n='data-line-numbers="'.concat(n,'"'),t=t.replace(kp,"").trim()),e=e.replace(/([&<>'"])/g,(function(e){return Fp[e]})),"<pre><code ".concat(n,' class="').concat(t,'">').concat(e,"</code></pre>")}),!0===a&&(o.listitem=function(e){return'<li class="fragment">'.concat(e,"</li>")}),mp.setOptions(function(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?e(Object(r),!0).forEach((function(e){u(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({renderer:o},l)),s(t.getRevealElement()).then(p)},processSlides:s,convertSlides:p,slidify:l,marked:mp}} diff --git a/public/site_libs/revealjs/plugin/markdown/markdown.js b/public/site_libs/revealjs/plugin/markdown/markdown.js new file mode 100644 index 0000000..fc64326 --- /dev/null +++ b/public/site_libs/revealjs/plugin/markdown/markdown.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealMarkdown=t()}(this,(function(){"use strict";function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function r(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(null==e)return{};var n,r,u=function(e,t){if(null==e)return{};var n,r,u={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==n)return;var r,u,i=[],o=!0,a=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);o=!0);}catch(e){a=!0,u=e}finally{try{o||null==n.return||n.return()}finally{if(a)throw u}}return i}(e,t)||a(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=a(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,u=function(){};return{s:u,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){l=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw i}}}}var c="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},f=function(e){return e&&e.Math==Math&&e},p=f("object"==typeof globalThis&&globalThis)||f("object"==typeof window&&window)||f("object"==typeof self&&self)||f("object"==typeof c&&c)||function(){return this}()||Function("return this")(),h={},D=function(e){try{return!!e()}catch(e){return!0}},g=!D((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),d={},v={}.propertyIsEnumerable,A=Object.getOwnPropertyDescriptor,y=A&&!v.call({1:2},1);d.f=y?function(e){var t=A(this,e);return!!t&&t.enumerable}:v;var E=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},m={}.toString,k=function(e){return m.call(e).slice(8,-1)},b=k,F="".split,C=D((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==b(e)?F.call(e,""):Object(e)}:Object,x=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},w=C,B=x,S=function(e){return w(B(e))},_=function(e){return"object"==typeof e?null!==e:"function"==typeof e},T=_,O=function(e,t){if(!T(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!T(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!T(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!T(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")},R=x,j=function(e){return Object(R(e))},$=j,z={}.hasOwnProperty,I=function(e,t){return z.call($(e),t)},P=_,L=p.document,M=P(L)&&P(L.createElement),N=function(e){return M?L.createElement(e):{}},U=N,q=!g&&!D((function(){return 7!=Object.defineProperty(U("div"),"a",{get:function(){return 7}}).a})),Z=g,G=d,H=E,V=S,Y=O,K=I,X=q,W=Object.getOwnPropertyDescriptor;h.f=Z?W:function(e,t){if(e=V(e),t=Y(t,!0),X)try{return W(e,t)}catch(e){}if(K(e,t))return H(!G.f.call(e,t),e[t])};var J={},Q=_,ee=function(e){if(!Q(e))throw TypeError(String(e)+" is not an object");return e},te=g,ne=q,re=ee,ue=O,ie=Object.defineProperty;J.f=te?ie:function(e,t,n){if(re(e),t=ue(t,!0),re(n),ne)try{return ie(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var oe=J,ae=E,le=g?function(e,t,n){return oe.f(e,t,ae(1,n))}:function(e,t,n){return e[t]=n,e},se={exports:{}},ce=p,fe=le,pe=function(e,t){try{fe(ce,e,t)}catch(n){ce[e]=t}return t},he=pe,De="__core-js_shared__",ge=p[De]||he(De,{}),de=ge,ve=Function.toString;"function"!=typeof de.inspectSource&&(de.inspectSource=function(e){return ve.call(e)});var Ae=de.inspectSource,ye=Ae,Ee=p.WeakMap,me="function"==typeof Ee&&/native code/.test(ye(Ee)),ke={exports:{}},be=ge;(ke.exports=function(e,t){return be[e]||(be[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var Fe,Ce,xe,we=0,Be=Math.random(),Se=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++we+Be).toString(36)},_e=ke.exports,Te=Se,Oe=_e("keys"),Re=function(e){return Oe[e]||(Oe[e]=Te(e))},je={},$e=me,ze=_,Ie=le,Pe=I,Le=ge,Me=Re,Ne=je,Ue="Object already initialized",qe=p.WeakMap;if($e||Le.state){var Ze=Le.state||(Le.state=new qe),Ge=Ze.get,He=Ze.has,Ve=Ze.set;Fe=function(e,t){if(He.call(Ze,e))throw new TypeError(Ue);return t.facade=e,Ve.call(Ze,e,t),t},Ce=function(e){return Ge.call(Ze,e)||{}},xe=function(e){return He.call(Ze,e)}}else{var Ye=Me("state");Ne[Ye]=!0,Fe=function(e,t){if(Pe(e,Ye))throw new TypeError(Ue);return t.facade=e,Ie(e,Ye,t),t},Ce=function(e){return Pe(e,Ye)?e[Ye]:{}},xe=function(e){return Pe(e,Ye)}}var Ke={set:Fe,get:Ce,has:xe,enforce:function(e){return xe(e)?Ce(e):Fe(e,{})},getterFor:function(e){return function(t){var n;if(!ze(t)||(n=Ce(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},Xe=p,We=le,Je=I,Qe=pe,et=Ae,tt=Ke.get,nt=Ke.enforce,rt=String(String).split("String");(se.exports=function(e,t,n,r){var u,i=!!r&&!!r.unsafe,o=!!r&&!!r.enumerable,a=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof t||Je(n,"name")||We(n,"name",t),(u=nt(n)).source||(u.source=rt.join("string"==typeof t?t:""))),e!==Xe?(i?!a&&e[t]&&(o=!0):delete e[t],o?e[t]=n:We(e,t,n)):o?e[t]=n:Qe(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&tt(this).source||et(this)}));var ut=p,it=p,ot=function(e){return"function"==typeof e?e:void 0},at=function(e,t){return arguments.length<2?ot(ut[e])||ot(it[e]):ut[e]&&ut[e][t]||it[e]&&it[e][t]},lt={},st=Math.ceil,ct=Math.floor,ft=function(e){return isNaN(e=+e)?0:(e>0?ct:st)(e)},pt=ft,ht=Math.min,Dt=function(e){return e>0?ht(pt(e),9007199254740991):0},gt=ft,dt=Math.max,vt=Math.min,At=function(e,t){var n=gt(e);return n<0?dt(n+t,0):vt(n,t)},yt=S,Et=Dt,mt=At,kt=function(e){return function(t,n,r){var u,i=yt(t),o=Et(i.length),a=mt(r,o);if(e&&n!=n){for(;o>a;)if((u=i[a++])!=u)return!0}else for(;o>a;a++)if((e||a in i)&&i[a]===n)return e||a||0;return!e&&-1}},bt={includes:kt(!0),indexOf:kt(!1)},Ft=I,Ct=S,xt=bt.indexOf,wt=je,Bt=function(e,t){var n,r=Ct(e),u=0,i=[];for(n in r)!Ft(wt,n)&&Ft(r,n)&&i.push(n);for(;t.length>u;)Ft(r,n=t[u++])&&(~xt(i,n)||i.push(n));return i},St=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],_t=Bt,Tt=St.concat("length","prototype");lt.f=Object.getOwnPropertyNames||function(e){return _t(e,Tt)};var Ot={};Ot.f=Object.getOwnPropertySymbols;var Rt=lt,jt=Ot,$t=ee,zt=at("Reflect","ownKeys")||function(e){var t=Rt.f($t(e)),n=jt.f;return n?t.concat(n(e)):t},It=I,Pt=zt,Lt=h,Mt=J,Nt=D,Ut=/#|\.prototype\./,qt=function(e,t){var n=Gt[Zt(e)];return n==Vt||n!=Ht&&("function"==typeof t?Nt(t):!!t)},Zt=qt.normalize=function(e){return String(e).replace(Ut,".").toLowerCase()},Gt=qt.data={},Ht=qt.NATIVE="N",Vt=qt.POLYFILL="P",Yt=qt,Kt=p,Xt=h.f,Wt=le,Jt=se.exports,Qt=pe,en=function(e,t){for(var n=Pt(t),r=Mt.f,u=Lt.f,i=0;i<n.length;i++){var o=n[i];It(e,o)||r(e,o,u(t,o))}},tn=Yt,nn=function(e,t){var n,r,u,i,o,a=e.target,l=e.global,s=e.stat;if(n=l?Kt:s?Kt[a]||Qt(a,{}):(Kt[a]||{}).prototype)for(r in t){if(i=t[r],u=e.noTargetGet?(o=Xt(n,r))&&o.value:n[r],!tn(l?r:a+(s?".":"#")+r,e.forced)&&void 0!==u){if(typeof i==typeof u)continue;en(i,u)}(e.sham||u&&u.sham)&&Wt(i,"sham",!0),Jt(n,r,i,e)}},rn=ee,un=function(){var e=rn(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},on={},an=D;function ln(e,t){return RegExp(e,t)}on.UNSUPPORTED_Y=an((function(){var e=ln("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),on.BROKEN_CARET=an((function(){var e=ln("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var sn=un,cn=on,fn=ke.exports,pn=RegExp.prototype.exec,hn=fn("native-string-replace",String.prototype.replace),Dn=pn,gn=function(){var e=/a/,t=/b*/g;return pn.call(e,"a"),pn.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),dn=cn.UNSUPPORTED_Y||cn.BROKEN_CARET,vn=void 0!==/()??/.exec("")[1];(gn||vn||dn)&&(Dn=function(e){var t,n,r,u,i=this,o=dn&&i.sticky,a=sn.call(i),l=i.source,s=0,c=e;return o&&(-1===(a=a.replace("y","")).indexOf("g")&&(a+="g"),c=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(l="(?: "+l+")",c=" "+c,s++),n=new RegExp("^(?:"+l+")",a)),vn&&(n=new RegExp("^"+l+"$(?!\\s)",a)),gn&&(t=i.lastIndex),r=pn.call(o?n:i,c),o?r?(r.input=r.input.slice(s),r[0]=r[0].slice(s),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:gn&&r&&(i.lastIndex=i.global?r.index+r[0].length:t),vn&&r&&r.length>1&&hn.call(r[0],n,(function(){for(u=1;u<arguments.length-2;u++)void 0===arguments[u]&&(r[u]=void 0)})),r});var An=Dn;nn({target:"RegExp",proto:!0,forced:/./.exec!==An},{exec:An});var yn,En,mn=at("navigator","userAgent")||"",kn=mn,bn=p.process,Fn=bn&&bn.versions,Cn=Fn&&Fn.v8;Cn?En=(yn=Cn.split("."))[0]<4?1:yn[0]+yn[1]:kn&&(!(yn=kn.match(/Edge\/(\d+)/))||yn[1]>=74)&&(yn=kn.match(/Chrome\/(\d+)/))&&(En=yn[1]);var xn=En&&+En,wn=xn,Bn=D,Sn=!!Object.getOwnPropertySymbols&&!Bn((function(){return!String(Symbol())||!Symbol.sham&&wn&&wn<41})),_n=Sn&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Tn=p,On=ke.exports,Rn=I,jn=Se,$n=Sn,zn=_n,In=On("wks"),Pn=Tn.Symbol,Ln=zn?Pn:Pn&&Pn.withoutSetter||jn,Mn=function(e){return Rn(In,e)&&($n||"string"==typeof In[e])||($n&&Rn(Pn,e)?In[e]=Pn[e]:In[e]=Ln("Symbol."+e)),In[e]},Nn=se.exports,Un=An,qn=D,Zn=Mn,Gn=le,Hn=Zn("species"),Vn=RegExp.prototype,Yn=!qn((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),Kn="$0"==="a".replace(/./,"$0"),Xn=Zn("replace"),Wn=!!/./[Xn]&&""===/./[Xn]("a","$0"),Jn=!qn((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Qn=function(e,t,n,r){var u=Zn(e),i=!qn((function(){var t={};return t[u]=function(){return 7},7!=""[e](t)})),o=i&&!qn((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[Hn]=function(){return n},n.flags="",n[u]=/./[u]),n.exec=function(){return t=!0,null},n[u](""),!t}));if(!i||!o||"replace"===e&&(!Yn||!Kn||Wn)||"split"===e&&!Jn){var a=/./[u],l=n(u,""[e],(function(e,t,n,r,u){var o=t.exec;return o===Un||o===Vn.exec?i&&!u?{done:!0,value:a.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Kn,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Wn}),s=l[0],c=l[1];Nn(String.prototype,e,s),Nn(Vn,u,2==t?function(e,t){return c.call(e,this,t)}:function(e){return c.call(e,this)})}r&&Gn(Vn[u],"sham",!0)},er=ft,tr=x,nr=function(e){return function(t,n){var r,u,i=String(tr(t)),o=er(n),a=i.length;return o<0||o>=a?e?"":void 0:(r=i.charCodeAt(o))<55296||r>56319||o+1===a||(u=i.charCodeAt(o+1))<56320||u>57343?e?i.charAt(o):r:e?i.slice(o,o+2):u-56320+(r-55296<<10)+65536}},rr={codeAt:nr(!1),charAt:nr(!0)},ur=rr.charAt,ir=function(e,t,n){return t+(n?ur(e,t).length:1)},or=j,ar=Math.floor,lr="".replace,sr=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,cr=/\$([$&'`]|\d{1,2})/g,fr=k,pr=An,hr=function(e,t){var n=e.exec;if("function"==typeof n){var r=n.call(e,t);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==fr(e))throw TypeError("RegExp#exec called on incompatible receiver");return pr.call(e,t)},Dr=Qn,gr=ee,dr=Dt,vr=ft,Ar=x,yr=ir,Er=function(e,t,n,r,u,i){var o=n+e.length,a=r.length,l=cr;return void 0!==u&&(u=or(u),l=sr),lr.call(i,l,(function(i,l){var s;switch(l.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(o);case"<":s=u[l.slice(1,-1)];break;default:var c=+l;if(0===c)return i;if(c>a){var f=ar(c/10);return 0===f?i:f<=a?void 0===r[f-1]?l.charAt(1):r[f-1]+l.charAt(1):i}s=r[c-1]}return void 0===s?"":s}))},mr=hr,kr=Math.max,br=Math.min;Dr("replace",2,(function(e,t,n,r){var u=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,o=u?"$":"$0";return[function(n,r){var u=Ar(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,u,r):t.call(String(u),n,r)},function(e,r){if(!u&&i||"string"==typeof r&&-1===r.indexOf(o)){var a=n(t,e,this,r);if(a.done)return a.value}var l=gr(e),s=String(this),c="function"==typeof r;c||(r=String(r));var f=l.global;if(f){var p=l.unicode;l.lastIndex=0}for(var h=[];;){var D=mr(l,s);if(null===D)break;if(h.push(D),!f)break;""===String(D[0])&&(l.lastIndex=yr(s,dr(l.lastIndex),p))}for(var g,d="",v=0,A=0;A<h.length;A++){D=h[A];for(var y=String(D[0]),E=kr(br(vr(D.index),s.length),0),m=[],k=1;k<D.length;k++)m.push(void 0===(g=D[k])?g:String(g));var b=D.groups;if(c){var F=[y].concat(m,E,s);void 0!==b&&F.push(b);var C=String(r.apply(void 0,F))}else C=Er(y,s,E,m,b,r);E>=v&&(d+=s.slice(v,E)+C,v=E+y.length)}return d+s.slice(v)}]}));var Fr=_,Cr=ee,xr=function(e){if(!Fr(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},wr=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,r){return Cr(n),xr(r),t?e.call(n,r):n.__proto__=r,n}}():void 0),Br=_,Sr=wr,_r=_,Tr=k,Or=Mn("match"),Rr=function(e){var t;return _r(e)&&(void 0!==(t=e[Or])?!!t:"RegExp"==Tr(e))},jr=at,$r=J,zr=g,Ir=Mn("species"),Pr=function(e){var t=jr(e),n=$r.f;zr&&t&&!t[Ir]&&n(t,Ir,{configurable:!0,get:function(){return this}})},Lr=g,Mr=p,Nr=Yt,Ur=function(e,t,n){var r,u;return Sr&&"function"==typeof(r=t.constructor)&&r!==n&&Br(u=r.prototype)&&u!==n.prototype&&Sr(e,u),e},qr=J.f,Zr=lt.f,Gr=Rr,Hr=un,Vr=on,Yr=se.exports,Kr=D,Xr=Ke.enforce,Wr=Pr,Jr=Mn("match"),Qr=Mr.RegExp,eu=Qr.prototype,tu=/a/g,nu=/a/g,ru=new Qr(tu)!==tu,uu=Vr.UNSUPPORTED_Y;if(Lr&&Nr("RegExp",!ru||uu||Kr((function(){return nu[Jr]=!1,Qr(tu)!=tu||Qr(nu)==nu||"/a/i"!=Qr(tu,"i")})))){for(var iu=function(e,t){var n,r=this instanceof iu,u=Gr(e),i=void 0===t;if(!r&&u&&e.constructor===iu&&i)return e;ru?u&&!i&&(e=e.source):e instanceof iu&&(i&&(t=Hr.call(e)),e=e.source),uu&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var o=Ur(ru?new Qr(e,t):Qr(e,t),r?this:eu,iu);uu&&n&&(Xr(o).sticky=!0);return o},ou=function(e){e in iu||qr(iu,e,{configurable:!0,get:function(){return Qr[e]},set:function(t){Qr[e]=t}})},au=Zr(Qr),lu=0;au.length>lu;)ou(au[lu++]);eu.constructor=iu,iu.prototype=eu,Yr(Mr,"RegExp",iu)}Wr("RegExp");var su=se.exports,cu=ee,fu=D,pu=un,hu="toString",Du=RegExp.prototype,gu=Du.toString,du=fu((function(){return"/a/b"!=gu.call({source:"a",flags:"b"})})),vu=gu.name!=hu;(du||vu)&&su(RegExp.prototype,hu,(function(){var e=cu(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in Du)?pu.call(e):n)}),{unsafe:!0});var Au=ee,yu=Dt,Eu=x,mu=ir,ku=hr;Qn("match",1,(function(e,t,n){return[function(t){var n=Eu(this),r=null==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var u=Au(e),i=String(this);if(!u.global)return ku(u,i);var o=u.unicode;u.lastIndex=0;for(var a,l=[],s=0;null!==(a=ku(u,i));){var c=String(a[0]);l[s]=c,""===c&&(u.lastIndex=mu(i,yu(u.lastIndex),o)),s++}return 0===s?null:l}]}));var bu=g,Fu=J.f,Cu=Function.prototype,xu=Cu.toString,wu=/^\s*function ([^ (]*)/,Bu="name";bu&&!(Bu in Cu)&&Fu(Cu,Bu,{configurable:!0,get:function(){try{return xu.call(this).match(wu)[1]}catch(e){return""}}});var Su=D,_u=function(e,t){var n=[][e];return!!n&&Su((function(){n.call(null,t||function(){throw 1},1)}))},Tu=nn,Ou=S,Ru=[].join,ju=C!=Object,$u=_u("join",",");Tu({target:"Array",proto:!0,forced:ju||!$u},{join:function(e){return Ru.call(Ou(this),void 0===e?",":e)}});var zu=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},Iu=ee,Pu=zu,Lu=Mn("species"),Mu=function(e,t){var n,r=Iu(e).constructor;return void 0===r||null==(n=Iu(r)[Lu])?t:Pu(n)},Nu=Qn,Uu=Rr,qu=ee,Zu=x,Gu=Mu,Hu=ir,Vu=Dt,Yu=hr,Ku=An,Xu=on.UNSUPPORTED_Y,Wu=[].push,Ju=Math.min,Qu=4294967295;Nu("split",2,(function(e,t,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var r=String(Zu(this)),u=void 0===n?Qu:n>>>0;if(0===u)return[];if(void 0===e)return[r];if(!Uu(e))return t.call(r,e,u);for(var i,o,a,l=[],s=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),c=0,f=new RegExp(e.source,s+"g");(i=Ku.call(f,r))&&!((o=f.lastIndex)>c&&(l.push(r.slice(c,i.index)),i.length>1&&i.index<r.length&&Wu.apply(l,i.slice(1)),a=i[0].length,c=o,l.length>=u));)f.lastIndex===i.index&&f.lastIndex++;return c===r.length?!a&&f.test("")||l.push(""):l.push(r.slice(c)),l.length>u?l.slice(0,u):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var u=Zu(this),i=null==t?void 0:t[e];return void 0!==i?i.call(t,u,n):r.call(String(u),t,n)},function(e,u){var i=n(r,e,this,u,r!==t);if(i.done)return i.value;var o=qu(e),a=String(this),l=Gu(o,RegExp),s=o.unicode,c=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(Xu?"g":"y"),f=new l(Xu?"^(?:"+o.source+")":o,c),p=void 0===u?Qu:u>>>0;if(0===p)return[];if(0===a.length)return null===Yu(f,a)?[a]:[];for(var h=0,D=0,g=[];D<a.length;){f.lastIndex=Xu?0:D;var d,v=Yu(f,Xu?a.slice(D):a);if(null===v||(d=Ju(Vu(f.lastIndex+(Xu?D:0)),a.length))===h)D=Hu(a,D,s);else{if(g.push(a.slice(h,D)),g.length===p)return g;for(var A=1;A<=v.length-1;A++)if(g.push(v[A]),g.length===p)return g;D=h=d}}return g.push(a.slice(h)),g}]}),Xu);var ei="\t\n\v\f\r \u2028\u2029\ufeff",ti=x,ni="[\t\n\v\f\r \u2028\u2029\ufeff]",ri=RegExp("^"+ni+ni+"*"),ui=RegExp(ni+ni+"*$"),ii=function(e){return function(t){var n=String(ti(t));return 1&e&&(n=n.replace(ri,"")),2&e&&(n=n.replace(ui,"")),n}},oi={start:ii(1),end:ii(2),trim:ii(3)},ai=D,li=ei,si=oi.trim;nn({target:"String",proto:!0,forced:function(e){return ai((function(){return!!li[e]()||" "!=" "[e]()||li[e].name!==e}))}("trim")},{trim:function(){return si(this)}});var ci={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},fi=zu,pi=function(e,t,n){if(fi(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,u){return e.call(t,n,r,u)}}return function(){return e.apply(t,arguments)}},hi=k,Di=Array.isArray||function(e){return"Array"==hi(e)},gi=_,di=Di,vi=Mn("species"),Ai=function(e,t){var n;return di(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!di(n.prototype)?gi(n)&&null===(n=n[vi])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},yi=pi,Ei=C,mi=j,ki=Dt,bi=Ai,Fi=[].push,Ci=function(e){var t=1==e,n=2==e,r=3==e,u=4==e,i=6==e,o=7==e,a=5==e||i;return function(l,s,c,f){for(var p,h,D=mi(l),g=Ei(D),d=yi(s,c,3),v=ki(g.length),A=0,y=f||bi,E=t?y(l,v):n||o?y(l,0):void 0;v>A;A++)if((a||A in g)&&(h=d(p=g[A],A,D),e))if(t)E[A]=h;else if(h)switch(e){case 3:return!0;case 5:return p;case 6:return A;case 2:Fi.call(E,p)}else switch(e){case 4:return!1;case 7:Fi.call(E,p)}return i?-1:r||u?u:E}},xi={forEach:Ci(0),map:Ci(1),filter:Ci(2),some:Ci(3),every:Ci(4),find:Ci(5),findIndex:Ci(6),filterOut:Ci(7)},wi=xi.forEach,Bi=p,Si=ci,_i=_u("forEach")?[].forEach:function(e){return wi(this,e,arguments.length>1?arguments[1]:void 0)},Ti=le;for(var Oi in Si){var Ri=Bi[Oi],ji=Ri&&Ri.prototype;if(ji&&ji.forEach!==_i)try{Ti(ji,"forEach",_i)}catch(e){ji.forEach=_i}}var $i={};$i[Mn("toStringTag")]="z";var zi="[object z]"===String($i),Ii=zi,Pi=k,Li=Mn("toStringTag"),Mi="Arguments"==Pi(function(){return arguments}()),Ni=Ii?Pi:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),Li))?n:Mi?Pi(t):"Object"==(r=Pi(t))&&"function"==typeof t.callee?"Arguments":r},Ui=Ni,qi=zi?{}.toString:function(){return"[object "+Ui(this)+"]"},Zi=zi,Gi=se.exports,Hi=qi;Zi||Gi(Object.prototype,"toString",Hi,{unsafe:!0});var Vi=p.Promise,Yi=se.exports,Ki=J.f,Xi=I,Wi=Mn("toStringTag"),Ji=function(e,t,n){e&&!Xi(e=n?e:e.prototype,Wi)&&Ki(e,Wi,{configurable:!0,value:t})},Qi={},eo=Qi,to=Mn("iterator"),no=Array.prototype,ro=Ni,uo=Qi,io=Mn("iterator"),oo=ee,ao=ee,lo=function(e){return void 0!==e&&(eo.Array===e||no[to]===e)},so=Dt,co=pi,fo=function(e){if(null!=e)return e[io]||e["@@iterator"]||uo[ro(e)]},po=function(e){var t=e.return;if(void 0!==t)return oo(t.call(e)).value},ho=function(e,t){this.stopped=e,this.result=t},Do=Mn("iterator"),go=!1;try{var vo=0,Ao={next:function(){return{done:!!vo++}},return:function(){go=!0}};Ao[Do]=function(){return this},Array.from(Ao,(function(){throw 2}))}catch(e){}var yo,Eo,mo,ko=at("document","documentElement"),bo=/(?:iphone|ipod|ipad).*applewebkit/i.test(mn),Fo="process"==k(p.process),Co=p,xo=D,wo=pi,Bo=ko,So=N,_o=bo,To=Fo,Oo=Co.location,Ro=Co.setImmediate,jo=Co.clearImmediate,$o=Co.process,zo=Co.MessageChannel,Io=Co.Dispatch,Po=0,Lo={},Mo="onreadystatechange",No=function(e){if(Lo.hasOwnProperty(e)){var t=Lo[e];delete Lo[e],t()}},Uo=function(e){return function(){No(e)}},qo=function(e){No(e.data)},Zo=function(e){Co.postMessage(e+"",Oo.protocol+"//"+Oo.host)};Ro&&jo||(Ro=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return Lo[++Po]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},yo(Po),Po},jo=function(e){delete Lo[e]},To?yo=function(e){$o.nextTick(Uo(e))}:Io&&Io.now?yo=function(e){Io.now(Uo(e))}:zo&&!_o?(mo=(Eo=new zo).port2,Eo.port1.onmessage=qo,yo=wo(mo.postMessage,mo,1)):Co.addEventListener&&"function"==typeof postMessage&&!Co.importScripts&&Oo&&"file:"!==Oo.protocol&&!xo(Zo)?(yo=Zo,Co.addEventListener("message",qo,!1)):yo=Mo in So("script")?function(e){Bo.appendChild(So("script")).onreadystatechange=function(){Bo.removeChild(this),No(e)}}:function(e){setTimeout(Uo(e),0)});var Go,Ho,Vo,Yo,Ko,Xo,Wo,Jo,Qo={set:Ro,clear:jo},ea=/web0s(?!.*chrome)/i.test(mn),ta=p,na=h.f,ra=Qo.set,ua=bo,ia=ea,oa=Fo,aa=ta.MutationObserver||ta.WebKitMutationObserver,la=ta.document,sa=ta.process,ca=ta.Promise,fa=na(ta,"queueMicrotask"),pa=fa&&fa.value;pa||(Go=function(){var e,t;for(oa&&(e=sa.domain)&&e.exit();Ho;){t=Ho.fn,Ho=Ho.next;try{t()}catch(e){throw Ho?Yo():Vo=void 0,e}}Vo=void 0,e&&e.enter()},ua||oa||ia||!aa||!la?ca&&ca.resolve?((Wo=ca.resolve(void 0)).constructor=ca,Jo=Wo.then,Yo=function(){Jo.call(Wo,Go)}):Yo=oa?function(){sa.nextTick(Go)}:function(){ra.call(ta,Go)}:(Ko=!0,Xo=la.createTextNode(""),new aa(Go).observe(Xo,{characterData:!0}),Yo=function(){Xo.data=Ko=!Ko}));var ha=pa||function(e){var t={fn:e,next:void 0};Vo&&(Vo.next=t),Ho||(Ho=t,Yo()),Vo=t},Da={},ga=zu,da=function(e){var t,n;this.promise=new e((function(e,r){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor");t=e,n=r})),this.resolve=ga(t),this.reject=ga(n)};Da.f=function(e){return new da(e)};var va,Aa,ya,Ea,ma=ee,ka=_,ba=Da,Fa=p,Ca="object"==typeof window,xa=nn,wa=p,Ba=at,Sa=Vi,_a=se.exports,Ta=function(e,t,n){for(var r in t)Yi(e,r,t[r],n);return e},Oa=wr,Ra=Ji,ja=Pr,$a=_,za=zu,Ia=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e},Pa=Ae,La=function(e,t,n){var r,u,i,o,a,l,s,c=n&&n.that,f=!(!n||!n.AS_ENTRIES),p=!(!n||!n.IS_ITERATOR),h=!(!n||!n.INTERRUPTED),D=co(t,c,1+f+h),g=function(e){return r&&po(r),new ho(!0,e)},d=function(e){return f?(ao(e),h?D(e[0],e[1],g):D(e[0],e[1])):h?D(e,g):D(e)};if(p)r=e;else{if("function"!=typeof(u=fo(e)))throw TypeError("Target is not iterable");if(lo(u)){for(i=0,o=so(e.length);o>i;i++)if((a=d(e[i]))&&a instanceof ho)return a;return new ho(!1)}r=u.call(e)}for(l=r.next;!(s=l.call(r)).done;){try{a=d(s.value)}catch(e){throw po(r),e}if("object"==typeof a&&a&&a instanceof ho)return a}return new ho(!1)},Ma=function(e,t){if(!t&&!go)return!1;var n=!1;try{var r={};r[Do]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(e){}return n},Na=Mu,Ua=Qo.set,qa=ha,Za=function(e,t){if(ma(e),ka(t)&&t.constructor===e)return t;var n=ba.f(e);return(0,n.resolve)(t),n.promise},Ga=function(e,t){var n=Fa.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))},Ha=Da,Va=function(e){try{return{error:!1,value:e()}}catch(e){return{error:!0,value:e}}},Ya=Ke,Ka=Yt,Xa=Ca,Wa=Fo,Ja=xn,Qa=Mn("species"),el="Promise",tl=Ya.get,nl=Ya.set,rl=Ya.getterFor(el),ul=Sa&&Sa.prototype,il=Sa,ol=ul,al=wa.TypeError,ll=wa.document,sl=wa.process,cl=Ha.f,fl=cl,pl=!!(ll&&ll.createEvent&&wa.dispatchEvent),hl="function"==typeof PromiseRejectionEvent,Dl="unhandledrejection",gl=!1,dl=Ka(el,(function(){var e=Pa(il)!==String(il);if(!e&&66===Ja)return!0;if(Ja>=51&&/native code/.test(il))return!1;var t=new il((function(e){e(1)})),n=function(e){e((function(){}),(function(){}))};return(t.constructor={})[Qa]=n,!(gl=t.then((function(){}))instanceof n)||!e&&Xa&&!hl})),vl=dl||!Ma((function(e){il.all(e).catch((function(){}))})),Al=function(e){var t;return!(!$a(e)||"function"!=typeof(t=e.then))&&t},yl=function(e,t){if(!e.notified){e.notified=!0;var n=e.reactions;qa((function(){for(var r=e.value,u=1==e.state,i=0;n.length>i;){var o,a,l,s=n[i++],c=u?s.ok:s.fail,f=s.resolve,p=s.reject,h=s.domain;try{c?(u||(2===e.rejection&&bl(e),e.rejection=1),!0===c?o=r:(h&&h.enter(),o=c(r),h&&(h.exit(),l=!0)),o===s.promise?p(al("Promise-chain cycle")):(a=Al(o))?a.call(o,f,p):f(o)):p(r)}catch(e){h&&!l&&h.exit(),p(e)}}e.reactions=[],e.notified=!1,t&&!e.rejection&&ml(e)}))}},El=function(e,t,n){var r,u;pl?((r=ll.createEvent("Event")).promise=t,r.reason=n,r.initEvent(e,!1,!0),wa.dispatchEvent(r)):r={promise:t,reason:n},!hl&&(u=wa["on"+e])?u(r):e===Dl&&Ga("Unhandled promise rejection",n)},ml=function(e){Ua.call(wa,(function(){var t,n=e.facade,r=e.value;if(kl(e)&&(t=Va((function(){Wa?sl.emit("unhandledRejection",r,n):El(Dl,n,r)})),e.rejection=Wa||kl(e)?2:1,t.error))throw t.value}))},kl=function(e){return 1!==e.rejection&&!e.parent},bl=function(e){Ua.call(wa,(function(){var t=e.facade;Wa?sl.emit("rejectionHandled",t):El("rejectionhandled",t,e.value)}))},Fl=function(e,t,n){return function(r){e(t,r,n)}},Cl=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,yl(e,!0))},xl=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw al("Promise can't be resolved itself");var r=Al(t);r?qa((function(){var n={done:!1};try{r.call(t,Fl(xl,n,e),Fl(Cl,n,e))}catch(t){Cl(n,t,e)}})):(e.value=t,e.state=1,yl(e,!1))}catch(t){Cl({done:!1},t,e)}}};if(dl&&(ol=(il=function(e){Ia(this,il,el),za(e),va.call(this);var t=tl(this);try{e(Fl(xl,t),Fl(Cl,t))}catch(e){Cl(t,e)}}).prototype,(va=function(e){nl(this,{type:el,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Ta(ol,{then:function(e,t){var n=rl(this),r=cl(Na(this,il));return r.ok="function"!=typeof e||e,r.fail="function"==typeof t&&t,r.domain=Wa?sl.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&yl(n,!1),r.promise},catch:function(e){return this.then(void 0,e)}}),Aa=function(){var e=new va,t=tl(e);this.promise=e,this.resolve=Fl(xl,t),this.reject=Fl(Cl,t)},Ha.f=cl=function(e){return e===il||e===ya?new Aa(e):fl(e)},"function"==typeof Sa&&ul!==Object.prototype)){Ea=ul.then,gl||(_a(ul,"then",(function(e,t){var n=this;return new il((function(e,t){Ea.call(n,e,t)})).then(e,t)}),{unsafe:!0}),_a(ul,"catch",ol.catch,{unsafe:!0}));try{delete ul.constructor}catch(e){}Oa&&Oa(ul,ol)}xa({global:!0,wrap:!0,forced:dl},{Promise:il}),Ra(il,el,!1),ja(el),ya=Ba(el),xa({target:el,stat:!0,forced:dl},{reject:function(e){var t=cl(this);return t.reject.call(void 0,e),t.promise}}),xa({target:el,stat:!0,forced:dl},{resolve:function(e){return Za(this,e)}}),xa({target:el,stat:!0,forced:vl},{all:function(e){var t=this,n=cl(t),r=n.resolve,u=n.reject,i=Va((function(){var n=za(t.resolve),i=[],o=0,a=1;La(e,(function(e){var l=o++,s=!1;i.push(void 0),a++,n.call(t,e).then((function(e){s||(s=!0,i[l]=e,--a||r(i))}),u)})),--a||r(i)}));return i.error&&u(i.value),n.promise},race:function(e){var t=this,n=cl(t),r=n.reject,u=Va((function(){var u=za(t.resolve);La(e,(function(e){u.call(t,e).then(n.resolve,r)}))}));return u.error&&r(u.value),n.promise}});var wl=O,Bl=J,Sl=E,_l=function(e,t,n){var r=wl(t);r in e?Bl.f(e,r,Sl(0,n)):e[r]=n},Tl=D,Ol=xn,Rl=Mn("species"),jl=function(e){return Ol>=51||!Tl((function(){var t=[];return(t.constructor={})[Rl]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},$l=nn,zl=_,Il=Di,Pl=At,Ll=Dt,Ml=S,Nl=_l,Ul=Mn,ql=jl("slice"),Zl=Ul("species"),Gl=[].slice,Hl=Math.max;$l({target:"Array",proto:!0,forced:!ql},{slice:function(e,t){var n,r,u,i=Ml(this),o=Ll(i.length),a=Pl(e,o),l=Pl(void 0===t?o:t,o);if(Il(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!Il(n.prototype)?zl(n)&&null===(n=n[Zl])&&(n=void 0):n=void 0,n===Array||void 0===n))return Gl.call(i,a,l);for(r=new(void 0===n?Array:n)(Hl(l-a,0)),u=0;a<l;a++,u++)a in i&&Nl(r,u,i[a]);return r.length=u,r}});var Vl,Yl=Bt,Kl=St,Xl=Object.keys||function(e){return Yl(e,Kl)},Wl=J,Jl=ee,Ql=Xl,es=g?Object.defineProperties:function(e,t){Jl(e);for(var n,r=Ql(t),u=r.length,i=0;u>i;)Wl.f(e,n=r[i++],t[n]);return e},ts=ee,ns=es,rs=St,us=je,is=ko,os=N,as=Re("IE_PROTO"),ls=function(){},ss=function(e){return"<script>"+e+"</"+"script>"},cs=function(){try{Vl=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;cs=Vl?function(e){e.write(ss("")),e.close();var t=e.parentWindow.Object;return e=null,t}(Vl):((t=os("iframe")).style.display="none",is.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(ss("document.F=Object")),e.close(),e.F);for(var n=rs.length;n--;)delete cs.prototype[rs[n]];return cs()};us[as]=!0;var fs=Object.create||function(e,t){var n;return null!==e?(ls.prototype=ts(e),n=new ls,ls.prototype=null,n[as]=e):n=cs(),void 0===t?n:ns(n,t)},ps=fs,hs=J,Ds=Mn("unscopables"),gs=Array.prototype;null==gs[Ds]&&hs.f(gs,Ds,{configurable:!0,value:ps(null)});var ds,vs,As,ys=function(e){gs[Ds][e]=!0},Es=!D((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),ms=I,ks=j,bs=Es,Fs=Re("IE_PROTO"),Cs=Object.prototype,xs=bs?Object.getPrototypeOf:function(e){return e=ks(e),ms(e,Fs)?e[Fs]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?Cs:null},ws=D,Bs=xs,Ss=le,_s=I,Ts=Mn("iterator"),Os=!1;[].keys&&("next"in(As=[].keys())?(vs=Bs(Bs(As)))!==Object.prototype&&(ds=vs):Os=!0),(null==ds||ws((function(){var e={};return ds[Ts].call(e)!==e})))&&(ds={}),_s(ds,Ts)||Ss(ds,Ts,(function(){return this}));var Rs={IteratorPrototype:ds,BUGGY_SAFARI_ITERATORS:Os},js=Rs.IteratorPrototype,$s=fs,zs=E,Is=Ji,Ps=Qi,Ls=function(){return this},Ms=nn,Ns=function(e,t,n){var r=t+" Iterator";return e.prototype=$s(js,{next:zs(1,n)}),Is(e,r,!1),Ps[r]=Ls,e},Us=xs,qs=wr,Zs=Ji,Gs=le,Hs=se.exports,Vs=Qi,Ys=Rs.IteratorPrototype,Ks=Rs.BUGGY_SAFARI_ITERATORS,Xs=Mn("iterator"),Ws="keys",Js="values",Qs="entries",ec=function(){return this},tc=function(e,t,n,r,u,i,o){Ns(n,t,r);var a,l,s,c=function(e){if(e===u&&g)return g;if(!Ks&&e in h)return h[e];switch(e){case Ws:case Js:case Qs:return function(){return new n(this,e)}}return function(){return new n(this)}},f=t+" Iterator",p=!1,h=e.prototype,D=h[Xs]||h["@@iterator"]||u&&h[u],g=!Ks&&D||c(u),d="Array"==t&&h.entries||D;if(d&&(a=Us(d.call(new e)),Ys!==Object.prototype&&a.next&&(Us(a)!==Ys&&(qs?qs(a,Ys):"function"!=typeof a[Xs]&&Gs(a,Xs,ec)),Zs(a,f,!0))),u==Js&&D&&D.name!==Js&&(p=!0,g=function(){return D.call(this)}),h[Xs]!==g&&Gs(h,Xs,g),Vs[t]=g,u)if(l={values:c(Js),keys:i?g:c(Ws),entries:c(Qs)},o)for(s in l)(Ks||p||!(s in h))&&Hs(h,s,l[s]);else Ms({target:t,proto:!0,forced:Ks||p},l);return l},nc=S,rc=ys,uc=Qi,ic=Ke,oc=tc,ac="Array Iterator",lc=ic.set,sc=ic.getterFor(ac),cc=oc(Array,"Array",(function(e,t){lc(this,{type:ac,target:nc(e),index:0,kind:t})}),(function(){var e=sc(this),t=e.target,n=e.kind,r=e.index++;return!t||r>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:t[r],done:!1}:{value:[r,t[r]],done:!1}}),"values");uc.Arguments=uc.Array,rc("keys"),rc("values"),rc("entries");var fc=rr.charAt,pc=Ke,hc=tc,Dc="String Iterator",gc=pc.set,dc=pc.getterFor(Dc);hc(String,"String",(function(e){gc(this,{type:Dc,string:String(e),index:0})}),(function(){var e,t=dc(this),n=t.string,r=t.index;return r>=n.length?{value:void 0,done:!0}:(e=fc(n,r),t.index+=e.length,{value:e,done:!1})}));var vc=p,Ac=ci,yc=cc,Ec=le,mc=Mn,kc=mc("iterator"),bc=mc("toStringTag"),Fc=yc.values;for(var Cc in Ac){var xc=vc[Cc],wc=xc&&xc.prototype;if(wc){if(wc[kc]!==Fc)try{Ec(wc,kc,Fc)}catch(e){wc[kc]=Fc}if(wc[bc]||Ec(wc,bc,Cc),Ac[Cc])for(var Bc in yc)if(wc[Bc]!==yc[Bc])try{Ec(wc,Bc,yc[Bc])}catch(e){wc[Bc]=yc[Bc]}}}var Sc=nn,_c=D,Tc=Di,Oc=_,Rc=j,jc=Dt,$c=_l,zc=Ai,Ic=jl,Pc=xn,Lc=Mn("isConcatSpreadable"),Mc=9007199254740991,Nc="Maximum allowed index exceeded",Uc=Pc>=51||!_c((function(){var e=[];return e[Lc]=!1,e.concat()[0]!==e})),qc=Ic("concat"),Zc=function(e){if(!Oc(e))return!1;var t=e[Lc];return void 0!==t?!!t:Tc(e)};Sc({target:"Array",proto:!0,forced:!Uc||!qc},{concat:function(e){var t,n,r,u,i,o=Rc(this),a=zc(o,0),l=0;for(t=-1,r=arguments.length;t<r;t++)if(Zc(i=-1===t?o:arguments[t])){if(l+(u=jc(i.length))>Mc)throw TypeError(Nc);for(n=0;n<u;n++,l++)n in i&&$c(a,l,i[n])}else{if(l>=Mc)throw TypeError(Nc);$c(a,l++,i)}return a.length=l,a}});var Gc=j,Hc=Xl;nn({target:"Object",stat:!0,forced:D((function(){Hc(1)}))},{keys:function(e){return Hc(Gc(e))}});var Vc=bt.includes,Yc=ys;nn({target:"Array",proto:!0},{includes:function(e){return Vc(this,e,arguments.length>1?arguments[1]:void 0)}}),Yc("includes");var Kc=Rr,Xc=Mn("match"),Wc=function(e){if(Kc(e))throw TypeError("The method doesn't accept regular expressions");return e},Jc=x;nn({target:"String",proto:!0,forced:!function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[Xc]=!1,"/./"[e](t)}catch(e){}}return!1}("includes")},{includes:function(e){return!!~String(Jc(this)).indexOf(Wc(e),arguments.length>1?arguments[1]:void 0)}});var Qc=x,ef=/"/g,tf=D,nf=function(e,t,n,r){var u=String(Qc(e)),i="<"+t;return""!==n&&(i+=" "+n+'="'+String(r).replace(ef,""")+'"'),i+">"+u+"</"+t+">"};nn({target:"String",proto:!0,forced:function(e){return tf((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}("link")},{link:function(e){return nf(this,"a","href",e)}});var rf=xi.map;nn({target:"Array",proto:!0,forced:!jl("map")},{map:function(e){return rf(this,e,arguments.length>1?arguments[1]:void 0)}});var uf=nn,of=At,af=ft,lf=Dt,sf=j,cf=Ai,ff=_l,pf=jl("splice"),hf=Math.max,Df=Math.min,gf=9007199254740991,df="Maximum allowed length exceeded";uf({target:"Array",proto:!0,forced:!pf},{splice:function(e,t){var n,r,u,i,o,a,l=sf(this),s=lf(l.length),c=of(e,s),f=arguments.length;if(0===f?n=r=0:1===f?(n=0,r=s-c):(n=f-2,r=Df(hf(af(t),0),s-c)),s+n-r>gf)throw TypeError(df);for(u=cf(l,r),i=0;i<r;i++)(o=c+i)in l&&ff(u,i,l[o]);if(u.length=r,n<r){for(i=c;i<s-r;i++)a=i+n,(o=i+r)in l?l[a]=l[o]:delete l[a];for(i=s;i>s-r+n;i--)delete l[i-1]}else if(n>r)for(i=s-r;i>c;i--)a=i+n-1,(o=i+r-1)in l?l[a]=l[o]:delete l[a];for(i=0;i<n;i++)l[i+c]=arguments[i+2];return l.length=s-r+n,u}});var vf={exports:{}};function Af(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}vf.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:Af,changeDefaults:function(e){vf.exports.defaults=e}};var yf=/[&<>"']/,Ef=/[&<>"']/g,mf=/[<>"']|&(?!#?\w+;)/,kf=/[<>"']|&(?!#?\w+;)/g,bf={"&":"&","<":"<",">":">",'"':""","'":"'"},Ff=function(e){return bf[e]};var Cf=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function xf(e){return e.replace(Cf,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}var wf=/(^|[^\[])\^/g;var Bf=/[^\w:]/g,Sf=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var _f={},Tf=/^[^:]+:\/*[^/]*$/,Of=/^([^:]+:)[\s\S]*$/,Rf=/^([^:]+:\/*[^/]*)[\s\S]*$/;function jf(e,t){_f[" "+e]||(Tf.test(e)?_f[" "+e]=e+"/":_f[" "+e]=$f(e,"/",!0));var n=-1===(e=_f[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(Of,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(Rf,"$1")+t:e+t}function $f(e,t,n){var r=e.length;if(0===r)return"";for(var u=0;u<r;){var i=e.charAt(r-u-1);if(i!==t||n){if(i===t||!n)break;u++}else u++}return e.substr(0,r-u)}var zf=function(e,t){if(t){if(yf.test(e))return e.replace(Ef,Ff)}else if(mf.test(e))return e.replace(kf,Ff);return e},If=xf,Pf=function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,r){return r=(r=r.source||r).replace(wf,"$1"),e=e.replace(t,r),n},getRegex:function(){return new RegExp(e,t)}};return n},Lf=function(e,t,n){if(e){var r;try{r=decodeURIComponent(xf(n)).replace(Bf,"").toLowerCase()}catch(e){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}t&&!Sf.test(n)&&(n=jf(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n},Mf={exec:function(){}},Nf=function(e){for(var t,n,r=1;r<arguments.length;r++)for(n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},Uf=function(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var r=!1,u=t;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"})).split(/ \|/),r=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},qf=$f,Zf=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,r=0,u=0;u<n;u++)if("\\"===e[u])u++;else if(e[u]===t[0])r++;else if(e[u]===t[1]&&--r<0)return u;return-1},Gf=function(e){e&&e.sanitize&&!e.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")},Hf=function(e,t){if(t<1)return"";for(var n="";t>1;)1&t&&(n+=e),t>>=1,e+=e;return n+e},Vf=vf.exports.defaults,Yf=qf,Kf=Uf,Xf=zf,Wf=Zf;function Jf(e,t,n){var r=t.href,u=t.title?Xf(t.title):null,i=e[1].replace(/\\([\[\]])/g,"$1");return"!"!==e[0].charAt(0)?{type:"link",raw:n,href:r,title:u,text:i}:{type:"image",raw:n,href:r,title:u,text:Xf(i)}}var Qf=function(){function e(n){t(this,e),this.options=n||Vf}return r(e,[{key:"space",value:function(e){var t=this.rules.block.newline.exec(e);if(t)return t[0].length>1?{type:"space",raw:t[0]}:{raw:"\n"}}},{key:"code",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Yf(n,"\n")}}}},{key:"fences",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var r=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);return null===t?e:o(t,1)[0].length>=r.length?e.slice(r.length):e})).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:r}}}},{key:"heading",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(/#$/.test(n)){var r=Yf(n,"#");this.options.pedantic?n=r.trim():r&&!/ $/.test(r)||(n=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n}}}},{key:"nptable",value:function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:Kf(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=Kf(n.cells[r],n.header.length);return n}}}},{key:"hr",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}},{key:"blockquote",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){var n=t[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}}},{key:"list",value:function(e){var t=this.rules.block.list.exec(e);if(t){var n,r,u,i,o,a,l,s,c,f=t[0],p=t[2],h=p.length>1,D={type:"list",raw:f,ordered:h,start:h?+p.slice(0,-1):"",loose:!1,items:[]},g=t[0].match(this.rules.block.item),d=!1,v=g.length;u=this.rules.block.listItemStart.exec(g[0]);for(var A=0;A<v;A++){if(f=n=g[A],this.options.pedantic||(c=n.match(new RegExp("\\n\\s*\\n {0,"+(u[0].length-1)+"}\\S")))&&(o=n.length-c.index+g.slice(A+1).join("\n").length,D.raw=D.raw.substring(0,D.raw.length-o),f=n=n.substring(0,c.index),v=A+1),A!==v-1){if(i=this.rules.block.listItemStart.exec(g[A+1]),this.options.pedantic?i[1].length>u[1].length:i[1].length>=u[0].length||i[1].length>3){g.splice(A,2,g[A]+(!this.options.pedantic&&i[1].length<u[0].length&&!g[A].match(/\n$/)?"":"\n")+g[A+1]),A--,v--;continue}(!this.options.pedantic||this.options.smartLists?i[2][i[2].length-1]!==p[p.length-1]:h===(1===i[2].length))&&(o=g.slice(A+1).join("\n").length,D.raw=D.raw.substring(0,D.raw.length-o),A=v-1),u=i}r=n.length,~(n=n.replace(/^ *([*+-]|\d+[.)]) ?/,"")).indexOf("\n ")&&(r-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+r+"}","gm"),"")),n=Yf(n,"\n"),A!==v-1&&(f+="\n"),a=d||/\n\n(?!\s*$)/.test(f),A!==v-1&&(d="\n\n"===f.slice(-2),a||(a=d)),a&&(D.loose=!0),this.options.gfm&&(s=void 0,(l=/^\[[ xX]\] /.test(n))&&(s=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,""))),D.items.push({type:"list_item",raw:f,task:l,checked:s,loose:a,text:n})}return D}}},{key:"html",value:function(e){var t=this.rules.block.html.exec(e);if(t)return{type:this.options.sanitize?"paragraph":"html",raw:t[0],pre:!this.options.sanitizer&&("pre"===t[1]||"script"===t[1]||"style"===t[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):Xf(t[0]):t[0]}}},{key:"def",value:function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{type:"def",tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}}},{key:"table",value:function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:"table",header:Kf(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=t[0];var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=Kf(n.cells[r].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}}},{key:"lheading",value:function(e){var t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1]}}},{key:"paragraph",value:function(e){var t=this.rules.block.paragraph.exec(e);if(t)return{type:"paragraph",raw:t[0],text:"\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1]}}},{key:"text",value:function(e){var t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0]}}},{key:"escape",value:function(e){var t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Xf(t[1])}}},{key:"tag",value:function(e,t,n){var r=this.rules.inline.tag.exec(e);if(r)return!t&&/^<a /i.test(r[0])?t=!0:t&&/^<\/a>/i.test(r[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:r[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):Xf(r[0]):r[0]}}},{key:"link",value:function(e){var t=this.rules.inline.link.exec(e);if(t){var n=t[2].trim();if(!this.options.pedantic&&/^</.test(n)){if(!/>$/.test(n))return;var r=Yf(n.slice(0,-1),"\\");if((n.length-r.length)%2==0)return}else{var u=Wf(t[2],"()");if(u>-1){var i=(0===t[0].indexOf("!")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,i).trim(),t[3]=""}}var o=t[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=t[3]?t[3].slice(1,-1):"";return o=o.trim(),/^</.test(o)&&(o=this.options.pedantic&&!/>$/.test(n)?o.slice(1):o.slice(1,-1)),Jf(t,{href:o?o.replace(this.rules.inline._escapes,"$1"):o,title:a?a.replace(this.rules.inline._escapes,"$1"):a},t[0])}}},{key:"reflink",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=(n[2]||n[1]).replace(/\s+/g," ");if(!(r=t[r.toLowerCase()])||!r.href){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return Jf(n,r,n[0])}}},{key:"emStrong",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrong.lDelim.exec(e);if(r&&(!r[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var u=r[1]||r[2]||"";if(!u||u&&(""===n||this.rules.inline.punctuation.exec(n))){var i,o,a=r[0].length-1,l=a,s=0,c="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+a);null!=(r=c.exec(t));)if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(o=i.length,r[3]||r[4])l+=o;else if(!((r[5]||r[6])&&a%3)||(a+o)%3){if(!((l-=o)>0)){if(l+s-o<=0&&!t.slice(c.lastIndex).match(c)&&(o=Math.min(o,o+l+s)),Math.min(a,o)%2)return{type:"em",raw:e.slice(0,a+r.index+o+1),text:e.slice(1,a+r.index+o)};if(Math.min(a,o)%2==0)return{type:"strong",raw:e.slice(0,a+r.index+o+1),text:e.slice(2,a+r.index+o-1)}}}else s+=o}}}},{key:"codespan",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),r=/[^ ]/.test(n),u=/^ /.test(n)&&/ $/.test(n);return r&&u&&(n=n.substring(1,n.length-1)),n=Xf(n,!0),{type:"codespan",raw:t[0],text:n}}}},{key:"br",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}},{key:"del",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2]}}},{key:"autolink",value:function(e,t){var n,r,u=this.rules.inline.autolink.exec(e);if(u)return r="@"===u[2]?"mailto:"+(n=Xf(this.options.mangle?t(u[1]):u[1])):n=Xf(u[1]),{type:"link",raw:u[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}},{key:"url",value:function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var r,u;if("@"===n[2])u="mailto:"+(r=Xf(this.options.mangle?t(n[0]):n[0]));else{var i;do{i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(i!==n[0]);r=Xf(n[0]),u="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:u,tokens:[{type:"text",raw:r,text:r}]}}}},{key:"inlineText",value:function(e,t,n){var r,u=this.rules.inline.text.exec(e);if(u)return r=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(u[0]):Xf(u[0]):u[0]:Xf(this.options.smartypants?n(u[0]):u[0]),{type:"text",raw:u[0],text:r}}}]),e}(),ep=Mf,tp=Pf,np=Nf,rp={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:ep,table:ep,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};rp.def=tp(rp.def).replace("label",rp._label).replace("title",rp._title).getRegex(),rp.bullet=/(?:[*+-]|\d{1,9}[.)])/,rp.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,rp.item=tp(rp.item,"gm").replace(/bull/g,rp.bullet).getRegex(),rp.listItemStart=tp(/^( *)(bull) */).replace("bull",rp.bullet).getRegex(),rp.list=tp(rp.list).replace(/bull/g,rp.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+rp.def.source+")").getRegex(),rp._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",rp._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/,rp.html=tp(rp.html,"i").replace("comment",rp._comment).replace("tag",rp._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),rp.paragraph=tp(rp._paragraph).replace("hr",rp.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",rp._tag).getRegex(),rp.blockquote=tp(rp.blockquote).replace("paragraph",rp.paragraph).getRegex(),rp.normal=np({},rp),rp.gfm=np({},rp.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),rp.gfm.nptable=tp(rp.gfm.nptable).replace("hr",rp.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",rp._tag).getRegex(),rp.gfm.table=tp(rp.gfm.table).replace("hr",rp.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",rp._tag).getRegex(),rp.pedantic=np({},rp.normal,{html:tp("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",rp._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:ep,paragraph:tp(rp.normal._paragraph).replace("hr",rp.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",rp.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var up={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:ep,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_]*?\*[^_]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^*]*?\_[^*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:ep,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/,_punctuation:"!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"};up.punctuation=tp(up.punctuation).replace(/punctuation/g,up._punctuation).getRegex(),up.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,up.escapedEmSt=/\\\*|\\_/g,up._comment=tp(rp._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),up.emStrong.lDelim=tp(up.emStrong.lDelim).replace(/punct/g,up._punctuation).getRegex(),up.emStrong.rDelimAst=tp(up.emStrong.rDelimAst,"g").replace(/punct/g,up._punctuation).getRegex(),up.emStrong.rDelimUnd=tp(up.emStrong.rDelimUnd,"g").replace(/punct/g,up._punctuation).getRegex(),up._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,up._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,up._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,up.autolink=tp(up.autolink).replace("scheme",up._scheme).replace("email",up._email).getRegex(),up._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,up.tag=tp(up.tag).replace("comment",up._comment).replace("attribute",up._attribute).getRegex(),up._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,up._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,up._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,up.link=tp(up.link).replace("label",up._label).replace("href",up._href).replace("title",up._title).getRegex(),up.reflink=tp(up.reflink).replace("label",up._label).getRegex(),up.reflinkSearch=tp(up.reflinkSearch,"g").replace("reflink",up.reflink).replace("nolink",up.nolink).getRegex(),up.normal=np({},up),up.pedantic=np({},up.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:tp(/^!?\[(label)\]\((.*?)\)/).replace("label",up._label).getRegex(),reflink:tp(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",up._label).getRegex()}),up.gfm=np({},up.normal,{escape:tp(up.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),up.gfm.url=tp(up.gfm.url,"i").replace("email",up.gfm._extended_email).getRegex(),up.breaks=np({},up.gfm,{br:tp(up.br).replace("{2,}","*").getRegex(),text:tp(up.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var ip={block:rp,inline:up},op=Qf,ap=vf.exports.defaults,lp=ip.block,sp=ip.inline,cp=Hf;function fp(e){return e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function pp(e){var t,n,r="",u=e.length;for(t=0;t<u;t++)n=e.charCodeAt(t),Math.random()>.5&&(n="x"+n.toString(16)),r+="&#"+n+";";return r}var hp=function(){function e(n){t(this,e),this.tokens=[],this.tokens.links=Object.create(null),this.options=n||ap,this.options.tokenizer=this.options.tokenizer||new op,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var r={block:lp.normal,inline:sp.normal};this.options.pedantic?(r.block=lp.pedantic,r.inline=sp.pedantic):this.options.gfm&&(r.block=lp.gfm,this.options.breaks?r.inline=sp.breaks:r.inline=sp.gfm),this.tokenizer.rules=r}return r(e,[{key:"lex",value:function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens}},{key:"blockTokens",value:function(e){var t,n,r,u,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];for(this.options.pedantic&&(e=e.replace(/^ +$/gm,""));e;)if(t=this.tokenizer.space(e))e=e.substring(t.raw.length),t.type&&i.push(t);else if(t=this.tokenizer.code(e))e=e.substring(t.raw.length),(u=i[i.length-1])&&"paragraph"===u.type?(u.raw+="\n"+t.raw,u.text+="\n"+t.text):i.push(t);else if(t=this.tokenizer.fences(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.heading(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.nptable(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.hr(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.blockquote(e))e=e.substring(t.raw.length),t.tokens=this.blockTokens(t.text,[],o),i.push(t);else if(t=this.tokenizer.list(e)){for(e=e.substring(t.raw.length),r=t.items.length,n=0;n<r;n++)t.items[n].tokens=this.blockTokens(t.items[n].text,[],!1);i.push(t)}else if(t=this.tokenizer.html(e))e=e.substring(t.raw.length),i.push(t);else if(o&&(t=this.tokenizer.def(e)))e=e.substring(t.raw.length),this.tokens.links[t.tag]||(this.tokens.links[t.tag]={href:t.href,title:t.title});else if(t=this.tokenizer.table(e))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.lheading(e))e=e.substring(t.raw.length),i.push(t);else if(o&&(t=this.tokenizer.paragraph(e)))e=e.substring(t.raw.length),i.push(t);else if(t=this.tokenizer.text(e))e=e.substring(t.raw.length),(u=i[i.length-1])&&"text"===u.type?(u.raw+="\n"+t.raw,u.text+="\n"+t.text):i.push(t);else if(e){var a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}throw new Error(a)}return i}},{key:"inline",value:function(e){var t,n,r,u,i,o,a=e.length;for(t=0;t<a;t++)switch((o=e[t]).type){case"paragraph":case"text":case"heading":o.tokens=[],this.inlineTokens(o.text,o.tokens);break;case"table":for(o.tokens={header:[],cells:[]},u=o.header.length,n=0;n<u;n++)o.tokens.header[n]=[],this.inlineTokens(o.header[n],o.tokens.header[n]);for(u=o.cells.length,n=0;n<u;n++)for(i=o.cells[n],o.tokens.cells[n]=[],r=0;r<i.length;r++)o.tokens.cells[n][r]=[],this.inlineTokens(i[r],o.tokens.cells[n][r]);break;case"blockquote":this.inline(o.tokens);break;case"list":for(u=o.items.length,n=0;n<u;n++)this.inline(o.items[n].tokens)}return e}},{key:"inlineTokens",value:function(e){var t,n,r,u,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=e;if(this.tokens.links){var c=Object.keys(this.tokens.links);if(c.length>0)for(;null!=(r=this.tokenizer.rules.inline.reflinkSearch.exec(s));)c.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,r.index)+"["+cp("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(r=this.tokenizer.rules.inline.blockSkip.exec(s));)s=s.slice(0,r.index)+"["+cp("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(r=this.tokenizer.rules.inline.escapedEmSt.exec(s));)s=s.slice(0,r.index)+"++"+s.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;e;)if(u||(i=""),u=!1,t=this.tokenizer.escape(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.tag(e,a,l)){e=e.substring(t.raw.length),a=t.inLink,l=t.inRawBlock;var f=o[o.length-1];f&&"text"===t.type&&"text"===f.type?(f.raw+=t.raw,f.text+=t.text):o.push(t)}else if(t=this.tokenizer.link(e))e=e.substring(t.raw.length),"link"===t.type&&(t.tokens=this.inlineTokens(t.text,[],!0,l)),o.push(t);else if(t=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(t.raw.length);var p=o[o.length-1];"link"===t.type?(t.tokens=this.inlineTokens(t.text,[],!0,l),o.push(t)):p&&"text"===t.type&&"text"===p.type?(p.raw+=t.raw,p.text+=t.text):o.push(t)}else if(t=this.tokenizer.emStrong(e,s,i))e=e.substring(t.raw.length),t.tokens=this.inlineTokens(t.text,[],a,l),o.push(t);else if(t=this.tokenizer.codespan(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.br(e))e=e.substring(t.raw.length),o.push(t);else if(t=this.tokenizer.del(e))e=e.substring(t.raw.length),t.tokens=this.inlineTokens(t.text,[],a,l),o.push(t);else if(t=this.tokenizer.autolink(e,pp))e=e.substring(t.raw.length),o.push(t);else if(a||!(t=this.tokenizer.url(e,pp))){if(t=this.tokenizer.inlineText(e,l,fp))e=e.substring(t.raw.length),"_"!==t.raw.slice(-1)&&(i=t.raw.slice(-1)),u=!0,(n=o[o.length-1])&&"text"===n.type?(n.raw+=t.raw,n.text+=t.text):o.push(t);else if(e){var h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}throw new Error(h)}}else e=e.substring(t.raw.length),o.push(t);return o}}],[{key:"rules",get:function(){return{block:lp,inline:sp}}},{key:"lex",value:function(t,n){return new e(n).lex(t)}},{key:"lexInline",value:function(t,n){return new e(n).inlineTokens(t)}}]),e}(),Dp=vf.exports.defaults,gp=Lf,dp=zf,vp=function(){function e(n){t(this,e),this.options=n||Dp}return r(e,[{key:"code",value:function(e,t,n){var r=(t||"").match(/\S*/)[0];if(this.options.highlight){var u=this.options.highlight(e,r);null!=u&&u!==e&&(n=!0,e=u)}return e=e.replace(/\n$/,"")+"\n",r?'<pre><code class="'+this.options.langPrefix+dp(r,!0)+'">'+(n?e:dp(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:dp(e,!0))+"</code></pre>\n"}},{key:"blockquote",value:function(e){return"<blockquote>\n"+e+"</blockquote>\n"}},{key:"html",value:function(e){return e}},{key:"heading",value:function(e,t,n,r){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+r.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"}},{key:"hr",value:function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}},{key:"list",value:function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"}},{key:"listitem",value:function(e){return"<li>"+e+"</li>\n"}},{key:"checkbox",value:function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}},{key:"paragraph",value:function(e){return"<p>"+e+"</p>\n"}},{key:"table",value:function(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}},{key:"tablerow",value:function(e){return"<tr>\n"+e+"</tr>\n"}},{key:"tablecell",value:function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"}},{key:"strong",value:function(e){return"<strong>"+e+"</strong>"}},{key:"em",value:function(e){return"<em>"+e+"</em>"}},{key:"codespan",value:function(e){return"<code>"+e+"</code>"}},{key:"br",value:function(){return this.options.xhtml?"<br/>":"<br>"}},{key:"del",value:function(e){return"<del>"+e+"</del>"}},{key:"link",value:function(e,t,n){if(null===(e=gp(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<a href="'+dp(e)+'"';return t&&(r+=' title="'+t+'"'),r+=">"+n+"</a>"}},{key:"image",value:function(e,t,n){if(null===(e=gp(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<img src="'+e+'" alt="'+n+'"';return t&&(r+=' title="'+t+'"'),r+=this.options.xhtml?"/>":">"}},{key:"text",value:function(e){return e}}]),e}(),Ap=function(){function e(){t(this,e)}return r(e,[{key:"strong",value:function(e){return e}},{key:"em",value:function(e){return e}},{key:"codespan",value:function(e){return e}},{key:"del",value:function(e){return e}},{key:"html",value:function(e){return e}},{key:"text",value:function(e){return e}},{key:"link",value:function(e,t,n){return""+n}},{key:"image",value:function(e,t,n){return""+n}},{key:"br",value:function(){return""}}]),e}(),yp=function(){function e(){t(this,e),this.seen={}}return r(e,[{key:"serialize",value:function(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}},{key:"getNextSafeSlug",value:function(e,t){var n=e,r=0;if(this.seen.hasOwnProperty(n)){r=this.seen[e];do{n=e+"-"+ ++r}while(this.seen.hasOwnProperty(n))}return t||(this.seen[e]=r,this.seen[n]=0),n}},{key:"slug",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.serialize(e);return this.getNextSafeSlug(n,t.dryrun)}}]),e}(),Ep=vp,mp=Ap,kp=yp,bp=vf.exports.defaults,Fp=If,Cp=hp,xp=function(){function e(n){t(this,e),this.options=n||bp,this.options.renderer=this.options.renderer||new Ep,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new mp,this.slugger=new kp}return r(e,[{key:"parse",value:function(e){var t,n,r,u,i,o,a,l,s,c,f,p,h,D,g,d,v,A,y=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],E="",m=e.length;for(t=0;t<m;t++)switch((c=e[t]).type){case"space":continue;case"hr":E+=this.renderer.hr();continue;case"heading":E+=this.renderer.heading(this.parseInline(c.tokens),c.depth,Fp(this.parseInline(c.tokens,this.textRenderer)),this.slugger);continue;case"code":E+=this.renderer.code(c.text,c.lang,c.escaped);continue;case"table":for(l="",a="",u=c.header.length,n=0;n<u;n++)a+=this.renderer.tablecell(this.parseInline(c.tokens.header[n]),{header:!0,align:c.align[n]});for(l+=this.renderer.tablerow(a),s="",u=c.cells.length,n=0;n<u;n++){for(a="",i=(o=c.tokens.cells[n]).length,r=0;r<i;r++)a+=this.renderer.tablecell(this.parseInline(o[r]),{header:!1,align:c.align[r]});s+=this.renderer.tablerow(a)}E+=this.renderer.table(l,s);continue;case"blockquote":s=this.parse(c.tokens),E+=this.renderer.blockquote(s);continue;case"list":for(f=c.ordered,p=c.start,h=c.loose,u=c.items.length,s="",n=0;n<u;n++)d=(g=c.items[n]).checked,v=g.task,D="",g.task&&(A=this.renderer.checkbox(d),h?g.tokens.length>0&&"text"===g.tokens[0].type?(g.tokens[0].text=A+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=A+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:A}):D+=A),D+=this.parse(g.tokens,h),s+=this.renderer.listitem(D,v,d);E+=this.renderer.list(s,f,p);continue;case"html":E+=this.renderer.html(c.text);continue;case"paragraph":E+=this.renderer.paragraph(this.parseInline(c.tokens));continue;case"text":for(s=c.tokens?this.parseInline(c.tokens):c.text;t+1<m&&"text"===e[t+1].type;)s+="\n"+((c=e[++t]).tokens?this.parseInline(c.tokens):c.text);E+=y?this.renderer.paragraph(s):s;continue;default:var k='Token with "'+c.type+'" type was not found.';if(this.options.silent)return void console.error(k);throw new Error(k)}return E}},{key:"parseInline",value:function(e,t){t=t||this.renderer;var n,r,u="",i=e.length;for(n=0;n<i;n++)switch((r=e[n]).type){case"escape":u+=t.text(r.text);break;case"html":u+=t.html(r.text);break;case"link":u+=t.link(r.href,r.title,this.parseInline(r.tokens,t));break;case"image":u+=t.image(r.href,r.title,r.text);break;case"strong":u+=t.strong(this.parseInline(r.tokens,t));break;case"em":u+=t.em(this.parseInline(r.tokens,t));break;case"codespan":u+=t.codespan(r.text);break;case"br":u+=t.br();break;case"del":u+=t.del(this.parseInline(r.tokens,t));break;case"text":u+=t.text(r.text);break;default:var o='Token with "'+r.type+'" type was not found.';if(this.options.silent)return void console.error(o);throw new Error(o)}return u}}],[{key:"parse",value:function(t,n){return new e(n).parse(t)}},{key:"parseInline",value:function(t,n){return new e(n).parseInline(t)}}]),e}(),wp=Qf,Bp=vp,Sp=Ap,_p=yp,Tp=Nf,Op=Gf,Rp=zf,jp=vf.exports.getDefaults,$p=vf.exports.changeDefaults,zp=vf.exports.defaults;function Ip(e,t,n){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if("function"==typeof t&&(n=t,t=null),t=Tp({},Ip.defaults,t||{}),Op(t),n){var r,u=t.highlight;try{r=Cp.lex(e,t)}catch(e){return n(e)}var i=function(e){var i;if(!e)try{i=xp.parse(r,t)}catch(t){e=t}return t.highlight=u,e?n(e):n(null,i)};if(!u||u.length<3)return i();if(delete t.highlight,!r.length)return i();var o=0;return Ip.walkTokens(r,(function(e){"code"===e.type&&(o++,setTimeout((function(){u(e.text,e.lang,(function(t,n){if(t)return i(t);null!=n&&n!==e.text&&(e.text=n,e.escaped=!0),0===--o&&i()}))}),0))})),void(0===o&&i())}try{var a=Cp.lex(e,t);return t.walkTokens&&Ip.walkTokens(a,t.walkTokens),xp.parse(a,t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+Rp(e.message+"",!0)+"</pre>";throw e}}Ip.options=Ip.setOptions=function(e){return Tp(Ip.defaults,e),$p(Ip.defaults),Ip},Ip.getDefaults=jp,Ip.defaults=zp,Ip.use=function(e){var t=Tp({},e);if(e.renderer&&function(){var n=Ip.defaults.renderer||new Bp,r=function(t){var r=n[t];n[t]=function(){for(var u=arguments.length,i=new Array(u),o=0;o<u;o++)i[o]=arguments[o];var a=e.renderer[t].apply(n,i);return!1===a&&(a=r.apply(n,i)),a}};for(var u in e.renderer)r(u);t.renderer=n}(),e.tokenizer&&function(){var n=Ip.defaults.tokenizer||new wp,r=function(t){var r=n[t];n[t]=function(){for(var u=arguments.length,i=new Array(u),o=0;o<u;o++)i[o]=arguments[o];var a=e.tokenizer[t].apply(n,i);return!1===a&&(a=r.apply(n,i)),a}};for(var u in e.tokenizer)r(u);t.tokenizer=n}(),e.walkTokens){var n=Ip.defaults.walkTokens;t.walkTokens=function(t){e.walkTokens(t),n&&n(t)}}Ip.setOptions(t)},Ip.walkTokens=function(e,t){var n,r=s(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;switch(t(u),u.type){case"table":var i,o=s(u.tokens.header);try{for(o.s();!(i=o.n()).done;){var a=i.value;Ip.walkTokens(a,t)}}catch(e){o.e(e)}finally{o.f()}var l,c=s(u.tokens.cells);try{for(c.s();!(l=c.n()).done;){var f,p=s(l.value);try{for(p.s();!(f=p.n()).done;){var h=f.value;Ip.walkTokens(h,t)}}catch(e){p.e(e)}finally{p.f()}}}catch(e){c.e(e)}finally{c.f()}break;case"list":Ip.walkTokens(u.items,t);break;default:u.tokens&&Ip.walkTokens(u.tokens,t)}}}catch(e){r.e(e)}finally{r.f()}},Ip.parseInline=function(e,t){if(null==e)throw new Error("marked.parseInline(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");t=Tp({},Ip.defaults,t||{}),Op(t);try{var n=Cp.lexInline(e,t);return t.walkTokens&&Ip.walkTokens(n,t.walkTokens),xp.parseInline(n,t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+Rp(e.message+"",!0)+"</pre>";throw e}},Ip.Parser=xp,Ip.parser=xp.parse,Ip.Renderer=Bp,Ip.TextRenderer=Sp,Ip.Lexer=Cp,Ip.lexer=Cp.lex,Ip.Tokenizer=wp,Ip.Slugger=_p,Ip.parse=Ip;var Pp=Ip,Lp="__SCRIPT_END__",Mp=/\[([\s\d,|-]*)\]/,Np={"&":"&","<":"<",">":">",'"':""","'":"'"};return function(){var t;function n(e){var t=(e.querySelector("[data-template]")||e.querySelector("script")||e).textContent,n=(t=t.replace(new RegExp(Lp,"g"),"<\/script>")).match(/^\n?(\s*)/)[1].length,r=t.match(/^\n?(\t*)/)[1].length;return r>0?t=t.replace(new RegExp("\\n?\\t{"+r+"}","g"),"\n"):n>1&&(t=t.replace(new RegExp("\\n? {"+n+"}","g"),"\n")),t}function r(e){for(var t=e.attributes,n=[],r=0,u=t.length;r<u;r++){var i=t[r].name,o=t[r].value;/data\-(markdown|separator|vertical|notes)/gi.test(i)||(o?n.push(i+'="'+o+'"'):n.push(i))}return n.join(" ")}function o(e){return(e=e||{}).separator=e.separator||"\r?\n---\r?\n",e.notesSeparator=e.notesSeparator||"notes?:",e.attributes=e.attributes||"",e}function a(e,t){t=o(t);var n=e.split(new RegExp(t.notesSeparator,"mgi"));return 2===n.length&&(e=n[0]+'<aside class="notes">'+Pp(n[1].trim())+"</aside>"),'<script type="text/template">'+(e=e.replace(/<\/script>/g,Lp))+"<\/script>"}function l(e,t){t=o(t);for(var n,r,u,i=new RegExp(t.separator+(t.verticalSeparator?"|"+t.verticalSeparator:""),"mg"),l=new RegExp(t.separator),s=0,c=!0,f=[];n=i.exec(e);)!(r=l.test(n[0]))&&c&&f.push([]),u=e.substring(s,n.index),r&&c?f.push(u):f[f.length-1].push(u),s=i.lastIndex,c=r;(c?f:f[f.length-1]).push(e.substring(s));for(var p="",h=0,D=f.length;h<D;h++)f[h]instanceof Array?(p+="<section "+t.attributes+">",f[h].forEach((function(e){p+="<section data-markdown>"+a(e,t)+"</section>"})),p+="</section>"):p+="<section "+t.attributes+" data-markdown>"+a(f[h],t)+"</section>";return p}function s(e){return new Promise((function(t){var u=[];[].slice.call(e.querySelectorAll("section[data-markdown]:not([data-markdown-parsed])")).forEach((function(e,t){e.getAttribute("data-markdown").length?u.push(function(e){return new Promise((function(t,n){var r=new XMLHttpRequest,u=e.getAttribute("data-markdown"),i=e.getAttribute("data-charset");null!=i&&""!=i&&r.overrideMimeType("text/html; charset="+i),r.onreadystatechange=function(e,r){4===r.readyState&&(r.status>=200&&r.status<300||0===r.status?t(r,u):n(r,u))}.bind(this,e,r),r.open("GET",u,!0);try{r.send()}catch(e){console.warn("Failed to get the Markdown file "+u+". Make sure that the presentation and the file are served by a HTTP server and the file can be found there. "+e),t(r,u)}}))}(e).then((function(t,n){e.outerHTML=l(t.responseText,{separator:e.getAttribute("data-separator"),verticalSeparator:e.getAttribute("data-separator-vertical"),notesSeparator:e.getAttribute("data-separator-notes"),attributes:r(e)})}),(function(t,n){e.outerHTML='<section data-state="alert">ERROR: The attempt to fetch '+n+" failed with HTTP status "+t.status+".Check your browser's JavaScript console for more details.<p>Remember that you need to serve the presentation HTML from a HTTP server.</p></section>"}))):e.outerHTML=l(n(e),{separator:e.getAttribute("data-separator"),verticalSeparator:e.getAttribute("data-separator-vertical"),notesSeparator:e.getAttribute("data-separator-notes"),attributes:r(e)})})),Promise.all(u).then(t)}))}function c(e,t,n){var r,u,i=new RegExp(n,"mg"),o=new RegExp('([^"= ]+?)="([^"]+?)"|(data-[^"= ]+?)(?=[" ])',"mg"),a=e.nodeValue;if(r=i.exec(a)){var l=r[1];for(a=a.substring(0,r.index)+a.substring(i.lastIndex),e.nodeValue=a;u=o.exec(l);)u[2]?t.setAttribute(u[1],u[2]):t.setAttribute(u[3],"");return!0}return!1}function f(e,t,n,r,u){if(null!=t&&null!=t.childNodes&&t.childNodes.length>0)for(var i=t,o=0;o<t.childNodes.length;o++){var a=t.childNodes[o];if(o>0)for(var l=o-1;l>=0;){var s=t.childNodes[l];if("function"==typeof s.setAttribute&&"BR"!=s.tagName){i=s;break}l-=1}var p=e;"section"==a.nodeName&&(p=a,i=a),"function"!=typeof a.setAttribute&&a.nodeType!=Node.COMMENT_NODE||f(p,a,i,r,u)}t.nodeType==Node.COMMENT_NODE&&0==c(t,n,r)&&c(t,e,u)}function p(){var e=t.getRevealElement().querySelectorAll("[data-markdown]:not([data-markdown-parsed])");return[].slice.call(e).forEach((function(e){e.setAttribute("data-markdown-parsed",!0);var t=e.querySelector("aside.notes"),r=n(e);e.innerHTML=Pp(r),f(e,e,null,e.getAttribute("data-element-attributes")||e.parentNode.getAttribute("data-element-attributes")||"\\.element\\s*?(.+?)$",e.getAttribute("data-attributes")||e.parentNode.getAttribute("data-attributes")||"\\.slide:\\s*?(\\S.+?)$"),t&&e.appendChild(t)})),Promise.resolve()}return{id:"markdown",init:function(n){var r=(t=n).getConfig().markdown||{},o=r.renderer,a=r.animateLists,l=i(r,["renderer","animateLists"]);return o||((o=new Pp.Renderer).code=function(e,t){var n="";return Mp.test(t)&&(n=t.match(Mp)[1].trim(),n='data-line-numbers="'.concat(n,'"'),t=t.replace(Mp,"").trim()),e=e.replace(/([&<>'"])/g,(function(e){return Np[e]})),"<pre><code ".concat(n,' class="').concat(t,'">').concat(e,"</code></pre>")}),!0===a&&(o.listitem=function(e){return'<li class="fragment">'.concat(e,"</li>")}),Pp.setOptions(function(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?e(Object(r),!0).forEach((function(e){u(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({renderer:o},l)),s(t.getRevealElement()).then(p)},processSlides:s,convertSlides:p,slidify:l,marked:Pp}}})); diff --git a/public/site_libs/revealjs/plugin/markdown/plugin.js b/public/site_libs/revealjs/plugin/markdown/plugin.js new file mode 100755 index 0000000..06bae1b --- /dev/null +++ b/public/site_libs/revealjs/plugin/markdown/plugin.js @@ -0,0 +1,475 @@ +/*! + * The reveal.js markdown plugin. Handles parsing of + * markdown inside of presentations as well as loading + * of external markdown documents. + */ + +import marked from 'marked' + +const DEFAULT_SLIDE_SEPARATOR = '\r?\n---\r?\n', + DEFAULT_NOTES_SEPARATOR = 'notes?:', + DEFAULT_ELEMENT_ATTRIBUTES_SEPARATOR = '\\\.element\\\s*?(.+?)$', + DEFAULT_SLIDE_ATTRIBUTES_SEPARATOR = '\\\.slide:\\\s*?(\\\S.+?)$'; + +const SCRIPT_END_PLACEHOLDER = '__SCRIPT_END__'; + +const CODE_LINE_NUMBER_REGEX = /\[([\s\d,|-]*)\]/; + +const HTML_ESCAPE_MAP = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' +}; + +const Plugin = () => { + + // The reveal.js instance this plugin is attached to + let deck; + + /** + * Retrieves the markdown contents of a slide section + * element. Normalizes leading tabs/whitespace. + */ + function getMarkdownFromSlide( section ) { + + // look for a <script> or <textarea data-template> wrapper + var template = section.querySelector( '[data-template]' ) || section.querySelector( 'script' ); + + // strip leading whitespace so it isn't evaluated as code + var text = ( template || section ).textContent; + + // restore script end tags + text = text.replace( new RegExp( SCRIPT_END_PLACEHOLDER, 'g' ), '</script>' ); + + var leadingWs = text.match( /^\n?(\s*)/ )[1].length, + leadingTabs = text.match( /^\n?(\t*)/ )[1].length; + + if( leadingTabs > 0 ) { + text = text.replace( new RegExp('\\n?\\t{' + leadingTabs + '}','g'), '\n' ); + } + else if( leadingWs > 1 ) { + text = text.replace( new RegExp('\\n? {' + leadingWs + '}', 'g'), '\n' ); + } + + return text; + + } + + /** + * Given a markdown slide section element, this will + * return all arguments that aren't related to markdown + * parsing. Used to forward any other user-defined arguments + * to the output markdown slide. + */ + function getForwardedAttributes( section ) { + + var attributes = section.attributes; + var result = []; + + for( var i = 0, len = attributes.length; i < len; i++ ) { + var name = attributes[i].name, + value = attributes[i].value; + + // disregard attributes that are used for markdown loading/parsing + if( /data\-(markdown|separator|vertical|notes)/gi.test( name ) ) continue; + + if( value ) { + result.push( name + '="' + value + '"' ); + } + else { + result.push( name ); + } + } + + return result.join( ' ' ); + + } + + /** + * Inspects the given options and fills out default + * values for what's not defined. + */ + function getSlidifyOptions( options ) { + + options = options || {}; + options.separator = options.separator || DEFAULT_SLIDE_SEPARATOR; + options.notesSeparator = options.notesSeparator || DEFAULT_NOTES_SEPARATOR; + options.attributes = options.attributes || ''; + + return options; + + } + + /** + * Helper function for constructing a markdown slide. + */ + function createMarkdownSlide( content, options ) { + + options = getSlidifyOptions( options ); + + var notesMatch = content.split( new RegExp( options.notesSeparator, 'mgi' ) ); + + if( notesMatch.length === 2 ) { + content = notesMatch[0] + '<aside class="notes">' + marked(notesMatch[1].trim()) + '</aside>'; + } + + // prevent script end tags in the content from interfering + // with parsing + content = content.replace( /<\/script>/g, SCRIPT_END_PLACEHOLDER ); + + return '<script type="text/template">' + content + '</script>'; + + } + + /** + * Parses a data string into multiple slides based + * on the passed in separator arguments. + */ + function slidify( markdown, options ) { + + options = getSlidifyOptions( options ); + + var separatorRegex = new RegExp( options.separator + ( options.verticalSeparator ? '|' + options.verticalSeparator : '' ), 'mg' ), + horizontalSeparatorRegex = new RegExp( options.separator ); + + var matches, + lastIndex = 0, + isHorizontal, + wasHorizontal = true, + content, + sectionStack = []; + + // iterate until all blocks between separators are stacked up + while( matches = separatorRegex.exec( markdown ) ) { + var notes = null; + + // determine direction (horizontal by default) + isHorizontal = horizontalSeparatorRegex.test( matches[0] ); + + if( !isHorizontal && wasHorizontal ) { + // create vertical stack + sectionStack.push( [] ); + } + + // pluck slide content from markdown input + content = markdown.substring( lastIndex, matches.index ); + + if( isHorizontal && wasHorizontal ) { + // add to horizontal stack + sectionStack.push( content ); + } + else { + // add to vertical stack + sectionStack[sectionStack.length-1].push( content ); + } + + lastIndex = separatorRegex.lastIndex; + wasHorizontal = isHorizontal; + } + + // add the remaining slide + ( wasHorizontal ? sectionStack : sectionStack[sectionStack.length-1] ).push( markdown.substring( lastIndex ) ); + + var markdownSections = ''; + + // flatten the hierarchical stack, and insert <section data-markdown> tags + for( var i = 0, len = sectionStack.length; i < len; i++ ) { + // vertical + if( sectionStack[i] instanceof Array ) { + markdownSections += '<section '+ options.attributes +'>'; + + sectionStack[i].forEach( function( child ) { + markdownSections += '<section data-markdown>' + createMarkdownSlide( child, options ) + '</section>'; + } ); + + markdownSections += '</section>'; + } + else { + markdownSections += '<section '+ options.attributes +' data-markdown>' + createMarkdownSlide( sectionStack[i], options ) + '</section>'; + } + } + + return markdownSections; + + } + + /** + * Parses any current data-markdown slides, splits + * multi-slide markdown into separate sections and + * handles loading of external markdown. + */ + function processSlides( scope ) { + + return new Promise( function( resolve ) { + + var externalPromises = []; + + [].slice.call( scope.querySelectorAll( 'section[data-markdown]:not([data-markdown-parsed])') ).forEach( function( section, i ) { + + if( section.getAttribute( 'data-markdown' ).length ) { + + externalPromises.push( loadExternalMarkdown( section ).then( + + // Finished loading external file + function( xhr, url ) { + section.outerHTML = slidify( xhr.responseText, { + separator: section.getAttribute( 'data-separator' ), + verticalSeparator: section.getAttribute( 'data-separator-vertical' ), + notesSeparator: section.getAttribute( 'data-separator-notes' ), + attributes: getForwardedAttributes( section ) + }); + }, + + // Failed to load markdown + function( xhr, url ) { + section.outerHTML = '<section data-state="alert">' + + 'ERROR: The attempt to fetch ' + url + ' failed with HTTP status ' + xhr.status + '.' + + 'Check your browser\'s JavaScript console for more details.' + + '<p>Remember that you need to serve the presentation HTML from a HTTP server.</p>' + + '</section>'; + } + + ) ); + + } + else { + + section.outerHTML = slidify( getMarkdownFromSlide( section ), { + separator: section.getAttribute( 'data-separator' ), + verticalSeparator: section.getAttribute( 'data-separator-vertical' ), + notesSeparator: section.getAttribute( 'data-separator-notes' ), + attributes: getForwardedAttributes( section ) + }); + + } + + }); + + Promise.all( externalPromises ).then( resolve ); + + } ); + + } + + function loadExternalMarkdown( section ) { + + return new Promise( function( resolve, reject ) { + + var xhr = new XMLHttpRequest(), + url = section.getAttribute( 'data-markdown' ); + + var datacharset = section.getAttribute( 'data-charset' ); + + // see https://developer.mozilla.org/en-US/docs/Web/API/element.getAttribute#Notes + if( datacharset != null && datacharset != '' ) { + xhr.overrideMimeType( 'text/html; charset=' + datacharset ); + } + + xhr.onreadystatechange = function( section, xhr ) { + if( xhr.readyState === 4 ) { + // file protocol yields status code 0 (useful for local debug, mobile applications etc.) + if ( ( xhr.status >= 200 && xhr.status < 300 ) || xhr.status === 0 ) { + + resolve( xhr, url ); + + } + else { + + reject( xhr, url ); + + } + } + }.bind( this, section, xhr ); + + xhr.open( 'GET', url, true ); + + try { + xhr.send(); + } + catch ( e ) { + console.warn( 'Failed to get the Markdown file ' + url + '. Make sure that the presentation and the file are served by a HTTP server and the file can be found there. ' + e ); + resolve( xhr, url ); + } + + } ); + + } + + /** + * Check if a node value has the attributes pattern. + * If yes, extract it and add that value as one or several attributes + * to the target element. + * + * You need Cache Killer on Chrome to see the effect on any FOM transformation + * directly on refresh (F5) + * http://stackoverflow.com/questions/5690269/disabling-chrome-cache-for-website-development/7000899#answer-11786277 + */ + function addAttributeInElement( node, elementTarget, separator ) { + + var mardownClassesInElementsRegex = new RegExp( separator, 'mg' ); + var mardownClassRegex = new RegExp( "([^\"= ]+?)=\"([^\"]+?)\"|(data-[^\"= ]+?)(?=[\" ])", 'mg' ); + var nodeValue = node.nodeValue; + var matches, + matchesClass; + if( matches = mardownClassesInElementsRegex.exec( nodeValue ) ) { + + var classes = matches[1]; + nodeValue = nodeValue.substring( 0, matches.index ) + nodeValue.substring( mardownClassesInElementsRegex.lastIndex ); + node.nodeValue = nodeValue; + while( matchesClass = mardownClassRegex.exec( classes ) ) { + if( matchesClass[2] ) { + elementTarget.setAttribute( matchesClass[1], matchesClass[2] ); + } else { + elementTarget.setAttribute( matchesClass[3], "" ); + } + } + return true; + } + return false; + } + + /** + * Add attributes to the parent element of a text node, + * or the element of an attribute node. + */ + function addAttributes( section, element, previousElement, separatorElementAttributes, separatorSectionAttributes ) { + + if ( element != null && element.childNodes != undefined && element.childNodes.length > 0 ) { + var previousParentElement = element; + for( var i = 0; i < element.childNodes.length; i++ ) { + var childElement = element.childNodes[i]; + if ( i > 0 ) { + var j = i - 1; + while ( j >= 0 ) { + var aPreviousChildElement = element.childNodes[j]; + if ( typeof aPreviousChildElement.setAttribute == 'function' && aPreviousChildElement.tagName != "BR" ) { + previousParentElement = aPreviousChildElement; + break; + } + j = j - 1; + } + } + var parentSection = section; + if( childElement.nodeName == "section" ) { + parentSection = childElement ; + previousParentElement = childElement ; + } + if ( typeof childElement.setAttribute == 'function' || childElement.nodeType == Node.COMMENT_NODE ) { + addAttributes( parentSection, childElement, previousParentElement, separatorElementAttributes, separatorSectionAttributes ); + } + } + } + + if ( element.nodeType == Node.COMMENT_NODE ) { + if ( addAttributeInElement( element, previousElement, separatorElementAttributes ) == false ) { + addAttributeInElement( element, section, separatorSectionAttributes ); + } + } + } + + /** + * Converts any current data-markdown slides in the + * DOM to HTML. + */ + function convertSlides() { + + var sections = deck.getRevealElement().querySelectorAll( '[data-markdown]:not([data-markdown-parsed])'); + + [].slice.call( sections ).forEach( function( section ) { + + section.setAttribute( 'data-markdown-parsed', true ) + + var notes = section.querySelector( 'aside.notes' ); + var markdown = getMarkdownFromSlide( section ); + + section.innerHTML = marked( markdown ); + addAttributes( section, section, null, section.getAttribute( 'data-element-attributes' ) || + section.parentNode.getAttribute( 'data-element-attributes' ) || + DEFAULT_ELEMENT_ATTRIBUTES_SEPARATOR, + section.getAttribute( 'data-attributes' ) || + section.parentNode.getAttribute( 'data-attributes' ) || + DEFAULT_SLIDE_ATTRIBUTES_SEPARATOR); + + // If there were notes, we need to re-add them after + // having overwritten the section's HTML + if( notes ) { + section.appendChild( notes ); + } + + } ); + + return Promise.resolve(); + + } + + function escapeForHTML( input ) { + + return input.replace( /([&<>'"])/g, char => HTML_ESCAPE_MAP[char] ); + + } + + return { + id: 'markdown', + + /** + * Starts processing and converting Markdown within the + * current reveal.js deck. + */ + init: function( reveal ) { + + deck = reveal; + + let { renderer, animateLists, ...markedOptions } = deck.getConfig().markdown || {}; + + if( !renderer ) { + renderer = new marked.Renderer(); + + renderer.code = ( code, language ) => { + + // Off by default + let lineNumbers = ''; + + // Users can opt in to show line numbers and highlight + // specific lines. + // ```javascript [] show line numbers + // ```javascript [1,4-8] highlights lines 1 and 4-8 + if( CODE_LINE_NUMBER_REGEX.test( language ) ) { + lineNumbers = language.match( CODE_LINE_NUMBER_REGEX )[1].trim(); + lineNumbers = `data-line-numbers="${lineNumbers}"`; + language = language.replace( CODE_LINE_NUMBER_REGEX, '' ).trim(); + } + + // Escape before this gets injected into the DOM to + // avoid having the HTML parser alter our code before + // highlight.js is able to read it + code = escapeForHTML( code ); + + return `<pre><code ${lineNumbers} class="${language}">${code}</code></pre>`; + }; + } + + if( animateLists === true ) { + renderer.listitem = text => `<li class="fragment">${text}</li>`; + } + + marked.setOptions( { + renderer, + ...markedOptions + } ); + + return processSlides( deck.getRevealElement() ).then( convertSlides ); + + }, + + // TODO: Do these belong in the API? + processSlides: processSlides, + convertSlides: convertSlides, + slidify: slidify, + marked: marked + } + +}; + +export default Plugin; diff --git a/public/site_libs/revealjs/plugin/math/katex.js b/public/site_libs/revealjs/plugin/math/katex.js new file mode 100755 index 0000000..a8b47c4 --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/katex.js @@ -0,0 +1,96 @@ +/** + * A plugin which enables rendering of math equations inside + * of reveal.js slides. Essentially a thin wrapper for KaTeX. + * + * @author Hakim El Hattab + * @author Gerhard Burger + */ +export const KaTeX = () => { + let deck; + + let defaultOptions = { + version: 'latest', + delimiters: [ + {left: '$$', right: '$$', display: true}, // Note: $$ has to come before $ + {left: '$', right: '$', display: false}, + {left: '\\(', right: '\\)', display: false}, + {left: '\\[', right: '\\]', display: true} + ], + ignoredTags: ['script', 'noscript', 'style', 'textarea', 'pre'] + } + + const loadCss = src => { + let link = document.createElement('link'); + link.rel = 'stylesheet'; + link.href = src; + document.head.appendChild(link); + }; + + /** + * Loads a JavaScript file and returns a Promise for when it is loaded + * Credits: https://aaronsmith.online/easily-load-an-external-script-using-javascript/ + */ + const loadScript = src => { + return new Promise((resolve, reject) => { + const script = document.createElement('script') + script.type = 'text/javascript' + script.onload = resolve + script.onerror = reject + script.src = src + document.head.append(script) + }) + }; + + async function loadScripts(urls) { + for(const url of urls) { + await loadScript(url); + } + } + + return { + id: 'katex', + + init: function (reveal) { + + deck = reveal; + + let revealOptions = deck.getConfig().katex || {}; + + let options = {...defaultOptions, ...revealOptions}; + const {local, version, extensions, ...katexOptions} = options; + + let baseUrl = options.local || 'https://cdn.jsdelivr.net/npm/katex'; + let versionString = options.local ? '' : '@' + options.version; + + let cssUrl = baseUrl + versionString + '/dist/katex.min.css'; + let katexUrl = baseUrl + versionString + '/dist/katex.min.js'; + let mhchemUrl = baseUrl + versionString + '/dist/contrib/mhchem.min.js' + let karUrl = baseUrl + versionString + '/dist/contrib/auto-render.min.js'; + + let katexScripts = [katexUrl]; + if(options.extensions && options.extensions.includes("mhchem")) { + katexScripts.push(mhchemUrl); + } + katexScripts.push(karUrl); + + const renderMath = () => { + renderMathInElement(reveal.getSlidesElement(), katexOptions); + deck.layout(); + } + + loadCss(cssUrl); + + // For some reason dynamically loading with defer attribute doesn't result in the expected behavior, the below code does + loadScripts(katexScripts).then(() => { + if( deck.isReady() ) { + renderMath(); + } + else { + deck.on( 'ready', renderMath.bind( this ) ); + } + }); + + } + } + +}; diff --git a/public/site_libs/revealjs/plugin/math/math.esm.js b/public/site_libs/revealjs/plugin/math/math.esm.js new file mode 100644 index 0000000..84699b3 --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/math.esm.js @@ -0,0 +1 @@ +var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=function(t){return t&&t.Math==Math&&t},n=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")(),r={},o=function(t){try{return!!t()}catch(t){return!0}},i=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),a={},c={}.propertyIsEnumerable,u=Object.getOwnPropertyDescriptor,f=u&&!c.call({1:2},1);a.f=f?function(t){var e=u(this,t);return!!e&&e.enumerable}:c;var s=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},l={}.toString,p=function(t){return l.call(t).slice(8,-1)},h=p,v="".split,d=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==h(t)?v.call(t,""):Object(t)}:Object,y=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},g=d,m=y,b=function(t){return g(m(t))},w=function(t){return"object"==typeof t?null!==t:"function"==typeof t},j=w,x=function(t,e){if(!j(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!j(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!j(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!j(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},O=y,E=function(t){return Object(O(t))},S=E,T={}.hasOwnProperty,P=function(t,e){return T.call(S(t),e)},_=w,k=n.document,L=_(k)&&_(k.createElement),M=function(t){return L?k.createElement(t):{}},A=M,I=!i&&!o((function(){return 7!=Object.defineProperty(A("div"),"a",{get:function(){return 7}}).a})),R=i,C=a,N=s,F=b,J=x,D=P,$=I,G=Object.getOwnPropertyDescriptor;r.f=R?G:function(t,e){if(t=F(t),e=J(e,!0),$)try{return G(t,e)}catch(t){}if(D(t,e))return N(!C.f.call(t,e),t[e])};var H={},z=w,W=function(t){if(!z(t))throw TypeError(String(t)+" is not an object");return t},q=i,U=I,K=W,Q=x,X=Object.defineProperty;H.f=q?X:function(t,e,n){if(K(t),e=Q(e,!0),K(n),U)try{return X(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t};var Y=H,B=s,V=i?function(t,e,n){return Y.f(t,e,B(1,n))}:function(t,e,n){return t[e]=n,t},Z={exports:{}},tt=n,et=V,nt=function(t,e){try{et(tt,t,e)}catch(n){tt[t]=e}return e},rt=nt,ot=n["__core-js_shared__"]||rt("__core-js_shared__",{}),it=ot,at=Function.toString;"function"!=typeof it.inspectSource&&(it.inspectSource=function(t){return at.call(t)});var ct=it.inspectSource,ut=ct,ft=n.WeakMap,st="function"==typeof ft&&/native code/.test(ut(ft)),lt={exports:{}},pt=ot;(lt.exports=function(t,e){return pt[t]||(pt[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var ht,vt,dt,yt=0,gt=Math.random(),mt=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++yt+gt).toString(36)},bt=lt.exports,wt=mt,jt=bt("keys"),xt=function(t){return jt[t]||(jt[t]=wt(t))},Ot={},Et=st,St=w,Tt=V,Pt=P,_t=ot,kt=xt,Lt=Ot,Mt=n.WeakMap;if(Et||_t.state){var At=_t.state||(_t.state=new Mt),It=At.get,Rt=At.has,Ct=At.set;ht=function(t,e){if(Rt.call(At,t))throw new TypeError("Object already initialized");return e.facade=t,Ct.call(At,t,e),e},vt=function(t){return It.call(At,t)||{}},dt=function(t){return Rt.call(At,t)}}else{var Nt=kt("state");Lt[Nt]=!0,ht=function(t,e){if(Pt(t,Nt))throw new TypeError("Object already initialized");return e.facade=t,Tt(t,Nt,e),e},vt=function(t){return Pt(t,Nt)?t[Nt]:{}},dt=function(t){return Pt(t,Nt)}}var Ft={set:ht,get:vt,has:dt,enforce:function(t){return dt(t)?vt(t):ht(t,{})},getterFor:function(t){return function(e){var n;if(!St(e)||(n=vt(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},Jt=n,Dt=V,$t=P,Gt=nt,Ht=ct,zt=Ft.get,Wt=Ft.enforce,qt=String(String).split("String");(Z.exports=function(t,e,n,r){var o,i=!!r&&!!r.unsafe,a=!!r&&!!r.enumerable,c=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof e||$t(n,"name")||Dt(n,"name",e),(o=Wt(n)).source||(o.source=qt.join("string"==typeof e?e:""))),t!==Jt?(i?!c&&t[e]&&(a=!0):delete t[e],a?t[e]=n:Dt(t,e,n)):a?t[e]=n:Gt(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&zt(this).source||Ht(this)}));var Ut=n,Kt=n,Qt=function(t){return"function"==typeof t?t:void 0},Xt=function(t,e){return arguments.length<2?Qt(Ut[t])||Qt(Kt[t]):Ut[t]&&Ut[t][e]||Kt[t]&&Kt[t][e]},Yt={},Bt=Math.ceil,Vt=Math.floor,Zt=function(t){return isNaN(t=+t)?0:(t>0?Vt:Bt)(t)},te=Zt,ee=Math.min,ne=function(t){return t>0?ee(te(t),9007199254740991):0},re=Zt,oe=Math.max,ie=Math.min,ae=b,ce=ne,ue=function(t,e){var n=re(t);return n<0?oe(n+e,0):ie(n,e)},fe=function(t){return function(e,n,r){var o,i=ae(e),a=ce(i.length),c=ue(r,a);if(t&&n!=n){for(;a>c;)if((o=i[c++])!=o)return!0}else for(;a>c;c++)if((t||c in i)&&i[c]===n)return t||c||0;return!t&&-1}},se={includes:fe(!0),indexOf:fe(!1)},le=P,pe=b,he=se.indexOf,ve=Ot,de=function(t,e){var n,r=pe(t),o=0,i=[];for(n in r)!le(ve,n)&&le(r,n)&&i.push(n);for(;e.length>o;)le(r,n=e[o++])&&(~he(i,n)||i.push(n));return i},ye=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ge=de,me=ye.concat("length","prototype");Yt.f=Object.getOwnPropertyNames||function(t){return ge(t,me)};var be={};be.f=Object.getOwnPropertySymbols;var we=Yt,je=be,xe=W,Oe=Xt("Reflect","ownKeys")||function(t){var e=we.f(xe(t)),n=je.f;return n?e.concat(n(t)):e},Ee=P,Se=Oe,Te=r,Pe=H,_e=o,ke=/#|\.prototype\./,Le=function(t,e){var n=Ae[Me(t)];return n==Re||n!=Ie&&("function"==typeof e?_e(e):!!e)},Me=Le.normalize=function(t){return String(t).replace(ke,".").toLowerCase()},Ae=Le.data={},Ie=Le.NATIVE="N",Re=Le.POLYFILL="P",Ce=Le,Ne=n,Fe=r.f,Je=V,De=Z.exports,$e=nt,Ge=function(t,e){for(var n=Se(e),r=Pe.f,o=Te.f,i=0;i<n.length;i++){var a=n[i];Ee(t,a)||r(t,a,o(e,a))}},He=Ce,ze=function(t,e){var n,r,o,i,a,c=t.target,u=t.global,f=t.stat;if(n=u?Ne:f?Ne[c]||$e(c,{}):(Ne[c]||{}).prototype)for(r in e){if(i=e[r],o=t.noTargetGet?(a=Fe(n,r))&&a.value:n[r],!He(u?r:c+(f?".":"#")+r,t.forced)&&void 0!==o){if(typeof i==typeof o)continue;Ge(i,o)}(t.sham||o&&o.sham)&&Je(i,"sham",!0),De(n,r,i,t)}},We=de,qe=ye,Ue=Object.keys||function(t){return We(t,qe)},Ke=i,Qe=o,Xe=Ue,Ye=be,Be=a,Ve=E,Ze=d,tn=Object.assign,en=Object.defineProperty,nn=!tn||Qe((function(){if(Ke&&1!==tn({b:1},tn(en({},"a",{enumerable:!0,get:function(){en(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=tn({},t)[n]||Xe(tn({},e)).join("")!=r}))?function(t,e){for(var n=Ve(t),r=arguments.length,o=1,i=Ye.f,a=Be.f;r>o;)for(var c,u=Ze(arguments[o++]),f=i?Xe(u).concat(i(u)):Xe(u),s=f.length,l=0;s>l;)c=f[l++],Ke&&!a.call(u,c)||(n[c]=u[c]);return n}:tn;function rn(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function on(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?rn(Object(n),!0).forEach((function(e){un(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):rn(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function an(t,e,n,r,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void n(t)}c.done?e(u):Promise.resolve(u).then(r,o)}function cn(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){an(i,r,o,a,c,"next",t)}function c(t){an(i,r,o,a,c,"throw",t)}a(void 0)}))}}function un(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function fn(t,e){if(null==t)return{};var n,r,o=function(t,e){if(null==t)return{};var n,r,o={},i=Object.keys(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function sn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function ln(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return sn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sn(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(c)throw i}}}}ze({target:"Object",stat:!0,forced:Object.assign!==nn},{assign:nn});!function(t){var e=function(t){var e,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,n){return t[e]=n}}function f(t,e,n,r){var o=e&&e.prototype instanceof y?e:y,i=Object.create(o.prototype),a=new _(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===h)throw new Error("Generator is already running");if(r===v){if("throw"===o)throw i;return L()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var c=S(a,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=h;var u=s(t,e,n);if("normal"===u.type){if(r=n.done?v:p,u.arg===d)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r=v,n.method="throw",n.arg=u.arg)}}}(t,n,a),i}function s(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=f;var l="suspendedStart",p="suspendedYield",h="executing",v="completed",d={};function y(){}function g(){}function m(){}var b={};b[i]=function(){return this};var w=Object.getPrototypeOf,j=w&&w(w(k([])));j&&j!==n&&r.call(j,i)&&(b=j);var x=m.prototype=y.prototype=Object.create(b);function O(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function E(t,e){function n(o,i,a,c){var u=s(t[o],t,i);if("throw"!==u.type){var f=u.arg,l=f.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,c)}),(function(t){n("throw",t,a,c)})):e.resolve(l).then((function(t){f.value=t,a(f)}),(function(t){return n("throw",t,a,c)}))}c(u.arg)}var o;this._invoke=function(t,r){function i(){return new e((function(e,o){n(t,r,e,o)}))}return o=o?o.then(i,i):i()}}function S(t,n){var r=t.iterator[n.method];if(r===e){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=e,S(t,n),"throw"===n.method))return d;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var o=s(r,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,d;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,d):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,d)}function T(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function P(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(T,this),this.reset(!0)}function k(t){if(t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function n(){for(;++o<t.length;)if(r.call(t,o))return n.value=t[o],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}return{next:L}}function L(){return{value:e,done:!0}}return g.prototype=x.constructor=m,m.constructor=g,g.displayName=u(m,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,u(t,c,"GeneratorFunction")),t.prototype=Object.create(x),t},t.awrap=function(t){return{__await:t}},O(E.prototype),E.prototype[a]=function(){return this},t.AsyncIterator=E,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new E(f(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},O(x),u(x,c,"Generator"),x[i]=function(){return this},x.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},t.values=k,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(P),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function o(r,o){return c.type="throw",c.arg=t,n.next=r,o&&(n.method="next",n.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),f=r.call(a,"finallyLoc");if(u&&f){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!f)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),P(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:k(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),d}},t}(t.exports);try{regeneratorRuntime=e}catch(t){Function("r","regeneratorRuntime = r")(e)}}({exports:{}});var pn,hn,vn=Xt("navigator","userAgent")||"",dn=vn,yn=n.process,gn=yn&&yn.versions,mn=gn&&gn.v8;mn?hn=(pn=mn.split("."))[0]<4?1:pn[0]+pn[1]:dn&&(!(pn=dn.match(/Edge\/(\d+)/))||pn[1]>=74)&&(pn=dn.match(/Chrome\/(\d+)/))&&(hn=pn[1]);var bn=hn&&+hn,wn=bn,jn=o,xn=!!Object.getOwnPropertySymbols&&!jn((function(){return!String(Symbol())||!Symbol.sham&&wn&&wn<41})),On=xn&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,En=n,Sn=lt.exports,Tn=P,Pn=mt,_n=xn,kn=On,Ln=Sn("wks"),Mn=En.Symbol,An=kn?Mn:Mn&&Mn.withoutSetter||Pn,In=function(t){return Tn(Ln,t)&&(_n||"string"==typeof Ln[t])||(_n&&Tn(Mn,t)?Ln[t]=Mn[t]:Ln[t]=An("Symbol."+t)),Ln[t]},Rn={};Rn[In("toStringTag")]="z";var Cn="[object z]"===String(Rn),Nn=Cn,Fn=p,Jn=In("toStringTag"),Dn="Arguments"==Fn(function(){return arguments}()),$n=Nn?Fn:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Jn))?n:Dn?Fn(e):"Object"==(r=Fn(e))&&"function"==typeof e.callee?"Arguments":r},Gn=$n,Hn=Cn?{}.toString:function(){return"[object "+Gn(this)+"]"},zn=Cn,Wn=Z.exports,qn=Hn;zn||Wn(Object.prototype,"toString",qn,{unsafe:!0});var Un=n.Promise,Kn=Z.exports,Qn=w,Xn=W,Yn=function(t){if(!Qn(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},Bn=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return Xn(n),Yn(r),e?t.call(n,r):n.__proto__=r,n}}():void 0),Vn=H.f,Zn=P,tr=In("toStringTag"),er=Xt,nr=H,rr=i,or=In("species"),ir=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},ar={},cr=ar,ur=In("iterator"),fr=Array.prototype,sr=ir,lr=function(t,e,n){if(sr(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}},pr=$n,hr=ar,vr=In("iterator"),dr=W,yr=W,gr=function(t){return void 0!==t&&(cr.Array===t||fr[ur]===t)},mr=ne,br=lr,wr=function(t){if(null!=t)return t[vr]||t["@@iterator"]||hr[pr(t)]},jr=function(t){var e=t.return;if(void 0!==e)return dr(e.call(t)).value},xr=function(t,e){this.stopped=t,this.result=e},Or=In("iterator"),Er=!1;try{var Sr=0,Tr={next:function(){return{done:!!Sr++}},return:function(){Er=!0}};Tr[Or]=function(){return this},Array.from(Tr,(function(){throw 2}))}catch(t){}var Pr,_r,kr,Lr=W,Mr=ir,Ar=In("species"),Ir=Xt("document","documentElement"),Rr=/(?:iphone|ipod|ipad).*applewebkit/i.test(vn),Cr="process"==p(n.process),Nr=n,Fr=o,Jr=lr,Dr=Ir,$r=M,Gr=Rr,Hr=Cr,zr=Nr.location,Wr=Nr.setImmediate,qr=Nr.clearImmediate,Ur=Nr.process,Kr=Nr.MessageChannel,Qr=Nr.Dispatch,Xr=0,Yr={},Br=function(t){if(Yr.hasOwnProperty(t)){var e=Yr[t];delete Yr[t],e()}},Vr=function(t){return function(){Br(t)}},Zr=function(t){Br(t.data)},to=function(t){Nr.postMessage(t+"",zr.protocol+"//"+zr.host)};Wr&&qr||(Wr=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return Yr[++Xr]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},Pr(Xr),Xr},qr=function(t){delete Yr[t]},Hr?Pr=function(t){Ur.nextTick(Vr(t))}:Qr&&Qr.now?Pr=function(t){Qr.now(Vr(t))}:Kr&&!Gr?(kr=(_r=new Kr).port2,_r.port1.onmessage=Zr,Pr=Jr(kr.postMessage,kr,1)):Nr.addEventListener&&"function"==typeof postMessage&&!Nr.importScripts&&zr&&"file:"!==zr.protocol&&!Fr(to)?(Pr=to,Nr.addEventListener("message",Zr,!1)):Pr="onreadystatechange"in $r("script")?function(t){Dr.appendChild($r("script")).onreadystatechange=function(){Dr.removeChild(this),Br(t)}}:function(t){setTimeout(Vr(t),0)});var eo,no,ro,oo,io,ao,co,uo,fo={set:Wr,clear:qr},so=/web0s(?!.*chrome)/i.test(vn),lo=n,po=r.f,ho=fo.set,vo=Rr,yo=so,go=Cr,mo=lo.MutationObserver||lo.WebKitMutationObserver,bo=lo.document,wo=lo.process,jo=lo.Promise,xo=po(lo,"queueMicrotask"),Oo=xo&&xo.value;Oo||(eo=function(){var t,e;for(go&&(t=wo.domain)&&t.exit();no;){e=no.fn,no=no.next;try{e()}catch(t){throw no?oo():ro=void 0,t}}ro=void 0,t&&t.enter()},vo||go||yo||!mo||!bo?jo&&jo.resolve?((co=jo.resolve(void 0)).constructor=jo,uo=co.then,oo=function(){uo.call(co,eo)}):oo=go?function(){wo.nextTick(eo)}:function(){ho.call(lo,eo)}:(io=!0,ao=bo.createTextNode(""),new mo(eo).observe(ao,{characterData:!0}),oo=function(){ao.data=io=!io}));var Eo=Oo||function(t){var e={fn:t,next:void 0};ro&&(ro.next=e),no||(no=e,oo()),ro=e},So={},To=ir,Po=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=To(e),this.reject=To(n)};So.f=function(t){return new Po(t)};var _o,ko,Lo,Mo,Ao=W,Io=w,Ro=So,Co=n,No="object"==typeof window,Fo=ze,Jo=n,Do=Xt,$o=Un,Go=Z.exports,Ho=function(t,e,n){for(var r in e)Kn(t,r,e[r],n);return t},zo=Bn,Wo=function(t,e,n){t&&!Zn(t=n?t:t.prototype,tr)&&Vn(t,tr,{configurable:!0,value:e})},qo=function(t){var e=er(t),n=nr.f;rr&&e&&!e[or]&&n(e,or,{configurable:!0,get:function(){return this}})},Uo=w,Ko=ir,Qo=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t},Xo=ct,Yo=function(t,e,n){var r,o,i,a,c,u,f,s=n&&n.that,l=!(!n||!n.AS_ENTRIES),p=!(!n||!n.IS_ITERATOR),h=!(!n||!n.INTERRUPTED),v=br(e,s,1+l+h),d=function(t){return r&&jr(r),new xr(!0,t)},y=function(t){return l?(yr(t),h?v(t[0],t[1],d):v(t[0],t[1])):h?v(t,d):v(t)};if(p)r=t;else{if("function"!=typeof(o=wr(t)))throw TypeError("Target is not iterable");if(gr(o)){for(i=0,a=mr(t.length);a>i;i++)if((c=y(t[i]))&&c instanceof xr)return c;return new xr(!1)}r=o.call(t)}for(u=r.next;!(f=u.call(r)).done;){try{c=y(f.value)}catch(t){throw jr(r),t}if("object"==typeof c&&c&&c instanceof xr)return c}return new xr(!1)},Bo=function(t,e){if(!e&&!Er)return!1;var n=!1;try{var r={};r[Or]=function(){return{next:function(){return{done:n=!0}}}},t(r)}catch(t){}return n},Vo=function(t,e){var n,r=Lr(t).constructor;return void 0===r||null==(n=Lr(r)[Ar])?e:Mr(n)},Zo=fo.set,ti=Eo,ei=function(t,e){if(Ao(t),Io(e)&&e.constructor===t)return e;var n=Ro.f(t);return(0,n.resolve)(e),n.promise},ni=function(t,e){var n=Co.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))},ri=So,oi=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},ii=Ft,ai=Ce,ci=No,ui=Cr,fi=bn,si=In("species"),li="Promise",pi=ii.get,hi=ii.set,vi=ii.getterFor(li),di=$o&&$o.prototype,yi=$o,gi=di,mi=Jo.TypeError,bi=Jo.document,wi=Jo.process,ji=ri.f,xi=ji,Oi=!!(bi&&bi.createEvent&&Jo.dispatchEvent),Ei="function"==typeof PromiseRejectionEvent,Si=!1,Ti=ai(li,(function(){var t=Xo(yi)!==String(yi);if(!t&&66===fi)return!0;if(fi>=51&&/native code/.test(yi))return!1;var e=new yi((function(t){t(1)})),n=function(t){t((function(){}),(function(){}))};return(e.constructor={})[si]=n,!(Si=e.then((function(){}))instanceof n)||!t&&ci&&!Ei})),Pi=Ti||!Bo((function(t){yi.all(t).catch((function(){}))})),_i=function(t){var e;return!(!Uo(t)||"function"!=typeof(e=t.then))&&e},ki=function(t,e){if(!t.notified){t.notified=!0;var n=t.reactions;ti((function(){for(var r=t.value,o=1==t.state,i=0;n.length>i;){var a,c,u,f=n[i++],s=o?f.ok:f.fail,l=f.resolve,p=f.reject,h=f.domain;try{s?(o||(2===t.rejection&&Ii(t),t.rejection=1),!0===s?a=r:(h&&h.enter(),a=s(r),h&&(h.exit(),u=!0)),a===f.promise?p(mi("Promise-chain cycle")):(c=_i(a))?c.call(a,l,p):l(a)):p(r)}catch(t){h&&!u&&h.exit(),p(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&Mi(t)}))}},Li=function(t,e,n){var r,o;Oi?((r=bi.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),Jo.dispatchEvent(r)):r={promise:e,reason:n},!Ei&&(o=Jo["on"+t])?o(r):"unhandledrejection"===t&&ni("Unhandled promise rejection",n)},Mi=function(t){Zo.call(Jo,(function(){var e,n=t.facade,r=t.value;if(Ai(t)&&(e=oi((function(){ui?wi.emit("unhandledRejection",r,n):Li("unhandledrejection",n,r)})),t.rejection=ui||Ai(t)?2:1,e.error))throw e.value}))},Ai=function(t){return 1!==t.rejection&&!t.parent},Ii=function(t){Zo.call(Jo,(function(){var e=t.facade;ui?wi.emit("rejectionHandled",e):Li("rejectionhandled",e,t.value)}))},Ri=function(t,e,n){return function(r){t(e,r,n)}},Ci=function(t,e,n){t.done||(t.done=!0,n&&(t=n),t.value=e,t.state=2,ki(t,!0))},Ni=function(t,e,n){if(!t.done){t.done=!0,n&&(t=n);try{if(t.facade===e)throw mi("Promise can't be resolved itself");var r=_i(e);r?ti((function(){var n={done:!1};try{r.call(e,Ri(Ni,n,t),Ri(Ci,n,t))}catch(e){Ci(n,e,t)}})):(t.value=e,t.state=1,ki(t,!1))}catch(e){Ci({done:!1},e,t)}}};if(Ti&&(gi=(yi=function(t){Qo(this,yi,li),Ko(t),_o.call(this);var e=pi(this);try{t(Ri(Ni,e),Ri(Ci,e))}catch(t){Ci(e,t)}}).prototype,(_o=function(t){hi(this,{type:li,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Ho(gi,{then:function(t,e){var n=vi(this),r=ji(Vo(this,yi));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=ui?wi.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&ki(n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),ko=function(){var t=new _o,e=pi(t);this.promise=t,this.resolve=Ri(Ni,e),this.reject=Ri(Ci,e)},ri.f=ji=function(t){return t===yi||t===Lo?new ko(t):xi(t)},"function"==typeof $o&&di!==Object.prototype)){Mo=di.then,Si||(Go(di,"then",(function(t,e){var n=this;return new yi((function(t,e){Mo.call(n,t,e)})).then(t,e)}),{unsafe:!0}),Go(di,"catch",gi.catch,{unsafe:!0}));try{delete di.constructor}catch(t){}zo&&zo(di,gi)}Fo({global:!0,wrap:!0,forced:Ti},{Promise:yi}),Wo(yi,li,!1),qo(li),Lo=Do(li),Fo({target:li,stat:!0,forced:Ti},{reject:function(t){var e=ji(this);return e.reject.call(void 0,t),e.promise}}),Fo({target:li,stat:!0,forced:Ti},{resolve:function(t){return ei(this,t)}}),Fo({target:li,stat:!0,forced:Pi},{all:function(t){var e=this,n=ji(e),r=n.resolve,o=n.reject,i=oi((function(){var n=Ko(e.resolve),i=[],a=0,c=1;Yo(t,(function(t){var u=a++,f=!1;i.push(void 0),c++,n.call(e,t).then((function(t){f||(f=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=ji(e),r=n.reject,o=oi((function(){var o=Ko(e.resolve);Yo(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}});var Fi,Ji=H,Di=W,$i=Ue,Gi=i?Object.defineProperties:function(t,e){Di(t);for(var n,r=$i(e),o=r.length,i=0;o>i;)Ji.f(t,n=r[i++],e[n]);return t},Hi=W,zi=Gi,Wi=ye,qi=Ot,Ui=Ir,Ki=M,Qi=xt("IE_PROTO"),Xi=function(){},Yi=function(t){return"<script>"+t+"<\/script>"},Bi=function(){try{Fi=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;Bi=Fi?function(t){t.write(Yi("")),t.close();var e=t.parentWindow.Object;return t=null,e}(Fi):((e=Ki("iframe")).style.display="none",Ui.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(Yi("document.F=Object")),t.close(),t.F);for(var n=Wi.length;n--;)delete Bi.prototype[Wi[n]];return Bi()};qi[Qi]=!0;var Vi=Object.create||function(t,e){var n;return null!==t?(Xi.prototype=Hi(t),n=new Xi,Xi.prototype=null,n[Qi]=t):n=Bi(),void 0===e?n:zi(n,e)},Zi=H,ta=In("unscopables"),ea=Array.prototype;null==ea[ta]&&Zi.f(ea,ta,{configurable:!0,value:Vi(null)});var na=se.includes,ra=function(t){ea[ta][t]=!0};ze({target:"Array",proto:!0},{includes:function(t){return na(this,t,arguments.length>1?arguments[1]:void 0)}}),ra("includes");var oa=w,ia=p,aa=In("match"),ca=function(t){var e;return oa(t)&&(void 0!==(e=t[aa])?!!e:"RegExp"==ia(t))},ua=In("match"),fa=function(t){if(ca(t))throw TypeError("The method doesn't accept regular expressions");return t},sa=y;ze({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[ua]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~String(sa(this)).indexOf(fa(t),arguments.length>1?arguments[1]:void 0)}});var la=function(){var t,e={messageStyle:"none",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]],skipTags:["script","noscript","style","textarea","pre"]},skipStartupTypeset:!0};return{id:"mathjax2",init:function(n){var r=(t=n).getConfig().mathjax2||t.getConfig().math||{},o=on(on({},e),r),i=(o.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js")+"?config="+(o.config||"TeX-AMS_HTML-full");o.tex2jax=on(on({},e.tex2jax),r.tex2jax),o.mathjax=o.config=null,function(t,e){var n=this,r=document.querySelector("head"),o=document.createElement("script");o.type="text/javascript",o.src=t;var i=function(){"function"==typeof e&&(e.call(),e=null)};o.onload=i,o.onreadystatechange=function(){"loaded"===n.readyState&&i()},r.appendChild(o)}(i,(function(){MathJax.Hub.Config(o),MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.getRevealElement()]),MathJax.Hub.Queue(t.layout),t.on("slidechanged",(function(t){MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.currentSlide])}))}))}}},pa=la,ha=Plugin=Object.assign(pa(),{KaTeX:function(){var t,e={version:"latest",delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\[",right:"\\]",display:!0}],ignoredTags:["script","noscript","style","textarea","pre"]},n=function(t){return new Promise((function(e,n){var r=document.createElement("script");r.type="text/javascript",r.onload=e,r.onerror=n,r.src=t,document.head.append(r)}))};function r(){return(r=cn(regeneratorRuntime.mark((function t(e){var r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=ln(e),t.prev=1,r.s();case 3:if((o=r.n()).done){t.next=9;break}return i=o.value,t.next=7,n(i);case 7:t.next=3;break;case 9:t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),r.e(t.t0);case 14:return t.prev=14,r.f(),t.finish(14);case 17:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})))).apply(this,arguments)}return{id:"katex",init:function(n){var o=this,i=(t=n).getConfig().katex||{},a=on(on({},e),i);a.local,a.version,a.extensions;var c=fn(a,["local","version","extensions"]),u=a.local||"https://cdn.jsdelivr.net/npm/katex",f=a.local?"":"@"+a.version,s=u+f+"/dist/katex.min.css",l=u+f+"/dist/contrib/mhchem.min.js",p=u+f+"/dist/contrib/auto-render.min.js",h=[u+f+"/dist/katex.min.js"];a.extensions&&a.extensions.includes("mhchem")&&h.push(l),h.push(p);var v,d,y=function(){renderMathInElement(n.getSlidesElement(),c),t.layout()};v=s,(d=document.createElement("link")).rel="stylesheet",d.href=v,document.head.appendChild(d),function(t){return r.apply(this,arguments)}(h).then((function(){t.isReady()?y():t.on("ready",y.bind(o))}))}}},MathJax2:la,MathJax3:function(){var t={tex:{inlineMath:[["$","$"],["\\(","\\)"]]},options:{skipHtmlTags:["script","noscript","style","textarea","pre"]},startup:{ready:function(){MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){Reveal.layout()}))}}};return{id:"mathjax3",init:function(e){var n=e.getConfig().mathjax3||{},r=on(on({},t),n);r.tex=on(on({},t.tex),n.tex),r.options=on(on({},r.options),t.options),r.startup=on(on({},t.startup),n.startup);var o=r.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js";r.mathjax=null,window.MathJax=r,function(t,e){var n=document.createElement("script");n.type="text/javascript",n.id="MathJax-script",n.src=t,n.async=!0,n.onload=function(){"function"==typeof e&&(e.call(),e=null)},document.head.appendChild(n)}(o,(function(){Reveal.addEventListener("slidechanged",(function(t){MathJax.typeset()}))}))}}}});export default ha; diff --git a/public/site_libs/revealjs/plugin/math/math.js b/public/site_libs/revealjs/plugin/math/math.js new file mode 100644 index 0000000..29ae21a --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/math.js @@ -0,0 +1 @@ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).RevealMath=e()}(this,(function(){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=function(t){return t&&t.Math==Math&&t},n=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")(),r={},o=function(t){try{return!!t()}catch(t){return!0}},i=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),a={},c={}.propertyIsEnumerable,u=Object.getOwnPropertyDescriptor,f=u&&!c.call({1:2},1);a.f=f?function(t){var e=u(this,t);return!!e&&e.enumerable}:c;var s=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},l={}.toString,p=function(t){return l.call(t).slice(8,-1)},h=p,d="".split,v=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==h(t)?d.call(t,""):Object(t)}:Object,y=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},g=v,m=y,b=function(t){return g(m(t))},w=function(t){return"object"==typeof t?null!==t:"function"==typeof t},j=w,x=function(t,e){if(!j(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!j(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!j(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!j(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},O=y,E=function(t){return Object(O(t))},S=E,T={}.hasOwnProperty,P=function(t,e){return T.call(S(t),e)},M=w,k=n.document,L=M(k)&&M(k.createElement),_=function(t){return L?k.createElement(t):{}},A=_,I=!i&&!o((function(){return 7!=Object.defineProperty(A("div"),"a",{get:function(){return 7}}).a})),R=i,C=a,N=s,F=b,J=x,D=P,$=I,G=Object.getOwnPropertyDescriptor;r.f=R?G:function(t,e){if(t=F(t),e=J(e,!0),$)try{return G(t,e)}catch(t){}if(D(t,e))return N(!C.f.call(t,e),t[e])};var H={},z=w,W=function(t){if(!z(t))throw TypeError(String(t)+" is not an object");return t},q=i,U=I,K=W,Q=x,X=Object.defineProperty;H.f=q?X:function(t,e,n){if(K(t),e=Q(e,!0),K(n),U)try{return X(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t};var Y=H,B=s,V=i?function(t,e,n){return Y.f(t,e,B(1,n))}:function(t,e,n){return t[e]=n,t},Z={exports:{}},tt=n,et=V,nt=function(t,e){try{et(tt,t,e)}catch(n){tt[t]=e}return e},rt=nt,ot="__core-js_shared__",it=n[ot]||rt(ot,{}),at=it,ct=Function.toString;"function"!=typeof at.inspectSource&&(at.inspectSource=function(t){return ct.call(t)});var ut=at.inspectSource,ft=ut,st=n.WeakMap,lt="function"==typeof st&&/native code/.test(ft(st)),pt={exports:{}},ht=it;(pt.exports=function(t,e){return ht[t]||(ht[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var dt,vt,yt,gt=0,mt=Math.random(),bt=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++gt+mt).toString(36)},wt=pt.exports,jt=bt,xt=wt("keys"),Ot=function(t){return xt[t]||(xt[t]=jt(t))},Et={},St=lt,Tt=w,Pt=V,Mt=P,kt=it,Lt=Ot,_t=Et,At="Object already initialized",It=n.WeakMap;if(St||kt.state){var Rt=kt.state||(kt.state=new It),Ct=Rt.get,Nt=Rt.has,Ft=Rt.set;dt=function(t,e){if(Nt.call(Rt,t))throw new TypeError(At);return e.facade=t,Ft.call(Rt,t,e),e},vt=function(t){return Ct.call(Rt,t)||{}},yt=function(t){return Nt.call(Rt,t)}}else{var Jt=Lt("state");_t[Jt]=!0,dt=function(t,e){if(Mt(t,Jt))throw new TypeError(At);return e.facade=t,Pt(t,Jt,e),e},vt=function(t){return Mt(t,Jt)?t[Jt]:{}},yt=function(t){return Mt(t,Jt)}}var Dt={set:dt,get:vt,has:yt,enforce:function(t){return yt(t)?vt(t):dt(t,{})},getterFor:function(t){return function(e){var n;if(!Tt(e)||(n=vt(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},$t=n,Gt=V,Ht=P,zt=nt,Wt=ut,qt=Dt.get,Ut=Dt.enforce,Kt=String(String).split("String");(Z.exports=function(t,e,n,r){var o,i=!!r&&!!r.unsafe,a=!!r&&!!r.enumerable,c=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof e||Ht(n,"name")||Gt(n,"name",e),(o=Ut(n)).source||(o.source=Kt.join("string"==typeof e?e:""))),t!==$t?(i?!c&&t[e]&&(a=!0):delete t[e],a?t[e]=n:Gt(t,e,n)):a?t[e]=n:zt(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&qt(this).source||Wt(this)}));var Qt=n,Xt=n,Yt=function(t){return"function"==typeof t?t:void 0},Bt=function(t,e){return arguments.length<2?Yt(Qt[t])||Yt(Xt[t]):Qt[t]&&Qt[t][e]||Xt[t]&&Xt[t][e]},Vt={},Zt=Math.ceil,te=Math.floor,ee=function(t){return isNaN(t=+t)?0:(t>0?te:Zt)(t)},ne=ee,re=Math.min,oe=function(t){return t>0?re(ne(t),9007199254740991):0},ie=ee,ae=Math.max,ce=Math.min,ue=b,fe=oe,se=function(t,e){var n=ie(t);return n<0?ae(n+e,0):ce(n,e)},le=function(t){return function(e,n,r){var o,i=ue(e),a=fe(i.length),c=se(r,a);if(t&&n!=n){for(;a>c;)if((o=i[c++])!=o)return!0}else for(;a>c;c++)if((t||c in i)&&i[c]===n)return t||c||0;return!t&&-1}},pe={includes:le(!0),indexOf:le(!1)},he=P,de=b,ve=pe.indexOf,ye=Et,ge=function(t,e){var n,r=de(t),o=0,i=[];for(n in r)!he(ye,n)&&he(r,n)&&i.push(n);for(;e.length>o;)he(r,n=e[o++])&&(~ve(i,n)||i.push(n));return i},me=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],be=ge,we=me.concat("length","prototype");Vt.f=Object.getOwnPropertyNames||function(t){return be(t,we)};var je={};je.f=Object.getOwnPropertySymbols;var xe=Vt,Oe=je,Ee=W,Se=Bt("Reflect","ownKeys")||function(t){var e=xe.f(Ee(t)),n=Oe.f;return n?e.concat(n(t)):e},Te=P,Pe=Se,Me=r,ke=H,Le=o,_e=/#|\.prototype\./,Ae=function(t,e){var n=Re[Ie(t)];return n==Ne||n!=Ce&&("function"==typeof e?Le(e):!!e)},Ie=Ae.normalize=function(t){return String(t).replace(_e,".").toLowerCase()},Re=Ae.data={},Ce=Ae.NATIVE="N",Ne=Ae.POLYFILL="P",Fe=Ae,Je=n,De=r.f,$e=V,Ge=Z.exports,He=nt,ze=function(t,e){for(var n=Pe(e),r=ke.f,o=Me.f,i=0;i<n.length;i++){var a=n[i];Te(t,a)||r(t,a,o(e,a))}},We=Fe,qe=function(t,e){var n,r,o,i,a,c=t.target,u=t.global,f=t.stat;if(n=u?Je:f?Je[c]||He(c,{}):(Je[c]||{}).prototype)for(r in e){if(i=e[r],o=t.noTargetGet?(a=De(n,r))&&a.value:n[r],!We(u?r:c+(f?".":"#")+r,t.forced)&&void 0!==o){if(typeof i==typeof o)continue;ze(i,o)}(t.sham||o&&o.sham)&&$e(i,"sham",!0),Ge(n,r,i,t)}},Ue=ge,Ke=me,Qe=Object.keys||function(t){return Ue(t,Ke)},Xe=i,Ye=o,Be=Qe,Ve=je,Ze=a,tn=E,en=v,nn=Object.assign,rn=Object.defineProperty,on=!nn||Ye((function(){if(Xe&&1!==nn({b:1},nn(rn({},"a",{enumerable:!0,get:function(){rn(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=nn({},t)[n]||Be(nn({},e)).join("")!=r}))?function(t,e){for(var n=tn(t),r=arguments.length,o=1,i=Ve.f,a=Ze.f;r>o;)for(var c,u=en(arguments[o++]),f=i?Be(u).concat(i(u)):Be(u),s=f.length,l=0;s>l;)c=f[l++],Xe&&!a.call(u,c)||(n[c]=u[c]);return n}:nn;function an(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function cn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?an(Object(n),!0).forEach((function(e){sn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):an(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function un(t,e,n,r,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void n(t)}c.done?e(u):Promise.resolve(u).then(r,o)}function fn(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){un(i,r,o,a,c,"next",t)}function c(t){un(i,r,o,a,c,"throw",t)}a(void 0)}))}}function sn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function ln(t,e){if(null==t)return{};var n,r,o=function(t,e){if(null==t)return{};var n,r,o={},i=Object.keys(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function pn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function hn(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return pn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pn(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(c)throw i}}}}qe({target:"Object",stat:!0,forced:Object.assign!==on},{assign:on});!function(t){var e=function(t){var e,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,n){return t[e]=n}}function f(t,e,n,r){var o=e&&e.prototype instanceof y?e:y,i=Object.create(o.prototype),a=new M(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===h)throw new Error("Generator is already running");if(r===d){if("throw"===o)throw i;return L()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var c=S(a,n);if(c){if(c===v)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=h;var u=s(t,e,n);if("normal"===u.type){if(r=n.done?d:p,u.arg===v)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r=d,n.method="throw",n.arg=u.arg)}}}(t,n,a),i}function s(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=f;var l="suspendedStart",p="suspendedYield",h="executing",d="completed",v={};function y(){}function g(){}function m(){}var b={};b[i]=function(){return this};var w=Object.getPrototypeOf,j=w&&w(w(k([])));j&&j!==n&&r.call(j,i)&&(b=j);var x=m.prototype=y.prototype=Object.create(b);function O(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function E(t,e){function n(o,i,a,c){var u=s(t[o],t,i);if("throw"!==u.type){var f=u.arg,l=f.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,c)}),(function(t){n("throw",t,a,c)})):e.resolve(l).then((function(t){f.value=t,a(f)}),(function(t){return n("throw",t,a,c)}))}c(u.arg)}var o;this._invoke=function(t,r){function i(){return new e((function(e,o){n(t,r,e,o)}))}return o=o?o.then(i,i):i()}}function S(t,n){var r=t.iterator[n.method];if(r===e){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=e,S(t,n),"throw"===n.method))return v;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=s(r,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,v;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,v):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,v)}function T(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function P(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function M(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(T,this),this.reset(!0)}function k(t){if(t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function n(){for(;++o<t.length;)if(r.call(t,o))return n.value=t[o],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}return{next:L}}function L(){return{value:e,done:!0}}return g.prototype=x.constructor=m,m.constructor=g,g.displayName=u(m,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,u(t,c,"GeneratorFunction")),t.prototype=Object.create(x),t},t.awrap=function(t){return{__await:t}},O(E.prototype),E.prototype[a]=function(){return this},t.AsyncIterator=E,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new E(f(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},O(x),u(x,c,"Generator"),x[i]=function(){return this},x.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},t.values=k,M.prototype={constructor:M,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(P),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function o(r,o){return c.type="throw",c.arg=t,n.next=r,o&&(n.method="next",n.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),f=r.call(a,"finallyLoc");if(u&&f){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!f)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),P(n),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:k(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),v}},t}(t.exports);try{regeneratorRuntime=e}catch(t){Function("r","regeneratorRuntime = r")(e)}}({exports:{}});var dn,vn,yn=Bt("navigator","userAgent")||"",gn=yn,mn=n.process,bn=mn&&mn.versions,wn=bn&&bn.v8;wn?vn=(dn=wn.split("."))[0]<4?1:dn[0]+dn[1]:gn&&(!(dn=gn.match(/Edge\/(\d+)/))||dn[1]>=74)&&(dn=gn.match(/Chrome\/(\d+)/))&&(vn=dn[1]);var jn=vn&&+vn,xn=jn,On=o,En=!!Object.getOwnPropertySymbols&&!On((function(){return!String(Symbol())||!Symbol.sham&&xn&&xn<41})),Sn=En&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Tn=n,Pn=pt.exports,Mn=P,kn=bt,Ln=En,_n=Sn,An=Pn("wks"),In=Tn.Symbol,Rn=_n?In:In&&In.withoutSetter||kn,Cn=function(t){return Mn(An,t)&&(Ln||"string"==typeof An[t])||(Ln&&Mn(In,t)?An[t]=In[t]:An[t]=Rn("Symbol."+t)),An[t]},Nn={};Nn[Cn("toStringTag")]="z";var Fn="[object z]"===String(Nn),Jn=Fn,Dn=p,$n=Cn("toStringTag"),Gn="Arguments"==Dn(function(){return arguments}()),Hn=Jn?Dn:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),$n))?n:Gn?Dn(e):"Object"==(r=Dn(e))&&"function"==typeof e.callee?"Arguments":r},zn=Hn,Wn=Fn?{}.toString:function(){return"[object "+zn(this)+"]"},qn=Fn,Un=Z.exports,Kn=Wn;qn||Un(Object.prototype,"toString",Kn,{unsafe:!0});var Qn=n.Promise,Xn=Z.exports,Yn=w,Bn=W,Vn=function(t){if(!Yn(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},Zn=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return Bn(n),Vn(r),e?t.call(n,r):n.__proto__=r,n}}():void 0),tr=H.f,er=P,nr=Cn("toStringTag"),rr=Bt,or=H,ir=i,ar=Cn("species"),cr=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},ur={},fr=ur,sr=Cn("iterator"),lr=Array.prototype,pr=cr,hr=function(t,e,n){if(pr(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}},dr=Hn,vr=ur,yr=Cn("iterator"),gr=W,mr=W,br=function(t){return void 0!==t&&(fr.Array===t||lr[sr]===t)},wr=oe,jr=hr,xr=function(t){if(null!=t)return t[yr]||t["@@iterator"]||vr[dr(t)]},Or=function(t){var e=t.return;if(void 0!==e)return gr(e.call(t)).value},Er=function(t,e){this.stopped=t,this.result=e},Sr=Cn("iterator"),Tr=!1;try{var Pr=0,Mr={next:function(){return{done:!!Pr++}},return:function(){Tr=!0}};Mr[Sr]=function(){return this},Array.from(Mr,(function(){throw 2}))}catch(t){}var kr,Lr,_r,Ar=W,Ir=cr,Rr=Cn("species"),Cr=Bt("document","documentElement"),Nr=/(?:iphone|ipod|ipad).*applewebkit/i.test(yn),Fr="process"==p(n.process),Jr=n,Dr=o,$r=hr,Gr=Cr,Hr=_,zr=Nr,Wr=Fr,qr=Jr.location,Ur=Jr.setImmediate,Kr=Jr.clearImmediate,Qr=Jr.process,Xr=Jr.MessageChannel,Yr=Jr.Dispatch,Br=0,Vr={},Zr="onreadystatechange",to=function(t){if(Vr.hasOwnProperty(t)){var e=Vr[t];delete Vr[t],e()}},eo=function(t){return function(){to(t)}},no=function(t){to(t.data)},ro=function(t){Jr.postMessage(t+"",qr.protocol+"//"+qr.host)};Ur&&Kr||(Ur=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return Vr[++Br]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},kr(Br),Br},Kr=function(t){delete Vr[t]},Wr?kr=function(t){Qr.nextTick(eo(t))}:Yr&&Yr.now?kr=function(t){Yr.now(eo(t))}:Xr&&!zr?(_r=(Lr=new Xr).port2,Lr.port1.onmessage=no,kr=$r(_r.postMessage,_r,1)):Jr.addEventListener&&"function"==typeof postMessage&&!Jr.importScripts&&qr&&"file:"!==qr.protocol&&!Dr(ro)?(kr=ro,Jr.addEventListener("message",no,!1)):kr=Zr in Hr("script")?function(t){Gr.appendChild(Hr("script")).onreadystatechange=function(){Gr.removeChild(this),to(t)}}:function(t){setTimeout(eo(t),0)});var oo,io,ao,co,uo,fo,so,lo,po={set:Ur,clear:Kr},ho=/web0s(?!.*chrome)/i.test(yn),vo=n,yo=r.f,go=po.set,mo=Nr,bo=ho,wo=Fr,jo=vo.MutationObserver||vo.WebKitMutationObserver,xo=vo.document,Oo=vo.process,Eo=vo.Promise,So=yo(vo,"queueMicrotask"),To=So&&So.value;To||(oo=function(){var t,e;for(wo&&(t=Oo.domain)&&t.exit();io;){e=io.fn,io=io.next;try{e()}catch(t){throw io?co():ao=void 0,t}}ao=void 0,t&&t.enter()},mo||wo||bo||!jo||!xo?Eo&&Eo.resolve?((so=Eo.resolve(void 0)).constructor=Eo,lo=so.then,co=function(){lo.call(so,oo)}):co=wo?function(){Oo.nextTick(oo)}:function(){go.call(vo,oo)}:(uo=!0,fo=xo.createTextNode(""),new jo(oo).observe(fo,{characterData:!0}),co=function(){fo.data=uo=!uo}));var Po=To||function(t){var e={fn:t,next:void 0};ao&&(ao.next=e),io||(io=e,co()),ao=e},Mo={},ko=cr,Lo=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=ko(e),this.reject=ko(n)};Mo.f=function(t){return new Lo(t)};var _o,Ao,Io,Ro,Co=W,No=w,Fo=Mo,Jo=n,Do="object"==typeof window,$o=qe,Go=n,Ho=Bt,zo=Qn,Wo=Z.exports,qo=function(t,e,n){for(var r in e)Xn(t,r,e[r],n);return t},Uo=Zn,Ko=function(t,e,n){t&&!er(t=n?t:t.prototype,nr)&&tr(t,nr,{configurable:!0,value:e})},Qo=function(t){var e=rr(t),n=or.f;ir&&e&&!e[ar]&&n(e,ar,{configurable:!0,get:function(){return this}})},Xo=w,Yo=cr,Bo=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t},Vo=ut,Zo=function(t,e,n){var r,o,i,a,c,u,f,s=n&&n.that,l=!(!n||!n.AS_ENTRIES),p=!(!n||!n.IS_ITERATOR),h=!(!n||!n.INTERRUPTED),d=jr(e,s,1+l+h),v=function(t){return r&&Or(r),new Er(!0,t)},y=function(t){return l?(mr(t),h?d(t[0],t[1],v):d(t[0],t[1])):h?d(t,v):d(t)};if(p)r=t;else{if("function"!=typeof(o=xr(t)))throw TypeError("Target is not iterable");if(br(o)){for(i=0,a=wr(t.length);a>i;i++)if((c=y(t[i]))&&c instanceof Er)return c;return new Er(!1)}r=o.call(t)}for(u=r.next;!(f=u.call(r)).done;){try{c=y(f.value)}catch(t){throw Or(r),t}if("object"==typeof c&&c&&c instanceof Er)return c}return new Er(!1)},ti=function(t,e){if(!e&&!Tr)return!1;var n=!1;try{var r={};r[Sr]=function(){return{next:function(){return{done:n=!0}}}},t(r)}catch(t){}return n},ei=function(t,e){var n,r=Ar(t).constructor;return void 0===r||null==(n=Ar(r)[Rr])?e:Ir(n)},ni=po.set,ri=Po,oi=function(t,e){if(Co(t),No(e)&&e.constructor===t)return e;var n=Fo.f(t);return(0,n.resolve)(e),n.promise},ii=function(t,e){var n=Jo.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))},ai=Mo,ci=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},ui=Dt,fi=Fe,si=Do,li=Fr,pi=jn,hi=Cn("species"),di="Promise",vi=ui.get,yi=ui.set,gi=ui.getterFor(di),mi=zo&&zo.prototype,bi=zo,wi=mi,ji=Go.TypeError,xi=Go.document,Oi=Go.process,Ei=ai.f,Si=Ei,Ti=!!(xi&&xi.createEvent&&Go.dispatchEvent),Pi="function"==typeof PromiseRejectionEvent,Mi="unhandledrejection",ki=!1,Li=fi(di,(function(){var t=Vo(bi)!==String(bi);if(!t&&66===pi)return!0;if(pi>=51&&/native code/.test(bi))return!1;var e=new bi((function(t){t(1)})),n=function(t){t((function(){}),(function(){}))};return(e.constructor={})[hi]=n,!(ki=e.then((function(){}))instanceof n)||!t&&si&&!Pi})),_i=Li||!ti((function(t){bi.all(t).catch((function(){}))})),Ai=function(t){var e;return!(!Xo(t)||"function"!=typeof(e=t.then))&&e},Ii=function(t,e){if(!t.notified){t.notified=!0;var n=t.reactions;ri((function(){for(var r=t.value,o=1==t.state,i=0;n.length>i;){var a,c,u,f=n[i++],s=o?f.ok:f.fail,l=f.resolve,p=f.reject,h=f.domain;try{s?(o||(2===t.rejection&&Fi(t),t.rejection=1),!0===s?a=r:(h&&h.enter(),a=s(r),h&&(h.exit(),u=!0)),a===f.promise?p(ji("Promise-chain cycle")):(c=Ai(a))?c.call(a,l,p):l(a)):p(r)}catch(t){h&&!u&&h.exit(),p(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&Ci(t)}))}},Ri=function(t,e,n){var r,o;Ti?((r=xi.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),Go.dispatchEvent(r)):r={promise:e,reason:n},!Pi&&(o=Go["on"+t])?o(r):t===Mi&&ii("Unhandled promise rejection",n)},Ci=function(t){ni.call(Go,(function(){var e,n=t.facade,r=t.value;if(Ni(t)&&(e=ci((function(){li?Oi.emit("unhandledRejection",r,n):Ri(Mi,n,r)})),t.rejection=li||Ni(t)?2:1,e.error))throw e.value}))},Ni=function(t){return 1!==t.rejection&&!t.parent},Fi=function(t){ni.call(Go,(function(){var e=t.facade;li?Oi.emit("rejectionHandled",e):Ri("rejectionhandled",e,t.value)}))},Ji=function(t,e,n){return function(r){t(e,r,n)}},Di=function(t,e,n){t.done||(t.done=!0,n&&(t=n),t.value=e,t.state=2,Ii(t,!0))},$i=function(t,e,n){if(!t.done){t.done=!0,n&&(t=n);try{if(t.facade===e)throw ji("Promise can't be resolved itself");var r=Ai(e);r?ri((function(){var n={done:!1};try{r.call(e,Ji($i,n,t),Ji(Di,n,t))}catch(e){Di(n,e,t)}})):(t.value=e,t.state=1,Ii(t,!1))}catch(e){Di({done:!1},e,t)}}};if(Li&&(wi=(bi=function(t){Bo(this,bi,di),Yo(t),_o.call(this);var e=vi(this);try{t(Ji($i,e),Ji(Di,e))}catch(t){Di(e,t)}}).prototype,(_o=function(t){yi(this,{type:di,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=qo(wi,{then:function(t,e){var n=gi(this),r=Ei(ei(this,bi));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=li?Oi.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&Ii(n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),Ao=function(){var t=new _o,e=vi(t);this.promise=t,this.resolve=Ji($i,e),this.reject=Ji(Di,e)},ai.f=Ei=function(t){return t===bi||t===Io?new Ao(t):Si(t)},"function"==typeof zo&&mi!==Object.prototype)){Ro=mi.then,ki||(Wo(mi,"then",(function(t,e){var n=this;return new bi((function(t,e){Ro.call(n,t,e)})).then(t,e)}),{unsafe:!0}),Wo(mi,"catch",wi.catch,{unsafe:!0}));try{delete mi.constructor}catch(t){}Uo&&Uo(mi,wi)}$o({global:!0,wrap:!0,forced:Li},{Promise:bi}),Ko(bi,di,!1),Qo(di),Io=Ho(di),$o({target:di,stat:!0,forced:Li},{reject:function(t){var e=Ei(this);return e.reject.call(void 0,t),e.promise}}),$o({target:di,stat:!0,forced:Li},{resolve:function(t){return oi(this,t)}}),$o({target:di,stat:!0,forced:_i},{all:function(t){var e=this,n=Ei(e),r=n.resolve,o=n.reject,i=ci((function(){var n=Yo(e.resolve),i=[],a=0,c=1;Zo(t,(function(t){var u=a++,f=!1;i.push(void 0),c++,n.call(e,t).then((function(t){f||(f=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=Ei(e),r=n.reject,o=ci((function(){var o=Yo(e.resolve);Zo(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}});var Gi,Hi=H,zi=W,Wi=Qe,qi=i?Object.defineProperties:function(t,e){zi(t);for(var n,r=Wi(e),o=r.length,i=0;o>i;)Hi.f(t,n=r[i++],e[n]);return t},Ui=W,Ki=qi,Qi=me,Xi=Et,Yi=Cr,Bi=_,Vi=Ot("IE_PROTO"),Zi=function(){},ta=function(t){return"<script>"+t+"</"+"script>"},ea=function(){try{Gi=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;ea=Gi?function(t){t.write(ta("")),t.close();var e=t.parentWindow.Object;return t=null,e}(Gi):((e=Bi("iframe")).style.display="none",Yi.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(ta("document.F=Object")),t.close(),t.F);for(var n=Qi.length;n--;)delete ea.prototype[Qi[n]];return ea()};Xi[Vi]=!0;var na=Object.create||function(t,e){var n;return null!==t?(Zi.prototype=Ui(t),n=new Zi,Zi.prototype=null,n[Vi]=t):n=ea(),void 0===e?n:Ki(n,e)},ra=H,oa=Cn("unscopables"),ia=Array.prototype;null==ia[oa]&&ra.f(ia,oa,{configurable:!0,value:na(null)});var aa=pe.includes,ca=function(t){ia[oa][t]=!0};qe({target:"Array",proto:!0},{includes:function(t){return aa(this,t,arguments.length>1?arguments[1]:void 0)}}),ca("includes");var ua=w,fa=p,sa=Cn("match"),la=function(t){var e;return ua(t)&&(void 0!==(e=t[sa])?!!e:"RegExp"==fa(t))},pa=Cn("match"),ha=function(t){if(la(t))throw TypeError("The method doesn't accept regular expressions");return t},da=y;qe({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[pa]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~String(da(this)).indexOf(ha(t),arguments.length>1?arguments[1]:void 0)}});var va=function(){var t,e={messageStyle:"none",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]],skipTags:["script","noscript","style","textarea","pre"]},skipStartupTypeset:!0};return{id:"mathjax2",init:function(n){var r=(t=n).getConfig().mathjax2||t.getConfig().math||{},o=cn(cn({},e),r),i=(o.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js")+"?config="+(o.config||"TeX-AMS_HTML-full");o.tex2jax=cn(cn({},e.tex2jax),r.tex2jax),o.mathjax=o.config=null,function(t,e){var n=this,r=document.querySelector("head"),o=document.createElement("script");o.type="text/javascript",o.src=t;var i=function(){"function"==typeof e&&(e.call(),e=null)};o.onload=i,o.onreadystatechange=function(){"loaded"===n.readyState&&i()},r.appendChild(o)}(i,(function(){MathJax.Hub.Config(o),MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.getRevealElement()]),MathJax.Hub.Queue(t.layout),t.on("slidechanged",(function(t){MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.currentSlide])}))}))}}},ya=va;return Plugin=Object.assign(ya(),{KaTeX:function(){var t,e={version:"latest",delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\[",right:"\\]",display:!0}],ignoredTags:["script","noscript","style","textarea","pre"]},n=function(t){return new Promise((function(e,n){var r=document.createElement("script");r.type="text/javascript",r.onload=e,r.onerror=n,r.src=t,document.head.append(r)}))};function r(){return(r=fn(regeneratorRuntime.mark((function t(e){var r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=hn(e),t.prev=1,r.s();case 3:if((o=r.n()).done){t.next=9;break}return i=o.value,t.next=7,n(i);case 7:t.next=3;break;case 9:t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),r.e(t.t0);case 14:return t.prev=14,r.f(),t.finish(14);case 17:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})))).apply(this,arguments)}return{id:"katex",init:function(n){var o=this,i=(t=n).getConfig().katex||{},a=cn(cn({},e),i);a.local,a.version,a.extensions;var c=ln(a,["local","version","extensions"]),u=a.local||"https://cdn.jsdelivr.net/npm/katex",f=a.local?"":"@"+a.version,s=u+f+"/dist/katex.min.css",l=u+f+"/dist/contrib/mhchem.min.js",p=u+f+"/dist/contrib/auto-render.min.js",h=[u+f+"/dist/katex.min.js"];a.extensions&&a.extensions.includes("mhchem")&&h.push(l),h.push(p);var d,v,y=function(){renderMathInElement(n.getSlidesElement(),c),t.layout()};d=s,(v=document.createElement("link")).rel="stylesheet",v.href=d,document.head.appendChild(v),function(t){return r.apply(this,arguments)}(h).then((function(){t.isReady()?y():t.on("ready",y.bind(o))}))}}},MathJax2:va,MathJax3:function(){var t={tex:{inlineMath:[["$","$"],["\\(","\\)"]]},options:{skipHtmlTags:["script","noscript","style","textarea","pre"]},startup:{ready:function(){MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){Reveal.layout()}))}}};return{id:"mathjax3",init:function(e){var n=e.getConfig().mathjax3||{},r=cn(cn({},t),n);r.tex=cn(cn({},t.tex),n.tex),r.options=cn(cn({},r.options),t.options),r.startup=cn(cn({},t.startup),n.startup);var o=r.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js";r.mathjax=null,window.MathJax=r,function(t,e){var n=document.createElement("script");n.type="text/javascript",n.id="MathJax-script",n.src=t,n.async=!0,n.onload=function(){"function"==typeof e&&(e.call(),e=null)},document.head.appendChild(n)}(o,(function(){Reveal.addEventListener("slidechanged",(function(t){MathJax.typeset()}))}))}}}})})); diff --git a/public/site_libs/revealjs/plugin/math/mathjax2.js b/public/site_libs/revealjs/plugin/math/mathjax2.js new file mode 100644 index 0000000..daebe7e --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/mathjax2.js @@ -0,0 +1,89 @@ +/** + * A plugin which enables rendering of math equations inside + * of reveal.js slides. Essentially a thin wrapper for MathJax. + * + * @author Hakim El Hattab + */ +export const MathJax2 = () => { + + // The reveal.js instance this plugin is attached to + let deck; + + let defaultOptions = { + messageStyle: 'none', + tex2jax: { + inlineMath: [ [ '$', '$' ], [ '\\(', '\\)' ] ], + skipTags: [ 'script', 'noscript', 'style', 'textarea', 'pre' ] + }, + skipStartupTypeset: true + }; + + function loadScript( url, callback ) { + + let head = document.querySelector( 'head' ); + let script = document.createElement( 'script' ); + script.type = 'text/javascript'; + script.src = url; + + // Wrapper for callback to make sure it only fires once + let finish = () => { + if( typeof callback === 'function' ) { + callback.call(); + callback = null; + } + } + + script.onload = finish; + + // IE + script.onreadystatechange = () => { + if ( this.readyState === 'loaded' ) { + finish(); + } + } + + // Normal browsers + head.appendChild( script ); + + } + + return { + id: 'mathjax2', + + init: function( reveal ) { + + deck = reveal; + + let revealOptions = deck.getConfig().mathjax2 || deck.getConfig().math || {}; + + let options = { ...defaultOptions, ...revealOptions }; + let mathjax = options.mathjax || 'https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js'; + let config = options.config || 'TeX-AMS_HTML-full'; + let url = mathjax + '?config=' + config; + + options.tex2jax = { ...defaultOptions.tex2jax, ...revealOptions.tex2jax }; + + options.mathjax = options.config = null; + + loadScript( url, function() { + + MathJax.Hub.Config( options ); + + // Typeset followed by an immediate reveal.js layout since + // the typesetting process could affect slide height + MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, deck.getRevealElement() ] ); + MathJax.Hub.Queue( deck.layout ); + + // Reprocess equations in slides when they turn visible + deck.on( 'slidechanged', function( event ) { + + MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, event.currentSlide ] ); + + } ); + + } ); + + } + } + +}; diff --git a/public/site_libs/revealjs/plugin/math/mathjax3.js b/public/site_libs/revealjs/plugin/math/mathjax3.js new file mode 100644 index 0000000..38eb4ef --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/mathjax3.js @@ -0,0 +1,77 @@ +/** + * A plugin which enables rendering of math equations inside + * of reveal.js slides. Essentially a thin wrapper for MathJax 3 + * + * @author Hakim El Hattab + * @author Gerhard Burger + */ +export const MathJax3 = () => { + + // The reveal.js instance this plugin is attached to + let deck; + + let defaultOptions = { + tex: { + inlineMath: [ [ '$', '$' ], [ '\\(', '\\)' ] ] + }, + options: { + skipHtmlTags: [ 'script', 'noscript', 'style', 'textarea', 'pre' ] + }, + startup: { + ready: () => { + MathJax.startup.defaultReady(); + MathJax.startup.promise.then(() => { + Reveal.layout(); + }); + } + } + }; + + function loadScript( url, callback ) { + + let script = document.createElement( 'script' ); + script.type = "text/javascript" + script.id = "MathJax-script" + script.src = url; + script.async = true + + // Wrapper for callback to make sure it only fires once + script.onload = () => { + if (typeof callback === 'function') { + callback.call(); + callback = null; + } + }; + + document.head.appendChild( script ); + + } + + return { + id: 'mathjax3', + init: function(reveal) { + + deck = reveal; + + let revealOptions = deck.getConfig().mathjax3 || {}; + let options = {...defaultOptions, ...revealOptions}; + options.tex = {...defaultOptions.tex, ...revealOptions.tex} + options.options = {...options.options, ...defaultOptions.options} + options.startup = {...defaultOptions.startup, ...revealOptions.startup} + + let url = options.mathjax || 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js'; + options.mathjax = null; + + window.MathJax = options; + + loadScript( url, function() { + // Reprocess equations in slides when they turn visible + Reveal.addEventListener( 'slidechanged', function( event ) { + MathJax.typeset(); + } ); + } ); + + } + } + +}; diff --git a/public/site_libs/revealjs/plugin/math/plugin.js b/public/site_libs/revealjs/plugin/math/plugin.js new file mode 100644 index 0000000..a92ccfb --- /dev/null +++ b/public/site_libs/revealjs/plugin/math/plugin.js @@ -0,0 +1,15 @@ +import {KaTeX} from "./katex"; +import {MathJax2} from "./mathjax2"; +import {MathJax3} from "./mathjax3"; + +const defaultTypesetter = MathJax2; + +/*! + * This plugin is a wrapper for the MathJax2, + * MathJax3 and KaTeX typesetter plugins. + */ +export default Plugin = Object.assign( defaultTypesetter(), { + KaTeX, + MathJax2, + MathJax3 +} ); \ No newline at end of file diff --git a/public/site_libs/revealjs/plugin/notes/notes.esm.js b/public/site_libs/revealjs/plugin/notes/notes.esm.js new file mode 100644 index 0000000..626e3fe --- /dev/null +++ b/public/site_libs/revealjs/plugin/notes/notes.esm.js @@ -0,0 +1 @@ +var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=function(t){return t&&t.Math==Math&&t},n=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")(),r={},u=function(t){try{return!!t()}catch(t){return!0}},i=!u((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),a={},o={}.propertyIsEnumerable,l=Object.getOwnPropertyDescriptor,s=l&&!o.call({1:2},1);a.f=s?function(t){var e=l(this,t);return!!e&&e.enumerable}:o;var c=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},p={}.toString,d=function(t){return p.call(t).slice(8,-1)},f=d,h="".split,g=u((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==f(t)?h.call(t,""):Object(t)}:Object,D=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},m=g,v=D,y=function(t){return m(v(t))},k=function(t){return"object"==typeof t?null!==t:"function"==typeof t},A=k,E=function(t,e){if(!A(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!A(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!A(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!A(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},b=D,F=function(t){return Object(b(t))},C=F,x={}.hasOwnProperty,w=function(t,e){return x.call(C(t),e)},S=k,B=n.document,_=S(B)&&S(B.createElement),T=function(t){return _?B.createElement(t):{}},z=T,I=!i&&!u((function(){return 7!=Object.defineProperty(z("div"),"a",{get:function(){return 7}}).a})),R=i,$=a,O=c,P=y,L=E,j=w,M=I,N=Object.getOwnPropertyDescriptor;r.f=R?N:function(t,e){if(t=P(t),e=L(e,!0),M)try{return N(t,e)}catch(t){}if(j(t,e))return O(!$.f.call(t,e),t[e])};var U={},q=k,Z=function(t){if(!q(t))throw TypeError(String(t)+" is not an object");return t},K=i,J=I,H=Z,W=E,Y=Object.defineProperty;U.f=K?Y:function(t,e,n){if(H(t),e=W(e,!0),H(n),J)try{return Y(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t};var V=U,X=c,G=i?function(t,e,n){return V.f(t,e,X(1,n))}:function(t,e,n){return t[e]=n,t},Q={exports:{}},tt=n,et=G,nt=function(t,e){try{et(tt,t,e)}catch(n){tt[t]=e}return e},rt=nt,ut=n["__core-js_shared__"]||rt("__core-js_shared__",{}),it=ut,at=Function.toString;"function"!=typeof it.inspectSource&&(it.inspectSource=function(t){return at.call(t)});var ot=it.inspectSource,lt=ot,st=n.WeakMap,ct="function"==typeof st&&/native code/.test(lt(st)),pt={exports:{}},dt=ut;(pt.exports=function(t,e){return dt[t]||(dt[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var ft,ht,gt,Dt=0,mt=Math.random(),vt=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++Dt+mt).toString(36)},yt=pt.exports,kt=vt,At=yt("keys"),Et=function(t){return At[t]||(At[t]=kt(t))},bt={},Ft=ct,Ct=k,xt=G,wt=w,St=ut,Bt=Et,_t=bt,Tt=n.WeakMap;if(Ft||St.state){var zt=St.state||(St.state=new Tt),It=zt.get,Rt=zt.has,$t=zt.set;ft=function(t,e){if(Rt.call(zt,t))throw new TypeError("Object already initialized");return e.facade=t,$t.call(zt,t,e),e},ht=function(t){return It.call(zt,t)||{}},gt=function(t){return Rt.call(zt,t)}}else{var Ot=Bt("state");_t[Ot]=!0,ft=function(t,e){if(wt(t,Ot))throw new TypeError("Object already initialized");return e.facade=t,xt(t,Ot,e),e},ht=function(t){return wt(t,Ot)?t[Ot]:{}},gt=function(t){return wt(t,Ot)}}var Pt={set:ft,get:ht,has:gt,enforce:function(t){return gt(t)?ht(t):ft(t,{})},getterFor:function(t){return function(e){var n;if(!Ct(e)||(n=ht(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},Lt=n,jt=G,Mt=w,Nt=nt,Ut=ot,qt=Pt.get,Zt=Pt.enforce,Kt=String(String).split("String");(Q.exports=function(t,e,n,r){var u,i=!!r&&!!r.unsafe,a=!!r&&!!r.enumerable,o=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof e||Mt(n,"name")||jt(n,"name",e),(u=Zt(n)).source||(u.source=Kt.join("string"==typeof e?e:""))),t!==Lt?(i?!o&&t[e]&&(a=!0):delete t[e],a?t[e]=n:jt(t,e,n)):a?t[e]=n:Nt(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&qt(this).source||Ut(this)}));var Jt=n,Ht=n,Wt=function(t){return"function"==typeof t?t:void 0},Yt=function(t,e){return arguments.length<2?Wt(Jt[t])||Wt(Ht[t]):Jt[t]&&Jt[t][e]||Ht[t]&&Ht[t][e]},Vt={},Xt=Math.ceil,Gt=Math.floor,Qt=function(t){return isNaN(t=+t)?0:(t>0?Gt:Xt)(t)},te=Qt,ee=Math.min,ne=function(t){return t>0?ee(te(t),9007199254740991):0},re=Qt,ue=Math.max,ie=Math.min,ae=function(t,e){var n=re(t);return n<0?ue(n+e,0):ie(n,e)},oe=y,le=ne,se=ae,ce=function(t){return function(e,n,r){var u,i=oe(e),a=le(i.length),o=se(r,a);if(t&&n!=n){for(;a>o;)if((u=i[o++])!=u)return!0}else for(;a>o;o++)if((t||o in i)&&i[o]===n)return t||o||0;return!t&&-1}},pe={includes:ce(!0),indexOf:ce(!1)},de=w,fe=y,he=pe.indexOf,ge=bt,De=function(t,e){var n,r=fe(t),u=0,i=[];for(n in r)!de(ge,n)&&de(r,n)&&i.push(n);for(;e.length>u;)de(r,n=e[u++])&&(~he(i,n)||i.push(n));return i},me=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ve=De,ye=me.concat("length","prototype");Vt.f=Object.getOwnPropertyNames||function(t){return ve(t,ye)};var ke={};ke.f=Object.getOwnPropertySymbols;var Ae=Vt,Ee=ke,be=Z,Fe=Yt("Reflect","ownKeys")||function(t){var e=Ae.f(be(t)),n=Ee.f;return n?e.concat(n(t)):e},Ce=w,xe=Fe,we=r,Se=U,Be=u,_e=/#|\.prototype\./,Te=function(t,e){var n=Ie[ze(t)];return n==$e||n!=Re&&("function"==typeof e?Be(e):!!e)},ze=Te.normalize=function(t){return String(t).replace(_e,".").toLowerCase()},Ie=Te.data={},Re=Te.NATIVE="N",$e=Te.POLYFILL="P",Oe=Te,Pe=n,Le=r.f,je=G,Me=Q.exports,Ne=nt,Ue=function(t,e){for(var n=xe(e),r=Se.f,u=we.f,i=0;i<n.length;i++){var a=n[i];Ce(t,a)||r(t,a,u(e,a))}},qe=Oe,Ze=function(t,e){var n,r,u,i,a,o=t.target,l=t.global,s=t.stat;if(n=l?Pe:s?Pe[o]||Ne(o,{}):(Pe[o]||{}).prototype)for(r in e){if(i=e[r],u=t.noTargetGet?(a=Le(n,r))&&a.value:n[r],!qe(l?r:o+(s?".":"#")+r,t.forced)&&void 0!==u){if(typeof i==typeof u)continue;Ue(i,u)}(t.sham||u&&u.sham)&&je(i,"sham",!0),Me(n,r,i,t)}},Ke=Z,Je=function(){var t=Ke(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e},He={},We=u;function Ye(t,e){return RegExp(t,e)}He.UNSUPPORTED_Y=We((function(){var t=Ye("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),He.BROKEN_CARET=We((function(){var t=Ye("^r","gy");return t.lastIndex=2,null!=t.exec("str")}));var Ve=Je,Xe=He,Ge=pt.exports,Qe=RegExp.prototype.exec,tn=Ge("native-string-replace",String.prototype.replace),en=Qe,nn=function(){var t=/a/,e=/b*/g;return Qe.call(t,"a"),Qe.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),rn=Xe.UNSUPPORTED_Y||Xe.BROKEN_CARET,un=void 0!==/()??/.exec("")[1];(nn||un||rn)&&(en=function(t){var e,n,r,u,i=this,a=rn&&i.sticky,o=Ve.call(i),l=i.source,s=0,c=t;return a&&(-1===(o=o.replace("y","")).indexOf("g")&&(o+="g"),c=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==t[i.lastIndex-1])&&(l="(?: "+l+")",c=" "+c,s++),n=new RegExp("^(?:"+l+")",o)),un&&(n=new RegExp("^"+l+"$(?!\\s)",o)),nn&&(e=i.lastIndex),r=Qe.call(a?n:i,c),a?r?(r.input=r.input.slice(s),r[0]=r[0].slice(s),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:nn&&r&&(i.lastIndex=i.global?r.index+r[0].length:e),un&&r&&r.length>1&&tn.call(r[0],n,(function(){for(u=1;u<arguments.length-2;u++)void 0===arguments[u]&&(r[u]=void 0)})),r});var an=en;Ze({target:"RegExp",proto:!0,forced:/./.exec!==an},{exec:an});var on,ln,sn=Yt("navigator","userAgent")||"",cn=n.process,pn=cn&&cn.versions,dn=pn&&pn.v8;dn?ln=(on=dn.split("."))[0]<4?1:on[0]+on[1]:sn&&(!(on=sn.match(/Edge\/(\d+)/))||on[1]>=74)&&(on=sn.match(/Chrome\/(\d+)/))&&(ln=on[1]);var fn=ln&&+ln,hn=fn,gn=u,Dn=!!Object.getOwnPropertySymbols&&!gn((function(){return!String(Symbol())||!Symbol.sham&&hn&&hn<41})),mn=Dn&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,vn=n,yn=pt.exports,kn=w,An=vt,En=Dn,bn=mn,Fn=yn("wks"),Cn=vn.Symbol,xn=bn?Cn:Cn&&Cn.withoutSetter||An,wn=function(t){return kn(Fn,t)&&(En||"string"==typeof Fn[t])||(En&&kn(Cn,t)?Fn[t]=Cn[t]:Fn[t]=xn("Symbol."+t)),Fn[t]},Sn=Q.exports,Bn=an,_n=u,Tn=wn,zn=G,In=Tn("species"),Rn=RegExp.prototype,$n=!_n((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),On="$0"==="a".replace(/./,"$0"),Pn=Tn("replace"),Ln=!!/./[Pn]&&""===/./[Pn]("a","$0"),jn=!_n((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Mn=function(t,e,n,r){var u=Tn(t),i=!_n((function(){var e={};return e[u]=function(){return 7},7!=""[t](e)})),a=i&&!_n((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[In]=function(){return n},n.flags="",n[u]=/./[u]),n.exec=function(){return e=!0,null},n[u](""),!e}));if(!i||!a||"replace"===t&&(!$n||!On||Ln)||"split"===t&&!jn){var o=/./[u],l=n(u,""[t],(function(t,e,n,r,u){var a=e.exec;return a===Bn||a===Rn.exec?i&&!u?{done:!0,value:o.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:On,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Ln}),s=l[0],c=l[1];Sn(String.prototype,t,s),Sn(Rn,u,2==e?function(t,e){return c.call(t,this,e)}:function(t){return c.call(t,this)})}r&&zn(Rn[u],"sham",!0)},Nn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e},Un=d,qn=an,Zn=function(t,e){var n=t.exec;if("function"==typeof n){var r=n.call(t,e);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==Un(t))throw TypeError("RegExp#exec called on incompatible receiver");return qn.call(t,e)},Kn=Z,Jn=D,Hn=Nn,Wn=Zn;Mn("search",1,(function(t,e,n){return[function(e){var n=Jn(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var u=Kn(t),i=String(this),a=u.lastIndex;Hn(a,0)||(u.lastIndex=0);var o=Wn(u,i);return Hn(u.lastIndex,a)||(u.lastIndex=a),null===o?-1:o.index}]}));var Yn=Qt,Vn=D,Xn=function(t){return function(e,n){var r,u,i=String(Vn(e)),a=Yn(n),o=i.length;return a<0||a>=o?t?"":void 0:(r=i.charCodeAt(a))<55296||r>56319||a+1===o||(u=i.charCodeAt(a+1))<56320||u>57343?t?i.charAt(a):r:t?i.slice(a,a+2):u-56320+(r-55296<<10)+65536}},Gn={codeAt:Xn(!1),charAt:Xn(!0)}.charAt,Qn=function(t,e,n){return e+(n?Gn(t,e).length:1)},tr=Z,er=ne,nr=D,rr=Qn,ur=Zn;function ir(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ar(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function or(t,e,n){return e&&ar(t.prototype,e),n&&ar(t,n),t}function lr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null==n)return;var r,u,i=[],a=!0,o=!1;try{for(n=n.call(t);!(a=(r=n.next()).done)&&(i.push(r.value),!e||i.length!==e);a=!0);}catch(t){o=!0,u=t}finally{try{a||null==n.return||n.return()}finally{if(o)throw u}}return i}(t,e)||sr(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function sr(t,e){if(t){if("string"==typeof t)return cr(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?cr(t,e):void 0}}function cr(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function pr(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=sr(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,u=function(){};return{s:u,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}Mn("match",1,(function(t,e,n){return[function(e){var n=nr(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var u=tr(t),i=String(this);if(!u.global)return ur(u,i);var a=u.unicode;u.lastIndex=0;for(var o,l=[],s=0;null!==(o=ur(u,i));){var c=String(o[0]);l[s]=c,""===c&&(u.lastIndex=rr(i,er(u.lastIndex),a)),s++}return 0===s?null:l}]}));var dr={};dr[wn("toStringTag")]="z";var fr="[object z]"===String(dr),hr=fr,gr=d,Dr=wn("toStringTag"),mr="Arguments"==gr(function(){return arguments}()),vr=hr?gr:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Dr))?n:mr?gr(e):"Object"==(r=gr(e))&&"function"==typeof e.callee?"Arguments":r},yr=fr?{}.toString:function(){return"[object "+vr(this)+"]"},kr=fr,Ar=Q.exports,Er=yr;kr||Ar(Object.prototype,"toString",Er,{unsafe:!0});var br=F,Fr=Math.floor,Cr="".replace,xr=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,wr=/\$([$&'`]|\d{1,2})/g,Sr=Mn,Br=Z,_r=ne,Tr=Qt,zr=D,Ir=Qn,Rr=function(t,e,n,r,u,i){var a=n+t.length,o=r.length,l=wr;return void 0!==u&&(u=br(u),l=xr),Cr.call(i,l,(function(i,l){var s;switch(l.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(a);case"<":s=u[l.slice(1,-1)];break;default:var c=+l;if(0===c)return i;if(c>o){var p=Fr(c/10);return 0===p?i:p<=o?void 0===r[p-1]?l.charAt(1):r[p-1]+l.charAt(1):i}s=r[c-1]}return void 0===s?"":s}))},$r=Zn,Or=Math.max,Pr=Math.min;Sr("replace",2,(function(t,e,n,r){var u=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,a=u?"$":"$0";return[function(n,r){var u=zr(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,u,r):e.call(String(u),n,r)},function(t,r){if(!u&&i||"string"==typeof r&&-1===r.indexOf(a)){var o=n(e,t,this,r);if(o.done)return o.value}var l=Br(t),s=String(this),c="function"==typeof r;c||(r=String(r));var p=l.global;if(p){var d=l.unicode;l.lastIndex=0}for(var f=[];;){var h=$r(l,s);if(null===h)break;if(f.push(h),!p)break;""===String(h[0])&&(l.lastIndex=Ir(s,_r(l.lastIndex),d))}for(var g,D="",m=0,v=0;v<f.length;v++){h=f[v];for(var y=String(h[0]),k=Or(Pr(Tr(h.index),s.length),0),A=[],E=1;E<h.length;E++)A.push(void 0===(g=h[E])?g:String(g));var b=h.groups;if(c){var F=[y].concat(A,k,s);void 0!==b&&F.push(b);var C=String(r.apply(void 0,F))}else C=Rr(y,s,k,A,b,r);k>=m&&(D+=s.slice(m,k)+C,m=k+y.length)}return D+s.slice(m)}]}));var Lr=Q.exports,jr=Z,Mr=u,Nr=Je,Ur=RegExp.prototype,qr=Ur.toString,Zr=Mr((function(){return"/a/b"!=qr.call({source:"a",flags:"b"})})),Kr="toString"!=qr.name;(Zr||Kr)&&Lr(RegExp.prototype,"toString",(function(){var t=jr(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in Ur)?Nr.call(t):n)}),{unsafe:!0});var Jr=De,Hr=me,Wr=Object.keys||function(t){return Jr(t,Hr)},Yr=F,Vr=Wr;Ze({target:"Object",stat:!0,forced:u((function(){Vr(1)}))},{keys:function(t){return Vr(Yr(t))}});var Xr,Gr=U,Qr=Z,tu=Wr,eu=i?Object.defineProperties:function(t,e){Qr(t);for(var n,r=tu(e),u=r.length,i=0;u>i;)Gr.f(t,n=r[i++],e[n]);return t},nu=Yt("document","documentElement"),ru=Z,uu=eu,iu=me,au=bt,ou=nu,lu=T,su=Et("IE_PROTO"),cu=function(){},pu=function(t){return"<script>"+t+"<\/script>"},du=function(){try{Xr=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;du=Xr?function(t){t.write(pu("")),t.close();var e=t.parentWindow.Object;return t=null,e}(Xr):((e=lu("iframe")).style.display="none",ou.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(pu("document.F=Object")),t.close(),t.F);for(var n=iu.length;n--;)delete du.prototype[iu[n]];return du()};au[su]=!0;var fu=Object.create||function(t,e){var n;return null!==t?(cu.prototype=ru(t),n=new cu,cu.prototype=null,n[su]=t):n=du(),void 0===e?n:uu(n,e)},hu=U,gu=wn("unscopables"),Du=Array.prototype;null==Du[gu]&&hu.f(Du,gu,{configurable:!0,value:fu(null)});var mu=pe.includes,vu=function(t){Du[gu][t]=!0};Ze({target:"Array",proto:!0},{includes:function(t){return mu(this,t,arguments.length>1?arguments[1]:void 0)}}),vu("includes");var yu=k,ku=d,Au=wn("match"),Eu=function(t){var e;return yu(t)&&(void 0!==(e=t[Au])?!!e:"RegExp"==ku(t))},bu=Eu,Fu=wn("match"),Cu=function(t){if(bu(t))throw TypeError("The method doesn't accept regular expressions");return t},xu=D;Ze({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[Fu]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~String(xu(this)).indexOf(Cu(t),arguments.length>1?arguments[1]:void 0)}});var wu=d,Su=Array.isArray||function(t){return"Array"==wu(t)},Bu=E,_u=U,Tu=c,zu=function(t,e,n){var r=Bu(e);r in t?_u.f(t,r,Tu(0,n)):t[r]=n},Iu=u,Ru=fn,$u=wn("species"),Ou=function(t){return Ru>=51||!Iu((function(){var e=[];return(e.constructor={})[$u]=function(){return{foo:1}},1!==e[t](Boolean).foo}))},Pu=Ze,Lu=k,ju=Su,Mu=ae,Nu=ne,Uu=y,qu=zu,Zu=wn,Ku=Ou("slice"),Ju=Zu("species"),Hu=[].slice,Wu=Math.max;Pu({target:"Array",proto:!0,forced:!Ku},{slice:function(t,e){var n,r,u,i=Uu(this),a=Nu(i.length),o=Mu(t,a),l=Mu(void 0===e?a:e,a);if(ju(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!ju(n.prototype)?Lu(n)&&null===(n=n[Ju])&&(n=void 0):n=void 0,n===Array||void 0===n))return Hu.call(i,o,l);for(r=new(void 0===n?Array:n)(Wu(l-o,0)),u=0;o<l;o++,u++)o in i&&qu(r,u,i[o]);return r.length=u,r}});var Yu=D,Vu=/"/g,Xu=u,Gu=function(t,e,n,r){var u=String(Yu(t)),i="<"+e;return""!==n&&(i+=" "+n+'="'+String(r).replace(Vu,""")+'"'),i+">"+u+"</"+e+">"};Ze({target:"String",proto:!0,forced:function(t){return Xu((function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}))}("link")},{link:function(t){return Gu(this,"a","href",t)}});var Qu=u,ti=Ze,ei=y,ni=[].join,ri=g!=Object,ui=function(t,e){var n=[][t];return!!n&&Qu((function(){n.call(null,e||function(){throw 1},1)}))}("join",",");ti({target:"Array",proto:!0,forced:ri||!ui},{join:function(t){return ni.call(ei(this),void 0===t?",":t)}});var ii=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},ai=ii,oi=k,li=Su,si=wn("species"),ci=function(t,e){var n;return li(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!li(n.prototype)?oi(n)&&null===(n=n[si])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)},pi=function(t,e,n){if(ai(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,u){return t.call(e,n,r,u)}}return function(){return t.apply(e,arguments)}},di=g,fi=F,hi=ne,gi=ci,Di=[].push,mi=function(t){var e=1==t,n=2==t,r=3==t,u=4==t,i=6==t,a=7==t,o=5==t||i;return function(l,s,c,p){for(var d,f,h=fi(l),g=di(h),D=pi(s,c,3),m=hi(g.length),v=0,y=p||gi,k=e?y(l,m):n||a?y(l,0):void 0;m>v;v++)if((o||v in g)&&(f=D(d=g[v],v,h),t))if(e)k[v]=f;else if(f)switch(t){case 3:return!0;case 5:return d;case 6:return v;case 2:Di.call(k,d)}else switch(t){case 4:return!1;case 7:Di.call(k,d)}return i?-1:r||u?u:k}},vi={forEach:mi(0),map:mi(1),filter:mi(2),some:mi(3),every:mi(4),find:mi(5),findIndex:mi(6),filterOut:mi(7)}.map;Ze({target:"Array",proto:!0,forced:!Ou("map")},{map:function(t){return vi(this,t,arguments.length>1?arguments[1]:void 0)}});var yi=Z,ki=ii,Ai=wn("species"),Ei=Mn,bi=Eu,Fi=Z,Ci=D,xi=function(t,e){var n,r=yi(t).constructor;return void 0===r||null==(n=yi(r)[Ai])?e:ki(n)},wi=Qn,Si=ne,Bi=Zn,_i=an,Ti=He.UNSUPPORTED_Y,zi=[].push,Ii=Math.min;Ei("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(Ci(this)),u=void 0===n?4294967295:n>>>0;if(0===u)return[];if(void 0===t)return[r];if(!bi(t))return e.call(r,t,u);for(var i,a,o,l=[],s=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),c=0,p=new RegExp(t.source,s+"g");(i=_i.call(p,r))&&!((a=p.lastIndex)>c&&(l.push(r.slice(c,i.index)),i.length>1&&i.index<r.length&&zi.apply(l,i.slice(1)),o=i[0].length,c=a,l.length>=u));)p.lastIndex===i.index&&p.lastIndex++;return c===r.length?!o&&p.test("")||l.push(""):l.push(r.slice(c)),l.length>u?l.slice(0,u):l}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var u=Ci(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,u,n):r.call(String(u),e,n)},function(t,u){var i=n(r,t,this,u,r!==e);if(i.done)return i.value;var a=Fi(t),o=String(this),l=xi(a,RegExp),s=a.unicode,c=(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(Ti?"g":"y"),p=new l(Ti?"^(?:"+a.source+")":a,c),d=void 0===u?4294967295:u>>>0;if(0===d)return[];if(0===o.length)return null===Bi(p,o)?[o]:[];for(var f=0,h=0,g=[];h<o.length;){p.lastIndex=Ti?0:h;var D,m=Bi(p,Ti?o.slice(h):o);if(null===m||(D=Ii(Si(p.lastIndex+(Ti?h:0)),o.length))===f)h=wi(o,h,s);else{if(g.push(o.slice(f,h)),g.length===d)return g;for(var v=1;v<=m.length-1;v++)if(g.push(m[v]),g.length===d)return g;h=f=D}}return g.push(o.slice(f)),g}]}),Ti);var Ri=D,$i="[\t\n\v\f\r \u2028\u2029\ufeff]",Oi=RegExp("^"+$i+$i+"*"),Pi=RegExp($i+$i+"*$"),Li=function(t){return function(e){var n=String(Ri(e));return 1&t&&(n=n.replace(Oi,"")),2&t&&(n=n.replace(Pi,"")),n}},ji={start:Li(1),end:Li(2),trim:Li(3)},Mi=u,Ni="\t\n\v\f\r \u2028\u2029\ufeff",Ui=ji.trim;Ze({target:"String",proto:!0,forced:function(t){return Mi((function(){return!!Ni[t]()||" "!=" "[t]()||Ni[t].name!==t}))}("trim")},{trim:function(){return Ui(this)}});var qi=k,Zi=Z,Ki=function(t){if(!qi(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},Ji=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return Zi(n),Ki(r),e?t.call(n,r):n.__proto__=r,n}}():void 0),Hi=k,Wi=Ji,Yi=Yt,Vi=U,Xi=i,Gi=wn("species"),Qi=i,ta=n,ea=Oe,na=function(t,e,n){var r,u;return Wi&&"function"==typeof(r=e.constructor)&&r!==n&&Hi(u=r.prototype)&&u!==n.prototype&&Wi(t,u),t},ra=U.f,ua=Vt.f,ia=Eu,aa=Je,oa=He,la=Q.exports,sa=u,ca=Pt.enforce,pa=function(t){var e=Yi(t),n=Vi.f;Xi&&e&&!e[Gi]&&n(e,Gi,{configurable:!0,get:function(){return this}})},da=wn("match"),fa=ta.RegExp,ha=fa.prototype,ga=/a/g,Da=/a/g,ma=new fa(ga)!==ga,va=oa.UNSUPPORTED_Y;if(Qi&&ea("RegExp",!ma||va||sa((function(){return Da[da]=!1,fa(ga)!=ga||fa(Da)==Da||"/a/i"!=fa(ga,"i")})))){for(var ya=function(t,e){var n,r=this instanceof ya,u=ia(t),i=void 0===e;if(!r&&u&&t.constructor===ya&&i)return t;ma?u&&!i&&(t=t.source):t instanceof ya&&(i&&(e=aa.call(t)),t=t.source),va&&(n=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,""));var a=na(ma?new fa(t,e):fa(t,e),r?this:ha,ya);va&&n&&(ca(a).sticky=!0);return a},ka=function(t){t in ya||ra(ya,t,{configurable:!0,get:function(){return fa[t]},set:function(e){fa[t]=e}})},Aa=ua(fa),Ea=0;Aa.length>Ea;)ka(Aa[Ea++]);ha.constructor=ya,ya.prototype=ha,la(ta,"RegExp",ya)}pa("RegExp");var ba=Ze,Fa=ae,Ca=Qt,xa=ne,wa=F,Sa=ci,Ba=zu,_a=Ou("splice"),Ta=Math.max,za=Math.min;ba({target:"Array",proto:!0,forced:!_a},{splice:function(t,e){var n,r,u,i,a,o,l=wa(this),s=xa(l.length),c=Fa(t,s),p=arguments.length;if(0===p?n=r=0:1===p?(n=0,r=s-c):(n=p-2,r=za(Ta(Ca(e),0),s-c)),s+n-r>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(u=Sa(l,r),i=0;i<r;i++)(a=c+i)in l&&Ba(u,i,l[a]);if(u.length=r,n<r){for(i=c;i<s-r;i++)o=i+n,(a=i+r)in l?l[o]=l[a]:delete l[o];for(i=s;i>s-r+n;i--)delete l[i-1]}else if(n>r)for(i=s-r;i>c;i--)o=i+n-1,(a=i+r-1)in l?l[o]=l[a]:delete l[o];for(i=0;i<n;i++)l[i+c]=arguments[i+2];return l.length=s-r+n,u}});var Ia={exports:{}};function Ra(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}Ia.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:Ra,changeDefaults:function(t){Ia.exports.defaults=t}};var $a=/[&<>"']/,Oa=/[&<>"']/g,Pa=/[<>"']|&(?!#?\w+;)/,La=/[<>"']|&(?!#?\w+;)/g,ja={"&":"&","<":"<",">":">",'"':""","'":"'"},Ma=function(t){return ja[t]};var Na=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function Ua(t){return t.replace(Na,(function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""}))}var qa=/(^|[^\[])\^/g;var Za=/[^\w:]/g,Ka=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var Ja={},Ha=/^[^:]+:\/*[^/]*$/,Wa=/^([^:]+:)[\s\S]*$/,Ya=/^([^:]+:\/*[^/]*)[\s\S]*$/;function Va(t,e){Ja[" "+t]||(Ha.test(t)?Ja[" "+t]=t+"/":Ja[" "+t]=Xa(t,"/",!0));var n=-1===(t=Ja[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(Wa,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(Ya,"$1")+e:t+e}function Xa(t,e,n){var r=t.length;if(0===r)return"";for(var u=0;u<r;){var i=t.charAt(r-u-1);if(i!==e||n){if(i===e||!n)break;u++}else u++}return t.substr(0,r-u)}var Ga=function(t,e){if(e){if($a.test(t))return t.replace(Oa,Ma)}else if(Pa.test(t))return t.replace(La,Ma);return t},Qa=Ua,to=function(t,e){t=t.source||t,e=e||"";var n={replace:function(e,r){return r=(r=r.source||r).replace(qa,"$1"),t=t.replace(e,r),n},getRegex:function(){return new RegExp(t,e)}};return n},eo=function(t,e,n){if(t){var r;try{r=decodeURIComponent(Ua(n)).replace(Za,"").toLowerCase()}catch(t){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}e&&!Ka.test(n)&&(n=Va(e,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(t){return null}return n},no={exec:function(){}},ro=function(t){for(var e,n,r=1;r<arguments.length;r++)for(n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t},uo=function(t,e){var n=t.replace(/\|/g,(function(t,e,n){for(var r=!1,u=e;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"})).split(/ \|/),r=0;if(n.length>e)n.splice(e);else for(;n.length<e;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},io=Xa,ao=function(t,e){if(-1===t.indexOf(e[1]))return-1;for(var n=t.length,r=0,u=0;u<n;u++)if("\\"===t[u])u++;else if(t[u]===e[0])r++;else if(t[u]===e[1]&&--r<0)return u;return-1},oo=function(t){t&&t.sanitize&&!t.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")},lo=function(t,e){if(e<1)return"";for(var n="";e>1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},so=Ia.exports.defaults,co=io,po=uo,fo=Ga,ho=ao;function go(t,e,n){var r=e.href,u=e.title?fo(e.title):null,i=t[1].replace(/\\([\[\]])/g,"$1");return"!"!==t[0].charAt(0)?{type:"link",raw:n,href:r,title:u,text:i}:{type:"image",raw:n,href:r,title:u,text:fo(i)}}var Do=function(){function t(e){ir(this,t),this.options=e||so}return or(t,[{key:"space",value:function(t){var e=this.rules.block.newline.exec(t);if(e)return e[0].length>1?{type:"space",raw:e[0]}:{raw:"\n"}}},{key:"code",value:function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:co(n,"\n")}}}},{key:"fences",value:function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],r=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var r=n[1];return e.split("\n").map((function(t){var e=t.match(/^\s+/);return null===e?t:lr(e,1)[0].length>=r.length?t.slice(r.length):t})).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:r}}}},{key:"heading",value:function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var r=co(n,"#");this.options.pedantic?n=r.trim():r&&!/ $/.test(r)||(n=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}}},{key:"nptable",value:function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:po(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=po(n.cells[r],n.header.length);return n}}}},{key:"hr",value:function(t){var e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:e[0]}}},{key:"blockquote",value:function(t){var e=this.rules.block.blockquote.exec(t);if(e){var n=e[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}}},{key:"list",value:function(t){var e=this.rules.block.list.exec(t);if(e){var n,r,u,i,a,o,l,s,c,p=e[0],d=e[2],f=d.length>1,h={type:"list",raw:p,ordered:f,start:f?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),D=!1,m=g.length;u=this.rules.block.listItemStart.exec(g[0]);for(var v=0;v<m;v++){if(p=n=g[v],this.options.pedantic||(c=n.match(new RegExp("\\n\\s*\\n {0,"+(u[0].length-1)+"}\\S")))&&(a=n.length-c.index+g.slice(v+1).join("\n").length,h.raw=h.raw.substring(0,h.raw.length-a),p=n=n.substring(0,c.index),m=v+1),v!==m-1){if(i=this.rules.block.listItemStart.exec(g[v+1]),this.options.pedantic?i[1].length>u[1].length:i[1].length>=u[0].length||i[1].length>3){g.splice(v,2,g[v]+(!this.options.pedantic&&i[1].length<u[0].length&&!g[v].match(/\n$/)?"":"\n")+g[v+1]),v--,m--;continue}(!this.options.pedantic||this.options.smartLists?i[2][i[2].length-1]!==d[d.length-1]:f===(1===i[2].length))&&(a=g.slice(v+1).join("\n").length,h.raw=h.raw.substring(0,h.raw.length-a),v=m-1),u=i}r=n.length,~(n=n.replace(/^ *([*+-]|\d+[.)]) ?/,"")).indexOf("\n ")&&(r-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+r+"}","gm"),"")),n=co(n,"\n"),v!==m-1&&(p+="\n"),o=D||/\n\n(?!\s*$)/.test(p),v!==m-1&&(D="\n\n"===p.slice(-2),o||(o=D)),o&&(h.loose=!0),this.options.gfm&&(s=void 0,(l=/^\[[ xX]\] /.test(n))&&(s=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,""))),h.items.push({type:"list_item",raw:p,task:l,checked:s,loose:o,text:n})}return h}}},{key:"html",value:function(t){var e=this.rules.block.html.exec(t);if(e)return{type:this.options.sanitize?"paragraph":"html",raw:e[0],pre:!this.options.sanitizer&&("pre"===e[1]||"script"===e[1]||"style"===e[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(e[0]):fo(e[0]):e[0]}}},{key:"def",value:function(t){var e=this.rules.block.def.exec(t);if(e)return e[3]&&(e[3]=e[3].substring(1,e[3].length-1)),{type:"def",tag:e[1].toLowerCase().replace(/\s+/g," "),raw:e[0],href:e[2],title:e[3]}}},{key:"table",value:function(t){var e=this.rules.block.table.exec(t);if(e){var n={type:"table",header:po(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=e[0];var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=po(n.cells[r].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}}},{key:"lheading",value:function(t){var e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:"="===e[2].charAt(0)?1:2,text:e[1]}}},{key:"paragraph",value:function(t){var e=this.rules.block.paragraph.exec(t);if(e)return{type:"paragraph",raw:e[0],text:"\n"===e[1].charAt(e[1].length-1)?e[1].slice(0,-1):e[1]}}},{key:"text",value:function(t){var e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0]}}},{key:"escape",value:function(t){var e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:fo(e[1])}}},{key:"tag",value:function(t,e,n){var r=this.rules.inline.tag.exec(t);if(r)return!e&&/^<a /i.test(r[0])?e=!0:e&&/^<\/a>/i.test(r[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:r[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):fo(r[0]):r[0]}}},{key:"link",value:function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^</.test(n)){if(!/>$/.test(n))return;var r=co(n.slice(0,-1),"\\");if((n.length-r.length)%2==0)return}else{var u=ho(e[2],"()");if(u>-1){var i=(0===e[0].indexOf("!")?5:4)+e[1].length+u;e[2]=e[2].substring(0,u),e[0]=e[0].substring(0,i).trim(),e[3]=""}}var a=e[2],o="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(a);l&&(a=l[1],o=l[3])}else o=e[3]?e[3].slice(1,-1):"";return a=a.trim(),/^</.test(a)&&(a=this.options.pedantic&&!/>$/.test(n)?a.slice(1):a.slice(1,-1)),go(e,{href:a?a.replace(this.rules.inline._escapes,"$1"):a,title:o?o.replace(this.rules.inline._escapes,"$1"):o},e[0])}}},{key:"reflink",value:function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var r=(n[2]||n[1]).replace(/\s+/g," ");if(!(r=e[r.toLowerCase()])||!r.href){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return go(n,r,n[0])}}},{key:"emStrong",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrong.lDelim.exec(t);if(r&&(!r[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var u=r[1]||r[2]||"";if(!u||u&&(""===n||this.rules.inline.punctuation.exec(n))){var i,a,o=r[0].length-1,l=o,s=0,c="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(c.lastIndex=0,e=e.slice(-1*t.length+o);null!=(r=c.exec(e));)if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=i.length,r[3]||r[4])l+=a;else if(!((r[5]||r[6])&&o%3)||(o+a)%3){if(!((l-=a)>0)){if(l+s-a<=0&&!e.slice(c.lastIndex).match(c)&&(a=Math.min(a,a+l+s)),Math.min(o,a)%2)return{type:"em",raw:t.slice(0,o+r.index+a+1),text:t.slice(1,o+r.index+a)};if(Math.min(o,a)%2==0)return{type:"strong",raw:t.slice(0,o+r.index+a+1),text:t.slice(2,o+r.index+a-1)}}}else s+=a}}}},{key:"codespan",value:function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),r=/[^ ]/.test(n),u=/^ /.test(n)&&/ $/.test(n);return r&&u&&(n=n.substring(1,n.length-1)),n=fo(n,!0),{type:"codespan",raw:e[0],text:n}}}},{key:"br",value:function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}},{key:"del",value:function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}}},{key:"autolink",value:function(t,e){var n,r,u=this.rules.inline.autolink.exec(t);if(u)return r="@"===u[2]?"mailto:"+(n=fo(this.options.mangle?e(u[1]):u[1])):n=fo(u[1]),{type:"link",raw:u[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}},{key:"url",value:function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var r,u;if("@"===n[2])u="mailto:"+(r=fo(this.options.mangle?e(n[0]):n[0]));else{var i;do{i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(i!==n[0]);r=fo(n[0]),u="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:u,tokens:[{type:"text",raw:r,text:r}]}}}},{key:"inlineText",value:function(t,e,n){var r,u=this.rules.inline.text.exec(t);if(u)return r=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(u[0]):fo(u[0]):u[0]:fo(this.options.smartypants?n(u[0]):u[0]),{type:"text",raw:u[0],text:r}}}]),t}(),mo=no,vo=to,yo=ro,ko={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:mo,table:mo,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};ko.def=vo(ko.def).replace("label",ko._label).replace("title",ko._title).getRegex(),ko.bullet=/(?:[*+-]|\d{1,9}[.)])/,ko.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,ko.item=vo(ko.item,"gm").replace(/bull/g,ko.bullet).getRegex(),ko.listItemStart=vo(/^( *)(bull) */).replace("bull",ko.bullet).getRegex(),ko.list=vo(ko.list).replace(/bull/g,ko.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+ko.def.source+")").getRegex(),ko._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ko._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/,ko.html=vo(ko.html,"i").replace("comment",ko._comment).replace("tag",ko._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ko.paragraph=vo(ko._paragraph).replace("hr",ko.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",ko._tag).getRegex(),ko.blockquote=vo(ko.blockquote).replace("paragraph",ko.paragraph).getRegex(),ko.normal=yo({},ko),ko.gfm=yo({},ko.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),ko.gfm.nptable=vo(ko.gfm.nptable).replace("hr",ko.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",ko._tag).getRegex(),ko.gfm.table=vo(ko.gfm.table).replace("hr",ko.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",ko._tag).getRegex(),ko.pedantic=yo({},ko.normal,{html:vo("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",ko._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:mo,paragraph:vo(ko.normal._paragraph).replace("hr",ko.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",ko.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var Ao={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:mo,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_]*?\*[^_]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^*]*?\_[^*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:mo,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/,_punctuation:"!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"};Ao.punctuation=vo(Ao.punctuation).replace(/punctuation/g,Ao._punctuation).getRegex(),Ao.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,Ao.escapedEmSt=/\\\*|\\_/g,Ao._comment=vo(ko._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),Ao.emStrong.lDelim=vo(Ao.emStrong.lDelim).replace(/punct/g,Ao._punctuation).getRegex(),Ao.emStrong.rDelimAst=vo(Ao.emStrong.rDelimAst,"g").replace(/punct/g,Ao._punctuation).getRegex(),Ao.emStrong.rDelimUnd=vo(Ao.emStrong.rDelimUnd,"g").replace(/punct/g,Ao._punctuation).getRegex(),Ao._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,Ao._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,Ao._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,Ao.autolink=vo(Ao.autolink).replace("scheme",Ao._scheme).replace("email",Ao._email).getRegex(),Ao._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,Ao.tag=vo(Ao.tag).replace("comment",Ao._comment).replace("attribute",Ao._attribute).getRegex(),Ao._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Ao._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,Ao._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,Ao.link=vo(Ao.link).replace("label",Ao._label).replace("href",Ao._href).replace("title",Ao._title).getRegex(),Ao.reflink=vo(Ao.reflink).replace("label",Ao._label).getRegex(),Ao.reflinkSearch=vo(Ao.reflinkSearch,"g").replace("reflink",Ao.reflink).replace("nolink",Ao.nolink).getRegex(),Ao.normal=yo({},Ao),Ao.pedantic=yo({},Ao.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:vo(/^!?\[(label)\]\((.*?)\)/).replace("label",Ao._label).getRegex(),reflink:vo(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Ao._label).getRegex()}),Ao.gfm=yo({},Ao.normal,{escape:vo(Ao.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),Ao.gfm.url=vo(Ao.gfm.url,"i").replace("email",Ao.gfm._extended_email).getRegex(),Ao.breaks=yo({},Ao.gfm,{br:vo(Ao.br).replace("{2,}","*").getRegex(),text:vo(Ao.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var Eo={block:ko,inline:Ao},bo=Do,Fo=Ia.exports.defaults,Co=Eo.block,xo=Eo.inline,wo=lo;function So(t){return t.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function Bo(t){var e,n,r="",u=t.length;for(e=0;e<u;e++)n=t.charCodeAt(e),Math.random()>.5&&(n="x"+n.toString(16)),r+="&#"+n+";";return r}var _o=function(){function t(e){ir(this,t),this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Fo,this.options.tokenizer=this.options.tokenizer||new bo,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var n={block:Co.normal,inline:xo.normal};this.options.pedantic?(n.block=Co.pedantic,n.inline=xo.pedantic):this.options.gfm&&(n.block=Co.gfm,this.options.breaks?n.inline=xo.breaks:n.inline=xo.gfm),this.tokenizer.rules=n}return or(t,[{key:"lex",value:function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens}},{key:"blockTokens",value:function(t){var e,n,r,u,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];for(this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(e=this.tokenizer.space(t))t=t.substring(e.raw.length),e.type&&i.push(e);else if(e=this.tokenizer.code(t))t=t.substring(e.raw.length),(u=i[i.length-1])&&"paragraph"===u.type?(u.raw+="\n"+e.raw,u.text+="\n"+e.text):i.push(e);else if(e=this.tokenizer.fences(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.heading(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.nptable(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.hr(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.blockquote(t))t=t.substring(e.raw.length),e.tokens=this.blockTokens(e.text,[],a),i.push(e);else if(e=this.tokenizer.list(t)){for(t=t.substring(e.raw.length),r=e.items.length,n=0;n<r;n++)e.items[n].tokens=this.blockTokens(e.items[n].text,[],!1);i.push(e)}else if(e=this.tokenizer.html(t))t=t.substring(e.raw.length),i.push(e);else if(a&&(e=this.tokenizer.def(t)))t=t.substring(e.raw.length),this.tokens.links[e.tag]||(this.tokens.links[e.tag]={href:e.href,title:e.title});else if(e=this.tokenizer.table(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.lheading(t))t=t.substring(e.raw.length),i.push(e);else if(a&&(e=this.tokenizer.paragraph(t)))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.text(t))t=t.substring(e.raw.length),(u=i[i.length-1])&&"text"===u.type?(u.raw+="\n"+e.raw,u.text+="\n"+e.text):i.push(e);else if(t){var o="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(o);break}throw new Error(o)}return i}},{key:"inline",value:function(t){var e,n,r,u,i,a,o=t.length;for(e=0;e<o;e++)switch((a=t[e]).type){case"paragraph":case"text":case"heading":a.tokens=[],this.inlineTokens(a.text,a.tokens);break;case"table":for(a.tokens={header:[],cells:[]},u=a.header.length,n=0;n<u;n++)a.tokens.header[n]=[],this.inlineTokens(a.header[n],a.tokens.header[n]);for(u=a.cells.length,n=0;n<u;n++)for(i=a.cells[n],a.tokens.cells[n]=[],r=0;r<i.length;r++)a.tokens.cells[n][r]=[],this.inlineTokens(i[r],a.tokens.cells[n][r]);break;case"blockquote":this.inline(a.tokens);break;case"list":for(u=a.items.length,n=0;n<u;n++)this.inline(a.items[n].tokens)}return t}},{key:"inlineTokens",value:function(t){var e,n,r,u,i,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=t;if(this.tokens.links){var c=Object.keys(this.tokens.links);if(c.length>0)for(;null!=(r=this.tokenizer.rules.inline.reflinkSearch.exec(s));)c.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,r.index)+"["+wo("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(r=this.tokenizer.rules.inline.blockSkip.exec(s));)s=s.slice(0,r.index)+"["+wo("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(r=this.tokenizer.rules.inline.escapedEmSt.exec(s));)s=s.slice(0,r.index)+"++"+s.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(u||(i=""),u=!1,e=this.tokenizer.escape(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.tag(t,o,l)){t=t.substring(e.raw.length),o=e.inLink,l=e.inRawBlock;var p=a[a.length-1];p&&"text"===e.type&&"text"===p.type?(p.raw+=e.raw,p.text+=e.text):a.push(e)}else if(e=this.tokenizer.link(t))t=t.substring(e.raw.length),"link"===e.type&&(e.tokens=this.inlineTokens(e.text,[],!0,l)),a.push(e);else if(e=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(e.raw.length);var d=a[a.length-1];"link"===e.type?(e.tokens=this.inlineTokens(e.text,[],!0,l),a.push(e)):d&&"text"===e.type&&"text"===d.type?(d.raw+=e.raw,d.text+=e.text):a.push(e)}else if(e=this.tokenizer.emStrong(t,s,i))t=t.substring(e.raw.length),e.tokens=this.inlineTokens(e.text,[],o,l),a.push(e);else if(e=this.tokenizer.codespan(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.br(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.del(t))t=t.substring(e.raw.length),e.tokens=this.inlineTokens(e.text,[],o,l),a.push(e);else if(e=this.tokenizer.autolink(t,Bo))t=t.substring(e.raw.length),a.push(e);else if(o||!(e=this.tokenizer.url(t,Bo))){if(e=this.tokenizer.inlineText(t,l,So))t=t.substring(e.raw.length),"_"!==e.raw.slice(-1)&&(i=e.raw.slice(-1)),u=!0,(n=a[a.length-1])&&"text"===n.type?(n.raw+=e.raw,n.text+=e.text):a.push(e);else if(t){var f="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(f);break}throw new Error(f)}}else t=t.substring(e.raw.length),a.push(e);return a}}],[{key:"rules",get:function(){return{block:Co,inline:xo}}},{key:"lex",value:function(e,n){return new t(n).lex(e)}},{key:"lexInline",value:function(e,n){return new t(n).inlineTokens(e)}}]),t}(),To=Ia.exports.defaults,zo=eo,Io=Ga,Ro=function(){function t(e){ir(this,t),this.options=e||To}return or(t,[{key:"code",value:function(t,e,n){var r=(e||"").match(/\S*/)[0];if(this.options.highlight){var u=this.options.highlight(t,r);null!=u&&u!==t&&(n=!0,t=u)}return t=t.replace(/\n$/,"")+"\n",r?'<pre><code class="'+this.options.langPrefix+Io(r,!0)+'">'+(n?t:Io(t,!0))+"</code></pre>\n":"<pre><code>"+(n?t:Io(t,!0))+"</code></pre>\n"}},{key:"blockquote",value:function(t){return"<blockquote>\n"+t+"</blockquote>\n"}},{key:"html",value:function(t){return t}},{key:"heading",value:function(t,e,n,r){return this.options.headerIds?"<h"+e+' id="'+this.options.headerPrefix+r.slug(n)+'">'+t+"</h"+e+">\n":"<h"+e+">"+t+"</h"+e+">\n"}},{key:"hr",value:function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}},{key:"list",value:function(t,e,n){var r=e?"ol":"ul";return"<"+r+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"</"+r+">\n"}},{key:"listitem",value:function(t){return"<li>"+t+"</li>\n"}},{key:"checkbox",value:function(t){return"<input "+(t?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}},{key:"paragraph",value:function(t){return"<p>"+t+"</p>\n"}},{key:"table",value:function(t,e){return e&&(e="<tbody>"+e+"</tbody>"),"<table>\n<thead>\n"+t+"</thead>\n"+e+"</table>\n"}},{key:"tablerow",value:function(t){return"<tr>\n"+t+"</tr>\n"}},{key:"tablecell",value:function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"</"+n+">\n"}},{key:"strong",value:function(t){return"<strong>"+t+"</strong>"}},{key:"em",value:function(t){return"<em>"+t+"</em>"}},{key:"codespan",value:function(t){return"<code>"+t+"</code>"}},{key:"br",value:function(){return this.options.xhtml?"<br/>":"<br>"}},{key:"del",value:function(t){return"<del>"+t+"</del>"}},{key:"link",value:function(t,e,n){if(null===(t=zo(this.options.sanitize,this.options.baseUrl,t)))return n;var r='<a href="'+Io(t)+'"';return e&&(r+=' title="'+e+'"'),r+=">"+n+"</a>"}},{key:"image",value:function(t,e,n){if(null===(t=zo(this.options.sanitize,this.options.baseUrl,t)))return n;var r='<img src="'+t+'" alt="'+n+'"';return e&&(r+=' title="'+e+'"'),r+=this.options.xhtml?"/>":">"}},{key:"text",value:function(t){return t}}]),t}(),$o=function(){function t(){ir(this,t)}return or(t,[{key:"strong",value:function(t){return t}},{key:"em",value:function(t){return t}},{key:"codespan",value:function(t){return t}},{key:"del",value:function(t){return t}},{key:"html",value:function(t){return t}},{key:"text",value:function(t){return t}},{key:"link",value:function(t,e,n){return""+n}},{key:"image",value:function(t,e,n){return""+n}},{key:"br",value:function(){return""}}]),t}(),Oo=function(){function t(){ir(this,t),this.seen={}}return or(t,[{key:"serialize",value:function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}},{key:"getNextSafeSlug",value:function(t,e){var n=t,r=0;if(this.seen.hasOwnProperty(n)){r=this.seen[t];do{n=t+"-"+ ++r}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=r,this.seen[n]=0),n}},{key:"slug",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)}}]),t}(),Po=Ro,Lo=$o,jo=Oo,Mo=Ia.exports.defaults,No=Qa,Uo=_o,qo=function(){function t(e){ir(this,t),this.options=e||Mo,this.options.renderer=this.options.renderer||new Po,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new Lo,this.slugger=new jo}return or(t,[{key:"parse",value:function(t){var e,n,r,u,i,a,o,l,s,c,p,d,f,h,g,D,m,v,y=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],k="",A=t.length;for(e=0;e<A;e++)switch((c=t[e]).type){case"space":continue;case"hr":k+=this.renderer.hr();continue;case"heading":k+=this.renderer.heading(this.parseInline(c.tokens),c.depth,No(this.parseInline(c.tokens,this.textRenderer)),this.slugger);continue;case"code":k+=this.renderer.code(c.text,c.lang,c.escaped);continue;case"table":for(l="",o="",u=c.header.length,n=0;n<u;n++)o+=this.renderer.tablecell(this.parseInline(c.tokens.header[n]),{header:!0,align:c.align[n]});for(l+=this.renderer.tablerow(o),s="",u=c.cells.length,n=0;n<u;n++){for(o="",i=(a=c.tokens.cells[n]).length,r=0;r<i;r++)o+=this.renderer.tablecell(this.parseInline(a[r]),{header:!1,align:c.align[r]});s+=this.renderer.tablerow(o)}k+=this.renderer.table(l,s);continue;case"blockquote":s=this.parse(c.tokens),k+=this.renderer.blockquote(s);continue;case"list":for(p=c.ordered,d=c.start,f=c.loose,u=c.items.length,s="",n=0;n<u;n++)D=(g=c.items[n]).checked,m=g.task,h="",g.task&&(v=this.renderer.checkbox(D),f?g.tokens.length>0&&"text"===g.tokens[0].type?(g.tokens[0].text=v+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=v+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:v}):h+=v),h+=this.parse(g.tokens,f),s+=this.renderer.listitem(h,m,D);k+=this.renderer.list(s,p,d);continue;case"html":k+=this.renderer.html(c.text);continue;case"paragraph":k+=this.renderer.paragraph(this.parseInline(c.tokens));continue;case"text":for(s=c.tokens?this.parseInline(c.tokens):c.text;e+1<A&&"text"===t[e+1].type;)s+="\n"+((c=t[++e]).tokens?this.parseInline(c.tokens):c.text);k+=y?this.renderer.paragraph(s):s;continue;default:var E='Token with "'+c.type+'" type was not found.';if(this.options.silent)return void console.error(E);throw new Error(E)}return k}},{key:"parseInline",value:function(t,e){e=e||this.renderer;var n,r,u="",i=t.length;for(n=0;n<i;n++)switch((r=t[n]).type){case"escape":u+=e.text(r.text);break;case"html":u+=e.html(r.text);break;case"link":u+=e.link(r.href,r.title,this.parseInline(r.tokens,e));break;case"image":u+=e.image(r.href,r.title,r.text);break;case"strong":u+=e.strong(this.parseInline(r.tokens,e));break;case"em":u+=e.em(this.parseInline(r.tokens,e));break;case"codespan":u+=e.codespan(r.text);break;case"br":u+=e.br();break;case"del":u+=e.del(this.parseInline(r.tokens,e));break;case"text":u+=e.text(r.text);break;default:var a='Token with "'+r.type+'" type was not found.';if(this.options.silent)return void console.error(a);throw new Error(a)}return u}}],[{key:"parse",value:function(e,n){return new t(n).parse(e)}},{key:"parseInline",value:function(e,n){return new t(n).parseInline(e)}}]),t}(),Zo=Do,Ko=Ro,Jo=$o,Ho=Oo,Wo=ro,Yo=oo,Vo=Ga,Xo=Ia.exports.getDefaults,Go=Ia.exports.changeDefaults,Qo=Ia.exports.defaults;function tl(t,e,n){if(null==t)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof t)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected");if("function"==typeof e&&(n=e,e=null),e=Wo({},tl.defaults,e||{}),Yo(e),n){var r,u=e.highlight;try{r=Uo.lex(t,e)}catch(t){return n(t)}var i=function(t){var i;if(!t)try{i=qo.parse(r,e)}catch(e){t=e}return e.highlight=u,t?n(t):n(null,i)};if(!u||u.length<3)return i();if(delete e.highlight,!r.length)return i();var a=0;return tl.walkTokens(r,(function(t){"code"===t.type&&(a++,setTimeout((function(){u(t.text,t.lang,(function(e,n){if(e)return i(e);null!=n&&n!==t.text&&(t.text=n,t.escaped=!0),0===--a&&i()}))}),0))})),void(0===a&&i())}try{var o=Uo.lex(t,e);return e.walkTokens&&tl.walkTokens(o,e.walkTokens),qo.parse(o,e)}catch(t){if(t.message+="\nPlease report this to https://github.com/markedjs/marked.",e.silent)return"<p>An error occurred:</p><pre>"+Vo(t.message+"",!0)+"</pre>";throw t}}tl.options=tl.setOptions=function(t){return Wo(tl.defaults,t),Go(tl.defaults),tl},tl.getDefaults=Xo,tl.defaults=Qo,tl.use=function(t){var e=Wo({},t);if(t.renderer&&function(){var n=tl.defaults.renderer||new Ko,r=function(e){var r=n[e];n[e]=function(){for(var u=arguments.length,i=new Array(u),a=0;a<u;a++)i[a]=arguments[a];var o=t.renderer[e].apply(n,i);return!1===o&&(o=r.apply(n,i)),o}};for(var u in t.renderer)r(u);e.renderer=n}(),t.tokenizer&&function(){var n=tl.defaults.tokenizer||new Zo,r=function(e){var r=n[e];n[e]=function(){for(var u=arguments.length,i=new Array(u),a=0;a<u;a++)i[a]=arguments[a];var o=t.tokenizer[e].apply(n,i);return!1===o&&(o=r.apply(n,i)),o}};for(var u in t.tokenizer)r(u);e.tokenizer=n}(),t.walkTokens){var n=tl.defaults.walkTokens;e.walkTokens=function(e){t.walkTokens(e),n&&n(e)}}tl.setOptions(e)},tl.walkTokens=function(t,e){var n,r=pr(t);try{for(r.s();!(n=r.n()).done;){var u=n.value;switch(e(u),u.type){case"table":var i,a=pr(u.tokens.header);try{for(a.s();!(i=a.n()).done;){var o=i.value;tl.walkTokens(o,e)}}catch(t){a.e(t)}finally{a.f()}var l,s=pr(u.tokens.cells);try{for(s.s();!(l=s.n()).done;){var c,p=pr(l.value);try{for(p.s();!(c=p.n()).done;){var d=c.value;tl.walkTokens(d,e)}}catch(t){p.e(t)}finally{p.f()}}}catch(t){s.e(t)}finally{s.f()}break;case"list":tl.walkTokens(u.items,e);break;default:u.tokens&&tl.walkTokens(u.tokens,e)}}}catch(t){r.e(t)}finally{r.f()}},tl.parseInline=function(t,e){if(null==t)throw new Error("marked.parseInline(): input parameter is undefined or null");if("string"!=typeof t)throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected");e=Wo({},tl.defaults,e||{}),Yo(e);try{var n=Uo.lexInline(t,e);return e.walkTokens&&tl.walkTokens(n,e.walkTokens),qo.parseInline(n,e)}catch(t){if(t.message+="\nPlease report this to https://github.com/markedjs/marked.",e.silent)return"<p>An error occurred:</p><pre>"+Vo(t.message+"",!0)+"</pre>";throw t}},tl.Parser=qo,tl.parser=qo.parse,tl.Renderer=Ko,tl.TextRenderer=Jo,tl.Lexer=Uo,tl.lexer=Uo.lex,tl.Tokenizer=Zo,tl.Slugger=Ho,tl.parse=tl;var el=tl;export default function(){var t,e=null;function n(){var n;!e||e.closed?((e=window.open("about:blank","reveal.js - Notes","width=1100,height=700")).marked=el,e.document.write("<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\">\n\n\t\t<title>reveal.js - Speaker View</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\tfont-family: Helvetica;\n\t\t\t\tfont-size: 18px;\n\t\t\t}\n\n\t\t\t#current-slide,\n\t\t\t#upcoming-slide,\n\t\t\t#speaker-controls {\n\t\t\t\tpadding: 6px;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\t-moz-box-sizing: border-box;\n\t\t\t}\n\n\t\t\t#current-slide iframe,\n\t\t\t#upcoming-slide iframe {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tborder: 1px solid #ddd;\n\t\t\t}\n\n\t\t\t#current-slide .label,\n\t\t\t#upcoming-slide .label {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 10px;\n\t\t\t\tleft: 10px;\n\t\t\t\tz-index: 2;\n\t\t\t}\n\n\t\t\t#connection-status {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tz-index: 20;\n\t\t\t\tpadding: 30% 20% 20% 20%;\n\t\t\t\tfont-size: 18px;\n\t\t\t\tcolor: #222;\n\t\t\t\tbackground: #fff;\n\t\t\t\ttext-align: center;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tline-height: 1.4;\n\t\t\t}\n\n\t\t\t.overlay-element {\n\t\t\t\theight: 34px;\n\t\t\t\tline-height: 34px;\n\t\t\t\tpadding: 0 10px;\n\t\t\t\ttext-shadow: none;\n\t\t\t\tbackground: rgba( 220, 220, 220, 0.8 );\n\t\t\t\tcolor: #222;\n\t\t\t\tfont-size: 14px;\n\t\t\t}\n\n\t\t\t.overlay-element.interactive:hover {\n\t\t\t\tbackground: rgba( 220, 220, 220, 1 );\n\t\t\t}\n\n\t\t\t#current-slide {\n\t\t\t\tposition: absolute;\n\t\t\t\twidth: 60%;\n\t\t\t\theight: 100%;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\tpadding-right: 0;\n\t\t\t}\n\n\t\t\t#upcoming-slide {\n\t\t\t\tposition: absolute;\n\t\t\t\twidth: 40%;\n\t\t\t\theight: 40%;\n\t\t\t\tright: 0;\n\t\t\t\ttop: 0;\n\t\t\t}\n\n\t\t\t/* Speaker controls */\n\t\t\t#speaker-controls {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 40%;\n\t\t\t\tright: 0;\n\t\t\t\twidth: 40%;\n\t\t\t\theight: 60%;\n\t\t\t\toverflow: auto;\n\t\t\t\tfont-size: 18px;\n\t\t\t}\n\n\t\t\t\t.speaker-controls-time.hidden,\n\t\t\t\t.speaker-controls-notes.hidden {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .label,\n\t\t\t\t.speaker-controls-pace .label,\n\t\t\t\t.speaker-controls-notes .label {\n\t\t\t\t\ttext-transform: uppercase;\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t\tfont-size: 0.66em;\n\t\t\t\t\tcolor: #666;\n\t\t\t\t\tmargin: 0;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time, .speaker-controls-pace {\n\t\t\t\t\tborder-bottom: 1px solid rgba( 200, 200, 200, 0.5 );\n\t\t\t\t\tmargin-bottom: 10px;\n\t\t\t\t\tpadding: 10px 16px;\n\t\t\t\t\tpadding-bottom: 20px;\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .reset-button {\n\t\t\t\t\topacity: 0;\n\t\t\t\t\tfloat: right;\n\t\t\t\t\tcolor: #666;\n\t\t\t\t\ttext-decoration: none;\n\t\t\t\t}\n\t\t\t\t.speaker-controls-time:hover .reset-button {\n\t\t\t\t\topacity: 1;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer,\n\t\t\t\t.speaker-controls-time .clock {\n\t\t\t\t\twidth: 50%;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer,\n\t\t\t\t.speaker-controls-time .clock,\n\t\t\t\t.speaker-controls-time .pacing .hours-value,\n\t\t\t\t.speaker-controls-time .pacing .minutes-value,\n\t\t\t\t.speaker-controls-time .pacing .seconds-value {\n\t\t\t\t\tfont-size: 1.9em;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer {\n\t\t\t\t\tfloat: left;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .clock {\n\t\t\t\t\tfloat: right;\n\t\t\t\t\ttext-align: right;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time span.mute {\n\t\t\t\t\topacity: 0.3;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing-title {\n\t\t\t\t\tmargin-top: 5px;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.ahead {\n\t\t\t\t\tcolor: blue;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.on-track {\n\t\t\t\t\tcolor: green;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.behind {\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-notes {\n\t\t\t\t\tpadding: 10px 16px;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-notes .value {\n\t\t\t\t\tmargin-top: 5px;\n\t\t\t\t\tline-height: 1.4;\n\t\t\t\t\tfont-size: 1.2em;\n\t\t\t\t}\n\n\t\t\t/* Layout selector */\n\t\t\t#speaker-layout {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 10px;\n\t\t\t\tright: 10px;\n\t\t\t\tcolor: #222;\n\t\t\t\tz-index: 10;\n\t\t\t}\n\t\t\t\t#speaker-layout select {\n\t\t\t\t\tposition: absolute;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\theight: 100%;\n\t\t\t\t\ttop: 0;\n\t\t\t\t\tleft: 0;\n\t\t\t\t\tborder: 0;\n\t\t\t\t\tbox-shadow: 0;\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t\topacity: 0;\n\n\t\t\t\t\tfont-size: 1em;\n\t\t\t\t\tbackground-color: transparent;\n\n\t\t\t\t\t-moz-appearance: none;\n\t\t\t\t\t-webkit-appearance: none;\n\t\t\t\t\t-webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\t\t\t\t}\n\n\t\t\t\t#speaker-layout select:focus {\n\t\t\t\t\toutline: none;\n\t\t\t\t\tbox-shadow: none;\n\t\t\t\t}\n\n\t\t\t.clear {\n\t\t\t\tclear: both;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Wide */\n\t\t\tbody[data-speaker-layout=\"wide\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"wide\"] #upcoming-slide {\n\t\t\t\twidth: 50%;\n\t\t\t\theight: 45%;\n\t\t\t\tpadding: 6px;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #current-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #upcoming-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 50%;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #speaker-controls {\n\t\t\t\ttop: 45%;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 50%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Tall */\n\t\t\tbody[data-speaker-layout=\"tall\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"tall\"] #upcoming-slide {\n\t\t\t\twidth: 45%;\n\t\t\t\theight: 50%;\n\t\t\t\tpadding: 6px;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #current-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #upcoming-slide {\n\t\t\t\ttop: 50%;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #speaker-controls {\n\t\t\t\tpadding-top: 40px;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 45%;\n\t\t\t\twidth: 55%;\n\t\t\t\theight: 100%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Notes only */\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #upcoming-slide {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #speaker-controls {\n\t\t\t\tpadding-top: 40px;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 1080px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 900px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 800px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 12px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t</style>\n\t</head>\n\n\t<body>\n\n\t\t<div id=\"connection-status\">Loading speaker view...</div>\n\n\t\t<div id=\"current-slide\"></div>\n\t\t<div id=\"upcoming-slide\"><span class=\"overlay-element label\">Upcoming</span></div>\n\t\t<div id=\"speaker-controls\">\n\t\t\t<div class=\"speaker-controls-time\">\n\t\t\t\t<h4 class=\"label\">Time <span class=\"reset-button\">Click to Reset</span></h4>\n\t\t\t\t<div class=\"clock\">\n\t\t\t\t\t<span class=\"clock-value\">0:00 AM</span>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"timer\">\n\t\t\t\t\t<span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"clear\"></div>\n\n\t\t\t\t<h4 class=\"label pacing-title\" style=\"display: none\">Pacing – Time to finish current slide</h4>\n\t\t\t\t<div class=\"pacing\" style=\"display: none\">\n\t\t\t\t\t<span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"speaker-controls-notes hidden\">\n\t\t\t\t<h4 class=\"label\">Notes</h4>\n\t\t\t\t<div class=\"value\"></div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div id=\"speaker-layout\" class=\"overlay-element interactive\">\n\t\t\t<span class=\"speaker-layout-label\"></span>\n\t\t\t<select class=\"speaker-layout-dropdown\"></select>\n\t\t</div>\n\n\t\t<script>\n\n\t\t\t(function() {\n\n\t\t\t\tvar notes,\n\t\t\t\t\tnotesValue,\n\t\t\t\t\tcurrentState,\n\t\t\t\t\tcurrentSlide,\n\t\t\t\t\tupcomingSlide,\n\t\t\t\t\tlayoutLabel,\n\t\t\t\t\tlayoutDropdown,\n\t\t\t\t\tpendingCalls = {},\n\t\t\t\t\tlastRevealApiCallId = 0,\n\t\t\t\t\tconnected = false;\n\n\t\t\t\tvar SPEAKER_LAYOUTS = {\n\t\t\t\t\t'default': 'Default',\n\t\t\t\t\t'wide': 'Wide',\n\t\t\t\t\t'tall': 'Tall',\n\t\t\t\t\t'notes-only': 'Notes only'\n\t\t\t\t};\n\n\t\t\t\tsetupLayout();\n\n\t\t\t\tvar connectionStatus = document.querySelector( '#connection-status' );\n\t\t\t\tvar connectionTimeout = setTimeout( function() {\n\t\t\t\t\tconnectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';\n\t\t\t\t}, 5000 );\n\n\t\t\t\twindow.addEventListener( 'message', function( event ) {\n\n\t\t\t\t\tclearTimeout( connectionTimeout );\n\t\t\t\t\tconnectionStatus.style.display = 'none';\n\n\t\t\t\t\tvar data = JSON.parse( event.data );\n\n\t\t\t\t\t// The overview mode is only useful to the reveal.js instance\n\t\t\t\t\t// where navigation occurs so we don't sync it\n\t\t\t\t\tif( data.state ) delete data.state.overview;\n\n\t\t\t\t\t// Messages sent by the notes plugin inside of the main window\n\t\t\t\t\tif( data && data.namespace === 'reveal-notes' ) {\n\t\t\t\t\t\tif( data.type === 'connect' ) {\n\t\t\t\t\t\t\thandleConnectMessage( data );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( data.type === 'state' ) {\n\t\t\t\t\t\t\thandleStateMessage( data );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( data.type === 'return' ) {\n\t\t\t\t\t\t\tpendingCalls[data.callId](data.result);\n\t\t\t\t\t\t\tdelete pendingCalls[data.callId];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Messages sent by the reveal.js inside of the current slide preview\n\t\t\t\t\telse if( data && data.namespace === 'reveal' ) {\n\t\t\t\t\t\tif( /ready/.test( data.eventName ) ) {\n\t\t\t\t\t\t\t// Send a message back to notify that the handshake is complete\n\t\t\t\t\t\t\twindow.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( /slidechanged|fragmentshown|fragmenthidden|paused|resumed/.test( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {\n\n\t\t\t\t\t\t\twindow.opener.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ]} ), '*' );\n\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\n\t\t\t\t/**\n\t\t\t\t * Asynchronously calls the Reveal.js API of the main frame.\n\t\t\t\t */\n\t\t\t\tfunction callRevealApi( methodName, methodArguments, callback ) {\n\n\t\t\t\t\tvar callId = ++lastRevealApiCallId;\n\t\t\t\t\tpendingCalls[callId] = callback;\n\t\t\t\t\twindow.opener.postMessage( JSON.stringify( {\n\t\t\t\t\t\tnamespace: 'reveal-notes',\n\t\t\t\t\t\ttype: 'call',\n\t\t\t\t\t\tcallId: callId,\n\t\t\t\t\t\tmethodName: methodName,\n\t\t\t\t\t\targuments: methodArguments\n\t\t\t\t\t} ), '*' );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Called when the main window is trying to establish a\n\t\t\t\t * connection.\n\t\t\t\t */\n\t\t\t\tfunction handleConnectMessage( data ) {\n\n\t\t\t\t\tif( connected === false ) {\n\t\t\t\t\t\tconnected = true;\n\n\t\t\t\t\t\tsetupIframes( data );\n\t\t\t\t\t\tsetupKeyboard();\n\t\t\t\t\t\tsetupNotes();\n\t\t\t\t\t\tsetupTimer();\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Called when the main window sends an updated state.\n\t\t\t\t */\n\t\t\t\tfunction handleStateMessage( data ) {\n\n\t\t\t\t\t// Store the most recently set state to avoid circular loops\n\t\t\t\t\t// applying the same state\n\t\t\t\t\tcurrentState = JSON.stringify( data.state );\n\n\t\t\t\t\t// No need for updating the notes in case of fragment changes\n\t\t\t\t\tif ( data.notes ) {\n\t\t\t\t\t\tnotes.classList.remove( 'hidden' );\n\t\t\t\t\t\tnotesValue.style.whiteSpace = data.whitespace;\n\t\t\t\t\t\tif( data.markdown ) {\n\t\t\t\t\t\t\tnotesValue.innerHTML = marked( data.notes );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnotesValue.innerHTML = data.notes;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnotes.classList.add( 'hidden' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Update the note slides\n\t\t\t\t\tcurrentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n\t\t\t\t\tupcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n\t\t\t\t\tupcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' );\n\n\t\t\t\t}\n\n\t\t\t\t// Limit to max one state update per X ms\n\t\t\t\thandleStateMessage = debounce( handleStateMessage, 200 );\n\n\t\t\t\t/**\n\t\t\t\t * Forward keyboard events to the current slide window.\n\t\t\t\t * This enables keyboard events to work even if focus\n\t\t\t\t * isn't set on the current slide iframe.\n\t\t\t\t *\n\t\t\t\t * Block F5 default handling, it reloads and disconnects\n\t\t\t\t * the speaker notes window.\n\t\t\t\t */\n\t\t\t\tfunction setupKeyboard() {\n\n\t\t\t\t\tdocument.addEventListener( 'keydown', function( event ) {\n\t\t\t\t\t\tif( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Creates the preview iframes.\n\t\t\t\t */\n\t\t\t\tfunction setupIframes( data ) {\n\n\t\t\t\t\tvar params = [\n\t\t\t\t\t\t'receiver',\n\t\t\t\t\t\t'progress=false',\n\t\t\t\t\t\t'history=false',\n\t\t\t\t\t\t'transition=none',\n\t\t\t\t\t\t'autoSlide=0',\n\t\t\t\t\t\t'backgroundTransition=none'\n\t\t\t\t\t].join( '&' );\n\n\t\t\t\t\tvar urlSeparator = /\\?/.test(data.url) ? '&' : '?';\n\t\t\t\t\tvar hash = '#/' + data.state.indexh + '/' + data.state.indexv;\n\t\t\t\t\tvar currentURL = data.url + urlSeparator + params + '&postMessageEvents=true' + hash;\n\t\t\t\t\tvar upcomingURL = data.url + urlSeparator + params + '&controls=false' + hash;\n\n\t\t\t\t\tcurrentSlide = document.createElement( 'iframe' );\n\t\t\t\t\tcurrentSlide.setAttribute( 'width', 1280 );\n\t\t\t\t\tcurrentSlide.setAttribute( 'height', 1024 );\n\t\t\t\t\tcurrentSlide.setAttribute( 'src', currentURL );\n\t\t\t\t\tdocument.querySelector( '#current-slide' ).appendChild( currentSlide );\n\n\t\t\t\t\tupcomingSlide = document.createElement( 'iframe' );\n\t\t\t\t\tupcomingSlide.setAttribute( 'width', 640 );\n\t\t\t\t\tupcomingSlide.setAttribute( 'height', 512 );\n\t\t\t\t\tupcomingSlide.setAttribute( 'src', upcomingURL );\n\t\t\t\t\tdocument.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Setup the notes UI.\n\t\t\t\t */\n\t\t\t\tfunction setupNotes() {\n\n\t\t\t\t\tnotes = document.querySelector( '.speaker-controls-notes' );\n\t\t\t\t\tnotesValue = document.querySelector( '.speaker-controls-notes .value' );\n\n\t\t\t\t}\n\n\t\t\t\tfunction getTimings( callback ) {\n\n\t\t\t\t\tcallRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {\n\t\t\t\t\t\tcallRevealApi( 'getConfig', [], function ( config ) {\n\t\t\t\t\t\t\tvar totalTime = config.totalTime;\n\t\t\t\t\t\t\tvar minTimePerSlide = config.minimumTimePerSlide || 0;\n\t\t\t\t\t\t\tvar defaultTiming = config.defaultTiming;\n\t\t\t\t\t\t\tif ((defaultTiming == null) && (totalTime == null)) {\n\t\t\t\t\t\t\t\tcallback(null);\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// Setting totalTime overrides defaultTiming\n\t\t\t\t\t\t\tif (totalTime) {\n\t\t\t\t\t\t\t\tdefaultTiming = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar timings = [];\n\t\t\t\t\t\t\tfor ( var i in slideAttributes ) {\n\t\t\t\t\t\t\t\tvar slide = slideAttributes[ i ];\n\t\t\t\t\t\t\t\tvar timing = defaultTiming;\n\t\t\t\t\t\t\t\tif( slide.hasOwnProperty( 'data-timing' )) {\n\t\t\t\t\t\t\t\t\tvar t = slide[ 'data-timing' ];\n\t\t\t\t\t\t\t\t\ttiming = parseInt(t);\n\t\t\t\t\t\t\t\t\tif( isNaN(timing) ) {\n\t\t\t\t\t\t\t\t\t\tconsole.warn(\"Could not parse timing '\" + t + \"' of slide \" + i + \"; using default of \" + defaultTiming);\n\t\t\t\t\t\t\t\t\t\ttiming = defaultTiming;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttimings.push(timing);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( totalTime ) {\n\t\t\t\t\t\t\t\t// After we've allocated time to individual slides, we summarize it and\n\t\t\t\t\t\t\t\t// subtract it from the total time\n\t\t\t\t\t\t\t\tvar remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 );\n\t\t\t\t\t\t\t\t// The remaining time is divided by the number of slides that have 0 seconds\n\t\t\t\t\t\t\t\t// allocated at the moment, giving the average time-per-slide on the remaining slides\n\t\t\t\t\t\t\t\tvar remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length\n\t\t\t\t\t\t\t\tvar timePerSlide = Math.round( remainingTime / remainingSlides, 0 )\n\t\t\t\t\t\t\t\t// And now we replace every zero-value timing with that average\n\t\t\t\t\t\t\t\ttimings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length\n\t\t\t\t\t\t\tif ( slidesUnderMinimum ) {\n\t\t\t\t\t\t\t\tmessage = \"The pacing time for \" + slidesUnderMinimum + \" slide(s) is under the configured minimum of \" + minTimePerSlide + \" seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides).\";\n\t\t\t\t\t\t\t\talert(message);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcallback( timings );\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Return the number of seconds allocated for presenting\n\t\t\t\t * all slides up to and including this one.\n\t\t\t\t */\n\t\t\t\tfunction getTimeAllocated( timings, callback ) {\n\n\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\tvar allocated = 0;\n\t\t\t\t\t\tfor (var i in timings.slice(0, currentSlide + 1)) {\n\t\t\t\t\t\t\tallocated += timings[i];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcallback( allocated );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Create the timer and clock and start updating them\n\t\t\t\t * at an interval.\n\t\t\t\t */\n\t\t\t\tfunction setupTimer() {\n\n\t\t\t\t\tvar start = new Date(),\n\t\t\t\t\ttimeEl = document.querySelector( '.speaker-controls-time' ),\n\t\t\t\t\tclockEl = timeEl.querySelector( '.clock-value' ),\n\t\t\t\t\thoursEl = timeEl.querySelector( '.hours-value' ),\n\t\t\t\t\tminutesEl = timeEl.querySelector( '.minutes-value' ),\n\t\t\t\t\tsecondsEl = timeEl.querySelector( '.seconds-value' ),\n\t\t\t\t\tpacingTitleEl = timeEl.querySelector( '.pacing-title' ),\n\t\t\t\t\tpacingEl = timeEl.querySelector( '.pacing' ),\n\t\t\t\t\tpacingHoursEl = pacingEl.querySelector( '.hours-value' ),\n\t\t\t\t\tpacingMinutesEl = pacingEl.querySelector( '.minutes-value' ),\n\t\t\t\t\tpacingSecondsEl = pacingEl.querySelector( '.seconds-value' );\n\n\t\t\t\t\tvar timings = null;\n\t\t\t\t\tgetTimings( function ( _timings ) {\n\n\t\t\t\t\t\ttimings = _timings;\n\t\t\t\t\t\tif (_timings !== null) {\n\t\t\t\t\t\t\tpacingTitleEl.style.removeProperty('display');\n\t\t\t\t\t\t\tpacingEl.style.removeProperty('display');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Update once directly\n\t\t\t\t\t\t_updateTimer();\n\n\t\t\t\t\t\t// Then update every second\n\t\t\t\t\t\tsetInterval( _updateTimer, 1000 );\n\n\t\t\t\t\t} );\n\n\n\t\t\t\t\tfunction _resetTimer() {\n\n\t\t\t\t\t\tif (timings == null) {\n\t\t\t\t\t\t\tstart = new Date();\n\t\t\t\t\t\t\t_updateTimer();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t// Reset timer to beginning of current slide\n\t\t\t\t\t\t\tgetTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n\t\t\t\t\t\t\t\tvar slideEndTiming = slideEndTimingSeconds * 1000;\n\t\t\t\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\t\t\t\tvar currentSlideTiming = timings[currentSlide] * 1000;\n\t\t\t\t\t\t\t\t\tvar previousSlidesTiming = slideEndTiming - currentSlideTiming;\n\t\t\t\t\t\t\t\t\tvar now = new Date();\n\t\t\t\t\t\t\t\t\tstart = new Date(now.getTime() - previousSlidesTiming);\n\t\t\t\t\t\t\t\t\t_updateTimer();\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\ttimeEl.addEventListener( 'click', function() {\n\t\t\t\t\t\t_resetTimer();\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t} );\n\n\t\t\t\t\tfunction _displayTime( hrEl, minEl, secEl, time) {\n\n\t\t\t\t\t\tvar sign = Math.sign(time) == -1 ? \"-\" : \"\";\n\t\t\t\t\t\ttime = Math.abs(Math.round(time / 1000));\n\t\t\t\t\t\tvar seconds = time % 60;\n\t\t\t\t\t\tvar minutes = Math.floor( time / 60 ) % 60 ;\n\t\t\t\t\t\tvar hours = Math.floor( time / ( 60 * 60 )) ;\n\t\t\t\t\t\thrEl.innerHTML = sign + zeroPadInteger( hours );\n\t\t\t\t\t\tif (hours == 0) {\n\t\t\t\t\t\t\thrEl.classList.add( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\thrEl.classList.remove( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tminEl.innerHTML = ':' + zeroPadInteger( minutes );\n\t\t\t\t\t\tif (hours == 0 && minutes == 0) {\n\t\t\t\t\t\t\tminEl.classList.add( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tminEl.classList.remove( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsecEl.innerHTML = ':' + zeroPadInteger( seconds );\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction _updateTimer() {\n\n\t\t\t\t\t\tvar diff, hours, minutes, seconds,\n\t\t\t\t\t\tnow = new Date();\n\n\t\t\t\t\t\tdiff = now.getTime() - start.getTime();\n\n\t\t\t\t\t\tclockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } );\n\t\t\t\t\t\t_displayTime( hoursEl, minutesEl, secondsEl, diff );\n\t\t\t\t\t\tif (timings !== null) {\n\t\t\t\t\t\t\t_updatePacing(diff);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction _updatePacing(diff) {\n\n\t\t\t\t\t\tgetTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n\t\t\t\t\t\t\tvar slideEndTiming = slideEndTimingSeconds * 1000;\n\n\t\t\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\t\t\tvar currentSlideTiming = timings[currentSlide] * 1000;\n\t\t\t\t\t\t\t\tvar timeLeftCurrentSlide = slideEndTiming - diff;\n\t\t\t\t\t\t\t\tif (timeLeftCurrentSlide < 0) {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing behind';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse if (timeLeftCurrentSlide < currentSlideTiming) {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing on-track';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing ahead';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t_displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Sets up the speaker view layout and layout selector.\n\t\t\t\t */\n\t\t\t\tfunction setupLayout() {\n\n\t\t\t\t\tlayoutDropdown = document.querySelector( '.speaker-layout-dropdown' );\n\t\t\t\t\tlayoutLabel = document.querySelector( '.speaker-layout-label' );\n\n\t\t\t\t\t// Render the list of available layouts\n\t\t\t\t\tfor( var id in SPEAKER_LAYOUTS ) {\n\t\t\t\t\t\tvar option = document.createElement( 'option' );\n\t\t\t\t\t\toption.setAttribute( 'value', id );\n\t\t\t\t\t\toption.textContent = SPEAKER_LAYOUTS[ id ];\n\t\t\t\t\t\tlayoutDropdown.appendChild( option );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Monitor the dropdown for changes\n\t\t\t\t\tlayoutDropdown.addEventListener( 'change', function( event ) {\n\n\t\t\t\t\t\tsetLayout( layoutDropdown.value );\n\n\t\t\t\t\t}, false );\n\n\t\t\t\t\t// Restore any currently persisted layout\n\t\t\t\t\tsetLayout( getLayout() );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Sets a new speaker view layout. The layout is persisted\n\t\t\t\t * in local storage.\n\t\t\t\t */\n\t\t\t\tfunction setLayout( value ) {\n\n\t\t\t\t\tvar title = SPEAKER_LAYOUTS[ value ];\n\n\t\t\t\t\tlayoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' );\n\t\t\t\t\tlayoutDropdown.value = value;\n\n\t\t\t\t\tdocument.body.setAttribute( 'data-speaker-layout', value );\n\n\t\t\t\t\t// Persist locally\n\t\t\t\t\tif( supportsLocalStorage() ) {\n\t\t\t\t\t\twindow.localStorage.setItem( 'reveal-speaker-layout', value );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Returns the ID of the most recently set speaker layout\n\t\t\t\t * or our default layout if none has been set.\n\t\t\t\t */\n\t\t\t\tfunction getLayout() {\n\n\t\t\t\t\tif( supportsLocalStorage() ) {\n\t\t\t\t\t\tvar layout = window.localStorage.getItem( 'reveal-speaker-layout' );\n\t\t\t\t\t\tif( layout ) {\n\t\t\t\t\t\t\treturn layout;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Default to the first record in the layouts hash\n\t\t\t\t\tfor( var id in SPEAKER_LAYOUTS ) {\n\t\t\t\t\t\treturn id;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tfunction supportsLocalStorage() {\n\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlocalStorage.setItem('test', 'test');\n\t\t\t\t\t\tlocalStorage.removeItem('test');\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tcatch( e ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tfunction zeroPadInteger( num ) {\n\n\t\t\t\t\tvar str = '00' + parseInt( num );\n\t\t\t\t\treturn str.substring( str.length - 2 );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Limits the frequency at which a function can be called.\n\t\t\t\t */\n\t\t\t\tfunction debounce( fn, ms ) {\n\n\t\t\t\t\tvar lastTime = 0,\n\t\t\t\t\t\ttimeout;\n\n\t\t\t\t\treturn function() {\n\n\t\t\t\t\t\tvar args = arguments;\n\t\t\t\t\t\tvar context = this;\n\n\t\t\t\t\t\tclearTimeout( timeout );\n\n\t\t\t\t\t\tvar timeSinceLastCall = Date.now() - lastTime;\n\t\t\t\t\t\tif( timeSinceLastCall > ms ) {\n\t\t\t\t\t\t\tfn.apply( context, args );\n\t\t\t\t\t\t\tlastTime = Date.now();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttimeout = setTimeout( function() {\n\t\t\t\t\t\t\t\tfn.apply( context, args );\n\t\t\t\t\t\t\t\tlastTime = Date.now();\n\t\t\t\t\t\t\t}, ms - timeSinceLastCall );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t})();\n\n\t\t<\/script>\n\t</body>\n</html>"),e?(n=setInterval((function(){e.postMessage(JSON.stringify({namespace:"reveal-notes",type:"connect",url:window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,state:t.getState()}),"*")}),500),window.addEventListener("message",(function(u){var i,a,o,l,s=JSON.parse(u.data);s&&"reveal-notes"===s.namespace&&"connected"===s.type&&(clearInterval(n),t.on("slidechanged",r),t.on("fragmentshown",r),t.on("fragmenthidden",r),t.on("overviewhidden",r),t.on("overviewshown",r),t.on("paused",r),t.on("resumed",r),r()),s&&"reveal-notes"===s.namespace&&"call"===s.type&&(i=s.methodName,a=s.arguments,o=s.callId,l=t[i].apply(t,a),e.postMessage(JSON.stringify({namespace:"reveal-notes",type:"return",result:l,callId:o}),"*"))}))):alert("Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.")):e.focus();function r(n){var r=t.getCurrentSlide(),u=r.querySelector("aside.notes"),i=r.querySelector(".current-fragment"),a={namespace:"reveal-notes",type:"state",notes:"",markdown:!1,whitespace:"normal",state:t.getState()};if(r.hasAttribute("data-notes")&&(a.notes=r.getAttribute("data-notes"),a.whitespace="pre-wrap"),i){var o=i.querySelector("aside.notes");o?u=o:i.hasAttribute("data-notes")&&(a.notes=i.getAttribute("data-notes"),a.whitespace="pre-wrap",u=null)}u&&(a.notes=u.innerHTML,a.markdown="string"==typeof u.getAttribute("data-markdown")),e.postMessage(JSON.stringify(a),"*")}}return{id:"notes",init:function(e){t=e,/receiver/i.test(window.location.search)||(null!==window.location.search.match(/(\?|\&)notes/gi)&&n(),t.addKeyBinding({keyCode:83,key:"S",description:"Speaker notes view"},(function(){n()})))},open:n}} diff --git a/public/site_libs/revealjs/plugin/notes/notes.js b/public/site_libs/revealjs/plugin/notes/notes.js new file mode 100644 index 0000000..5d9fd48 --- /dev/null +++ b/public/site_libs/revealjs/plugin/notes/notes.js @@ -0,0 +1 @@ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).RevealNotes=e()}(this,(function(){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=function(t){return t&&t.Math==Math&&t},n=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")(),r={},u=function(t){try{return!!t()}catch(t){return!0}},i=!u((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),a={},o={}.propertyIsEnumerable,l=Object.getOwnPropertyDescriptor,s=l&&!o.call({1:2},1);a.f=s?function(t){var e=l(this,t);return!!e&&e.enumerable}:o;var c=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},p={}.toString,d=function(t){return p.call(t).slice(8,-1)},f=d,h="".split,g=u((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==f(t)?h.call(t,""):Object(t)}:Object,D=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},m=g,v=D,y=function(t){return m(v(t))},k=function(t){return"object"==typeof t?null!==t:"function"==typeof t},A=k,E=function(t,e){if(!A(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!A(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!A(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!A(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},b=D,F=function(t){return Object(b(t))},C=F,x={}.hasOwnProperty,w=function(t,e){return x.call(C(t),e)},S=k,B=n.document,T=S(B)&&S(B.createElement),_=function(t){return T?B.createElement(t):{}},z=_,I=!i&&!u((function(){return 7!=Object.defineProperty(z("div"),"a",{get:function(){return 7}}).a})),R=i,$=a,O=c,P=y,L=E,j=w,M=I,N=Object.getOwnPropertyDescriptor;r.f=R?N:function(t,e){if(t=P(t),e=L(e,!0),M)try{return N(t,e)}catch(t){}if(j(t,e))return O(!$.f.call(t,e),t[e])};var U={},q=k,Z=function(t){if(!q(t))throw TypeError(String(t)+" is not an object");return t},K=i,J=I,H=Z,W=E,Y=Object.defineProperty;U.f=K?Y:function(t,e,n){if(H(t),e=W(e,!0),H(n),J)try{return Y(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t};var V=U,X=c,G=i?function(t,e,n){return V.f(t,e,X(1,n))}:function(t,e,n){return t[e]=n,t},Q={exports:{}},tt=n,et=G,nt=function(t,e){try{et(tt,t,e)}catch(n){tt[t]=e}return e},rt=nt,ut="__core-js_shared__",it=n[ut]||rt(ut,{}),at=it,ot=Function.toString;"function"!=typeof at.inspectSource&&(at.inspectSource=function(t){return ot.call(t)});var lt=at.inspectSource,st=lt,ct=n.WeakMap,pt="function"==typeof ct&&/native code/.test(st(ct)),dt={exports:{}},ft=it;(dt.exports=function(t,e){return ft[t]||(ft[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var ht,gt,Dt,mt=0,vt=Math.random(),yt=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++mt+vt).toString(36)},kt=dt.exports,At=yt,Et=kt("keys"),bt=function(t){return Et[t]||(Et[t]=At(t))},Ft={},Ct=pt,xt=k,wt=G,St=w,Bt=it,Tt=bt,_t=Ft,zt="Object already initialized",It=n.WeakMap;if(Ct||Bt.state){var Rt=Bt.state||(Bt.state=new It),$t=Rt.get,Ot=Rt.has,Pt=Rt.set;ht=function(t,e){if(Ot.call(Rt,t))throw new TypeError(zt);return e.facade=t,Pt.call(Rt,t,e),e},gt=function(t){return $t.call(Rt,t)||{}},Dt=function(t){return Ot.call(Rt,t)}}else{var Lt=Tt("state");_t[Lt]=!0,ht=function(t,e){if(St(t,Lt))throw new TypeError(zt);return e.facade=t,wt(t,Lt,e),e},gt=function(t){return St(t,Lt)?t[Lt]:{}},Dt=function(t){return St(t,Lt)}}var jt={set:ht,get:gt,has:Dt,enforce:function(t){return Dt(t)?gt(t):ht(t,{})},getterFor:function(t){return function(e){var n;if(!xt(e)||(n=gt(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},Mt=n,Nt=G,Ut=w,qt=nt,Zt=lt,Kt=jt.get,Jt=jt.enforce,Ht=String(String).split("String");(Q.exports=function(t,e,n,r){var u,i=!!r&&!!r.unsafe,a=!!r&&!!r.enumerable,o=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof e||Ut(n,"name")||Nt(n,"name",e),(u=Jt(n)).source||(u.source=Ht.join("string"==typeof e?e:""))),t!==Mt?(i?!o&&t[e]&&(a=!0):delete t[e],a?t[e]=n:Nt(t,e,n)):a?t[e]=n:qt(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Kt(this).source||Zt(this)}));var Wt=n,Yt=n,Vt=function(t){return"function"==typeof t?t:void 0},Xt=function(t,e){return arguments.length<2?Vt(Wt[t])||Vt(Yt[t]):Wt[t]&&Wt[t][e]||Yt[t]&&Yt[t][e]},Gt={},Qt=Math.ceil,te=Math.floor,ee=function(t){return isNaN(t=+t)?0:(t>0?te:Qt)(t)},ne=ee,re=Math.min,ue=function(t){return t>0?re(ne(t),9007199254740991):0},ie=ee,ae=Math.max,oe=Math.min,le=function(t,e){var n=ie(t);return n<0?ae(n+e,0):oe(n,e)},se=y,ce=ue,pe=le,de=function(t){return function(e,n,r){var u,i=se(e),a=ce(i.length),o=pe(r,a);if(t&&n!=n){for(;a>o;)if((u=i[o++])!=u)return!0}else for(;a>o;o++)if((t||o in i)&&i[o]===n)return t||o||0;return!t&&-1}},fe={includes:de(!0),indexOf:de(!1)},he=w,ge=y,De=fe.indexOf,me=Ft,ve=function(t,e){var n,r=ge(t),u=0,i=[];for(n in r)!he(me,n)&&he(r,n)&&i.push(n);for(;e.length>u;)he(r,n=e[u++])&&(~De(i,n)||i.push(n));return i},ye=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ke=ve,Ae=ye.concat("length","prototype");Gt.f=Object.getOwnPropertyNames||function(t){return ke(t,Ae)};var Ee={};Ee.f=Object.getOwnPropertySymbols;var be=Gt,Fe=Ee,Ce=Z,xe=Xt("Reflect","ownKeys")||function(t){var e=be.f(Ce(t)),n=Fe.f;return n?e.concat(n(t)):e},we=w,Se=xe,Be=r,Te=U,_e=u,ze=/#|\.prototype\./,Ie=function(t,e){var n=$e[Re(t)];return n==Pe||n!=Oe&&("function"==typeof e?_e(e):!!e)},Re=Ie.normalize=function(t){return String(t).replace(ze,".").toLowerCase()},$e=Ie.data={},Oe=Ie.NATIVE="N",Pe=Ie.POLYFILL="P",Le=Ie,je=n,Me=r.f,Ne=G,Ue=Q.exports,qe=nt,Ze=function(t,e){for(var n=Se(e),r=Te.f,u=Be.f,i=0;i<n.length;i++){var a=n[i];we(t,a)||r(t,a,u(e,a))}},Ke=Le,Je=function(t,e){var n,r,u,i,a,o=t.target,l=t.global,s=t.stat;if(n=l?je:s?je[o]||qe(o,{}):(je[o]||{}).prototype)for(r in e){if(i=e[r],u=t.noTargetGet?(a=Me(n,r))&&a.value:n[r],!Ke(l?r:o+(s?".":"#")+r,t.forced)&&void 0!==u){if(typeof i==typeof u)continue;Ze(i,u)}(t.sham||u&&u.sham)&&Ne(i,"sham",!0),Ue(n,r,i,t)}},He=Z,We=function(){var t=He(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e},Ye={},Ve=u;function Xe(t,e){return RegExp(t,e)}Ye.UNSUPPORTED_Y=Ve((function(){var t=Xe("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),Ye.BROKEN_CARET=Ve((function(){var t=Xe("^r","gy");return t.lastIndex=2,null!=t.exec("str")}));var Ge=We,Qe=Ye,tn=dt.exports,en=RegExp.prototype.exec,nn=tn("native-string-replace",String.prototype.replace),rn=en,un=function(){var t=/a/,e=/b*/g;return en.call(t,"a"),en.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),an=Qe.UNSUPPORTED_Y||Qe.BROKEN_CARET,on=void 0!==/()??/.exec("")[1];(un||on||an)&&(rn=function(t){var e,n,r,u,i=this,a=an&&i.sticky,o=Ge.call(i),l=i.source,s=0,c=t;return a&&(-1===(o=o.replace("y","")).indexOf("g")&&(o+="g"),c=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==t[i.lastIndex-1])&&(l="(?: "+l+")",c=" "+c,s++),n=new RegExp("^(?:"+l+")",o)),on&&(n=new RegExp("^"+l+"$(?!\\s)",o)),un&&(e=i.lastIndex),r=en.call(a?n:i,c),a?r?(r.input=r.input.slice(s),r[0]=r[0].slice(s),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:un&&r&&(i.lastIndex=i.global?r.index+r[0].length:e),on&&r&&r.length>1&&nn.call(r[0],n,(function(){for(u=1;u<arguments.length-2;u++)void 0===arguments[u]&&(r[u]=void 0)})),r});var ln=rn;Je({target:"RegExp",proto:!0,forced:/./.exec!==ln},{exec:ln});var sn,cn,pn=Xt("navigator","userAgent")||"",dn=n.process,fn=dn&&dn.versions,hn=fn&&fn.v8;hn?cn=(sn=hn.split("."))[0]<4?1:sn[0]+sn[1]:pn&&(!(sn=pn.match(/Edge\/(\d+)/))||sn[1]>=74)&&(sn=pn.match(/Chrome\/(\d+)/))&&(cn=sn[1]);var gn=cn&&+cn,Dn=gn,mn=u,vn=!!Object.getOwnPropertySymbols&&!mn((function(){return!String(Symbol())||!Symbol.sham&&Dn&&Dn<41})),yn=vn&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,kn=n,An=dt.exports,En=w,bn=yt,Fn=vn,Cn=yn,xn=An("wks"),wn=kn.Symbol,Sn=Cn?wn:wn&&wn.withoutSetter||bn,Bn=function(t){return En(xn,t)&&(Fn||"string"==typeof xn[t])||(Fn&&En(wn,t)?xn[t]=wn[t]:xn[t]=Sn("Symbol."+t)),xn[t]},Tn=Q.exports,_n=ln,zn=u,In=Bn,Rn=G,$n=In("species"),On=RegExp.prototype,Pn=!zn((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),Ln="$0"==="a".replace(/./,"$0"),jn=In("replace"),Mn=!!/./[jn]&&""===/./[jn]("a","$0"),Nn=!zn((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Un=function(t,e,n,r){var u=In(t),i=!zn((function(){var e={};return e[u]=function(){return 7},7!=""[t](e)})),a=i&&!zn((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[$n]=function(){return n},n.flags="",n[u]=/./[u]),n.exec=function(){return e=!0,null},n[u](""),!e}));if(!i||!a||"replace"===t&&(!Pn||!Ln||Mn)||"split"===t&&!Nn){var o=/./[u],l=n(u,""[t],(function(t,e,n,r,u){var a=e.exec;return a===_n||a===On.exec?i&&!u?{done:!0,value:o.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Ln,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Mn}),s=l[0],c=l[1];Tn(String.prototype,t,s),Tn(On,u,2==e?function(t,e){return c.call(t,this,e)}:function(t){return c.call(t,this)})}r&&Rn(On[u],"sham",!0)},qn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e},Zn=d,Kn=ln,Jn=function(t,e){var n=t.exec;if("function"==typeof n){var r=n.call(t,e);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==Zn(t))throw TypeError("RegExp#exec called on incompatible receiver");return Kn.call(t,e)},Hn=Z,Wn=D,Yn=qn,Vn=Jn;Un("search",1,(function(t,e,n){return[function(e){var n=Wn(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var u=Hn(t),i=String(this),a=u.lastIndex;Yn(a,0)||(u.lastIndex=0);var o=Vn(u,i);return Yn(u.lastIndex,a)||(u.lastIndex=a),null===o?-1:o.index}]}));var Xn=ee,Gn=D,Qn=function(t){return function(e,n){var r,u,i=String(Gn(e)),a=Xn(n),o=i.length;return a<0||a>=o?t?"":void 0:(r=i.charCodeAt(a))<55296||r>56319||a+1===o||(u=i.charCodeAt(a+1))<56320||u>57343?t?i.charAt(a):r:t?i.slice(a,a+2):u-56320+(r-55296<<10)+65536}},tr={codeAt:Qn(!1),charAt:Qn(!0)}.charAt,er=function(t,e,n){return e+(n?tr(t,e).length:1)},nr=Z,rr=ue,ur=D,ir=er,ar=Jn;function or(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function lr(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function sr(t,e,n){return e&&lr(t.prototype,e),n&&lr(t,n),t}function cr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null==n)return;var r,u,i=[],a=!0,o=!1;try{for(n=n.call(t);!(a=(r=n.next()).done)&&(i.push(r.value),!e||i.length!==e);a=!0);}catch(t){o=!0,u=t}finally{try{a||null==n.return||n.return()}finally{if(o)throw u}}return i}(t,e)||pr(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function pr(t,e){if(t){if("string"==typeof t)return dr(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?dr(t,e):void 0}}function dr(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function fr(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=pr(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,u=function(){};return{s:u,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}Un("match",1,(function(t,e,n){return[function(e){var n=ur(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var u=nr(t),i=String(this);if(!u.global)return ar(u,i);var a=u.unicode;u.lastIndex=0;for(var o,l=[],s=0;null!==(o=ar(u,i));){var c=String(o[0]);l[s]=c,""===c&&(u.lastIndex=ir(i,rr(u.lastIndex),a)),s++}return 0===s?null:l}]}));var hr={};hr[Bn("toStringTag")]="z";var gr="[object z]"===String(hr),Dr=gr,mr=d,vr=Bn("toStringTag"),yr="Arguments"==mr(function(){return arguments}()),kr=Dr?mr:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),vr))?n:yr?mr(e):"Object"==(r=mr(e))&&"function"==typeof e.callee?"Arguments":r},Ar=gr?{}.toString:function(){return"[object "+kr(this)+"]"},Er=gr,br=Q.exports,Fr=Ar;Er||br(Object.prototype,"toString",Fr,{unsafe:!0});var Cr=F,xr=Math.floor,wr="".replace,Sr=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Br=/\$([$&'`]|\d{1,2})/g,Tr=Un,_r=Z,zr=ue,Ir=ee,Rr=D,$r=er,Or=function(t,e,n,r,u,i){var a=n+t.length,o=r.length,l=Br;return void 0!==u&&(u=Cr(u),l=Sr),wr.call(i,l,(function(i,l){var s;switch(l.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(a);case"<":s=u[l.slice(1,-1)];break;default:var c=+l;if(0===c)return i;if(c>o){var p=xr(c/10);return 0===p?i:p<=o?void 0===r[p-1]?l.charAt(1):r[p-1]+l.charAt(1):i}s=r[c-1]}return void 0===s?"":s}))},Pr=Jn,Lr=Math.max,jr=Math.min;Tr("replace",2,(function(t,e,n,r){var u=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,a=u?"$":"$0";return[function(n,r){var u=Rr(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,u,r):e.call(String(u),n,r)},function(t,r){if(!u&&i||"string"==typeof r&&-1===r.indexOf(a)){var o=n(e,t,this,r);if(o.done)return o.value}var l=_r(t),s=String(this),c="function"==typeof r;c||(r=String(r));var p=l.global;if(p){var d=l.unicode;l.lastIndex=0}for(var f=[];;){var h=Pr(l,s);if(null===h)break;if(f.push(h),!p)break;""===String(h[0])&&(l.lastIndex=$r(s,zr(l.lastIndex),d))}for(var g,D="",m=0,v=0;v<f.length;v++){h=f[v];for(var y=String(h[0]),k=Lr(jr(Ir(h.index),s.length),0),A=[],E=1;E<h.length;E++)A.push(void 0===(g=h[E])?g:String(g));var b=h.groups;if(c){var F=[y].concat(A,k,s);void 0!==b&&F.push(b);var C=String(r.apply(void 0,F))}else C=Or(y,s,k,A,b,r);k>=m&&(D+=s.slice(m,k)+C,m=k+y.length)}return D+s.slice(m)}]}));var Mr=Q.exports,Nr=Z,Ur=u,qr=We,Zr="toString",Kr=RegExp.prototype,Jr=Kr.toString,Hr=Ur((function(){return"/a/b"!=Jr.call({source:"a",flags:"b"})})),Wr=Jr.name!=Zr;(Hr||Wr)&&Mr(RegExp.prototype,Zr,(function(){var t=Nr(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in Kr)?qr.call(t):n)}),{unsafe:!0});var Yr=ve,Vr=ye,Xr=Object.keys||function(t){return Yr(t,Vr)},Gr=F,Qr=Xr;Je({target:"Object",stat:!0,forced:u((function(){Qr(1)}))},{keys:function(t){return Qr(Gr(t))}});var tu,eu=U,nu=Z,ru=Xr,uu=i?Object.defineProperties:function(t,e){nu(t);for(var n,r=ru(e),u=r.length,i=0;u>i;)eu.f(t,n=r[i++],e[n]);return t},iu=Xt("document","documentElement"),au=Z,ou=uu,lu=ye,su=Ft,cu=iu,pu=_,du=bt("IE_PROTO"),fu=function(){},hu=function(t){return"<script>"+t+"</"+"script>"},gu=function(){try{tu=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;gu=tu?function(t){t.write(hu("")),t.close();var e=t.parentWindow.Object;return t=null,e}(tu):((e=pu("iframe")).style.display="none",cu.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(hu("document.F=Object")),t.close(),t.F);for(var n=lu.length;n--;)delete gu.prototype[lu[n]];return gu()};su[du]=!0;var Du=Object.create||function(t,e){var n;return null!==t?(fu.prototype=au(t),n=new fu,fu.prototype=null,n[du]=t):n=gu(),void 0===e?n:ou(n,e)},mu=U,vu=Bn("unscopables"),yu=Array.prototype;null==yu[vu]&&mu.f(yu,vu,{configurable:!0,value:Du(null)});var ku=fe.includes,Au=function(t){yu[vu][t]=!0};Je({target:"Array",proto:!0},{includes:function(t){return ku(this,t,arguments.length>1?arguments[1]:void 0)}}),Au("includes");var Eu=k,bu=d,Fu=Bn("match"),Cu=function(t){var e;return Eu(t)&&(void 0!==(e=t[Fu])?!!e:"RegExp"==bu(t))},xu=Cu,wu=Bn("match"),Su=function(t){if(xu(t))throw TypeError("The method doesn't accept regular expressions");return t},Bu=D;Je({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[wu]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~String(Bu(this)).indexOf(Su(t),arguments.length>1?arguments[1]:void 0)}});var Tu=d,_u=Array.isArray||function(t){return"Array"==Tu(t)},zu=E,Iu=U,Ru=c,$u=function(t,e,n){var r=zu(e);r in t?Iu.f(t,r,Ru(0,n)):t[r]=n},Ou=u,Pu=gn,Lu=Bn("species"),ju=function(t){return Pu>=51||!Ou((function(){var e=[];return(e.constructor={})[Lu]=function(){return{foo:1}},1!==e[t](Boolean).foo}))},Mu=Je,Nu=k,Uu=_u,qu=le,Zu=ue,Ku=y,Ju=$u,Hu=Bn,Wu=ju("slice"),Yu=Hu("species"),Vu=[].slice,Xu=Math.max;Mu({target:"Array",proto:!0,forced:!Wu},{slice:function(t,e){var n,r,u,i=Ku(this),a=Zu(i.length),o=qu(t,a),l=qu(void 0===e?a:e,a);if(Uu(i)&&("function"!=typeof(n=i.constructor)||n!==Array&&!Uu(n.prototype)?Nu(n)&&null===(n=n[Yu])&&(n=void 0):n=void 0,n===Array||void 0===n))return Vu.call(i,o,l);for(r=new(void 0===n?Array:n)(Xu(l-o,0)),u=0;o<l;o++,u++)o in i&&Ju(r,u,i[o]);return r.length=u,r}});var Gu=D,Qu=/"/g,ti=u,ei=function(t,e,n,r){var u=String(Gu(t)),i="<"+e;return""!==n&&(i+=" "+n+'="'+String(r).replace(Qu,""")+'"'),i+">"+u+"</"+e+">"};Je({target:"String",proto:!0,forced:function(t){return ti((function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}))}("link")},{link:function(t){return ei(this,"a","href",t)}});var ni=u,ri=Je,ui=y,ii=[].join,ai=g!=Object,oi=function(t,e){var n=[][t];return!!n&&ni((function(){n.call(null,e||function(){throw 1},1)}))}("join",",");ri({target:"Array",proto:!0,forced:ai||!oi},{join:function(t){return ii.call(ui(this),void 0===t?",":t)}});var li=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},si=li,ci=k,pi=_u,di=Bn("species"),fi=function(t,e){var n;return pi(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!pi(n.prototype)?ci(n)&&null===(n=n[di])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)},hi=function(t,e,n){if(si(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,u){return t.call(e,n,r,u)}}return function(){return t.apply(e,arguments)}},gi=g,Di=F,mi=ue,vi=fi,yi=[].push,ki=function(t){var e=1==t,n=2==t,r=3==t,u=4==t,i=6==t,a=7==t,o=5==t||i;return function(l,s,c,p){for(var d,f,h=Di(l),g=gi(h),D=hi(s,c,3),m=mi(g.length),v=0,y=p||vi,k=e?y(l,m):n||a?y(l,0):void 0;m>v;v++)if((o||v in g)&&(f=D(d=g[v],v,h),t))if(e)k[v]=f;else if(f)switch(t){case 3:return!0;case 5:return d;case 6:return v;case 2:yi.call(k,d)}else switch(t){case 4:return!1;case 7:yi.call(k,d)}return i?-1:r||u?u:k}},Ai={forEach:ki(0),map:ki(1),filter:ki(2),some:ki(3),every:ki(4),find:ki(5),findIndex:ki(6),filterOut:ki(7)}.map;Je({target:"Array",proto:!0,forced:!ju("map")},{map:function(t){return Ai(this,t,arguments.length>1?arguments[1]:void 0)}});var Ei=Z,bi=li,Fi=Bn("species"),Ci=Un,xi=Cu,wi=Z,Si=D,Bi=function(t,e){var n,r=Ei(t).constructor;return void 0===r||null==(n=Ei(r)[Fi])?e:bi(n)},Ti=er,_i=ue,zi=Jn,Ii=ln,Ri=Ye.UNSUPPORTED_Y,$i=[].push,Oi=Math.min,Pi=4294967295;Ci("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(Si(this)),u=void 0===n?Pi:n>>>0;if(0===u)return[];if(void 0===t)return[r];if(!xi(t))return e.call(r,t,u);for(var i,a,o,l=[],s=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),c=0,p=new RegExp(t.source,s+"g");(i=Ii.call(p,r))&&!((a=p.lastIndex)>c&&(l.push(r.slice(c,i.index)),i.length>1&&i.index<r.length&&$i.apply(l,i.slice(1)),o=i[0].length,c=a,l.length>=u));)p.lastIndex===i.index&&p.lastIndex++;return c===r.length?!o&&p.test("")||l.push(""):l.push(r.slice(c)),l.length>u?l.slice(0,u):l}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var u=Si(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,u,n):r.call(String(u),e,n)},function(t,u){var i=n(r,t,this,u,r!==e);if(i.done)return i.value;var a=wi(t),o=String(this),l=Bi(a,RegExp),s=a.unicode,c=(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(Ri?"g":"y"),p=new l(Ri?"^(?:"+a.source+")":a,c),d=void 0===u?Pi:u>>>0;if(0===d)return[];if(0===o.length)return null===zi(p,o)?[o]:[];for(var f=0,h=0,g=[];h<o.length;){p.lastIndex=Ri?0:h;var D,m=zi(p,Ri?o.slice(h):o);if(null===m||(D=Oi(_i(p.lastIndex+(Ri?h:0)),o.length))===f)h=Ti(o,h,s);else{if(g.push(o.slice(f,h)),g.length===d)return g;for(var v=1;v<=m.length-1;v++)if(g.push(m[v]),g.length===d)return g;h=f=D}}return g.push(o.slice(f)),g}]}),Ri);var Li="\t\n\v\f\r \u2028\u2029\ufeff",ji=D,Mi="[\t\n\v\f\r \u2028\u2029\ufeff]",Ni=RegExp("^"+Mi+Mi+"*"),Ui=RegExp(Mi+Mi+"*$"),qi=function(t){return function(e){var n=String(ji(e));return 1&t&&(n=n.replace(Ni,"")),2&t&&(n=n.replace(Ui,"")),n}},Zi={start:qi(1),end:qi(2),trim:qi(3)},Ki=u,Ji=Li,Hi=Zi.trim;Je({target:"String",proto:!0,forced:function(t){return Ki((function(){return!!Ji[t]()||" "!=" "[t]()||Ji[t].name!==t}))}("trim")},{trim:function(){return Hi(this)}});var Wi=k,Yi=Z,Vi=function(t){if(!Wi(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},Xi=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return Yi(n),Vi(r),e?t.call(n,r):n.__proto__=r,n}}():void 0),Gi=k,Qi=Xi,ta=Xt,ea=U,na=i,ra=Bn("species"),ua=i,ia=n,aa=Le,oa=function(t,e,n){var r,u;return Qi&&"function"==typeof(r=e.constructor)&&r!==n&&Gi(u=r.prototype)&&u!==n.prototype&&Qi(t,u),t},la=U.f,sa=Gt.f,ca=Cu,pa=We,da=Ye,fa=Q.exports,ha=u,ga=jt.enforce,Da=function(t){var e=ta(t),n=ea.f;na&&e&&!e[ra]&&n(e,ra,{configurable:!0,get:function(){return this}})},ma=Bn("match"),va=ia.RegExp,ya=va.prototype,ka=/a/g,Aa=/a/g,Ea=new va(ka)!==ka,ba=da.UNSUPPORTED_Y;if(ua&&aa("RegExp",!Ea||ba||ha((function(){return Aa[ma]=!1,va(ka)!=ka||va(Aa)==Aa||"/a/i"!=va(ka,"i")})))){for(var Fa=function(t,e){var n,r=this instanceof Fa,u=ca(t),i=void 0===e;if(!r&&u&&t.constructor===Fa&&i)return t;Ea?u&&!i&&(t=t.source):t instanceof Fa&&(i&&(e=pa.call(t)),t=t.source),ba&&(n=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,""));var a=oa(Ea?new va(t,e):va(t,e),r?this:ya,Fa);ba&&n&&(ga(a).sticky=!0);return a},Ca=function(t){t in Fa||la(Fa,t,{configurable:!0,get:function(){return va[t]},set:function(e){va[t]=e}})},xa=sa(va),wa=0;xa.length>wa;)Ca(xa[wa++]);ya.constructor=Fa,Fa.prototype=ya,fa(ia,"RegExp",Fa)}Da("RegExp");var Sa=Je,Ba=le,Ta=ee,_a=ue,za=F,Ia=fi,Ra=$u,$a=ju("splice"),Oa=Math.max,Pa=Math.min,La=9007199254740991,ja="Maximum allowed length exceeded";Sa({target:"Array",proto:!0,forced:!$a},{splice:function(t,e){var n,r,u,i,a,o,l=za(this),s=_a(l.length),c=Ba(t,s),p=arguments.length;if(0===p?n=r=0:1===p?(n=0,r=s-c):(n=p-2,r=Pa(Oa(Ta(e),0),s-c)),s+n-r>La)throw TypeError(ja);for(u=Ia(l,r),i=0;i<r;i++)(a=c+i)in l&&Ra(u,i,l[a]);if(u.length=r,n<r){for(i=c;i<s-r;i++)o=i+n,(a=i+r)in l?l[o]=l[a]:delete l[o];for(i=s;i>s-r+n;i--)delete l[i-1]}else if(n>r)for(i=s-r;i>c;i--)o=i+n-1,(a=i+r-1)in l?l[o]=l[a]:delete l[o];for(i=0;i<n;i++)l[i+c]=arguments[i+2];return l.length=s-r+n,u}});var Ma={exports:{}};function Na(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}Ma.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:Na,changeDefaults:function(t){Ma.exports.defaults=t}};var Ua=/[&<>"']/,qa=/[&<>"']/g,Za=/[<>"']|&(?!#?\w+;)/,Ka=/[<>"']|&(?!#?\w+;)/g,Ja={"&":"&","<":"<",">":">",'"':""","'":"'"},Ha=function(t){return Ja[t]};var Wa=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function Ya(t){return t.replace(Wa,(function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""}))}var Va=/(^|[^\[])\^/g;var Xa=/[^\w:]/g,Ga=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var Qa={},to=/^[^:]+:\/*[^/]*$/,eo=/^([^:]+:)[\s\S]*$/,no=/^([^:]+:\/*[^/]*)[\s\S]*$/;function ro(t,e){Qa[" "+t]||(to.test(t)?Qa[" "+t]=t+"/":Qa[" "+t]=uo(t,"/",!0));var n=-1===(t=Qa[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(eo,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(no,"$1")+e:t+e}function uo(t,e,n){var r=t.length;if(0===r)return"";for(var u=0;u<r;){var i=t.charAt(r-u-1);if(i!==e||n){if(i===e||!n)break;u++}else u++}return t.substr(0,r-u)}var io=function(t,e){if(e){if(Ua.test(t))return t.replace(qa,Ha)}else if(Za.test(t))return t.replace(Ka,Ha);return t},ao=Ya,oo=function(t,e){t=t.source||t,e=e||"";var n={replace:function(e,r){return r=(r=r.source||r).replace(Va,"$1"),t=t.replace(e,r),n},getRegex:function(){return new RegExp(t,e)}};return n},lo=function(t,e,n){if(t){var r;try{r=decodeURIComponent(Ya(n)).replace(Xa,"").toLowerCase()}catch(t){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}e&&!Ga.test(n)&&(n=ro(e,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(t){return null}return n},so={exec:function(){}},co=function(t){for(var e,n,r=1;r<arguments.length;r++)for(n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t},po=function(t,e){var n=t.replace(/\|/g,(function(t,e,n){for(var r=!1,u=e;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"})).split(/ \|/),r=0;if(n.length>e)n.splice(e);else for(;n.length<e;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},fo=uo,ho=function(t,e){if(-1===t.indexOf(e[1]))return-1;for(var n=t.length,r=0,u=0;u<n;u++)if("\\"===t[u])u++;else if(t[u]===e[0])r++;else if(t[u]===e[1]&&--r<0)return u;return-1},go=function(t){t&&t.sanitize&&!t.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")},Do=function(t,e){if(e<1)return"";for(var n="";e>1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},mo=Ma.exports.defaults,vo=fo,yo=po,ko=io,Ao=ho;function Eo(t,e,n){var r=e.href,u=e.title?ko(e.title):null,i=t[1].replace(/\\([\[\]])/g,"$1");return"!"!==t[0].charAt(0)?{type:"link",raw:n,href:r,title:u,text:i}:{type:"image",raw:n,href:r,title:u,text:ko(i)}}var bo=function(){function t(e){or(this,t),this.options=e||mo}return sr(t,[{key:"space",value:function(t){var e=this.rules.block.newline.exec(t);if(e)return e[0].length>1?{type:"space",raw:e[0]}:{raw:"\n"}}},{key:"code",value:function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:vo(n,"\n")}}}},{key:"fences",value:function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],r=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var r=n[1];return e.split("\n").map((function(t){var e=t.match(/^\s+/);return null===e?t:cr(e,1)[0].length>=r.length?t.slice(r.length):t})).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:r}}}},{key:"heading",value:function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var r=vo(n,"#");this.options.pedantic?n=r.trim():r&&!/ $/.test(r)||(n=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}}},{key:"nptable",value:function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:yo(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=yo(n.cells[r],n.header.length);return n}}}},{key:"hr",value:function(t){var e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:e[0]}}},{key:"blockquote",value:function(t){var e=this.rules.block.blockquote.exec(t);if(e){var n=e[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}}},{key:"list",value:function(t){var e=this.rules.block.list.exec(t);if(e){var n,r,u,i,a,o,l,s,c,p=e[0],d=e[2],f=d.length>1,h={type:"list",raw:p,ordered:f,start:f?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),D=!1,m=g.length;u=this.rules.block.listItemStart.exec(g[0]);for(var v=0;v<m;v++){if(p=n=g[v],this.options.pedantic||(c=n.match(new RegExp("\\n\\s*\\n {0,"+(u[0].length-1)+"}\\S")))&&(a=n.length-c.index+g.slice(v+1).join("\n").length,h.raw=h.raw.substring(0,h.raw.length-a),p=n=n.substring(0,c.index),m=v+1),v!==m-1){if(i=this.rules.block.listItemStart.exec(g[v+1]),this.options.pedantic?i[1].length>u[1].length:i[1].length>=u[0].length||i[1].length>3){g.splice(v,2,g[v]+(!this.options.pedantic&&i[1].length<u[0].length&&!g[v].match(/\n$/)?"":"\n")+g[v+1]),v--,m--;continue}(!this.options.pedantic||this.options.smartLists?i[2][i[2].length-1]!==d[d.length-1]:f===(1===i[2].length))&&(a=g.slice(v+1).join("\n").length,h.raw=h.raw.substring(0,h.raw.length-a),v=m-1),u=i}r=n.length,~(n=n.replace(/^ *([*+-]|\d+[.)]) ?/,"")).indexOf("\n ")&&(r-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+r+"}","gm"),"")),n=vo(n,"\n"),v!==m-1&&(p+="\n"),o=D||/\n\n(?!\s*$)/.test(p),v!==m-1&&(D="\n\n"===p.slice(-2),o||(o=D)),o&&(h.loose=!0),this.options.gfm&&(s=void 0,(l=/^\[[ xX]\] /.test(n))&&(s=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,""))),h.items.push({type:"list_item",raw:p,task:l,checked:s,loose:o,text:n})}return h}}},{key:"html",value:function(t){var e=this.rules.block.html.exec(t);if(e)return{type:this.options.sanitize?"paragraph":"html",raw:e[0],pre:!this.options.sanitizer&&("pre"===e[1]||"script"===e[1]||"style"===e[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(e[0]):ko(e[0]):e[0]}}},{key:"def",value:function(t){var e=this.rules.block.def.exec(t);if(e)return e[3]&&(e[3]=e[3].substring(1,e[3].length-1)),{type:"def",tag:e[1].toLowerCase().replace(/\s+/g," "),raw:e[0],href:e[2],title:e[3]}}},{key:"table",value:function(t){var e=this.rules.block.table.exec(t);if(e){var n={type:"table",header:yo(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=e[0];var r,u=n.align.length;for(r=0;r<u;r++)/^ *-+: *$/.test(n.align[r])?n.align[r]="right":/^ *:-+: *$/.test(n.align[r])?n.align[r]="center":/^ *:-+ *$/.test(n.align[r])?n.align[r]="left":n.align[r]=null;for(u=n.cells.length,r=0;r<u;r++)n.cells[r]=yo(n.cells[r].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}}},{key:"lheading",value:function(t){var e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:"="===e[2].charAt(0)?1:2,text:e[1]}}},{key:"paragraph",value:function(t){var e=this.rules.block.paragraph.exec(t);if(e)return{type:"paragraph",raw:e[0],text:"\n"===e[1].charAt(e[1].length-1)?e[1].slice(0,-1):e[1]}}},{key:"text",value:function(t){var e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0]}}},{key:"escape",value:function(t){var e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:ko(e[1])}}},{key:"tag",value:function(t,e,n){var r=this.rules.inline.tag.exec(t);if(r)return!e&&/^<a /i.test(r[0])?e=!0:e&&/^<\/a>/i.test(r[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:r[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):ko(r[0]):r[0]}}},{key:"link",value:function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^</.test(n)){if(!/>$/.test(n))return;var r=vo(n.slice(0,-1),"\\");if((n.length-r.length)%2==0)return}else{var u=Ao(e[2],"()");if(u>-1){var i=(0===e[0].indexOf("!")?5:4)+e[1].length+u;e[2]=e[2].substring(0,u),e[0]=e[0].substring(0,i).trim(),e[3]=""}}var a=e[2],o="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(a);l&&(a=l[1],o=l[3])}else o=e[3]?e[3].slice(1,-1):"";return a=a.trim(),/^</.test(a)&&(a=this.options.pedantic&&!/>$/.test(n)?a.slice(1):a.slice(1,-1)),Eo(e,{href:a?a.replace(this.rules.inline._escapes,"$1"):a,title:o?o.replace(this.rules.inline._escapes,"$1"):o},e[0])}}},{key:"reflink",value:function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var r=(n[2]||n[1]).replace(/\s+/g," ");if(!(r=e[r.toLowerCase()])||!r.href){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return Eo(n,r,n[0])}}},{key:"emStrong",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrong.lDelim.exec(t);if(r&&(!r[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var u=r[1]||r[2]||"";if(!u||u&&(""===n||this.rules.inline.punctuation.exec(n))){var i,a,o=r[0].length-1,l=o,s=0,c="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(c.lastIndex=0,e=e.slice(-1*t.length+o);null!=(r=c.exec(e));)if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=i.length,r[3]||r[4])l+=a;else if(!((r[5]||r[6])&&o%3)||(o+a)%3){if(!((l-=a)>0)){if(l+s-a<=0&&!e.slice(c.lastIndex).match(c)&&(a=Math.min(a,a+l+s)),Math.min(o,a)%2)return{type:"em",raw:t.slice(0,o+r.index+a+1),text:t.slice(1,o+r.index+a)};if(Math.min(o,a)%2==0)return{type:"strong",raw:t.slice(0,o+r.index+a+1),text:t.slice(2,o+r.index+a-1)}}}else s+=a}}}},{key:"codespan",value:function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),r=/[^ ]/.test(n),u=/^ /.test(n)&&/ $/.test(n);return r&&u&&(n=n.substring(1,n.length-1)),n=ko(n,!0),{type:"codespan",raw:e[0],text:n}}}},{key:"br",value:function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}},{key:"del",value:function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}}},{key:"autolink",value:function(t,e){var n,r,u=this.rules.inline.autolink.exec(t);if(u)return r="@"===u[2]?"mailto:"+(n=ko(this.options.mangle?e(u[1]):u[1])):n=ko(u[1]),{type:"link",raw:u[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}},{key:"url",value:function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var r,u;if("@"===n[2])u="mailto:"+(r=ko(this.options.mangle?e(n[0]):n[0]));else{var i;do{i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(i!==n[0]);r=ko(n[0]),u="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:u,tokens:[{type:"text",raw:r,text:r}]}}}},{key:"inlineText",value:function(t,e,n){var r,u=this.rules.inline.text.exec(t);if(u)return r=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(u[0]):ko(u[0]):u[0]:ko(this.options.smartypants?n(u[0]):u[0]),{type:"text",raw:u[0],text:r}}}]),t}(),Fo=so,Co=oo,xo=co,wo={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:Fo,table:Fo,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};wo.def=Co(wo.def).replace("label",wo._label).replace("title",wo._title).getRegex(),wo.bullet=/(?:[*+-]|\d{1,9}[.)])/,wo.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,wo.item=Co(wo.item,"gm").replace(/bull/g,wo.bullet).getRegex(),wo.listItemStart=Co(/^( *)(bull) */).replace("bull",wo.bullet).getRegex(),wo.list=Co(wo.list).replace(/bull/g,wo.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+wo.def.source+")").getRegex(),wo._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",wo._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/,wo.html=Co(wo.html,"i").replace("comment",wo._comment).replace("tag",wo._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),wo.paragraph=Co(wo._paragraph).replace("hr",wo.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",wo._tag).getRegex(),wo.blockquote=Co(wo.blockquote).replace("paragraph",wo.paragraph).getRegex(),wo.normal=xo({},wo),wo.gfm=xo({},wo.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),wo.gfm.nptable=Co(wo.gfm.nptable).replace("hr",wo.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",wo._tag).getRegex(),wo.gfm.table=Co(wo.gfm.table).replace("hr",wo.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",wo._tag).getRegex(),wo.pedantic=xo({},wo.normal,{html:Co("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",wo._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Fo,paragraph:Co(wo.normal._paragraph).replace("hr",wo.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",wo.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var So={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:Fo,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_]*?\*[^_]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^*]*?\_[^*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:Fo,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/,_punctuation:"!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"};So.punctuation=Co(So.punctuation).replace(/punctuation/g,So._punctuation).getRegex(),So.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,So.escapedEmSt=/\\\*|\\_/g,So._comment=Co(wo._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),So.emStrong.lDelim=Co(So.emStrong.lDelim).replace(/punct/g,So._punctuation).getRegex(),So.emStrong.rDelimAst=Co(So.emStrong.rDelimAst,"g").replace(/punct/g,So._punctuation).getRegex(),So.emStrong.rDelimUnd=Co(So.emStrong.rDelimUnd,"g").replace(/punct/g,So._punctuation).getRegex(),So._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,So._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,So._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,So.autolink=Co(So.autolink).replace("scheme",So._scheme).replace("email",So._email).getRegex(),So._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,So.tag=Co(So.tag).replace("comment",So._comment).replace("attribute",So._attribute).getRegex(),So._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,So._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,So._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,So.link=Co(So.link).replace("label",So._label).replace("href",So._href).replace("title",So._title).getRegex(),So.reflink=Co(So.reflink).replace("label",So._label).getRegex(),So.reflinkSearch=Co(So.reflinkSearch,"g").replace("reflink",So.reflink).replace("nolink",So.nolink).getRegex(),So.normal=xo({},So),So.pedantic=xo({},So.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Co(/^!?\[(label)\]\((.*?)\)/).replace("label",So._label).getRegex(),reflink:Co(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",So._label).getRegex()}),So.gfm=xo({},So.normal,{escape:Co(So.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),So.gfm.url=Co(So.gfm.url,"i").replace("email",So.gfm._extended_email).getRegex(),So.breaks=xo({},So.gfm,{br:Co(So.br).replace("{2,}","*").getRegex(),text:Co(So.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var Bo={block:wo,inline:So},To=bo,_o=Ma.exports.defaults,zo=Bo.block,Io=Bo.inline,Ro=Do;function $o(t){return t.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function Oo(t){var e,n,r="",u=t.length;for(e=0;e<u;e++)n=t.charCodeAt(e),Math.random()>.5&&(n="x"+n.toString(16)),r+="&#"+n+";";return r}var Po=function(){function t(e){or(this,t),this.tokens=[],this.tokens.links=Object.create(null),this.options=e||_o,this.options.tokenizer=this.options.tokenizer||new To,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var n={block:zo.normal,inline:Io.normal};this.options.pedantic?(n.block=zo.pedantic,n.inline=Io.pedantic):this.options.gfm&&(n.block=zo.gfm,this.options.breaks?n.inline=Io.breaks:n.inline=Io.gfm),this.tokenizer.rules=n}return sr(t,[{key:"lex",value:function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens}},{key:"blockTokens",value:function(t){var e,n,r,u,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];for(this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(e=this.tokenizer.space(t))t=t.substring(e.raw.length),e.type&&i.push(e);else if(e=this.tokenizer.code(t))t=t.substring(e.raw.length),(u=i[i.length-1])&&"paragraph"===u.type?(u.raw+="\n"+e.raw,u.text+="\n"+e.text):i.push(e);else if(e=this.tokenizer.fences(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.heading(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.nptable(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.hr(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.blockquote(t))t=t.substring(e.raw.length),e.tokens=this.blockTokens(e.text,[],a),i.push(e);else if(e=this.tokenizer.list(t)){for(t=t.substring(e.raw.length),r=e.items.length,n=0;n<r;n++)e.items[n].tokens=this.blockTokens(e.items[n].text,[],!1);i.push(e)}else if(e=this.tokenizer.html(t))t=t.substring(e.raw.length),i.push(e);else if(a&&(e=this.tokenizer.def(t)))t=t.substring(e.raw.length),this.tokens.links[e.tag]||(this.tokens.links[e.tag]={href:e.href,title:e.title});else if(e=this.tokenizer.table(t))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.lheading(t))t=t.substring(e.raw.length),i.push(e);else if(a&&(e=this.tokenizer.paragraph(t)))t=t.substring(e.raw.length),i.push(e);else if(e=this.tokenizer.text(t))t=t.substring(e.raw.length),(u=i[i.length-1])&&"text"===u.type?(u.raw+="\n"+e.raw,u.text+="\n"+e.text):i.push(e);else if(t){var o="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(o);break}throw new Error(o)}return i}},{key:"inline",value:function(t){var e,n,r,u,i,a,o=t.length;for(e=0;e<o;e++)switch((a=t[e]).type){case"paragraph":case"text":case"heading":a.tokens=[],this.inlineTokens(a.text,a.tokens);break;case"table":for(a.tokens={header:[],cells:[]},u=a.header.length,n=0;n<u;n++)a.tokens.header[n]=[],this.inlineTokens(a.header[n],a.tokens.header[n]);for(u=a.cells.length,n=0;n<u;n++)for(i=a.cells[n],a.tokens.cells[n]=[],r=0;r<i.length;r++)a.tokens.cells[n][r]=[],this.inlineTokens(i[r],a.tokens.cells[n][r]);break;case"blockquote":this.inline(a.tokens);break;case"list":for(u=a.items.length,n=0;n<u;n++)this.inline(a.items[n].tokens)}return t}},{key:"inlineTokens",value:function(t){var e,n,r,u,i,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=t;if(this.tokens.links){var c=Object.keys(this.tokens.links);if(c.length>0)for(;null!=(r=this.tokenizer.rules.inline.reflinkSearch.exec(s));)c.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,r.index)+"["+Ro("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(r=this.tokenizer.rules.inline.blockSkip.exec(s));)s=s.slice(0,r.index)+"["+Ro("a",r[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(r=this.tokenizer.rules.inline.escapedEmSt.exec(s));)s=s.slice(0,r.index)+"++"+s.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(u||(i=""),u=!1,e=this.tokenizer.escape(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.tag(t,o,l)){t=t.substring(e.raw.length),o=e.inLink,l=e.inRawBlock;var p=a[a.length-1];p&&"text"===e.type&&"text"===p.type?(p.raw+=e.raw,p.text+=e.text):a.push(e)}else if(e=this.tokenizer.link(t))t=t.substring(e.raw.length),"link"===e.type&&(e.tokens=this.inlineTokens(e.text,[],!0,l)),a.push(e);else if(e=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(e.raw.length);var d=a[a.length-1];"link"===e.type?(e.tokens=this.inlineTokens(e.text,[],!0,l),a.push(e)):d&&"text"===e.type&&"text"===d.type?(d.raw+=e.raw,d.text+=e.text):a.push(e)}else if(e=this.tokenizer.emStrong(t,s,i))t=t.substring(e.raw.length),e.tokens=this.inlineTokens(e.text,[],o,l),a.push(e);else if(e=this.tokenizer.codespan(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.br(t))t=t.substring(e.raw.length),a.push(e);else if(e=this.tokenizer.del(t))t=t.substring(e.raw.length),e.tokens=this.inlineTokens(e.text,[],o,l),a.push(e);else if(e=this.tokenizer.autolink(t,Oo))t=t.substring(e.raw.length),a.push(e);else if(o||!(e=this.tokenizer.url(t,Oo))){if(e=this.tokenizer.inlineText(t,l,$o))t=t.substring(e.raw.length),"_"!==e.raw.slice(-1)&&(i=e.raw.slice(-1)),u=!0,(n=a[a.length-1])&&"text"===n.type?(n.raw+=e.raw,n.text+=e.text):a.push(e);else if(t){var f="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(f);break}throw new Error(f)}}else t=t.substring(e.raw.length),a.push(e);return a}}],[{key:"rules",get:function(){return{block:zo,inline:Io}}},{key:"lex",value:function(e,n){return new t(n).lex(e)}},{key:"lexInline",value:function(e,n){return new t(n).inlineTokens(e)}}]),t}(),Lo=Ma.exports.defaults,jo=lo,Mo=io,No=function(){function t(e){or(this,t),this.options=e||Lo}return sr(t,[{key:"code",value:function(t,e,n){var r=(e||"").match(/\S*/)[0];if(this.options.highlight){var u=this.options.highlight(t,r);null!=u&&u!==t&&(n=!0,t=u)}return t=t.replace(/\n$/,"")+"\n",r?'<pre><code class="'+this.options.langPrefix+Mo(r,!0)+'">'+(n?t:Mo(t,!0))+"</code></pre>\n":"<pre><code>"+(n?t:Mo(t,!0))+"</code></pre>\n"}},{key:"blockquote",value:function(t){return"<blockquote>\n"+t+"</blockquote>\n"}},{key:"html",value:function(t){return t}},{key:"heading",value:function(t,e,n,r){return this.options.headerIds?"<h"+e+' id="'+this.options.headerPrefix+r.slug(n)+'">'+t+"</h"+e+">\n":"<h"+e+">"+t+"</h"+e+">\n"}},{key:"hr",value:function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}},{key:"list",value:function(t,e,n){var r=e?"ol":"ul";return"<"+r+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"</"+r+">\n"}},{key:"listitem",value:function(t){return"<li>"+t+"</li>\n"}},{key:"checkbox",value:function(t){return"<input "+(t?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}},{key:"paragraph",value:function(t){return"<p>"+t+"</p>\n"}},{key:"table",value:function(t,e){return e&&(e="<tbody>"+e+"</tbody>"),"<table>\n<thead>\n"+t+"</thead>\n"+e+"</table>\n"}},{key:"tablerow",value:function(t){return"<tr>\n"+t+"</tr>\n"}},{key:"tablecell",value:function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"</"+n+">\n"}},{key:"strong",value:function(t){return"<strong>"+t+"</strong>"}},{key:"em",value:function(t){return"<em>"+t+"</em>"}},{key:"codespan",value:function(t){return"<code>"+t+"</code>"}},{key:"br",value:function(){return this.options.xhtml?"<br/>":"<br>"}},{key:"del",value:function(t){return"<del>"+t+"</del>"}},{key:"link",value:function(t,e,n){if(null===(t=jo(this.options.sanitize,this.options.baseUrl,t)))return n;var r='<a href="'+Mo(t)+'"';return e&&(r+=' title="'+e+'"'),r+=">"+n+"</a>"}},{key:"image",value:function(t,e,n){if(null===(t=jo(this.options.sanitize,this.options.baseUrl,t)))return n;var r='<img src="'+t+'" alt="'+n+'"';return e&&(r+=' title="'+e+'"'),r+=this.options.xhtml?"/>":">"}},{key:"text",value:function(t){return t}}]),t}(),Uo=function(){function t(){or(this,t)}return sr(t,[{key:"strong",value:function(t){return t}},{key:"em",value:function(t){return t}},{key:"codespan",value:function(t){return t}},{key:"del",value:function(t){return t}},{key:"html",value:function(t){return t}},{key:"text",value:function(t){return t}},{key:"link",value:function(t,e,n){return""+n}},{key:"image",value:function(t,e,n){return""+n}},{key:"br",value:function(){return""}}]),t}(),qo=function(){function t(){or(this,t),this.seen={}}return sr(t,[{key:"serialize",value:function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}},{key:"getNextSafeSlug",value:function(t,e){var n=t,r=0;if(this.seen.hasOwnProperty(n)){r=this.seen[t];do{n=t+"-"+ ++r}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=r,this.seen[n]=0),n}},{key:"slug",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)}}]),t}(),Zo=No,Ko=Uo,Jo=qo,Ho=Ma.exports.defaults,Wo=ao,Yo=Po,Vo=function(){function t(e){or(this,t),this.options=e||Ho,this.options.renderer=this.options.renderer||new Zo,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new Ko,this.slugger=new Jo}return sr(t,[{key:"parse",value:function(t){var e,n,r,u,i,a,o,l,s,c,p,d,f,h,g,D,m,v,y=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],k="",A=t.length;for(e=0;e<A;e++)switch((c=t[e]).type){case"space":continue;case"hr":k+=this.renderer.hr();continue;case"heading":k+=this.renderer.heading(this.parseInline(c.tokens),c.depth,Wo(this.parseInline(c.tokens,this.textRenderer)),this.slugger);continue;case"code":k+=this.renderer.code(c.text,c.lang,c.escaped);continue;case"table":for(l="",o="",u=c.header.length,n=0;n<u;n++)o+=this.renderer.tablecell(this.parseInline(c.tokens.header[n]),{header:!0,align:c.align[n]});for(l+=this.renderer.tablerow(o),s="",u=c.cells.length,n=0;n<u;n++){for(o="",i=(a=c.tokens.cells[n]).length,r=0;r<i;r++)o+=this.renderer.tablecell(this.parseInline(a[r]),{header:!1,align:c.align[r]});s+=this.renderer.tablerow(o)}k+=this.renderer.table(l,s);continue;case"blockquote":s=this.parse(c.tokens),k+=this.renderer.blockquote(s);continue;case"list":for(p=c.ordered,d=c.start,f=c.loose,u=c.items.length,s="",n=0;n<u;n++)D=(g=c.items[n]).checked,m=g.task,h="",g.task&&(v=this.renderer.checkbox(D),f?g.tokens.length>0&&"text"===g.tokens[0].type?(g.tokens[0].text=v+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=v+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:v}):h+=v),h+=this.parse(g.tokens,f),s+=this.renderer.listitem(h,m,D);k+=this.renderer.list(s,p,d);continue;case"html":k+=this.renderer.html(c.text);continue;case"paragraph":k+=this.renderer.paragraph(this.parseInline(c.tokens));continue;case"text":for(s=c.tokens?this.parseInline(c.tokens):c.text;e+1<A&&"text"===t[e+1].type;)s+="\n"+((c=t[++e]).tokens?this.parseInline(c.tokens):c.text);k+=y?this.renderer.paragraph(s):s;continue;default:var E='Token with "'+c.type+'" type was not found.';if(this.options.silent)return void console.error(E);throw new Error(E)}return k}},{key:"parseInline",value:function(t,e){e=e||this.renderer;var n,r,u="",i=t.length;for(n=0;n<i;n++)switch((r=t[n]).type){case"escape":u+=e.text(r.text);break;case"html":u+=e.html(r.text);break;case"link":u+=e.link(r.href,r.title,this.parseInline(r.tokens,e));break;case"image":u+=e.image(r.href,r.title,r.text);break;case"strong":u+=e.strong(this.parseInline(r.tokens,e));break;case"em":u+=e.em(this.parseInline(r.tokens,e));break;case"codespan":u+=e.codespan(r.text);break;case"br":u+=e.br();break;case"del":u+=e.del(this.parseInline(r.tokens,e));break;case"text":u+=e.text(r.text);break;default:var a='Token with "'+r.type+'" type was not found.';if(this.options.silent)return void console.error(a);throw new Error(a)}return u}}],[{key:"parse",value:function(e,n){return new t(n).parse(e)}},{key:"parseInline",value:function(e,n){return new t(n).parseInline(e)}}]),t}(),Xo=bo,Go=No,Qo=Uo,tl=qo,el=co,nl=go,rl=io,ul=Ma.exports.getDefaults,il=Ma.exports.changeDefaults,al=Ma.exports.defaults;function ol(t,e,n){if(null==t)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof t)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected");if("function"==typeof e&&(n=e,e=null),e=el({},ol.defaults,e||{}),nl(e),n){var r,u=e.highlight;try{r=Yo.lex(t,e)}catch(t){return n(t)}var i=function(t){var i;if(!t)try{i=Vo.parse(r,e)}catch(e){t=e}return e.highlight=u,t?n(t):n(null,i)};if(!u||u.length<3)return i();if(delete e.highlight,!r.length)return i();var a=0;return ol.walkTokens(r,(function(t){"code"===t.type&&(a++,setTimeout((function(){u(t.text,t.lang,(function(e,n){if(e)return i(e);null!=n&&n!==t.text&&(t.text=n,t.escaped=!0),0===--a&&i()}))}),0))})),void(0===a&&i())}try{var o=Yo.lex(t,e);return e.walkTokens&&ol.walkTokens(o,e.walkTokens),Vo.parse(o,e)}catch(t){if(t.message+="\nPlease report this to https://github.com/markedjs/marked.",e.silent)return"<p>An error occurred:</p><pre>"+rl(t.message+"",!0)+"</pre>";throw t}}ol.options=ol.setOptions=function(t){return el(ol.defaults,t),il(ol.defaults),ol},ol.getDefaults=ul,ol.defaults=al,ol.use=function(t){var e=el({},t);if(t.renderer&&function(){var n=ol.defaults.renderer||new Go,r=function(e){var r=n[e];n[e]=function(){for(var u=arguments.length,i=new Array(u),a=0;a<u;a++)i[a]=arguments[a];var o=t.renderer[e].apply(n,i);return!1===o&&(o=r.apply(n,i)),o}};for(var u in t.renderer)r(u);e.renderer=n}(),t.tokenizer&&function(){var n=ol.defaults.tokenizer||new Xo,r=function(e){var r=n[e];n[e]=function(){for(var u=arguments.length,i=new Array(u),a=0;a<u;a++)i[a]=arguments[a];var o=t.tokenizer[e].apply(n,i);return!1===o&&(o=r.apply(n,i)),o}};for(var u in t.tokenizer)r(u);e.tokenizer=n}(),t.walkTokens){var n=ol.defaults.walkTokens;e.walkTokens=function(e){t.walkTokens(e),n&&n(e)}}ol.setOptions(e)},ol.walkTokens=function(t,e){var n,r=fr(t);try{for(r.s();!(n=r.n()).done;){var u=n.value;switch(e(u),u.type){case"table":var i,a=fr(u.tokens.header);try{for(a.s();!(i=a.n()).done;){var o=i.value;ol.walkTokens(o,e)}}catch(t){a.e(t)}finally{a.f()}var l,s=fr(u.tokens.cells);try{for(s.s();!(l=s.n()).done;){var c,p=fr(l.value);try{for(p.s();!(c=p.n()).done;){var d=c.value;ol.walkTokens(d,e)}}catch(t){p.e(t)}finally{p.f()}}}catch(t){s.e(t)}finally{s.f()}break;case"list":ol.walkTokens(u.items,e);break;default:u.tokens&&ol.walkTokens(u.tokens,e)}}}catch(t){r.e(t)}finally{r.f()}},ol.parseInline=function(t,e){if(null==t)throw new Error("marked.parseInline(): input parameter is undefined or null");if("string"!=typeof t)throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected");e=el({},ol.defaults,e||{}),nl(e);try{var n=Yo.lexInline(t,e);return e.walkTokens&&ol.walkTokens(n,e.walkTokens),Vo.parseInline(n,e)}catch(t){if(t.message+="\nPlease report this to https://github.com/markedjs/marked.",e.silent)return"<p>An error occurred:</p><pre>"+rl(t.message+"",!0)+"</pre>";throw t}},ol.Parser=Vo,ol.parser=Vo.parse,ol.Renderer=Go,ol.TextRenderer=Qo,ol.Lexer=Yo,ol.lexer=Yo.lex,ol.Tokenizer=Xo,ol.Slugger=tl,ol.parse=ol;var ll=ol;return function(){var t,e=null;function n(){var n;!e||e.closed?((e=window.open("about:blank","reveal.js - Notes","width=1100,height=700")).marked=ll,e.document.write("<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\">\n\n\t\t<title>reveal.js - Speaker View</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\tfont-family: Helvetica;\n\t\t\t\tfont-size: 18px;\n\t\t\t}\n\n\t\t\t#current-slide,\n\t\t\t#upcoming-slide,\n\t\t\t#speaker-controls {\n\t\t\t\tpadding: 6px;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\t-moz-box-sizing: border-box;\n\t\t\t}\n\n\t\t\t#current-slide iframe,\n\t\t\t#upcoming-slide iframe {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tborder: 1px solid #ddd;\n\t\t\t}\n\n\t\t\t#current-slide .label,\n\t\t\t#upcoming-slide .label {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 10px;\n\t\t\t\tleft: 10px;\n\t\t\t\tz-index: 2;\n\t\t\t}\n\n\t\t\t#connection-status {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tz-index: 20;\n\t\t\t\tpadding: 30% 20% 20% 20%;\n\t\t\t\tfont-size: 18px;\n\t\t\t\tcolor: #222;\n\t\t\t\tbackground: #fff;\n\t\t\t\ttext-align: center;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tline-height: 1.4;\n\t\t\t}\n\n\t\t\t.overlay-element {\n\t\t\t\theight: 34px;\n\t\t\t\tline-height: 34px;\n\t\t\t\tpadding: 0 10px;\n\t\t\t\ttext-shadow: none;\n\t\t\t\tbackground: rgba( 220, 220, 220, 0.8 );\n\t\t\t\tcolor: #222;\n\t\t\t\tfont-size: 14px;\n\t\t\t}\n\n\t\t\t.overlay-element.interactive:hover {\n\t\t\t\tbackground: rgba( 220, 220, 220, 1 );\n\t\t\t}\n\n\t\t\t#current-slide {\n\t\t\t\tposition: absolute;\n\t\t\t\twidth: 60%;\n\t\t\t\theight: 100%;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\tpadding-right: 0;\n\t\t\t}\n\n\t\t\t#upcoming-slide {\n\t\t\t\tposition: absolute;\n\t\t\t\twidth: 40%;\n\t\t\t\theight: 40%;\n\t\t\t\tright: 0;\n\t\t\t\ttop: 0;\n\t\t\t}\n\n\t\t\t/* Speaker controls */\n\t\t\t#speaker-controls {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 40%;\n\t\t\t\tright: 0;\n\t\t\t\twidth: 40%;\n\t\t\t\theight: 60%;\n\t\t\t\toverflow: auto;\n\t\t\t\tfont-size: 18px;\n\t\t\t}\n\n\t\t\t\t.speaker-controls-time.hidden,\n\t\t\t\t.speaker-controls-notes.hidden {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .label,\n\t\t\t\t.speaker-controls-pace .label,\n\t\t\t\t.speaker-controls-notes .label {\n\t\t\t\t\ttext-transform: uppercase;\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t\tfont-size: 0.66em;\n\t\t\t\t\tcolor: #666;\n\t\t\t\t\tmargin: 0;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time, .speaker-controls-pace {\n\t\t\t\t\tborder-bottom: 1px solid rgba( 200, 200, 200, 0.5 );\n\t\t\t\t\tmargin-bottom: 10px;\n\t\t\t\t\tpadding: 10px 16px;\n\t\t\t\t\tpadding-bottom: 20px;\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .reset-button {\n\t\t\t\t\topacity: 0;\n\t\t\t\t\tfloat: right;\n\t\t\t\t\tcolor: #666;\n\t\t\t\t\ttext-decoration: none;\n\t\t\t\t}\n\t\t\t\t.speaker-controls-time:hover .reset-button {\n\t\t\t\t\topacity: 1;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer,\n\t\t\t\t.speaker-controls-time .clock {\n\t\t\t\t\twidth: 50%;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer,\n\t\t\t\t.speaker-controls-time .clock,\n\t\t\t\t.speaker-controls-time .pacing .hours-value,\n\t\t\t\t.speaker-controls-time .pacing .minutes-value,\n\t\t\t\t.speaker-controls-time .pacing .seconds-value {\n\t\t\t\t\tfont-size: 1.9em;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .timer {\n\t\t\t\t\tfloat: left;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .clock {\n\t\t\t\t\tfloat: right;\n\t\t\t\t\ttext-align: right;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time span.mute {\n\t\t\t\t\topacity: 0.3;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing-title {\n\t\t\t\t\tmargin-top: 5px;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.ahead {\n\t\t\t\t\tcolor: blue;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.on-track {\n\t\t\t\t\tcolor: green;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-time .pacing.behind {\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-notes {\n\t\t\t\t\tpadding: 10px 16px;\n\t\t\t\t}\n\n\t\t\t\t.speaker-controls-notes .value {\n\t\t\t\t\tmargin-top: 5px;\n\t\t\t\t\tline-height: 1.4;\n\t\t\t\t\tfont-size: 1.2em;\n\t\t\t\t}\n\n\t\t\t/* Layout selector */\n\t\t\t#speaker-layout {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 10px;\n\t\t\t\tright: 10px;\n\t\t\t\tcolor: #222;\n\t\t\t\tz-index: 10;\n\t\t\t}\n\t\t\t\t#speaker-layout select {\n\t\t\t\t\tposition: absolute;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\theight: 100%;\n\t\t\t\t\ttop: 0;\n\t\t\t\t\tleft: 0;\n\t\t\t\t\tborder: 0;\n\t\t\t\t\tbox-shadow: 0;\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t\topacity: 0;\n\n\t\t\t\t\tfont-size: 1em;\n\t\t\t\t\tbackground-color: transparent;\n\n\t\t\t\t\t-moz-appearance: none;\n\t\t\t\t\t-webkit-appearance: none;\n\t\t\t\t\t-webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\t\t\t\t}\n\n\t\t\t\t#speaker-layout select:focus {\n\t\t\t\t\toutline: none;\n\t\t\t\t\tbox-shadow: none;\n\t\t\t\t}\n\n\t\t\t.clear {\n\t\t\t\tclear: both;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Wide */\n\t\t\tbody[data-speaker-layout=\"wide\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"wide\"] #upcoming-slide {\n\t\t\t\twidth: 50%;\n\t\t\t\theight: 45%;\n\t\t\t\tpadding: 6px;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #current-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #upcoming-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 50%;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"wide\"] #speaker-controls {\n\t\t\t\ttop: 45%;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 50%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Tall */\n\t\t\tbody[data-speaker-layout=\"tall\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"tall\"] #upcoming-slide {\n\t\t\t\twidth: 45%;\n\t\t\t\theight: 50%;\n\t\t\t\tpadding: 6px;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #current-slide {\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #upcoming-slide {\n\t\t\t\ttop: 50%;\n\t\t\t\tleft: 0;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"tall\"] #speaker-controls {\n\t\t\t\tpadding-top: 40px;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 45%;\n\t\t\t\twidth: 55%;\n\t\t\t\theight: 100%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t/* Speaker layout: Notes only */\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #current-slide,\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #upcoming-slide {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\n\t\t\tbody[data-speaker-layout=\"notes-only\"] #speaker-controls {\n\t\t\t\tpadding-top: 40px;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tfont-size: 1.25em;\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 1080px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 900px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media screen and (max-width: 800px) {\n\t\t\t\tbody[data-speaker-layout=\"default\"] #speaker-controls {\n\t\t\t\t\tfont-size: 12px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t</style>\n\t</head>\n\n\t<body>\n\n\t\t<div id=\"connection-status\">Loading speaker view...</div>\n\n\t\t<div id=\"current-slide\"></div>\n\t\t<div id=\"upcoming-slide\"><span class=\"overlay-element label\">Upcoming</span></div>\n\t\t<div id=\"speaker-controls\">\n\t\t\t<div class=\"speaker-controls-time\">\n\t\t\t\t<h4 class=\"label\">Time <span class=\"reset-button\">Click to Reset</span></h4>\n\t\t\t\t<div class=\"clock\">\n\t\t\t\t\t<span class=\"clock-value\">0:00 AM</span>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"timer\">\n\t\t\t\t\t<span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"clear\"></div>\n\n\t\t\t\t<h4 class=\"label pacing-title\" style=\"display: none\">Pacing – Time to finish current slide</h4>\n\t\t\t\t<div class=\"pacing\" style=\"display: none\">\n\t\t\t\t\t<span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"speaker-controls-notes hidden\">\n\t\t\t\t<h4 class=\"label\">Notes</h4>\n\t\t\t\t<div class=\"value\"></div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div id=\"speaker-layout\" class=\"overlay-element interactive\">\n\t\t\t<span class=\"speaker-layout-label\"></span>\n\t\t\t<select class=\"speaker-layout-dropdown\"></select>\n\t\t</div>\n\n\t\t<script>\n\n\t\t\t(function() {\n\n\t\t\t\tvar notes,\n\t\t\t\t\tnotesValue,\n\t\t\t\t\tcurrentState,\n\t\t\t\t\tcurrentSlide,\n\t\t\t\t\tupcomingSlide,\n\t\t\t\t\tlayoutLabel,\n\t\t\t\t\tlayoutDropdown,\n\t\t\t\t\tpendingCalls = {},\n\t\t\t\t\tlastRevealApiCallId = 0,\n\t\t\t\t\tconnected = false;\n\n\t\t\t\tvar SPEAKER_LAYOUTS = {\n\t\t\t\t\t'default': 'Default',\n\t\t\t\t\t'wide': 'Wide',\n\t\t\t\t\t'tall': 'Tall',\n\t\t\t\t\t'notes-only': 'Notes only'\n\t\t\t\t};\n\n\t\t\t\tsetupLayout();\n\n\t\t\t\tvar connectionStatus = document.querySelector( '#connection-status' );\n\t\t\t\tvar connectionTimeout = setTimeout( function() {\n\t\t\t\t\tconnectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';\n\t\t\t\t}, 5000 );\n\n\t\t\t\twindow.addEventListener( 'message', function( event ) {\n\n\t\t\t\t\tclearTimeout( connectionTimeout );\n\t\t\t\t\tconnectionStatus.style.display = 'none';\n\n\t\t\t\t\tvar data = JSON.parse( event.data );\n\n\t\t\t\t\t// The overview mode is only useful to the reveal.js instance\n\t\t\t\t\t// where navigation occurs so we don't sync it\n\t\t\t\t\tif( data.state ) delete data.state.overview;\n\n\t\t\t\t\t// Messages sent by the notes plugin inside of the main window\n\t\t\t\t\tif( data && data.namespace === 'reveal-notes' ) {\n\t\t\t\t\t\tif( data.type === 'connect' ) {\n\t\t\t\t\t\t\thandleConnectMessage( data );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( data.type === 'state' ) {\n\t\t\t\t\t\t\thandleStateMessage( data );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( data.type === 'return' ) {\n\t\t\t\t\t\t\tpendingCalls[data.callId](data.result);\n\t\t\t\t\t\t\tdelete pendingCalls[data.callId];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Messages sent by the reveal.js inside of the current slide preview\n\t\t\t\t\telse if( data && data.namespace === 'reveal' ) {\n\t\t\t\t\t\tif( /ready/.test( data.eventName ) ) {\n\t\t\t\t\t\t\t// Send a message back to notify that the handshake is complete\n\t\t\t\t\t\t\twindow.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( /slidechanged|fragmentshown|fragmenthidden|paused|resumed/.test( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {\n\n\t\t\t\t\t\t\twindow.opener.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ]} ), '*' );\n\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\n\t\t\t\t/**\n\t\t\t\t * Asynchronously calls the Reveal.js API of the main frame.\n\t\t\t\t */\n\t\t\t\tfunction callRevealApi( methodName, methodArguments, callback ) {\n\n\t\t\t\t\tvar callId = ++lastRevealApiCallId;\n\t\t\t\t\tpendingCalls[callId] = callback;\n\t\t\t\t\twindow.opener.postMessage( JSON.stringify( {\n\t\t\t\t\t\tnamespace: 'reveal-notes',\n\t\t\t\t\t\ttype: 'call',\n\t\t\t\t\t\tcallId: callId,\n\t\t\t\t\t\tmethodName: methodName,\n\t\t\t\t\t\targuments: methodArguments\n\t\t\t\t\t} ), '*' );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Called when the main window is trying to establish a\n\t\t\t\t * connection.\n\t\t\t\t */\n\t\t\t\tfunction handleConnectMessage( data ) {\n\n\t\t\t\t\tif( connected === false ) {\n\t\t\t\t\t\tconnected = true;\n\n\t\t\t\t\t\tsetupIframes( data );\n\t\t\t\t\t\tsetupKeyboard();\n\t\t\t\t\t\tsetupNotes();\n\t\t\t\t\t\tsetupTimer();\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Called when the main window sends an updated state.\n\t\t\t\t */\n\t\t\t\tfunction handleStateMessage( data ) {\n\n\t\t\t\t\t// Store the most recently set state to avoid circular loops\n\t\t\t\t\t// applying the same state\n\t\t\t\t\tcurrentState = JSON.stringify( data.state );\n\n\t\t\t\t\t// No need for updating the notes in case of fragment changes\n\t\t\t\t\tif ( data.notes ) {\n\t\t\t\t\t\tnotes.classList.remove( 'hidden' );\n\t\t\t\t\t\tnotesValue.style.whiteSpace = data.whitespace;\n\t\t\t\t\t\tif( data.markdown ) {\n\t\t\t\t\t\t\tnotesValue.innerHTML = marked( data.notes );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnotesValue.innerHTML = data.notes;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnotes.classList.add( 'hidden' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Update the note slides\n\t\t\t\t\tcurrentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n\t\t\t\t\tupcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n\t\t\t\t\tupcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' );\n\n\t\t\t\t}\n\n\t\t\t\t// Limit to max one state update per X ms\n\t\t\t\thandleStateMessage = debounce( handleStateMessage, 200 );\n\n\t\t\t\t/**\n\t\t\t\t * Forward keyboard events to the current slide window.\n\t\t\t\t * This enables keyboard events to work even if focus\n\t\t\t\t * isn't set on the current slide iframe.\n\t\t\t\t *\n\t\t\t\t * Block F5 default handling, it reloads and disconnects\n\t\t\t\t * the speaker notes window.\n\t\t\t\t */\n\t\t\t\tfunction setupKeyboard() {\n\n\t\t\t\t\tdocument.addEventListener( 'keydown', function( event ) {\n\t\t\t\t\t\tif( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Creates the preview iframes.\n\t\t\t\t */\n\t\t\t\tfunction setupIframes( data ) {\n\n\t\t\t\t\tvar params = [\n\t\t\t\t\t\t'receiver',\n\t\t\t\t\t\t'progress=false',\n\t\t\t\t\t\t'history=false',\n\t\t\t\t\t\t'transition=none',\n\t\t\t\t\t\t'autoSlide=0',\n\t\t\t\t\t\t'backgroundTransition=none'\n\t\t\t\t\t].join( '&' );\n\n\t\t\t\t\tvar urlSeparator = /\\?/.test(data.url) ? '&' : '?';\n\t\t\t\t\tvar hash = '#/' + data.state.indexh + '/' + data.state.indexv;\n\t\t\t\t\tvar currentURL = data.url + urlSeparator + params + '&postMessageEvents=true' + hash;\n\t\t\t\t\tvar upcomingURL = data.url + urlSeparator + params + '&controls=false' + hash;\n\n\t\t\t\t\tcurrentSlide = document.createElement( 'iframe' );\n\t\t\t\t\tcurrentSlide.setAttribute( 'width', 1280 );\n\t\t\t\t\tcurrentSlide.setAttribute( 'height', 1024 );\n\t\t\t\t\tcurrentSlide.setAttribute( 'src', currentURL );\n\t\t\t\t\tdocument.querySelector( '#current-slide' ).appendChild( currentSlide );\n\n\t\t\t\t\tupcomingSlide = document.createElement( 'iframe' );\n\t\t\t\t\tupcomingSlide.setAttribute( 'width', 640 );\n\t\t\t\t\tupcomingSlide.setAttribute( 'height', 512 );\n\t\t\t\t\tupcomingSlide.setAttribute( 'src', upcomingURL );\n\t\t\t\t\tdocument.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Setup the notes UI.\n\t\t\t\t */\n\t\t\t\tfunction setupNotes() {\n\n\t\t\t\t\tnotes = document.querySelector( '.speaker-controls-notes' );\n\t\t\t\t\tnotesValue = document.querySelector( '.speaker-controls-notes .value' );\n\n\t\t\t\t}\n\n\t\t\t\tfunction getTimings( callback ) {\n\n\t\t\t\t\tcallRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {\n\t\t\t\t\t\tcallRevealApi( 'getConfig', [], function ( config ) {\n\t\t\t\t\t\t\tvar totalTime = config.totalTime;\n\t\t\t\t\t\t\tvar minTimePerSlide = config.minimumTimePerSlide || 0;\n\t\t\t\t\t\t\tvar defaultTiming = config.defaultTiming;\n\t\t\t\t\t\t\tif ((defaultTiming == null) && (totalTime == null)) {\n\t\t\t\t\t\t\t\tcallback(null);\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// Setting totalTime overrides defaultTiming\n\t\t\t\t\t\t\tif (totalTime) {\n\t\t\t\t\t\t\t\tdefaultTiming = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar timings = [];\n\t\t\t\t\t\t\tfor ( var i in slideAttributes ) {\n\t\t\t\t\t\t\t\tvar slide = slideAttributes[ i ];\n\t\t\t\t\t\t\t\tvar timing = defaultTiming;\n\t\t\t\t\t\t\t\tif( slide.hasOwnProperty( 'data-timing' )) {\n\t\t\t\t\t\t\t\t\tvar t = slide[ 'data-timing' ];\n\t\t\t\t\t\t\t\t\ttiming = parseInt(t);\n\t\t\t\t\t\t\t\t\tif( isNaN(timing) ) {\n\t\t\t\t\t\t\t\t\t\tconsole.warn(\"Could not parse timing '\" + t + \"' of slide \" + i + \"; using default of \" + defaultTiming);\n\t\t\t\t\t\t\t\t\t\ttiming = defaultTiming;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttimings.push(timing);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( totalTime ) {\n\t\t\t\t\t\t\t\t// After we've allocated time to individual slides, we summarize it and\n\t\t\t\t\t\t\t\t// subtract it from the total time\n\t\t\t\t\t\t\t\tvar remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 );\n\t\t\t\t\t\t\t\t// The remaining time is divided by the number of slides that have 0 seconds\n\t\t\t\t\t\t\t\t// allocated at the moment, giving the average time-per-slide on the remaining slides\n\t\t\t\t\t\t\t\tvar remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length\n\t\t\t\t\t\t\t\tvar timePerSlide = Math.round( remainingTime / remainingSlides, 0 )\n\t\t\t\t\t\t\t\t// And now we replace every zero-value timing with that average\n\t\t\t\t\t\t\t\ttimings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length\n\t\t\t\t\t\t\tif ( slidesUnderMinimum ) {\n\t\t\t\t\t\t\t\tmessage = \"The pacing time for \" + slidesUnderMinimum + \" slide(s) is under the configured minimum of \" + minTimePerSlide + \" seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides).\";\n\t\t\t\t\t\t\t\talert(message);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcallback( timings );\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Return the number of seconds allocated for presenting\n\t\t\t\t * all slides up to and including this one.\n\t\t\t\t */\n\t\t\t\tfunction getTimeAllocated( timings, callback ) {\n\n\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\tvar allocated = 0;\n\t\t\t\t\t\tfor (var i in timings.slice(0, currentSlide + 1)) {\n\t\t\t\t\t\t\tallocated += timings[i];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcallback( allocated );\n\t\t\t\t\t} );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Create the timer and clock and start updating them\n\t\t\t\t * at an interval.\n\t\t\t\t */\n\t\t\t\tfunction setupTimer() {\n\n\t\t\t\t\tvar start = new Date(),\n\t\t\t\t\ttimeEl = document.querySelector( '.speaker-controls-time' ),\n\t\t\t\t\tclockEl = timeEl.querySelector( '.clock-value' ),\n\t\t\t\t\thoursEl = timeEl.querySelector( '.hours-value' ),\n\t\t\t\t\tminutesEl = timeEl.querySelector( '.minutes-value' ),\n\t\t\t\t\tsecondsEl = timeEl.querySelector( '.seconds-value' ),\n\t\t\t\t\tpacingTitleEl = timeEl.querySelector( '.pacing-title' ),\n\t\t\t\t\tpacingEl = timeEl.querySelector( '.pacing' ),\n\t\t\t\t\tpacingHoursEl = pacingEl.querySelector( '.hours-value' ),\n\t\t\t\t\tpacingMinutesEl = pacingEl.querySelector( '.minutes-value' ),\n\t\t\t\t\tpacingSecondsEl = pacingEl.querySelector( '.seconds-value' );\n\n\t\t\t\t\tvar timings = null;\n\t\t\t\t\tgetTimings( function ( _timings ) {\n\n\t\t\t\t\t\ttimings = _timings;\n\t\t\t\t\t\tif (_timings !== null) {\n\t\t\t\t\t\t\tpacingTitleEl.style.removeProperty('display');\n\t\t\t\t\t\t\tpacingEl.style.removeProperty('display');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Update once directly\n\t\t\t\t\t\t_updateTimer();\n\n\t\t\t\t\t\t// Then update every second\n\t\t\t\t\t\tsetInterval( _updateTimer, 1000 );\n\n\t\t\t\t\t} );\n\n\n\t\t\t\t\tfunction _resetTimer() {\n\n\t\t\t\t\t\tif (timings == null) {\n\t\t\t\t\t\t\tstart = new Date();\n\t\t\t\t\t\t\t_updateTimer();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t// Reset timer to beginning of current slide\n\t\t\t\t\t\t\tgetTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n\t\t\t\t\t\t\t\tvar slideEndTiming = slideEndTimingSeconds * 1000;\n\t\t\t\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\t\t\t\tvar currentSlideTiming = timings[currentSlide] * 1000;\n\t\t\t\t\t\t\t\t\tvar previousSlidesTiming = slideEndTiming - currentSlideTiming;\n\t\t\t\t\t\t\t\t\tvar now = new Date();\n\t\t\t\t\t\t\t\t\tstart = new Date(now.getTime() - previousSlidesTiming);\n\t\t\t\t\t\t\t\t\t_updateTimer();\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\ttimeEl.addEventListener( 'click', function() {\n\t\t\t\t\t\t_resetTimer();\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t} );\n\n\t\t\t\t\tfunction _displayTime( hrEl, minEl, secEl, time) {\n\n\t\t\t\t\t\tvar sign = Math.sign(time) == -1 ? \"-\" : \"\";\n\t\t\t\t\t\ttime = Math.abs(Math.round(time / 1000));\n\t\t\t\t\t\tvar seconds = time % 60;\n\t\t\t\t\t\tvar minutes = Math.floor( time / 60 ) % 60 ;\n\t\t\t\t\t\tvar hours = Math.floor( time / ( 60 * 60 )) ;\n\t\t\t\t\t\thrEl.innerHTML = sign + zeroPadInteger( hours );\n\t\t\t\t\t\tif (hours == 0) {\n\t\t\t\t\t\t\thrEl.classList.add( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\thrEl.classList.remove( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tminEl.innerHTML = ':' + zeroPadInteger( minutes );\n\t\t\t\t\t\tif (hours == 0 && minutes == 0) {\n\t\t\t\t\t\t\tminEl.classList.add( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tminEl.classList.remove( 'mute' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsecEl.innerHTML = ':' + zeroPadInteger( seconds );\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction _updateTimer() {\n\n\t\t\t\t\t\tvar diff, hours, minutes, seconds,\n\t\t\t\t\t\tnow = new Date();\n\n\t\t\t\t\t\tdiff = now.getTime() - start.getTime();\n\n\t\t\t\t\t\tclockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } );\n\t\t\t\t\t\t_displayTime( hoursEl, minutesEl, secondsEl, diff );\n\t\t\t\t\t\tif (timings !== null) {\n\t\t\t\t\t\t\t_updatePacing(diff);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction _updatePacing(diff) {\n\n\t\t\t\t\t\tgetTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n\t\t\t\t\t\t\tvar slideEndTiming = slideEndTimingSeconds * 1000;\n\n\t\t\t\t\t\t\tcallRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n\t\t\t\t\t\t\t\tvar currentSlideTiming = timings[currentSlide] * 1000;\n\t\t\t\t\t\t\t\tvar timeLeftCurrentSlide = slideEndTiming - diff;\n\t\t\t\t\t\t\t\tif (timeLeftCurrentSlide < 0) {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing behind';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse if (timeLeftCurrentSlide < currentSlideTiming) {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing on-track';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tpacingEl.className = 'pacing ahead';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t_displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Sets up the speaker view layout and layout selector.\n\t\t\t\t */\n\t\t\t\tfunction setupLayout() {\n\n\t\t\t\t\tlayoutDropdown = document.querySelector( '.speaker-layout-dropdown' );\n\t\t\t\t\tlayoutLabel = document.querySelector( '.speaker-layout-label' );\n\n\t\t\t\t\t// Render the list of available layouts\n\t\t\t\t\tfor( var id in SPEAKER_LAYOUTS ) {\n\t\t\t\t\t\tvar option = document.createElement( 'option' );\n\t\t\t\t\t\toption.setAttribute( 'value', id );\n\t\t\t\t\t\toption.textContent = SPEAKER_LAYOUTS[ id ];\n\t\t\t\t\t\tlayoutDropdown.appendChild( option );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Monitor the dropdown for changes\n\t\t\t\t\tlayoutDropdown.addEventListener( 'change', function( event ) {\n\n\t\t\t\t\t\tsetLayout( layoutDropdown.value );\n\n\t\t\t\t\t}, false );\n\n\t\t\t\t\t// Restore any currently persisted layout\n\t\t\t\t\tsetLayout( getLayout() );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Sets a new speaker view layout. The layout is persisted\n\t\t\t\t * in local storage.\n\t\t\t\t */\n\t\t\t\tfunction setLayout( value ) {\n\n\t\t\t\t\tvar title = SPEAKER_LAYOUTS[ value ];\n\n\t\t\t\t\tlayoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' );\n\t\t\t\t\tlayoutDropdown.value = value;\n\n\t\t\t\t\tdocument.body.setAttribute( 'data-speaker-layout', value );\n\n\t\t\t\t\t// Persist locally\n\t\t\t\t\tif( supportsLocalStorage() ) {\n\t\t\t\t\t\twindow.localStorage.setItem( 'reveal-speaker-layout', value );\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Returns the ID of the most recently set speaker layout\n\t\t\t\t * or our default layout if none has been set.\n\t\t\t\t */\n\t\t\t\tfunction getLayout() {\n\n\t\t\t\t\tif( supportsLocalStorage() ) {\n\t\t\t\t\t\tvar layout = window.localStorage.getItem( 'reveal-speaker-layout' );\n\t\t\t\t\t\tif( layout ) {\n\t\t\t\t\t\t\treturn layout;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Default to the first record in the layouts hash\n\t\t\t\t\tfor( var id in SPEAKER_LAYOUTS ) {\n\t\t\t\t\t\treturn id;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tfunction supportsLocalStorage() {\n\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlocalStorage.setItem('test', 'test');\n\t\t\t\t\t\tlocalStorage.removeItem('test');\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tcatch( e ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tfunction zeroPadInteger( num ) {\n\n\t\t\t\t\tvar str = '00' + parseInt( num );\n\t\t\t\t\treturn str.substring( str.length - 2 );\n\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Limits the frequency at which a function can be called.\n\t\t\t\t */\n\t\t\t\tfunction debounce( fn, ms ) {\n\n\t\t\t\t\tvar lastTime = 0,\n\t\t\t\t\t\ttimeout;\n\n\t\t\t\t\treturn function() {\n\n\t\t\t\t\t\tvar args = arguments;\n\t\t\t\t\t\tvar context = this;\n\n\t\t\t\t\t\tclearTimeout( timeout );\n\n\t\t\t\t\t\tvar timeSinceLastCall = Date.now() - lastTime;\n\t\t\t\t\t\tif( timeSinceLastCall > ms ) {\n\t\t\t\t\t\t\tfn.apply( context, args );\n\t\t\t\t\t\t\tlastTime = Date.now();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttimeout = setTimeout( function() {\n\t\t\t\t\t\t\t\tfn.apply( context, args );\n\t\t\t\t\t\t\t\tlastTime = Date.now();\n\t\t\t\t\t\t\t}, ms - timeSinceLastCall );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t})();\n\n\t\t<\/script>\n\t</body>\n</html>"),e?(n=setInterval((function(){e.postMessage(JSON.stringify({namespace:"reveal-notes",type:"connect",url:window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,state:t.getState()}),"*")}),500),window.addEventListener("message",(function(u){var i,a,o,l,s=JSON.parse(u.data);s&&"reveal-notes"===s.namespace&&"connected"===s.type&&(clearInterval(n),t.on("slidechanged",r),t.on("fragmentshown",r),t.on("fragmenthidden",r),t.on("overviewhidden",r),t.on("overviewshown",r),t.on("paused",r),t.on("resumed",r),r()),s&&"reveal-notes"===s.namespace&&"call"===s.type&&(i=s.methodName,a=s.arguments,o=s.callId,l=t[i].apply(t,a),e.postMessage(JSON.stringify({namespace:"reveal-notes",type:"return",result:l,callId:o}),"*"))}))):alert("Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.")):e.focus();function r(n){var r=t.getCurrentSlide(),u=r.querySelector("aside.notes"),i=r.querySelector(".current-fragment"),a={namespace:"reveal-notes",type:"state",notes:"",markdown:!1,whitespace:"normal",state:t.getState()};if(r.hasAttribute("data-notes")&&(a.notes=r.getAttribute("data-notes"),a.whitespace="pre-wrap"),i){var o=i.querySelector("aside.notes");o?u=o:i.hasAttribute("data-notes")&&(a.notes=i.getAttribute("data-notes"),a.whitespace="pre-wrap",u=null)}u&&(a.notes=u.innerHTML,a.markdown="string"==typeof u.getAttribute("data-markdown")),e.postMessage(JSON.stringify(a),"*")}}return{id:"notes",init:function(e){t=e,/receiver/i.test(window.location.search)||(null!==window.location.search.match(/(\?|\&)notes/gi)&&n(),t.addKeyBinding({keyCode:83,key:"S",description:"Speaker notes view"},(function(){n()})))},open:n}}})); diff --git a/public/site_libs/revealjs/plugin/notes/plugin.js b/public/site_libs/revealjs/plugin/notes/plugin.js new file mode 100644 index 0000000..4028293 --- /dev/null +++ b/public/site_libs/revealjs/plugin/notes/plugin.js @@ -0,0 +1,184 @@ +import speakerViewHTML from './speaker-view.html'; + +import marked from 'marked'; + +/** + * Handles opening of and synchronization with the reveal.js + * notes window. + * + * Handshake process: + * 1. This window posts 'connect' to notes window + * - Includes URL of presentation to show + * 2. Notes window responds with 'connected' when it is available + * 3. This window proceeds to send the current presentation state + * to the notes window + */ +const Plugin = () => { + + let popup = null; + + let deck; + + function openNotes() { + + if (popup && !popup.closed) { + popup.focus(); + return; + } + + popup = window.open( 'about:blank', 'reveal.js - Notes', 'width=1100,height=700' ); + popup.marked = marked; + popup.document.write( speakerViewHTML ); + + if( !popup ) { + alert( 'Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.' ); + return; + } + + /** + * Connect to the notes window through a postmessage handshake. + * Using postmessage enables us to work in situations where the + * origins differ, such as a presentation being opened from the + * file system. + */ + function connect() { + // Keep trying to connect until we get a 'connected' message back + let connectInterval = setInterval( function() { + popup.postMessage( JSON.stringify( { + namespace: 'reveal-notes', + type: 'connect', + url: window.location.protocol + '//' + window.location.host + window.location.pathname + window.location.search, + state: deck.getState() + } ), '*' ); + }, 500 ); + + window.addEventListener( 'message', function( event ) { + let data = JSON.parse( event.data ); + if( data && data.namespace === 'reveal-notes' && data.type === 'connected' ) { + clearInterval( connectInterval ); + onConnected(); + } + if( data && data.namespace === 'reveal-notes' && data.type === 'call' ) { + callRevealApi( data.methodName, data.arguments, data.callId ); + } + } ); + } + + /** + * Calls the specified Reveal.js method with the provided argument + * and then pushes the result to the notes frame. + */ + function callRevealApi( methodName, methodArguments, callId ) { + + let result = deck[methodName].apply( deck, methodArguments ); + popup.postMessage( JSON.stringify( { + namespace: 'reveal-notes', + type: 'return', + result: result, + callId: callId + } ), '*' ); + + } + + /** + * Posts the current slide data to the notes window + */ + function post( event ) { + + let slideElement = deck.getCurrentSlide(), + notesElement = slideElement.querySelector( 'aside.notes' ), + fragmentElement = slideElement.querySelector( '.current-fragment' ); + + let messageData = { + namespace: 'reveal-notes', + type: 'state', + notes: '', + markdown: false, + whitespace: 'normal', + state: deck.getState() + }; + + // Look for notes defined in a slide attribute + if( slideElement.hasAttribute( 'data-notes' ) ) { + messageData.notes = slideElement.getAttribute( 'data-notes' ); + messageData.whitespace = 'pre-wrap'; + } + + // Look for notes defined in a fragment + if( fragmentElement ) { + let fragmentNotes = fragmentElement.querySelector( 'aside.notes' ); + if( fragmentNotes ) { + notesElement = fragmentNotes; + } + else if( fragmentElement.hasAttribute( 'data-notes' ) ) { + messageData.notes = fragmentElement.getAttribute( 'data-notes' ); + messageData.whitespace = 'pre-wrap'; + + // In case there are slide notes + notesElement = null; + } + } + + // Look for notes defined in an aside element + if( notesElement ) { + messageData.notes = notesElement.innerHTML; + messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string'; + } + + popup.postMessage( JSON.stringify( messageData ), '*' ); + + } + + /** + * Called once we have established a connection to the notes + * window. + */ + function onConnected() { + + // Monitor events that trigger a change in state + deck.on( 'slidechanged', post ); + deck.on( 'fragmentshown', post ); + deck.on( 'fragmenthidden', post ); + deck.on( 'overviewhidden', post ); + deck.on( 'overviewshown', post ); + deck.on( 'paused', post ); + deck.on( 'resumed', post ); + + // Post the initial state + post(); + + } + + connect(); + + } + + return { + id: 'notes', + + init: function( reveal ) { + + deck = reveal; + + if( !/receiver/i.test( window.location.search ) ) { + + // If the there's a 'notes' query set, open directly + if( window.location.search.match( /(\?|\&)notes/gi ) !== null ) { + openNotes(); + } + + // Open the notes when the 's' key is hit + deck.addKeyBinding({keyCode: 83, key: 'S', description: 'Speaker notes view'}, function() { + openNotes(); + } ); + + } + + }, + + open: openNotes + }; + +}; + +export default Plugin; diff --git a/public/site_libs/revealjs/plugin/notes/speaker-view.html b/public/site_libs/revealjs/plugin/notes/speaker-view.html new file mode 100644 index 0000000..b68fee4 --- /dev/null +++ b/public/site_libs/revealjs/plugin/notes/speaker-view.html @@ -0,0 +1,852 @@ +<html lang="en"> + <head> + <meta charset="utf-8"> + + <title>reveal.js - Speaker View</title> + + <style> + body { + font-family: Helvetica; + font-size: 18px; + } + + #current-slide, + #upcoming-slide, + #speaker-controls { + padding: 6px; + box-sizing: border-box; + -moz-box-sizing: border-box; + } + + #current-slide iframe, + #upcoming-slide iframe { + width: 100%; + height: 100%; + border: 1px solid #ddd; + } + + #current-slide .label, + #upcoming-slide .label { + position: absolute; + top: 10px; + left: 10px; + z-index: 2; + } + + #connection-status { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 20; + padding: 30% 20% 20% 20%; + font-size: 18px; + color: #222; + background: #fff; + text-align: center; + box-sizing: border-box; + line-height: 1.4; + } + + .overlay-element { + height: 34px; + line-height: 34px; + padding: 0 10px; + text-shadow: none; + background: rgba( 220, 220, 220, 0.8 ); + color: #222; + font-size: 14px; + } + + .overlay-element.interactive:hover { + background: rgba( 220, 220, 220, 1 ); + } + + #current-slide { + position: absolute; + width: 60%; + height: 100%; + top: 0; + left: 0; + padding-right: 0; + } + + #upcoming-slide { + position: absolute; + width: 40%; + height: 40%; + right: 0; + top: 0; + } + + /* Speaker controls */ + #speaker-controls { + position: absolute; + top: 40%; + right: 0; + width: 40%; + height: 60%; + overflow: auto; + font-size: 18px; + } + + .speaker-controls-time.hidden, + .speaker-controls-notes.hidden { + display: none; + } + + .speaker-controls-time .label, + .speaker-controls-pace .label, + .speaker-controls-notes .label { + text-transform: uppercase; + font-weight: normal; + font-size: 0.66em; + color: #666; + margin: 0; + } + + .speaker-controls-time, .speaker-controls-pace { + border-bottom: 1px solid rgba( 200, 200, 200, 0.5 ); + margin-bottom: 10px; + padding: 10px 16px; + padding-bottom: 20px; + cursor: pointer; + } + + .speaker-controls-time .reset-button { + opacity: 0; + float: right; + color: #666; + text-decoration: none; + } + .speaker-controls-time:hover .reset-button { + opacity: 1; + } + + .speaker-controls-time .timer, + .speaker-controls-time .clock { + width: 50%; + } + + .speaker-controls-time .timer, + .speaker-controls-time .clock, + .speaker-controls-time .pacing .hours-value, + .speaker-controls-time .pacing .minutes-value, + .speaker-controls-time .pacing .seconds-value { + font-size: 1.9em; + } + + .speaker-controls-time .timer { + float: left; + } + + .speaker-controls-time .clock { + float: right; + text-align: right; + } + + .speaker-controls-time span.mute { + opacity: 0.3; + } + + .speaker-controls-time .pacing-title { + margin-top: 5px; + } + + .speaker-controls-time .pacing.ahead { + color: blue; + } + + .speaker-controls-time .pacing.on-track { + color: green; + } + + .speaker-controls-time .pacing.behind { + color: red; + } + + .speaker-controls-notes { + padding: 10px 16px; + } + + .speaker-controls-notes .value { + margin-top: 5px; + line-height: 1.4; + font-size: 1.2em; + } + + /* Layout selector */ + #speaker-layout { + position: absolute; + top: 10px; + right: 10px; + color: #222; + z-index: 10; + } + #speaker-layout select { + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border: 0; + box-shadow: 0; + cursor: pointer; + opacity: 0; + + font-size: 1em; + background-color: transparent; + + -moz-appearance: none; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + } + + #speaker-layout select:focus { + outline: none; + box-shadow: none; + } + + .clear { + clear: both; + } + + /* Speaker layout: Wide */ + body[data-speaker-layout="wide"] #current-slide, + body[data-speaker-layout="wide"] #upcoming-slide { + width: 50%; + height: 45%; + padding: 6px; + } + + body[data-speaker-layout="wide"] #current-slide { + top: 0; + left: 0; + } + + body[data-speaker-layout="wide"] #upcoming-slide { + top: 0; + left: 50%; + } + + body[data-speaker-layout="wide"] #speaker-controls { + top: 45%; + left: 0; + width: 100%; + height: 50%; + font-size: 1.25em; + } + + /* Speaker layout: Tall */ + body[data-speaker-layout="tall"] #current-slide, + body[data-speaker-layout="tall"] #upcoming-slide { + width: 45%; + height: 50%; + padding: 6px; + } + + body[data-speaker-layout="tall"] #current-slide { + top: 0; + left: 0; + } + + body[data-speaker-layout="tall"] #upcoming-slide { + top: 50%; + left: 0; + } + + body[data-speaker-layout="tall"] #speaker-controls { + padding-top: 40px; + top: 0; + left: 45%; + width: 55%; + height: 100%; + font-size: 1.25em; + } + + /* Speaker layout: Notes only */ + body[data-speaker-layout="notes-only"] #current-slide, + body[data-speaker-layout="notes-only"] #upcoming-slide { + display: none; + } + + body[data-speaker-layout="notes-only"] #speaker-controls { + padding-top: 40px; + top: 0; + left: 0; + width: 100%; + height: 100%; + font-size: 1.25em; + } + + @media screen and (max-width: 1080px) { + body[data-speaker-layout="default"] #speaker-controls { + font-size: 16px; + } + } + + @media screen and (max-width: 900px) { + body[data-speaker-layout="default"] #speaker-controls { + font-size: 14px; + } + } + + @media screen and (max-width: 800px) { + body[data-speaker-layout="default"] #speaker-controls { + font-size: 12px; + } + } + + </style> + </head> + + <body> + + <div id="connection-status">Loading speaker view...</div> + + <div id="current-slide"></div> + <div id="upcoming-slide"><span class="overlay-element label">Upcoming</span></div> + <div id="speaker-controls"> + <div class="speaker-controls-time"> + <h4 class="label">Time <span class="reset-button">Click to Reset</span></h4> + <div class="clock"> + <span class="clock-value">0:00 AM</span> + </div> + <div class="timer"> + <span class="hours-value">00</span><span class="minutes-value">:00</span><span class="seconds-value">:00</span> + </div> + <div class="clear"></div> + + <h4 class="label pacing-title" style="display: none">Pacing – Time to finish current slide</h4> + <div class="pacing" style="display: none"> + <span class="hours-value">00</span><span class="minutes-value">:00</span><span class="seconds-value">:00</span> + </div> + </div> + + <div class="speaker-controls-notes hidden"> + <h4 class="label">Notes</h4> + <div class="value"></div> + </div> + </div> + <div id="speaker-layout" class="overlay-element interactive"> + <span class="speaker-layout-label"></span> + <select class="speaker-layout-dropdown"></select> + </div> + + <script> + + (function() { + + var notes, + notesValue, + currentState, + currentSlide, + upcomingSlide, + layoutLabel, + layoutDropdown, + pendingCalls = {}, + lastRevealApiCallId = 0, + connected = false; + + var SPEAKER_LAYOUTS = { + 'default': 'Default', + 'wide': 'Wide', + 'tall': 'Tall', + 'notes-only': 'Notes only' + }; + + setupLayout(); + + var connectionStatus = document.querySelector( '#connection-status' ); + var connectionTimeout = setTimeout( function() { + connectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.'; + }, 5000 ); + + window.addEventListener( 'message', function( event ) { + + clearTimeout( connectionTimeout ); + connectionStatus.style.display = 'none'; + + var data = JSON.parse( event.data ); + + // The overview mode is only useful to the reveal.js instance + // where navigation occurs so we don't sync it + if( data.state ) delete data.state.overview; + + // Messages sent by the notes plugin inside of the main window + if( data && data.namespace === 'reveal-notes' ) { + if( data.type === 'connect' ) { + handleConnectMessage( data ); + } + else if( data.type === 'state' ) { + handleStateMessage( data ); + } + else if( data.type === 'return' ) { + pendingCalls[data.callId](data.result); + delete pendingCalls[data.callId]; + } + } + // Messages sent by the reveal.js inside of the current slide preview + else if( data && data.namespace === 'reveal' ) { + if( /ready/.test( data.eventName ) ) { + // Send a message back to notify that the handshake is complete + window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' ); + } + else if( /slidechanged|fragmentshown|fragmenthidden|paused|resumed/.test( data.eventName ) && currentState !== JSON.stringify( data.state ) ) { + + window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ]} ), '*' ); + + } + } + + } ); + + /** + * Asynchronously calls the Reveal.js API of the main frame. + */ + function callRevealApi( methodName, methodArguments, callback ) { + + var callId = ++lastRevealApiCallId; + pendingCalls[callId] = callback; + window.opener.postMessage( JSON.stringify( { + namespace: 'reveal-notes', + type: 'call', + callId: callId, + methodName: methodName, + arguments: methodArguments + } ), '*' ); + + } + + /** + * Called when the main window is trying to establish a + * connection. + */ + function handleConnectMessage( data ) { + + if( connected === false ) { + connected = true; + + setupIframes( data ); + setupKeyboard(); + setupNotes(); + setupTimer(); + } + + } + + /** + * Called when the main window sends an updated state. + */ + function handleStateMessage( data ) { + + // Store the most recently set state to avoid circular loops + // applying the same state + currentState = JSON.stringify( data.state ); + + // No need for updating the notes in case of fragment changes + if ( data.notes ) { + notes.classList.remove( 'hidden' ); + notesValue.style.whiteSpace = data.whitespace; + if( data.markdown ) { + notesValue.innerHTML = marked( data.notes ); + } + else { + notesValue.innerHTML = data.notes; + } + } + else { + notes.classList.add( 'hidden' ); + } + + // Update the note slides + currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' ); + upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' ); + upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' ); + + } + + // Limit to max one state update per X ms + handleStateMessage = debounce( handleStateMessage, 200 ); + + /** + * Forward keyboard events to the current slide window. + * This enables keyboard events to work even if focus + * isn't set on the current slide iframe. + * + * Block F5 default handling, it reloads and disconnects + * the speaker notes window. + */ + function setupKeyboard() { + + document.addEventListener( 'keydown', function( event ) { + if( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) { + event.preventDefault(); + return false; + } + currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' ); + } ); + + } + + /** + * Creates the preview iframes. + */ + function setupIframes( data ) { + + var params = [ + 'receiver', + 'progress=false', + 'history=false', + 'transition=none', + 'autoSlide=0', + 'backgroundTransition=none' + ].join( '&' ); + + var urlSeparator = /\?/.test(data.url) ? '&' : '?'; + var hash = '#/' + data.state.indexh + '/' + data.state.indexv; + var currentURL = data.url + urlSeparator + params + '&postMessageEvents=true' + hash; + var upcomingURL = data.url + urlSeparator + params + '&controls=false' + hash; + + currentSlide = document.createElement( 'iframe' ); + currentSlide.setAttribute( 'width', 1280 ); + currentSlide.setAttribute( 'height', 1024 ); + currentSlide.setAttribute( 'src', currentURL ); + document.querySelector( '#current-slide' ).appendChild( currentSlide ); + + upcomingSlide = document.createElement( 'iframe' ); + upcomingSlide.setAttribute( 'width', 640 ); + upcomingSlide.setAttribute( 'height', 512 ); + upcomingSlide.setAttribute( 'src', upcomingURL ); + document.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide ); + + } + + /** + * Setup the notes UI. + */ + function setupNotes() { + + notes = document.querySelector( '.speaker-controls-notes' ); + notesValue = document.querySelector( '.speaker-controls-notes .value' ); + + } + + function getTimings( callback ) { + + callRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) { + callRevealApi( 'getConfig', [], function ( config ) { + var totalTime = config.totalTime; + var minTimePerSlide = config.minimumTimePerSlide || 0; + var defaultTiming = config.defaultTiming; + if ((defaultTiming == null) && (totalTime == null)) { + callback(null); + return; + } + // Setting totalTime overrides defaultTiming + if (totalTime) { + defaultTiming = 0; + } + var timings = []; + for ( var i in slideAttributes ) { + var slide = slideAttributes[ i ]; + var timing = defaultTiming; + if( slide.hasOwnProperty( 'data-timing' )) { + var t = slide[ 'data-timing' ]; + timing = parseInt(t); + if( isNaN(timing) ) { + console.warn("Could not parse timing '" + t + "' of slide " + i + "; using default of " + defaultTiming); + timing = defaultTiming; + } + } + timings.push(timing); + } + if ( totalTime ) { + // After we've allocated time to individual slides, we summarize it and + // subtract it from the total time + var remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 ); + // The remaining time is divided by the number of slides that have 0 seconds + // allocated at the moment, giving the average time-per-slide on the remaining slides + var remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length + var timePerSlide = Math.round( remainingTime / remainingSlides, 0 ) + // And now we replace every zero-value timing with that average + timings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } ); + } + var slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length + if ( slidesUnderMinimum ) { + message = "The pacing time for " + slidesUnderMinimum + " slide(s) is under the configured minimum of " + minTimePerSlide + " seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides)."; + alert(message); + } + callback( timings ); + } ); + } ); + + } + + /** + * Return the number of seconds allocated for presenting + * all slides up to and including this one. + */ + function getTimeAllocated( timings, callback ) { + + callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) { + var allocated = 0; + for (var i in timings.slice(0, currentSlide + 1)) { + allocated += timings[i]; + } + callback( allocated ); + } ); + + } + + /** + * Create the timer and clock and start updating them + * at an interval. + */ + function setupTimer() { + + var start = new Date(), + timeEl = document.querySelector( '.speaker-controls-time' ), + clockEl = timeEl.querySelector( '.clock-value' ), + hoursEl = timeEl.querySelector( '.hours-value' ), + minutesEl = timeEl.querySelector( '.minutes-value' ), + secondsEl = timeEl.querySelector( '.seconds-value' ), + pacingTitleEl = timeEl.querySelector( '.pacing-title' ), + pacingEl = timeEl.querySelector( '.pacing' ), + pacingHoursEl = pacingEl.querySelector( '.hours-value' ), + pacingMinutesEl = pacingEl.querySelector( '.minutes-value' ), + pacingSecondsEl = pacingEl.querySelector( '.seconds-value' ); + + var timings = null; + getTimings( function ( _timings ) { + + timings = _timings; + if (_timings !== null) { + pacingTitleEl.style.removeProperty('display'); + pacingEl.style.removeProperty('display'); + } + + // Update once directly + _updateTimer(); + + // Then update every second + setInterval( _updateTimer, 1000 ); + + } ); + + + function _resetTimer() { + + if (timings == null) { + start = new Date(); + _updateTimer(); + } + else { + // Reset timer to beginning of current slide + getTimeAllocated( timings, function ( slideEndTimingSeconds ) { + var slideEndTiming = slideEndTimingSeconds * 1000; + callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) { + var currentSlideTiming = timings[currentSlide] * 1000; + var previousSlidesTiming = slideEndTiming - currentSlideTiming; + var now = new Date(); + start = new Date(now.getTime() - previousSlidesTiming); + _updateTimer(); + } ); + } ); + } + + } + + timeEl.addEventListener( 'click', function() { + _resetTimer(); + return false; + } ); + + function _displayTime( hrEl, minEl, secEl, time) { + + var sign = Math.sign(time) == -1 ? "-" : ""; + time = Math.abs(Math.round(time / 1000)); + var seconds = time % 60; + var minutes = Math.floor( time / 60 ) % 60 ; + var hours = Math.floor( time / ( 60 * 60 )) ; + hrEl.innerHTML = sign + zeroPadInteger( hours ); + if (hours == 0) { + hrEl.classList.add( 'mute' ); + } + else { + hrEl.classList.remove( 'mute' ); + } + minEl.innerHTML = ':' + zeroPadInteger( minutes ); + if (hours == 0 && minutes == 0) { + minEl.classList.add( 'mute' ); + } + else { + minEl.classList.remove( 'mute' ); + } + secEl.innerHTML = ':' + zeroPadInteger( seconds ); + } + + function _updateTimer() { + + var diff, hours, minutes, seconds, + now = new Date(); + + diff = now.getTime() - start.getTime(); + + clockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } ); + _displayTime( hoursEl, minutesEl, secondsEl, diff ); + if (timings !== null) { + _updatePacing(diff); + } + + } + + function _updatePacing(diff) { + + getTimeAllocated( timings, function ( slideEndTimingSeconds ) { + var slideEndTiming = slideEndTimingSeconds * 1000; + + callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) { + var currentSlideTiming = timings[currentSlide] * 1000; + var timeLeftCurrentSlide = slideEndTiming - diff; + if (timeLeftCurrentSlide < 0) { + pacingEl.className = 'pacing behind'; + } + else if (timeLeftCurrentSlide < currentSlideTiming) { + pacingEl.className = 'pacing on-track'; + } + else { + pacingEl.className = 'pacing ahead'; + } + _displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide ); + } ); + } ); + } + + } + + /** + * Sets up the speaker view layout and layout selector. + */ + function setupLayout() { + + layoutDropdown = document.querySelector( '.speaker-layout-dropdown' ); + layoutLabel = document.querySelector( '.speaker-layout-label' ); + + // Render the list of available layouts + for( var id in SPEAKER_LAYOUTS ) { + var option = document.createElement( 'option' ); + option.setAttribute( 'value', id ); + option.textContent = SPEAKER_LAYOUTS[ id ]; + layoutDropdown.appendChild( option ); + } + + // Monitor the dropdown for changes + layoutDropdown.addEventListener( 'change', function( event ) { + + setLayout( layoutDropdown.value ); + + }, false ); + + // Restore any currently persisted layout + setLayout( getLayout() ); + + } + + /** + * Sets a new speaker view layout. The layout is persisted + * in local storage. + */ + function setLayout( value ) { + + var title = SPEAKER_LAYOUTS[ value ]; + + layoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' ); + layoutDropdown.value = value; + + document.body.setAttribute( 'data-speaker-layout', value ); + + // Persist locally + if( supportsLocalStorage() ) { + window.localStorage.setItem( 'reveal-speaker-layout', value ); + } + + } + + /** + * Returns the ID of the most recently set speaker layout + * or our default layout if none has been set. + */ + function getLayout() { + + if( supportsLocalStorage() ) { + var layout = window.localStorage.getItem( 'reveal-speaker-layout' ); + if( layout ) { + return layout; + } + } + + // Default to the first record in the layouts hash + for( var id in SPEAKER_LAYOUTS ) { + return id; + } + + } + + function supportsLocalStorage() { + + try { + localStorage.setItem('test', 'test'); + localStorage.removeItem('test'); + return true; + } + catch( e ) { + return false; + } + + } + + function zeroPadInteger( num ) { + + var str = '00' + parseInt( num ); + return str.substring( str.length - 2 ); + + } + + /** + * Limits the frequency at which a function can be called. + */ + function debounce( fn, ms ) { + + var lastTime = 0, + timeout; + + return function() { + + var args = arguments; + var context = this; + + clearTimeout( timeout ); + + var timeSinceLastCall = Date.now() - lastTime; + if( timeSinceLastCall > ms ) { + fn.apply( context, args ); + lastTime = Date.now(); + } + else { + timeout = setTimeout( function() { + fn.apply( context, args ); + lastTime = Date.now(); + }, ms - timeSinceLastCall ); + } + + } + + } + + })(); + + </script> + </body> +</html> \ No newline at end of file diff --git a/public/site_libs/revealjs/plugin/pdf-export/pdfexport.js b/public/site_libs/revealjs/plugin/pdf-export/pdfexport.js new file mode 100644 index 0000000..c399fa9 --- /dev/null +++ b/public/site_libs/revealjs/plugin/pdf-export/pdfexport.js @@ -0,0 +1,108 @@ +var PdfExport = ( function( _Reveal ){ + + var Reveal = _Reveal; + var setStylesheet = null; + var installAltKeyBindings = null; + + function getRevealJsPath(){ + var regex = /\b[^/]+\/reveal.css$/i; + var script = Array.from( document.querySelectorAll( 'link' ) ).find( function( e ){ + return e.attributes.href && e.attributes.href.value.search( regex ) >= 0; + }); + if( !script ){ + console.error( 'reveal.css could not be found in included <link> elements. Did you rename this file?' ); + return ''; + } + return script.attributes.href.value.replace( regex, '' ); + } + + function setStylesheet3( pdfExport ){ + var link = document.querySelector( '#print' ); + if( !link ){ + link = document.createElement( 'link' ); + link.rel = 'stylesheet'; + link.id = 'print'; + document.querySelector( 'head' ).appendChild( link ); + } + var style = 'paper'; + if( pdfExport ){ + style = 'pdf'; + } + link.href = getRevealJsPath() + 'css/print/' + style + '.css'; + } + + function setStylesheet4( pdfExport ){ + } + + function installAltKeyBindings3(){ + } + + function installAltKeyBindings4(){ + if( isPrintingPDF() ){ + var config = Reveal.getConfig(); + var shortcut = config.pdfExportShortcut || 'E'; + window.addEventListener( 'keydown', function( e ){ + if( e.target.nodeName.toUpperCase() == 'BODY' + && ( e.key.toUpperCase() == shortcut.toUpperCase() || e.keyCode == shortcut.toUpperCase().charCodeAt( 0 ) ) ){ + e.preventDefault(); + togglePdfExport(); + return false; + } + }, true ); + } + } + + function isPrintingPDF(){ + return ( /print-pdf/gi ).test( window.location.search ); + } + + function togglePdfExport(){ + var url_doc = new URL( document.URL ); + var query_doc = new URLSearchParams( url_doc.searchParams ); + if( isPrintingPDF() ){ + query_doc.delete( 'print-pdf' ); + }else{ + query_doc.set( 'print-pdf', '' ); + } + url_doc.search = ( query_doc.toString() ? '?' + query_doc.toString() : '' ); + window.location.href = url_doc.toString(); + } + + function installKeyBindings(){ + var config = Reveal.getConfig(); + var shortcut = config.pdfExportShortcut || 'E'; + Reveal.addKeyBinding({ + keyCode: shortcut.toUpperCase().charCodeAt( 0 ), + key: shortcut.toUpperCase(), + description: 'PDF export mode' + }, togglePdfExport ); + installAltKeyBindings(); + } + + function install(){ + installKeyBindings(); + setStylesheet( isPrintingPDF() ); + } + + var Plugin = { + } + + if( Reveal && Reveal.VERSION && Reveal.VERSION.length && Reveal.VERSION[ 0 ] == '3' ){ + // reveal 3.x + setStylesheet = setStylesheet3; + installAltKeyBindings = installAltKeyBindings3; + install(); + }else{ + // must be reveal 4.x + setStylesheet = setStylesheet4; + installAltKeyBindings = installAltKeyBindings4; + Plugin.id = 'pdf-export'; + Plugin.init = function( _Reveal ){ + Reveal = _Reveal; + install(); + }; + } + + return Plugin; + +})( Reveal ); diff --git a/public/site_libs/revealjs/plugin/pdf-export/plugin.yml b/public/site_libs/revealjs/plugin/pdf-export/plugin.yml new file mode 100644 index 0000000..f6db9d0 --- /dev/null +++ b/public/site_libs/revealjs/plugin/pdf-export/plugin.yml @@ -0,0 +1,2 @@ +name: PdfExport +script: pdfexport.js diff --git a/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css b/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css new file mode 100644 index 0000000..e8410fe --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css @@ -0,0 +1,31 @@ +.reveal + div.sourceCode + pre + code.has-line-highlights + > span:not(.highlight-line) { + opacity: 0.4; +} + +.reveal pre.numberSource { + padding-left: 0; +} + +.reveal pre.numberSource code > span { + left: -2.1em; +} + +pre.numberSource code > span > a:first-child::before { + left: -0.7em; +} + +.reveal pre > code:not(:first-child).fragment { + position: absolute; + top: 0; + left: 0; + width: 100%; + box-sizing: border-box; +} + +.reveal div.sourceCode pre code { + min-height: 100%; +} diff --git a/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.js b/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.js new file mode 100644 index 0000000..5bffdc7 --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.js @@ -0,0 +1,351 @@ +window.QuartoLineHighlight = function () { + function isPrintView() { + return /print-pdf/gi.test(window.location.search); + } + + const delimiters = { + step: "|", + line: ",", + lineRange: "-", + }; + + const regex = new RegExp( + "^[\\d" + Object.values(delimiters).join("") + "]+$" + ); + + function handleLinesSelector(deck, attr) { + // if we are in printview with pdfSeparateFragments: false + // then we'll also want to supress + if (regex.test(attr)) { + if (isPrintView() && deck.getConfig().pdfSeparateFragments !== true) { + return false; + } else { + return true; + } + } else { + return false; + } + } + + const kCodeLineNumbersAttr = "data-code-line-numbers"; + const kFragmentIndex = "data-fragment-index"; + + function initQuartoLineHighlight(deck) { + const divSourceCode = deck + .getRevealElement() + .querySelectorAll("div.sourceCode"); + // Process each div created by Pandoc highlighting - numbered line are already included. + divSourceCode.forEach((el) => { + if (el.hasAttribute(kCodeLineNumbersAttr)) { + const codeLineAttr = el.getAttribute(kCodeLineNumbersAttr); + el.removeAttribute("data-code-line-numbers"); + if (handleLinesSelector(deck, codeLineAttr)) { + // Only process if attr is a string to select lines to highlights + // e.g "1|3,6|8-11" + const codeBlock = el.querySelectorAll("pre code"); + codeBlock.forEach((code) => { + // move attributes on code block + code.setAttribute(kCodeLineNumbersAttr, codeLineAttr); + + const scrollState = { currentBlock: code }; + + // Check if there are steps and duplicate code block accordingly + const highlightSteps = splitLineNumbers(codeLineAttr); + if (highlightSteps.length > 1) { + // If the original code block has a fragment-index, + // each clone should follow in an incremental sequence + let fragmentIndex = parseInt( + code.getAttribute(kFragmentIndex), + 10 + ); + fragmentIndex = + typeof fragmentIndex !== "number" || isNaN(fragmentIndex) + ? null + : fragmentIndex; + + let stepN = 1; + highlightSteps.slice(1).forEach( + // Generate fragments for all steps except the original block + (step) => { + var fragmentBlock = code.cloneNode(true); + fragmentBlock.setAttribute( + "data-code-line-numbers", + joinLineNumbers([step]) + ); + fragmentBlock.classList.add("fragment"); + + // Pandoc sets id on spans we need to keep unique + fragmentBlock + .querySelectorAll(":scope > span") + .forEach((span) => { + if (span.hasAttribute("id")) { + span.setAttribute( + "id", + span.getAttribute("id").concat("-" + stepN) + ); + } + }); + stepN = ++stepN; + + // Add duplicated <code> element after existing one + code.parentNode.appendChild(fragmentBlock); + + // Each new <code> element is highlighted based on the new attributes value + highlightCodeBlock(fragmentBlock); + + if (typeof fragmentIndex === "number") { + fragmentBlock.setAttribute(kFragmentIndex, fragmentIndex); + fragmentIndex += 1; + } else { + fragmentBlock.removeAttribute(kFragmentIndex); + } + + // Scroll highlights into view as we step through them + fragmentBlock.addEventListener( + "visible", + scrollHighlightedLineIntoView.bind( + this, + fragmentBlock, + scrollState + ) + ); + fragmentBlock.addEventListener( + "hidden", + scrollHighlightedLineIntoView.bind( + this, + fragmentBlock.previousSibling, + scrollState + ) + ); + } + ); + code.removeAttribute(kFragmentIndex); + code.setAttribute( + kCodeLineNumbersAttr, + joinLineNumbers([highlightSteps[0]]) + ); + } + + // Scroll the first highlight into view when the slide becomes visible. + const slide = + typeof code.closest === "function" + ? code.closest("section:not(.stack)") + : null; + if (slide) { + const scrollFirstHighlightIntoView = function () { + scrollHighlightedLineIntoView(code, scrollState, true); + slide.removeEventListener( + "visible", + scrollFirstHighlightIntoView + ); + }; + slide.addEventListener("visible", scrollFirstHighlightIntoView); + } + + highlightCodeBlock(code); + }); + } + } + }); + } + + function highlightCodeBlock(codeBlock) { + const highlightSteps = splitLineNumbers( + codeBlock.getAttribute(kCodeLineNumbersAttr) + ); + + if (highlightSteps.length) { + // If we have at least one step, we generate fragments + highlightSteps[0].forEach((highlight) => { + // Add expected class on <pre> for reveal CSS + codeBlock.parentNode.classList.add("code-wrapper"); + + // Select lines to highlight + spanToHighlight = []; + if (typeof highlight.last === "number") { + spanToHighlight = [].slice.call( + codeBlock.querySelectorAll( + ":scope > span:nth-child(n+" + + highlight.first + + "):nth-child(-n+" + + highlight.last + + ")" + ) + ); + } else if (typeof highlight.first === "number") { + spanToHighlight = [].slice.call( + codeBlock.querySelectorAll( + ":scope > span:nth-child(" + highlight.first + ")" + ) + ); + } + if (spanToHighlight.length) { + // Add a class on <code> and <span> to select line to highlight + spanToHighlight.forEach((span) => + span.classList.add("highlight-line") + ); + codeBlock.classList.add("has-line-highlights"); + } + }); + } + } + + /** + * Animates scrolling to the first highlighted line + * in the given code block. + */ + function scrollHighlightedLineIntoView(block, scrollState, skipAnimation) { + window.cancelAnimationFrame(scrollState.animationFrameID); + + // Match the scroll position of the currently visible + // code block + if (scrollState.currentBlock) { + block.scrollTop = scrollState.currentBlock.scrollTop; + } + + // Remember the current code block so that we can match + // its scroll position when showing/hiding fragments + scrollState.currentBlock = block; + + const highlightBounds = getHighlightedLineBounds(block); + let viewportHeight = block.offsetHeight; + + // Subtract padding from the viewport height + const blockStyles = window.getComputedStyle(block); + viewportHeight -= + parseInt(blockStyles.paddingTop) + parseInt(blockStyles.paddingBottom); + + // Scroll position which centers all highlights + const startTop = block.scrollTop; + let targetTop = + highlightBounds.top + + (Math.min(highlightBounds.bottom - highlightBounds.top, viewportHeight) - + viewportHeight) / + 2; + + // Make sure the scroll target is within bounds + targetTop = Math.max( + Math.min(targetTop, block.scrollHeight - viewportHeight), + 0 + ); + + if (skipAnimation === true || startTop === targetTop) { + block.scrollTop = targetTop; + } else { + // Don't attempt to scroll if there is no overflow + if (block.scrollHeight <= viewportHeight) return; + + let time = 0; + + const animate = function () { + time = Math.min(time + 0.02, 1); + + // Update our eased scroll position + block.scrollTop = + startTop + (targetTop - startTop) * easeInOutQuart(time); + + // Keep animating unless we've reached the end + if (time < 1) { + scrollState.animationFrameID = requestAnimationFrame(animate); + } + }; + + animate(); + } + } + + function getHighlightedLineBounds(block) { + const highlightedLines = block.querySelectorAll(".highlight-line"); + if (highlightedLines.length === 0) { + return { top: 0, bottom: 0 }; + } else { + const firstHighlight = highlightedLines[0]; + const lastHighlight = highlightedLines[highlightedLines.length - 1]; + + return { + top: firstHighlight.offsetTop, + bottom: lastHighlight.offsetTop + lastHighlight.offsetHeight, + }; + } + } + + /** + * The easing function used when scrolling. + */ + function easeInOutQuart(t) { + // easeInOutQuart + return t < 0.5 ? 8 * t * t * t * t : 1 - 8 * --t * t * t * t; + } + + function splitLineNumbers(lineNumbersAttr) { + // remove space + lineNumbersAttr = lineNumbersAttr.replace("/s/g", ""); + // seperate steps (for fragment) + lineNumbersAttr = lineNumbersAttr.split(delimiters.step); + + // for each step, calculate first and last line, if any + return lineNumbersAttr.map((highlights) => { + // detect lines + const lines = highlights.split(delimiters.line); + return lines.map((range) => { + if (/^[\d-]+$/.test(range)) { + range = range.split(delimiters.lineRange); + const firstLine = parseInt(range[0], 10); + const lastLine = range[1] ? parseInt(range[1], 10) : undefined; + return { + first: firstLine, + last: lastLine, + }; + } else { + return {}; + } + }); + }); + } + + function joinLineNumbers(splittedLineNumbers) { + return splittedLineNumbers + .map(function (highlights) { + return highlights + .map(function (highlight) { + // Line range + if (typeof highlight.last === "number") { + return highlight.first + delimiters.lineRange + highlight.last; + } + // Single line + else if (typeof highlight.first === "number") { + return highlight.first; + } + // All lines + else { + return ""; + } + }) + .join(delimiters.line); + }) + .join(delimiters.step); + } + + return { + id: "quarto-line-highlight", + init: function (deck) { + initQuartoLineHighlight(deck); + + // If we're printing to PDF, scroll the code highlights of + // all blocks in the deck into view at once + deck.on("pdf-ready", function () { + [].slice + .call( + deck + .getRevealElement() + .querySelectorAll( + "pre code[data-code-line-numbers].current-fragment" + ) + ) + .forEach(function (block) { + scrollHighlightedLineIntoView(block, {}, true); + }); + }); + }, + }; +}; diff --git a/public/site_libs/revealjs/plugin/quarto-line-highlight/plugin.yml b/public/site_libs/revealjs/plugin/quarto-line-highlight/plugin.yml new file mode 100644 index 0000000..ca20686 --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-line-highlight/plugin.yml @@ -0,0 +1,4 @@ +# adapted from https://github.com/hakimel/reveal.js/tree/master/plugin/highlight +name: QuartoLineHighlight +script: line-highlight.js +stylesheet: line-highlight.css diff --git a/public/site_libs/revealjs/plugin/quarto-support/footer.css b/public/site_libs/revealjs/plugin/quarto-support/footer.css new file mode 100644 index 0000000..385473d --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-support/footer.css @@ -0,0 +1,109 @@ +.reveal .slide-logo { + display: block; + position: fixed; + bottom: 0; + right: 12px; + max-height: 2.2rem; + height: 100%; + width: auto; +} + +.reveal .footer { + display: block; + position: fixed; + bottom: 18px; + width: 100%; + margin: 0 auto; + text-align: center; + font-size: 18px; + z-index: 2; +} + +.reveal .footer > * { + margin-top: 0; + margin-bottom: 0; +} + +.reveal .slide .footer { + display: none; +} + +.reveal .slide-number { + bottom: 10px; + right: 10px; + font-size: 16px; + background-color: transparent; +} + +.reveal.has-logo .slide-number { + bottom: initial; + top: 8px; + right: 8px; +} + +.reveal .slide-number .slide-number-delimiter { + margin: 0; +} + +.reveal .slide-menu-button { + left: 8px; + bottom: 8px; +} + +.reveal .slide-chalkboard-buttons { + position: fixed; + left: 12px; + bottom: 8px; + z-index: 30; + font-size: 24px; +} + +.reveal .slide-chalkboard-buttons.slide-menu-offset { + left: 54px; +} + +.reveal .slide-chalkboard-buttons > span { + margin-right: 14px; + cursor: pointer; +} + +@media screen and (max-width: 800px) { + .reveal .slide-logo { + max-height: 1.1rem; + bottom: -2px; + right: 10px; + } + .reveal .footer { + font-size: 14px; + bottom: 12px; + } + .reveal .slide-number { + font-size: 12px; + bottom: 7px; + } + .reveal .slide-menu-button .fas::before { + height: 1.3rem; + width: 1.3rem; + vertical-align: -0.125em; + background-size: 1.3rem 1.3rem; + } + + .reveal .slide-chalkboard-buttons .fas::before { + height: 0.95rem; + width: 0.95rem; + background-size: 0.95rem 0.95rem; + vertical-align: -0em; + } + + .reveal .slide-chalkboard-buttons.slide-menu-offset { + left: 36px; + } + .reveal .slide-chalkboard-buttons > span { + margin-right: 9px; + } +} + +html.print-pdf .reveal .slide-menu-button, +html.print-pdf .reveal .slide-chalkboard-buttons { + display: none; +} diff --git a/public/site_libs/revealjs/plugin/quarto-support/plugin.yml b/public/site_libs/revealjs/plugin/quarto-support/plugin.yml new file mode 100644 index 0000000..546956e --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-support/plugin.yml @@ -0,0 +1,5 @@ +name: QuartoSupport +script: support.js +stylesheet: footer.css +config: + smaller: false diff --git a/public/site_libs/revealjs/plugin/quarto-support/support.js b/public/site_libs/revealjs/plugin/quarto-support/support.js new file mode 100644 index 0000000..ab97ded --- /dev/null +++ b/public/site_libs/revealjs/plugin/quarto-support/support.js @@ -0,0 +1,243 @@ +// catch all plugin for various quarto features +window.QuartoSupport = function () { + function isPrintView() { + return /print-pdf/gi.test(window.location.search); + } + + // implement controlsAudo + function controlsAuto(deck) { + const config = deck.getConfig(); + if (config.controlsAuto === true) { + const iframe = window.location !== window.parent.location; + const localhost = + window.location.hostname === "localhost" || + window.location.hostname === "127.0.0.1"; + deck.configure({ + controls: + (iframe && !localhost) || + (deck.hasVerticalSlides() && config.navigationMode !== "linear"), + }); + } + } + + // helper to provide event handlers for all links in a container + function handleLinkClickEvents(deck, container) { + Array.from(container.querySelectorAll("a")).forEach((el) => { + const url = el.getAttribute("href"); + if (/^(http|www)/gi.test(url)) { + el.addEventListener( + "click", + (ev) => { + const fullscreen = !!window.document.fullscreen; + const dataPreviewLink = el.getAttribute("data-preview-link"); + + // if there is a local specifcation then use that + if (dataPreviewLink) { + if ( + dataPreviewLink === "true" || + (dataPreviewLink === "auto" && fullscreen) + ) { + ev.preventDefault(); + deck.showPreview(url); + return false; + } + } else { + const previewLinks = !!deck.getConfig().previewLinks; + const previewLinksAuto = + deck.getConfig().previewLinksAuto === true; + if (previewLinks == true || (previewLinksAuto && fullscreen)) { + ev.preventDefault(); + deck.showPreview(url); + return false; + } + } + + // if the deck is in an iframe we want to open it externally + const iframe = window.location !== window.parent.location; + if (iframe) { + ev.preventDefault(); + ev.stopImmediatePropagation(); + window.open(url, "_blank"); + return false; + } + + // if the user has set data-preview-link to "auto" we need to handle the event + // (because reveal will interpret "auto" as true) + if (dataPreviewLink === "auto") { + ev.preventDefault(); + ev.stopImmediatePropagation(); + const target = + el.getAttribute("target") || + (ev.ctrlKey || ev.metaKey ? "_blank" : ""); + if (target) { + window.open(url, target); + } else { + window.location.href = url; + } + return false; + } + }, + false + ); + } + }); + } + + // implement previewLinksAuto + function previewLinksAuto(deck) { + handleLinkClickEvents(deck, deck.getRevealElement()); + } + + // apply styles + function applyGlobalStyles(deck) { + if (deck.getConfig()["smaller"] === true) { + const revealParent = deck.getRevealElement(); + revealParent.classList.add("smaller"); + } + } + + // add logo image + function addLogoImage(deck) { + const revealParent = deck.getRevealElement(); + const logoImg = document.querySelector(".slide-logo"); + if (logoImg) { + revealParent.appendChild(logoImg); + revealParent.classList.add("has-logo"); + } + } + + // add footer text + function addFooter(deck) { + const revealParent = deck.getRevealElement(); + const defaultFooterDiv = document.querySelector(".footer-default"); + if (defaultFooterDiv) { + revealParent.appendChild(defaultFooterDiv); + handleLinkClickEvents(deck, defaultFooterDiv); + if (!isPrintView()) { + deck.on("slidechanged", function (ev) { + const prevSlideFooter = document.querySelector( + ".reveal > .footer:not(.footer-default)" + ); + if (prevSlideFooter) { + prevSlideFooter.remove(); + } + const currentSlideFooter = ev.currentSlide.querySelector(".footer"); + if (currentSlideFooter) { + defaultFooterDiv.style.display = "none"; + const slideFooter = currentSlideFooter.cloneNode(true); + handleLinkClickEvents(deck, slideFooter); + deck.getRevealElement().appendChild(slideFooter); + } else { + defaultFooterDiv.style.display = "block"; + } + }); + } + } + } + + // add chalkboard buttons + function addChalkboardButtons(deck) { + const chalkboard = deck.getPlugin("RevealChalkboard"); + if (chalkboard && !isPrintView()) { + const revealParent = deck.getRevealElement(); + const chalkboardDiv = document.createElement("div"); + chalkboardDiv.classList.add("slide-chalkboard-buttons"); + if (document.querySelector(".slide-menu-button")) { + chalkboardDiv.classList.add("slide-menu-offset"); + } + // add buttons + const buttons = [ + { + icon: "easel2", + title: "Toggle Chalkboard (b)", + onclick: chalkboard.toggleChalkboard, + }, + { + icon: "brush", + title: "Toggle Notes Canvas (c)", + onclick: chalkboard.toggleNotesCanvas, + }, + ]; + buttons.forEach(function (button) { + const span = document.createElement("span"); + span.title = button.title; + const icon = document.createElement("i"); + icon.classList.add("fas"); + icon.classList.add("fa-" + button.icon); + span.appendChild(icon); + span.onclick = function (event) { + event.preventDefault(); + button.onclick(); + }; + chalkboardDiv.appendChild(span); + }); + revealParent.appendChild(chalkboardDiv); + const config = deck.getConfig(); + if (!config.chalkboard.buttons) { + chalkboardDiv.classList.add("hidden"); + } + + // show and hide chalkboard buttons on slidechange + deck.on("slidechanged", function (ev) { + const config = deck.getConfig(); + let buttons = !!config.chalkboard.buttons; + const slideButtons = ev.currentSlide.getAttribute( + "data-chalkboard-buttons" + ); + if (slideButtons) { + if (slideButtons === "true" || slideButtons === "1") { + buttons = true; + } else if (slideButtons === "false" || slideButtons === "0") { + buttons = false; + } + } + if (buttons) { + chalkboardDiv.classList.remove("hidden"); + } else { + chalkboardDiv.classList.add("hidden"); + } + }); + } + } + + function handleTabbyClicks() { + const tabs = document.querySelectorAll(".panel-tabset-tabby > li > a"); + for (let i = 0; i < tabs.length; i++) { + const tab = tabs[i]; + tab.onclick = function (ev) { + ev.preventDefault(); + ev.stopPropagation(); + return false; + }; + } + } + + function fixupForPrint(deck) { + if (isPrintView()) { + const slides = deck.getSlides(); + slides.forEach(function (slide) { + slide.removeAttribute("data-auto-animate"); + }); + window.document.querySelectorAll(".hljs").forEach(function (el) { + el.classList.remove("hljs"); + }); + window.document.querySelectorAll(".hljs-ln-code").forEach(function (el) { + el.classList.remove("hljs-ln-code"); + }); + } + } + + return { + id: "quarto-support", + init: function (deck) { + controlsAuto(deck); + previewLinksAuto(deck); + fixupForPrint(deck); + applyGlobalStyles(deck); + addLogoImage(deck); + addFooter(deck); + addChalkboardButtons(deck); + handleTabbyClicks(); + }, + }; +}; diff --git a/public/site_libs/revealjs/plugin/reveal-menu/menu.css b/public/site_libs/revealjs/plugin/reveal-menu/menu.css new file mode 100644 index 0000000..5a300fd --- /dev/null +++ b/public/site_libs/revealjs/plugin/reveal-menu/menu.css @@ -0,0 +1,346 @@ +.slide-menu-wrapper { + font-family: 'Source Sans Pro', Helvetica, sans-serif; +} + +.slide-menu-wrapper .slide-menu { + background-color: #333; + z-index: 200; + position: fixed; + top: 0; + width: 300px; + height: 100%; + /*overflow-y: scroll;*/ + transition: transform 0.3s; + font-size: 16px; + font-weight: normal; +} + +.slide-menu-wrapper .slide-menu.slide-menu--wide { + width: 500px; +} + +.slide-menu-wrapper .slide-menu.slide-menu--third { + width: 33%; +} + +.slide-menu-wrapper .slide-menu.slide-menu--half { + width: 50%; +} + +.slide-menu-wrapper .slide-menu.slide-menu--full { + width: 95%; +} + +/* + * Slides menu + */ + +.slide-menu-wrapper .slide-menu-items { + margin: 0; + padding: 0; + width: 100%; + border-bottom: solid 1px #555; +} + +.slide-menu-wrapper .slide-menu-item, +.slide-menu-wrapper .slide-menu-item-vertical { + display: block; + text-align: left; + padding: 10px 18px; + color: #aaa; + cursor: pointer; +} + +.slide-menu-wrapper .slide-menu-item-vertical { + padding-left: 30px; +} + +.slide-menu-wrapper .slide-menu--wide .slide-menu-item-vertical, +.slide-menu-wrapper .slide-menu--third .slide-menu-item-vertical, +.slide-menu-wrapper .slide-menu--half .slide-menu-item-vertical, +.slide-menu-wrapper .slide-menu--full .slide-menu-item-vertical, +.slide-menu-wrapper .slide-menu--custom .slide-menu-item-vertical { + padding-left: 50px; +} + +.slide-menu-wrapper .slide-menu-item { + border-top: solid 1px #555; +} + +.slide-menu-wrapper .active-menu-panel li.selected { + background-color: #222; + color: white; +} + +.slide-menu-wrapper .active-menu-panel li.active { + color: #eee; +} + +.slide-menu-wrapper .slide-menu-item.no-title .slide-menu-item-title, +.slide-menu-wrapper .slide-menu-item-vertical.no-title .slide-menu-item-title { + font-style: italic; +} + +.slide-menu-wrapper .slide-menu-item-number { + color: #999; + padding-right: 6px; +} + +.slide-menu-wrapper .slide-menu-item i.far, +.slide-menu-wrapper .slide-menu-item i.fas, +.slide-menu-wrapper .slide-menu-item-vertical i.far, +.slide-menu-wrapper .slide-menu-item-vertical i.fas, +.slide-menu-wrapper .slide-menu-item svg.svg-inline--fa, +.slide-menu-wrapper .slide-menu-item-vertical svg.svg-inline--fa { + padding-right: 12px; + display: none; +} + +.slide-menu-wrapper .slide-menu-item.past i.fas.past, +.slide-menu-wrapper .slide-menu-item-vertical.past i.fas.past, +.slide-menu-wrapper .slide-menu-item.active i.fas.active, +.slide-menu-wrapper .slide-menu-item-vertical.active i.fas.active, +.slide-menu-wrapper .slide-menu-item.future i.far.future, +.slide-menu-wrapper .slide-menu-item-vertical.future i.far.future, +.slide-menu-wrapper .slide-menu-item.past svg.svg-inline--fa.past, +.slide-menu-wrapper .slide-menu-item-vertical.past svg.svg-inline--fa.past, +.slide-menu-wrapper .slide-menu-item.active svg.svg-inline--fa.active, +.slide-menu-wrapper .slide-menu-item-vertical.active svg.svg-inline--fa.active, +.slide-menu-wrapper .slide-menu-item.future svg.svg-inline--fa.future, +.slide-menu-wrapper .slide-menu-item-vertical.future svg.svg-inline--fa.future { + display: inline-block; +} + +.slide-menu-wrapper .slide-menu-item.past i.fas.past, +.slide-menu-wrapper .slide-menu-item-vertical.past i.fas.past, +.slide-menu-wrapper .slide-menu-item.future i.far.future, +.slide-menu-wrapper .slide-menu-item-vertical.future i.far.future, +.slide-menu-wrapper .slide-menu-item.past svg.svg-inline--fa.past, +.slide-menu-wrapper .slide-menu-item-vertical.past svg.svg-inline--fa.past, +.slide-menu-wrapper .slide-menu-item.future svg.svg-inline--fa.future, +.slide-menu-wrapper .slide-menu-item-vertical.future svg.svg-inline--fa.future { + opacity: 0.4; +} + +.slide-menu-wrapper .slide-menu-item.active i.fas.active, +.slide-menu-wrapper .slide-menu-item-vertical.active i.fas.active, +.slide-menu-wrapper .slide-menu-item.active svg.svg-inline--fa.active, +.slide-menu-wrapper .slide-menu-item-vertical.active svg.svg-inline--fa.active { + opacity: 0.8; +} + +.slide-menu-wrapper .slide-menu--left { + left: 0; + -webkit-transform: translateX(-100%); + -ms-transform: translateX(-100%); + transform: translateX(-100%); +} + +.slide-menu-wrapper .slide-menu--left.active { + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0); +} + +.slide-menu-wrapper .slide-menu--right { + right: 0; + -webkit-transform: translateX(100%); + -ms-transform: translateX(100%); + transform: translateX(100%); +} + +.slide-menu-wrapper .slide-menu--right.active { + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0); +} + +.slide-menu-wrapper { + transition: transform 0.3s; +} + +/* + * Toolbar + */ +.slide-menu-wrapper .slide-menu-toolbar { + height: 60px; + width: 100%; + font-size: 12px; + display: table; + table-layout: fixed; /* ensures equal width */ + margin: 0; + padding: 0; + border-bottom: solid 2px #666; +} + +.slide-menu-wrapper .slide-menu-toolbar > li { + display: table-cell; + line-height: 150%; + text-align: center; + vertical-align: middle; + cursor: pointer; + color: #aaa; + border-radius: 3px; +} + +.slide-menu-wrapper .slide-menu-toolbar > li.toolbar-panel-button i, +.slide-menu-wrapper + .slide-menu-toolbar + > li.toolbar-panel-button + svg.svg-inline--fa { + font-size: 1.7em; +} + +.slide-menu-wrapper .slide-menu-toolbar > li.active-toolbar-button { + color: white; + text-shadow: 0 1px black; + text-decoration: underline; +} + +.slide-menu-toolbar > li.toolbar-panel-button:hover { + color: white; +} + +.slide-menu-toolbar + > li.toolbar-panel-button:hover + span.slide-menu-toolbar-label, +.slide-menu-wrapper + .slide-menu-toolbar + > li.active-toolbar-button + span.slide-menu-toolbar-label { + visibility: visible; +} + +/* + * Panels + */ +.slide-menu-wrapper .slide-menu-panel { + position: absolute; + width: 100%; + visibility: hidden; + height: calc(100% - 60px); + overflow-x: hidden; + overflow-y: auto; + color: #aaa; +} + +.slide-menu-wrapper .slide-menu-panel.active-menu-panel { + visibility: visible; +} + +.slide-menu-wrapper .slide-menu-panel h1, +.slide-menu-wrapper .slide-menu-panel h2, +.slide-menu-wrapper .slide-menu-panel h3, +.slide-menu-wrapper .slide-menu-panel h4, +.slide-menu-wrapper .slide-menu-panel h5, +.slide-menu-wrapper .slide-menu-panel h6 { + margin: 20px 0 10px 0; + color: #fff; + line-height: 1.2; + letter-spacing: normal; + text-shadow: none; +} + +.slide-menu-wrapper .slide-menu-panel h1 { + font-size: 1.6em; +} +.slide-menu-wrapper .slide-menu-panel h2 { + font-size: 1.4em; +} +.slide-menu-wrapper .slide-menu-panel h3 { + font-size: 1.3em; +} +.slide-menu-wrapper .slide-menu-panel h4 { + font-size: 1.1em; +} +.slide-menu-wrapper .slide-menu-panel h5 { + font-size: 1em; +} +.slide-menu-wrapper .slide-menu-panel h6 { + font-size: 0.9em; +} + +.slide-menu-wrapper .slide-menu-panel p { + margin: 10px 0 5px 0; +} + +.slide-menu-wrapper .slide-menu-panel a { + color: #ccc; + text-decoration: underline; +} + +.slide-menu-wrapper .slide-menu-panel a:hover { + color: white; +} + +.slide-menu-wrapper .slide-menu-item a { + text-decoration: none; +} + +.slide-menu-wrapper .slide-menu-custom-panel { + width: calc(100% - 20px); + padding-left: 10px; + padding-right: 10px; +} + +.slide-menu-wrapper .slide-menu-custom-panel .slide-menu-items { + width: calc(100% + 20px); + margin-left: -10px; + margin-right: 10px; +} + +/* + * Theme and Transitions buttons + */ + +.slide-menu-wrapper div[data-panel='Themes'] li, +.slide-menu-wrapper div[data-panel='Transitions'] li { + display: block; + text-align: left; + cursor: pointer; + color: #848484; +} + +/* + * Menu controls + */ +.reveal .slide-menu-button { + position: fixed; + left: 30px; + bottom: 30px; + z-index: 30; + font-size: 24px; +} + +/* + * Menu overlay + */ + +.slide-menu-wrapper .slide-menu-overlay { + position: fixed; + z-index: 199; + top: 0; + left: 0; + overflow: hidden; + width: 0; + height: 0; + background-color: #000; + opacity: 0; + transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s; +} + +.slide-menu-wrapper .slide-menu-overlay.active { + width: 100%; + height: 100%; + opacity: 0.7; + transition: opacity 0.3s; +} + +/* + * Hide menu for pdf printing + */ +body.print-pdf .slide-menu-wrapper .slide-menu, +body.print-pdf .reveal .slide-menu-button, +body.print-pdf .slide-menu-wrapper .slide-menu-overlay { + display: none; +} diff --git a/public/site_libs/revealjs/plugin/reveal-menu/menu.js b/public/site_libs/revealjs/plugin/reveal-menu/menu.js new file mode 100644 index 0000000..5369df3 --- /dev/null +++ b/public/site_libs/revealjs/plugin/reveal-menu/menu.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).RevealMenu=t()}(this,(function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e,t,n){return e(n={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&n.path)}},n.exports),n.exports}var n=function(e){return e&&e.Math==Math&&e},r=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||Function("return this")(),i=function(e){try{return!!e()}catch(e){return!0}},a=!i((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),o={}.propertyIsEnumerable,s=Object.getOwnPropertyDescriptor,l={f:s&&!o.call({1:2},1)?function(e){var t=s(this,e);return!!t&&t.enumerable}:o},c=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},u={}.toString,f=function(e){return u.call(e).slice(8,-1)},d="".split,p=i((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==f(e)?d.call(e,""):Object(e)}:Object,h=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},m=function(e){return p(h(e))},v=function(e){return"object"==typeof e?null!==e:"function"==typeof e},g=function(e,t){if(!v(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!v(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!v(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!v(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")},y={}.hasOwnProperty,b=function(e,t){return y.call(e,t)},S=r.document,E=v(S)&&v(S.createElement),x=!a&&!i((function(){return 7!=Object.defineProperty((e="div",E?S.createElement(e):{}),"a",{get:function(){return 7}}).a;var e})),w=Object.getOwnPropertyDescriptor,L={f:a?w:function(e,t){if(e=m(e),t=g(t,!0),x)try{return w(e,t)}catch(e){}if(b(e,t))return c(!l.f.call(e,t),e[t])}},T=function(e){if(!v(e))throw TypeError(String(e)+" is not an object");return e},C=Object.defineProperty,O={f:a?C:function(e,t,n){if(T(e),t=g(t,!0),T(n),x)try{return C(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},A=a?function(e,t,n){return O.f(e,t,c(1,n))}:function(e,t,n){return e[t]=n,e},k=function(e,t){try{A(r,e,t)}catch(n){r[e]=t}return t},I=r["__core-js_shared__"]||k("__core-js_shared__",{}),P=Function.toString;"function"!=typeof I.inspectSource&&(I.inspectSource=function(e){return P.call(e)});var M,R,j,N,_=I.inspectSource,F=r.WeakMap,W="function"==typeof F&&/native code/.test(_(F)),H=t((function(e){(e.exports=function(e,t){return I[e]||(I[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})})),U=0,$=Math.random(),D=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++U+$).toString(36)},q=H("keys"),B={},G=r.WeakMap;if(W){var V=new G,K=V.get,z=V.has,X=V.set;M=function(e,t){return X.call(V,e,t),t},R=function(e){return K.call(V,e)||{}},j=function(e){return z.call(V,e)}}else{var Y=q[N="state"]||(q[N]=D(N));B[Y]=!0,M=function(e,t){return A(e,Y,t),t},R=function(e){return b(e,Y)?e[Y]:{}},j=function(e){return b(e,Y)}}var J={set:M,get:R,has:j,enforce:function(e){return j(e)?R(e):M(e,{})},getterFor:function(e){return function(t){var n;if(!v(t)||(n=R(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},Z=t((function(e){var t=J.get,n=J.enforce,i=String(String).split("String");(e.exports=function(e,t,a,o){var s=!!o&&!!o.unsafe,l=!!o&&!!o.enumerable,c=!!o&&!!o.noTargetGet;"function"==typeof a&&("string"!=typeof t||b(a,"name")||A(a,"name",t),n(a).source=i.join("string"==typeof t?t:"")),e!==r?(s?!c&&e[t]&&(l=!0):delete e[t],l?e[t]=a:A(e,t,a)):l?e[t]=a:k(t,a)})(Function.prototype,"toString",(function(){return"function"==typeof this&&t(this).source||_(this)}))})),Q=r,ee=function(e){return"function"==typeof e?e:void 0},te=function(e,t){return arguments.length<2?ee(Q[e])||ee(r[e]):Q[e]&&Q[e][t]||r[e]&&r[e][t]},ne=Math.ceil,re=Math.floor,ie=function(e){return isNaN(e=+e)?0:(e>0?re:ne)(e)},ae=Math.min,oe=function(e){return e>0?ae(ie(e),9007199254740991):0},se=Math.max,le=Math.min,ce=function(e,t){var n=ie(e);return n<0?se(n+t,0):le(n,t)},ue=function(e){return function(t,n,r){var i,a=m(t),o=oe(a.length),s=ce(r,o);if(e&&n!=n){for(;o>s;)if((i=a[s++])!=i)return!0}else for(;o>s;s++)if((e||s in a)&&a[s]===n)return e||s||0;return!e&&-1}},fe={includes:ue(!0),indexOf:ue(!1)},de=fe.indexOf,pe=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"].concat("length","prototype"),he={f:Object.getOwnPropertyNames||function(e){return function(e,t){var n,r=m(e),i=0,a=[];for(n in r)!b(B,n)&&b(r,n)&&a.push(n);for(;t.length>i;)b(r,n=t[i++])&&(~de(a,n)||a.push(n));return a}(e,pe)}},me={f:Object.getOwnPropertySymbols},ve=te("Reflect","ownKeys")||function(e){var t=he.f(T(e)),n=me.f;return n?t.concat(n(e)):t},ge=function(e,t){for(var n=ve(t),r=O.f,i=L.f,a=0;a<n.length;a++){var o=n[a];b(e,o)||r(e,o,i(t,o))}},ye=/#|\.prototype\./,be=function(e,t){var n=Ee[Se(e)];return n==we||n!=xe&&("function"==typeof t?i(t):!!t)},Se=be.normalize=function(e){return String(e).replace(ye,".").toLowerCase()},Ee=be.data={},xe=be.NATIVE="N",we=be.POLYFILL="P",Le=be,Te=L.f,Ce=function(e,t){var n,i,a,o,s,l=e.target,c=e.global,u=e.stat;if(n=c?r:u?r[l]||k(l,{}):(r[l]||{}).prototype)for(i in t){if(o=t[i],a=e.noTargetGet?(s=Te(n,i))&&s.value:n[i],!Le(c?i:l+(u?".":"#")+i,e.forced)&&void 0!==a){if(typeof o==typeof a)continue;ge(o,a)}(e.sham||a&&a.sham)&&A(o,"sham",!0),Z(n,i,o,e)}},Oe=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e},Ae=function(e){return Object(h(e))},ke=Array.isArray||function(e){return"Array"==f(e)},Ie=!!Object.getOwnPropertySymbols&&!i((function(){return!String(Symbol())})),Pe=Ie&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Me=H("wks"),Re=r.Symbol,je=Pe?Re:Re&&Re.withoutSetter||D,Ne=function(e){return b(Me,e)||(Ie&&b(Re,e)?Me[e]=Re[e]:Me[e]=je("Symbol."+e)),Me[e]},_e=Ne("species"),Fe=function(e,t){var n;return ke(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!ke(n.prototype)?v(n)&&null===(n=n[_e])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)},We=[].push,He=function(e){var t=1==e,n=2==e,r=3==e,i=4==e,a=6==e,o=5==e||a;return function(s,l,c,u){for(var f,d,h=Ae(s),m=p(h),v=function(e,t,n){if(Oe(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}(l,c,3),g=oe(m.length),y=0,b=u||Fe,S=t?b(s,g):n?b(s,0):void 0;g>y;y++)if((o||y in m)&&(d=v(f=m[y],y,h),e))if(t)S[y]=d;else if(d)switch(e){case 3:return!0;case 5:return f;case 6:return y;case 2:We.call(S,f)}else if(i)return!1;return a?-1:r||i?i:S}},Ue={forEach:He(0),map:He(1),filter:He(2),some:He(3),every:He(4),find:He(5),findIndex:He(6)},$e=function(e,t){var n=[][e];return!!n&&i((function(){n.call(null,t||function(){throw 1},1)}))},De=Object.defineProperty,qe={},Be=function(e){throw e},Ge=function(e,t){if(b(qe,e))return qe[e];t||(t={});var n=[][e],r=!!b(t,"ACCESSORS")&&t.ACCESSORS,o=b(t,0)?t[0]:Be,s=b(t,1)?t[1]:void 0;return qe[e]=!!n&&!i((function(){if(r&&!a)return!0;var e={length:-1};r?De(e,1,{enumerable:!0,get:Be}):e[1]=1,n.call(e,o,s)}))},Ve=Ue.every,Ke=$e("every"),ze=Ge("every");Ce({target:"Array",proto:!0,forced:!Ke||!ze},{every:function(e){return Ve(this,e,arguments.length>1?arguments[1]:void 0)}});var Xe,Ye,Je=te("navigator","userAgent")||"",Ze=r.process,Qe=Ze&&Ze.versions,et=Qe&&Qe.v8;et?Ye=(Xe=et.split("."))[0]+Xe[1]:Je&&(!(Xe=Je.match(/Edge\/(\d+)/))||Xe[1]>=74)&&(Xe=Je.match(/Chrome\/(\d+)/))&&(Ye=Xe[1]);var tt=Ye&&+Ye,nt=Ne("species"),rt=function(e){return tt>=51||!i((function(){var t=[];return(t.constructor={})[nt]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},it=Ue.filter,at=rt("filter"),ot=Ge("filter");Ce({target:"Array",proto:!0,forced:!at||!ot},{filter:function(e){return it(this,e,arguments.length>1?arguments[1]:void 0)}});var st=Ue.forEach,lt=$e("forEach"),ct=Ge("forEach"),ut=lt&&ct?[].forEach:function(e){return st(this,e,arguments.length>1?arguments[1]:void 0)};Ce({target:"Array",proto:!0,forced:[].forEach!=ut},{forEach:ut});var ft=fe.indexOf,dt=[].indexOf,pt=!!dt&&1/[1].indexOf(1,-0)<0,ht=$e("indexOf"),mt=Ge("indexOf",{ACCESSORS:!0,1:0});Ce({target:"Array",proto:!0,forced:pt||!ht||!mt},{indexOf:function(e){return pt?dt.apply(this,arguments)||0:ft(this,e,arguments.length>1?arguments[1]:void 0)}}),Ce({target:"Array",stat:!0},{isArray:ke});var vt=[].join,gt=p!=Object,yt=$e("join",",");Ce({target:"Array",proto:!0,forced:gt||!yt},{join:function(e){return vt.call(m(this),void 0===e?",":e)}});var bt=Math.min,St=[].lastIndexOf,Et=!!St&&1/[1].lastIndexOf(1,-0)<0,xt=$e("lastIndexOf"),wt=Ge("indexOf",{ACCESSORS:!0,1:0}),Lt=Et||!xt||!wt?function(e){if(Et)return St.apply(this,arguments)||0;var t=m(this),n=oe(t.length),r=n-1;for(arguments.length>1&&(r=bt(r,ie(arguments[1]))),r<0&&(r=n+r);r>=0;r--)if(r in t&&t[r]===e)return r||0;return-1}:St;Ce({target:"Array",proto:!0,forced:Lt!==[].lastIndexOf},{lastIndexOf:Lt});var Tt=Ue.map,Ct=rt("map"),Ot=Ge("map");Ce({target:"Array",proto:!0,forced:!Ct||!Ot},{map:function(e){return Tt(this,e,arguments.length>1?arguments[1]:void 0)}});var At=function(e,t,n){var r=g(t);r in e?O.f(e,r,c(0,n)):e[r]=n},kt=rt("slice"),It=Ge("slice",{ACCESSORS:!0,0:0,1:2}),Pt=Ne("species"),Mt=[].slice,Rt=Math.max;Ce({target:"Array",proto:!0,forced:!kt||!It},{slice:function(e,t){var n,r,i,a=m(this),o=oe(a.length),s=ce(e,o),l=ce(void 0===t?o:t,o);if(ke(a)&&("function"!=typeof(n=a.constructor)||n!==Array&&!ke(n.prototype)?v(n)&&null===(n=n[Pt])&&(n=void 0):n=void 0,n===Array||void 0===n))return Mt.call(a,s,l);for(r=new(void 0===n?Array:n)(Rt(l-s,0)),i=0;s<l;s++,i++)s in a&&At(r,i,a[s]);return r.length=i,r}});var jt=O.f,Nt=Function.prototype,_t=Nt.toString,Ft=/^\s*function ([^ (]*)/;a&&!("name"in Nt)&&jt(Nt,"name",{configurable:!0,get:function(){try{return _t.call(this).match(Ft)[1]}catch(e){return""}}});var Wt=he.f,Ht={}.toString,Ut="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],$t=function(e){return Ut&&"[object Window]"==Ht.call(e)?function(e){try{return Wt(e)}catch(e){return Ut.slice()}}(e):Wt(m(e))};Ce({target:"Object",stat:!0,forced:i((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:$t});var Dt="\t\n\v\f\r \u2028\u2029\ufeff",qt="["+Dt+"]",Bt=RegExp("^"+qt+qt+"*"),Gt=RegExp(qt+qt+"*$"),Vt=function(e){return function(t){var n=String(h(t));return 1&e&&(n=n.replace(Bt,"")),2&e&&(n=n.replace(Gt,"")),n}},Kt={start:Vt(1),end:Vt(2),trim:Vt(3)},zt=Kt.trim,Xt=r.parseFloat,Yt=1/Xt(Dt+"-0")!=-1/0?function(e){var t=zt(String(e)),n=Xt(t);return 0===n&&"-"==t.charAt(0)?-0:n}:Xt;Ce({global:!0,forced:parseFloat!=Yt},{parseFloat:Yt});var Jt=Kt.trim,Zt=r.parseInt,Qt=/^[+-]?0[Xx]/,en=8!==Zt(Dt+"08")||22!==Zt(Dt+"0x16")?function(e,t){var n=Jt(String(e));return Zt(n,t>>>0||(Qt.test(n)?16:10))}:Zt;Ce({global:!0,forced:parseInt!=en},{parseInt:en});var tn=function(){var e=T(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t};function nn(e,t){return RegExp(e,t)}var rn,an,on={UNSUPPORTED_Y:i((function(){var e=nn("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),BROKEN_CARET:i((function(){var e=nn("^r","gy");return e.lastIndex=2,null!=e.exec("str")}))},sn=RegExp.prototype.exec,ln=String.prototype.replace,cn=sn,un=(rn=/a/,an=/b*/g,sn.call(rn,"a"),sn.call(an,"a"),0!==rn.lastIndex||0!==an.lastIndex),fn=on.UNSUPPORTED_Y||on.BROKEN_CARET,dn=void 0!==/()??/.exec("")[1];(un||dn||fn)&&(cn=function(e){var t,n,r,i,a=this,o=fn&&a.sticky,s=tn.call(a),l=a.source,c=0,u=e;return o&&(-1===(s=s.replace("y","")).indexOf("g")&&(s+="g"),u=String(e).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==e[a.lastIndex-1])&&(l="(?: "+l+")",u=" "+u,c++),n=new RegExp("^(?:"+l+")",s)),dn&&(n=new RegExp("^"+l+"$(?!\\s)",s)),un&&(t=a.lastIndex),r=sn.call(o?n:a,u),o?r?(r.input=r.input.slice(c),r[0]=r[0].slice(c),r.index=a.lastIndex,a.lastIndex+=r[0].length):a.lastIndex=0:un&&r&&(a.lastIndex=a.global?r.index+r[0].length:t),dn&&r&&r.length>1&&ln.call(r[0],n,(function(){for(i=1;i<arguments.length-2;i++)void 0===arguments[i]&&(r[i]=void 0)})),r});var pn=cn;Ce({target:"RegExp",proto:!0,forced:/./.exec!==pn},{exec:pn});var hn,mn=Ne("match"),vn=function(e){var t;return v(e)&&(void 0!==(t=e[mn])?!!t:"RegExp"==f(e))},gn=function(e){if(vn(e))throw TypeError("The method doesn't accept regular expressions");return e},yn=Ne("match"),bn=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[yn]=!1,"/./"[e](t)}catch(e){}}return!1},Sn=L.f,En="".endsWith,xn=Math.min,wn=bn("endsWith");Ce({target:"String",proto:!0,forced:!!(wn||(hn=Sn(String.prototype,"endsWith"),!hn||hn.writable))&&!wn},{endsWith:function(e){var t=String(h(this));gn(e);var n=arguments.length>1?arguments[1]:void 0,r=oe(t.length),i=void 0===n?r:xn(oe(n),r),a=String(e);return En?En.call(t,a,i):t.slice(i-a.length,i)===a}});var Ln=Ne("species"),Tn=!i((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),Cn="$0"==="a".replace(/./,"$0"),On=Ne("replace"),An=!!/./[On]&&""===/./[On]("a","$0"),kn=!i((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),In=function(e,t,n,r){var a=Ne(e),o=!i((function(){var t={};return t[a]=function(){return 7},7!=""[e](t)})),s=o&&!i((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[Ln]=function(){return n},n.flags="",n[a]=/./[a]),n.exec=function(){return t=!0,null},n[a](""),!t}));if(!o||!s||"replace"===e&&(!Tn||!Cn||An)||"split"===e&&!kn){var l=/./[a],c=n(a,""[e],(function(e,t,n,r,i){return t.exec===pn?o&&!i?{done:!0,value:l.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Cn,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:An}),u=c[0],f=c[1];Z(String.prototype,e,u),Z(RegExp.prototype,a,2==t?function(e,t){return f.call(e,this,t)}:function(e){return f.call(e,this)})}r&&A(RegExp.prototype[a],"sham",!0)},Pn=function(e){return function(t,n){var r,i,a=String(h(t)),o=ie(n),s=a.length;return o<0||o>=s?e?"":void 0:(r=a.charCodeAt(o))<55296||r>56319||o+1===s||(i=a.charCodeAt(o+1))<56320||i>57343?e?a.charAt(o):r:e?a.slice(o,o+2):i-56320+(r-55296<<10)+65536}},Mn={codeAt:Pn(!1),charAt:Pn(!0)}.charAt,Rn=function(e,t,n){return t+(n?Mn(e,t).length:1)},jn=function(e,t){var n=e.exec;if("function"==typeof n){var r=n.call(e,t);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==f(e))throw TypeError("RegExp#exec called on incompatible receiver");return pn.call(e,t)},Nn=Math.max,_n=Math.min,Fn=Math.floor,Wn=/\$([$&'`]|\d\d?|<[^>]*>)/g,Hn=/\$([$&'`]|\d\d?)/g;In("replace",2,(function(e,t,n,r){var i=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,a=r.REPLACE_KEEPS_$0,o=i?"$":"$0";return[function(n,r){var i=h(this),a=null==n?void 0:n[e];return void 0!==a?a.call(n,i,r):t.call(String(i),n,r)},function(e,r){if(!i&&a||"string"==typeof r&&-1===r.indexOf(o)){var l=n(t,e,this,r);if(l.done)return l.value}var c=T(e),u=String(this),f="function"==typeof r;f||(r=String(r));var d=c.global;if(d){var p=c.unicode;c.lastIndex=0}for(var h=[];;){var m=jn(c,u);if(null===m)break;if(h.push(m),!d)break;""===String(m[0])&&(c.lastIndex=Rn(u,oe(c.lastIndex),p))}for(var v,g="",y=0,b=0;b<h.length;b++){m=h[b];for(var S=String(m[0]),E=Nn(_n(ie(m.index),u.length),0),x=[],w=1;w<m.length;w++)x.push(void 0===(v=m[w])?v:String(v));var L=m.groups;if(f){var C=[S].concat(x,E,u);void 0!==L&&C.push(L);var O=String(r.apply(void 0,C))}else O=s(S,u,E,x,L,r);E>=y&&(g+=u.slice(y,E)+O,y=E+S.length)}return g+u.slice(y)}];function s(e,n,r,i,a,o){var s=r+e.length,l=i.length,c=Hn;return void 0!==a&&(a=Ae(a),c=Wn),t.call(o,c,(function(t,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,r);case"'":return n.slice(s);case"<":c=a[o.slice(1,-1)];break;default:var u=+o;if(0===u)return t;if(u>l){var f=Fn(u/10);return 0===f?t:f<=l?void 0===i[f-1]?o.charAt(1):i[f-1]+o.charAt(1):t}c=i[u-1]}return void 0===c?"":c}))}}));var Un=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t};In("search",1,(function(e,t,n){return[function(t){var n=h(this),r=null==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var i=T(e),a=String(this),o=i.lastIndex;Un(o,0)||(i.lastIndex=0);var s=jn(i,a);return Un(i.lastIndex,o)||(i.lastIndex=o),null===s?-1:s.index}]}));var $n=Ne("species"),Dn=[].push,qn=Math.min,Bn=!i((function(){return!RegExp(4294967295,"y")}));In("split",2,(function(e,t,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var r=String(h(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===e)return[r];if(!vn(e))return t.call(r,e,i);for(var a,o,s,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),u=0,f=new RegExp(e.source,c+"g");(a=pn.call(f,r))&&!((o=f.lastIndex)>u&&(l.push(r.slice(u,a.index)),a.length>1&&a.index<r.length&&Dn.apply(l,a.slice(1)),s=a[0].length,u=o,l.length>=i));)f.lastIndex===a.index&&f.lastIndex++;return u===r.length?!s&&f.test("")||l.push(""):l.push(r.slice(u)),l.length>i?l.slice(0,i):l}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var i=h(this),a=null==t?void 0:t[e];return void 0!==a?a.call(t,i,n):r.call(String(i),t,n)},function(e,i){var a=n(r,e,this,i,r!==t);if(a.done)return a.value;var o=T(e),s=String(this),l=function(e,t){var n,r=T(e).constructor;return void 0===r||null==(n=T(r)[$n])?t:Oe(n)}(o,RegExp),c=o.unicode,u=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(Bn?"y":"g"),f=new l(Bn?o:"^(?:"+o.source+")",u),d=void 0===i?4294967295:i>>>0;if(0===d)return[];if(0===s.length)return null===jn(f,s)?[s]:[];for(var p=0,h=0,m=[];h<s.length;){f.lastIndex=Bn?h:0;var v,g=jn(f,Bn?s:s.slice(h));if(null===g||(v=qn(oe(f.lastIndex+(Bn?0:h)),s.length))===p)h=Rn(s,h,c);else{if(m.push(s.slice(p,h)),m.length===d)return m;for(var y=1;y<=g.length-1;y++)if(m.push(g[y]),m.length===d)return m;h=p=v}}return m.push(s.slice(p)),m}]}),!Bn);var Gn=L.f,Vn="".startsWith,Kn=Math.min,zn=bn("startsWith");Ce({target:"String",proto:!0,forced:!(!zn&&!!function(){var e=Gn(String.prototype,"startsWith");return e&&!e.writable}())&&!zn},{startsWith:function(e){var t=String(h(this));gn(e);var n=oe(Kn(arguments.length>1?arguments[1]:void 0,t.length)),r=String(e);return Vn?Vn.call(t,r,n):t.slice(n,n+r.length)===r}});var Xn,Yn=Kt.trim;Ce({target:"String",proto:!0,forced:(Xn="trim",i((function(){return!!Dt[Xn]()||" "!=" "[Xn]()||Dt[Xn].name!==Xn})))},{trim:function(){return Yn(this)}});for(var Jn in{CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}){var Zn=r[Jn],Qn=Zn&&Zn.prototype;if(Qn&&Qn.forEach!==ut)try{A(Qn,"forEach",ut)}catch(e){Qn.forEach=ut}}var er=[].slice,tr=function(e){return function(t,n){var r=arguments.length>2,i=r?er.call(arguments,2):void 0;return e(r?function(){("function"==typeof t?t:Function(t)).apply(this,i)}:t,n)}};Ce({global:!0,bind:!0,forced:/MSIE .\./.test(Je)},{setTimeout:tr(r.setTimeout),setInterval:tr(r.setInterval)});return String.prototype.startsWith||(String.prototype.startsWith=function(e,t){return this.substr(t||0,e.length)===e}),String.prototype.endsWith||(String.prototype.endsWith=function(e,t){return(void 0===t||t>this.length)&&(t=this.length),this.substring(t-e.length,t)===e}),function(){var e,t,n,r,i=(e=/(msie) ([\w.]+)/.exec(window.navigator.userAgent.toLowerCase()))&&"msie"===e[1]?parseFloat(e[2]):null,a=!1;function o(e){(r=e.menu||{}).path=r.path||function(){var e;if(document.querySelector('script[src$="menu.js"]')){var t=document.querySelector('script[src$="menu.js"]');t&&(e=t.src.slice(0,-7))}else e=("undefined"==typeof document?new(require("url").URL)("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("menu.js",document.baseURI).href).slice(0,("undefined"==typeof document?new(require("url").URL)("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("menu.js",document.baseURI).href).lastIndexOf("/")+1);return e}()||"plugin/menu/",r.path.endsWith("/")||(r.path+="/"),void 0===r.side&&(r.side="left"),void 0===r.numbers&&(r.numbers=!1),"string"!=typeof r.titleSelector&&(r.titleSelector="h1, h2, h3, h4, h5"),void 0===r.hideMissingTitles&&(r.hideMissingTitles=!1),void 0===r.useTextContentForMissingTitles&&(r.useTextContentForMissingTitles=!1),void 0===r.markers&&(r.markers=!0),"string"!=typeof r.themesPath&&(r.themesPath="dist/theme/"),r.themesPath.endsWith("/")||(r.themesPath+="/"),O("link#theme")||(r.themes=!1),!0===r.themes?r.themes=[{name:"Black",theme:r.themesPath+"black.css"},{name:"White",theme:r.themesPath+"white.css"},{name:"League",theme:r.themesPath+"league.css"},{name:"Sky",theme:r.themesPath+"sky.css"},{name:"Beige",theme:r.themesPath+"beige.css"},{name:"Simple",theme:r.themesPath+"simple.css"},{name:"Serif",theme:r.themesPath+"serif.css"},{name:"Blood",theme:r.themesPath+"blood.css"},{name:"Night",theme:r.themesPath+"night.css"},{name:"Moon",theme:r.themesPath+"moon.css"},{name:"Solarized",theme:r.themesPath+"solarized.css"}]:Array.isArray(r.themes)||(r.themes=!1),void 0===r.transitions&&(r.transitions=!1),!0===r.transitions?r.transitions=["None","Fade","Slide","Convex","Concave","Zoom"]:!1===r.transitions||Array.isArray(r.transitions)&&r.transitions.every((function(e){return"string"==typeof e}))||(console.error("reveal.js-menu error: transitions config value must be 'true' or an array of strings, eg ['None', 'Fade', 'Slide')"),r.transitions=!1),i&&i<=9&&(r.transitions=!1),void 0===r.openButton&&(r.openButton=!0),void 0===r.openSlideNumber&&(r.openSlideNumber=!1),void 0===r.keyboard&&(r.keyboard=!0),void 0===r.sticky&&(r.sticky=!1),void 0===r.autoOpen&&(r.autoOpen=!0),void 0===r.delayInit&&(r.delayInit=!1),void 0===r.openOnInit&&(r.openOnInit=!1)}var s=!0;function l(){s=!1}function c(){O("nav.slide-menu").addEventListener("mousemove",(function e(t){O("nav.slide-menu").removeEventListener("mousemove",e),s=!0}))}function u(e){var t=function(e){for(var t=0,n=0;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)t+=e.offsetLeft-e.scrollLeft,n+=e.offsetTop-e.scrollTop,e=e.offsetParent;return{top:n,left:t}}(e).top-e.offsetParent.offsetTop;if(t<0)return-t;var n=e.offsetParent.offsetHeight-(e.offsetTop-e.offsetParent.scrollTop+e.offsetHeight);return n<0?n:0}function f(e){var t=u(e);t&&(l(),e.scrollIntoView(t>0),c())}function d(e){l(),e.offsetParent.scrollTop=e.offsetTop,c()}function p(e){l(),e.offsetParent.scrollTop=e.offsetTop-e.offsetParent.offsetHeight+e.offsetHeight,c()}function h(e){e.classList.add("selected"),f(e),r.sticky&&r.autoOpen&&E(e)}function m(e){if(b())switch(e.stopImmediatePropagation(),e.keyCode){case 72:case 37:!function(){var e=parseInt(O(".active-toolbar-button").getAttribute("data-button"))-1;e<0&&(e=T-1);S(null,O('.toolbar-panel-button[data-button="'+e+'"]').getAttribute("data-panel"))}();break;case 76:case 39:l=(parseInt(O(".active-toolbar-button").getAttribute("data-button"))+1)%T,S(null,O('.toolbar-panel-button[data-button="'+l+'"]').getAttribute("data-panel"));break;case 75:case 38:if(s=O(".active-menu-panel .slide-menu-items li.selected")||O(".active-menu-panel .slide-menu-items li.active"))A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),h(O('.active-menu-panel .slide-menu-items li[data-item="'+(parseInt(s.getAttribute("data-item"))-1)+'"]')||s);else(o=O(".active-menu-panel .slide-menu-items li.slide-menu-item"))&&h(o);break;case 74:case 40:if(s=O(".active-menu-panel .slide-menu-items li.selected")||O(".active-menu-panel .slide-menu-items li.active"))A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),h(O('.active-menu-panel .slide-menu-items li[data-item="'+(parseInt(s.getAttribute("data-item"))+1)+'"]')||s);else(o=O(".active-menu-panel .slide-menu-items li.slide-menu-item"))&&h(o);break;case 33:case 85:var t=A(".active-menu-panel .slide-menu-items li").filter((function(e){return u(e)>0})),n=A(".active-menu-panel .slide-menu-items li").filter((function(e){return 0==u(e)})),r=t.length>0&&Math.abs(u(t[t.length-1]))<t[t.length-1].clientHeight?t[t.length-1]:n[0];r&&(r.classList.contains("selected")&&t.length>0&&(p(r),r=(n=A(".active-menu-panel .slide-menu-items li").filter((function(e){return 0==u(e)})))[0]==r?t[t.length-1]:n[0]),A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),h(r),d(r));break;case 34:case 68:n=A(".active-menu-panel .slide-menu-items li").filter((function(e){return 0==u(e)}));var i=A(".active-menu-panel .slide-menu-items li").filter((function(e){return u(e)<0})),a=i.length>0&&Math.abs(u(i[0]))<i[0].clientHeight?i[0]:n[n.length-1];a&&(a.classList.contains("selected")&&i.length>0&&(d(a),a=(n=A(".active-menu-panel .slide-menu-items li").filter((function(e){return 0==u(e)})))[n.length-1]==a?i[0]:n[n.length-1]),A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),h(a),p(a));break;case 36:A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),(o=O(".active-menu-panel .slide-menu-items li:first-of-type"))&&(o.classList.add("selected"),f(o));break;case 35:var o;A(".active-menu-panel .slide-menu-items li").forEach((function(e){e.classList.remove("selected")})),(o=O(".active-menu-panel .slide-menu-items:last-of-type li:last-of-type"))&&(o.classList.add("selected"),f(o));break;case 32:case 13:var s;(s=O(".active-menu-panel .slide-menu-items li.selected"))&&E(s,!0);break;case 27:g(null,!0)}var l}function v(e){(e&&e.preventDefault(),b())||(O("body").classList.add("slide-menu-active"),O(".reveal").classList.add("has-"+r.effect+"-"+r.side),O(".slide-menu").classList.add("active"),O(".slide-menu-overlay").classList.add("active"),r.themes&&(A('div[data-panel="Themes"] li').forEach((function(e){e.classList.remove("active")})),A('li[data-theme="'+O("link#theme").getAttribute("href")+'"]').forEach((function(e){e.classList.add("active")}))),r.transitions&&(A('div[data-panel="Transitions"] li').forEach((function(e){e.classList.remove("active")})),A('li[data-transition="'+n.transition+'"]').forEach((function(e){e.classList.add("active")}))),A(".slide-menu-panel li.active").forEach((function(e){e.classList.add("selected"),f(e)})))}function g(e,t){e&&e.preventDefault(),r.sticky&&!t||(O("body").classList.remove("slide-menu-active"),O(".reveal").classList.remove("has-"+r.effect+"-"+r.side),O(".slide-menu").classList.remove("active"),O(".slide-menu-overlay").classList.remove("active"),A(".slide-menu-panel li.selected").forEach((function(e){e.classList.remove("selected")})))}function y(e){b()?g(e,!0):v(e)}function b(){return O("body").classList.contains("slide-menu-active")}function S(e,t){v(e);var n=t;"string"!=typeof t&&(n=e.currentTarget.getAttribute("data-panel")),O(".slide-menu-toolbar > li.active-toolbar-button").classList.remove("active-toolbar-button"),O('li[data-panel="'+n+'"]').classList.add("active-toolbar-button"),O(".slide-menu-panel.active-menu-panel").classList.remove("active-menu-panel"),O('div[data-panel="'+n+'"]').classList.add("active-menu-panel")}function E(e,n){var i=parseInt(e.getAttribute("data-slide-h")),a=parseInt(e.getAttribute("data-slide-v")),o=e.getAttribute("data-theme"),s=e.getAttribute("data-highlight-theme"),l=e.getAttribute("data-transition");isNaN(i)||isNaN(a)||t.slide(i,a),o&&I("theme",o),s&&I("highlight-theme",s),l&&t.configure({transition:l});var c=O("a",e);c&&(n||!r.sticky||r.autoOpen&&c.href.startsWith("#")||c.href.startsWith(window.location.origin+window.location.pathname+"#"))&&c.click(),g()}function x(e){"A"!==e.target.nodeName&&e.preventDefault(),E(e.currentTarget)}function w(){var e=t.getState();A("li.slide-menu-item, li.slide-menu-item-vertical").forEach((function(t){t.classList.remove("past"),t.classList.remove("active"),t.classList.remove("future");var n=parseInt(t.getAttribute("data-slide-h")),r=parseInt(t.getAttribute("data-slide-v"));n<e.indexh||n===e.indexh&&r<e.indexv?t.classList.add("past"):n===e.indexh&&r===e.indexv?t.classList.add("active"):t.classList.add("future")}))}function L(){var e=window.getComputedStyle(O(".reveal"));O(".slide-menu").style.fontFamily=e.fontFamily}var T=0;function C(){if(!a){var e=function(e,t,n,r,i,a){var o={"data-button":""+T++,class:"toolbar-panel-button"+(a?" active-toolbar-button":"")};t&&(o["data-panel"]=t);var s=k("li",o);return n.startsWith("fa-")?s.appendChild(k("i",{class:r+" "+n})):s.innerHTML=n+"</i>",s.appendChild(k("br"),O("i",s)),s.appendChild(k("span",{class:"slide-menu-toolbar-label"},e),O("i",s)),s.onclick=i,d.appendChild(s),s},i=function(e,i,a,o,s){function l(e,t){if(""===e)return null;var n=t?O(e,i):O(e);return n?n.textContent:null}var c=i.getAttribute("data-menu-title")||l(".menu-title",i)||l(r.titleSelector,i);if(!c&&r.useTextContentForMissingTitles&&(c=i.textContent.trim())&&(c=c.split("\n").map((function(e){return e.trim()})).join(" ").trim().replace(/^(.{16}[^\s]*).*/,"$1").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")+"..."),!c){if(r.hideMissingTitles)return"";e+=" no-title",c="Slide "+(a+1)}var u=k("li",{class:e,"data-item":a,"data-slide-h":o,"data-slide-v":void 0===s?0:s});if(r.markers&&(u.appendChild(k("i",{class:"fas fa-check-circle fa-fw past"})),u.appendChild(k("i",{class:"fas fa-arrow-alt-circle-right fa-fw active"})),u.appendChild(k("i",{class:"far fa-circle fa-fw future"}))),r.numbers){var f=[],d="h.v";switch("string"==typeof r.numbers?d=r.numbers:"string"==typeof n.slideNumber&&(d=n.slideNumber),d){case"c":f.push(a+1);break;case"c/t":f.push(a+1,"/",t.getTotalSlides());break;case"h/v":f.push(o+1),"number"!=typeof s||isNaN(s)||f.push("/",s+1);break;default:f.push(o+1),"number"!=typeof s||isNaN(s)||f.push(".",s+1)}u.appendChild(k("span",{class:"slide-menu-item-number"},f.join("")+". "))}return u.appendChild(k("span",{class:"slide-menu-item-title"},c)),u},o=function(e){s&&(A(".active-menu-panel .slide-menu-items li.selected").forEach((function(e){e.classList.remove("selected")})),e.currentTarget.classList.add("selected"))},l=O(".reveal").parentElement,c=k("div",{class:"slide-menu-wrapper"});l.appendChild(c);var u=k("nav",{class:"slide-menu slide-menu--"+r.side});"string"==typeof r.width&&(-1!=["normal","wide","third","half","full"].indexOf(r.width)?u.classList.add("slide-menu--"+r.width):(u.classList.add("slide-menu--custom"),u.style.width=r.width)),c.appendChild(u),L();var f=k("div",{class:"slide-menu-overlay"});c.appendChild(f),f.onclick=function(){g(null,!0)};var d=k("ol",{class:"slide-menu-toolbar"});O(".slide-menu").appendChild(d),e("Slides","Slides","fa-images","fas",S,!0),r.custom&&r.custom.forEach((function(t,n,r){e(t.title,"Custom"+n,t.icon,null,S)})),r.themes&&e("Themes","Themes","fa-adjust","fas",S),r.transitions&&e("Transitions","Transitions","fa-sticky-note","fas",S);var p=k("li",{id:"close",class:"toolbar-panel-button"});if(p.appendChild(k("i",{class:"fas fa-times"})),p.appendChild(k("br")),p.appendChild(k("span",{class:"slide-menu-toolbar-label"},"Close")),p.onclick=function(){g(null,!0)},d.appendChild(p),function e(){if(document.querySelector("section[data-markdown]:not([data-markdown-parsed])"))setTimeout(e,100);else{var t=k("div",{"data-panel":"Slides",class:"slide-menu-panel active-menu-panel"});t.appendChild(k("ul",{class:"slide-menu-items"})),u.appendChild(t);var n=O('.slide-menu-panel[data-panel="Slides"] > .slide-menu-items'),r=0;A(".slides > section").forEach((function(e,t){var a=A("section",e);if(a.length>0)a.forEach((function(e,a){var o=i(0===a?"slide-menu-item":"slide-menu-item-vertical",e,r,t,a);o&&n.appendChild(o),r++}));else{var o=i("slide-menu-item",e,r,t);o&&n.appendChild(o),r++}})),A(".slide-menu-item, .slide-menu-item-vertical").forEach((function(e){e.onclick=x})),w()}}(),t.addEventListener("slidechanged",w),r.custom){var h=function(){this.status>=200&&this.status<300?(this.panel.innerHTML=this.responseText,C(this.panel)):I(this)},E=function(){I(this)},C=function(e){A("ul.slide-menu-items li.slide-menu-item",e).forEach((function(e,t){e.setAttribute("data-item",t+1),e.onclick=x,e.addEventListener("mouseenter",o)}))},I=function(e){var t="<p>ERROR: The attempt to fetch "+e.responseURL+" failed with HTTP status "+e.status+" ("+e.statusText+").</p><p>Remember that you need to serve the presentation HTML from a HTTP server.</p>";e.panel.innerHTML=t};r.custom.forEach((function(e,t,n){var r=k("div",{"data-panel":"Custom"+t,class:"slide-menu-panel slide-menu-custom-panel"});e.content?(r.innerHTML=e.content,C(r)):e.src&&function(e,t){var n=new XMLHttpRequest;n.panel=e,n.arguments=Array.prototype.slice.call(arguments,2),n.onload=h,n.onerror=E,n.open("get",t,!0),n.send(null)}(r,e.src),u.appendChild(r)}))}if(r.themes){var P=k("div",{class:"slide-menu-panel","data-panel":"Themes"});u.appendChild(P);var M=k("ul",{class:"slide-menu-items"});P.appendChild(M),r.themes.forEach((function(e,t){var n={class:"slide-menu-item","data-item":""+(t+1)};e.theme&&(n["data-theme"]=e.theme),e.highlightTheme&&(n["data-highlight-theme"]=e.highlightTheme);var r=k("li",n,e.name);M.appendChild(r),r.onclick=x}))}if(r.transitions){P=k("div",{class:"slide-menu-panel","data-panel":"Transitions"});u.appendChild(P);M=k("ul",{class:"slide-menu-items"});P.appendChild(M),r.transitions.forEach((function(e,t){var n=k("li",{class:"slide-menu-item","data-transition":e.toLowerCase(),"data-item":""+(t+1)},e);M.appendChild(n),n.onclick=x}))}if(r.openButton){var R=k("div",{class:"slide-menu-button"}),j=k("a",{href:"#"});j.appendChild(k("i",{class:"fas fa-bars"})),R.appendChild(j),O(".reveal").appendChild(R),R.onclick=v}if(r.openSlideNumber)O("div.slide-number").onclick=v;A(".slide-menu-panel .slide-menu-items li").forEach((function(e){e.addEventListener("mouseenter",o)}))}if(r.keyboard){if(document.addEventListener("keydown",m,!1),window.addEventListener("message",(function(e){var t;try{t=JSON.parse(e.data)}catch(e){}t&&"triggerKey"===t.method&&m({keyCode:t.args[0],stopImmediatePropagation:function(){}})})),n.keyboardCondition&&"function"==typeof n.keyboardCondition){var N=n.keyboardCondition;n.keyboardCondition=function(e){return N(e)&&(!b()||77==e.keyCode)}}else n.keyboardCondition=function(e){return!b()||77==e.keyCode};t.addKeyBinding({keyCode:77,key:"M",description:"Toggle menu"},y)}r.openOnInit&&v(),a=!0}function O(e,t){return t||(t=document),t.querySelector(e)}function A(e,t){return t||(t=document),Array.prototype.slice.call(t.querySelectorAll(e))}function k(e,t,n){var r=document.createElement(e);return t&&Object.getOwnPropertyNames(t).forEach((function(e){r.setAttribute(e,t[e])})),n&&(r.innerHTML=n),r}function I(e,t){var n=O("link#"+e),r=n.parentElement,i=n.nextElementSibling;n.remove();var a=n.cloneNode();a.setAttribute("href",t),a.onload=function(){L()},r.insertBefore(a,i)}function P(e,t,n){n.call()}function M(){var e,a,o,s=!i||i>=9;t.isSpeakerNotes()&&window.location.search.endsWith("controls=false")&&(s=!1),s&&(r.delayInit||C(),e="menu-ready",(o=document.createEvent("HTMLEvents",1,2)).initEvent(e,!0,!0),function(e,t){for(var n in t)e[n]=t[n]}(o,a),document.querySelector(".reveal").dispatchEvent(o),n.postMessageEvents&&window.parent!==window.self&&window.parent.postMessage(JSON.stringify({namespace:"reveal",eventName:e,state:t.getState()}),"*"))}return{id:"menu",init:function(e){o(n=(t=e).getConfig()),P(r.path+"menu.css","stylesheet",(function(){void 0===r.loadIcons||r.loadIcons?P(r.path+"font-awesome/css/all.css","stylesheet",M):M()}))},toggle:y,openMenu:v,closeMenu:g,openPanel:S,isOpen:b,initialiseMenu:C,isMenuInitialised:function(){return a}}}})); diff --git a/public/site_libs/revealjs/plugin/reveal-menu/plugin.yml b/public/site_libs/revealjs/plugin/reveal-menu/plugin.yml new file mode 100644 index 0000000..3f4b90a --- /dev/null +++ b/public/site_libs/revealjs/plugin/reveal-menu/plugin.yml @@ -0,0 +1,9 @@ +name: RevealMenu +script: [menu.js, quarto-menu.js] +stylesheet: [menu.css, quarto-menu.css] +config: + menu: + side: "left" + useTextContentForMissingTitles: true + markers: false + loadIcons: false diff --git a/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.css b/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.css new file mode 100644 index 0000000..eec145c --- /dev/null +++ b/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.css @@ -0,0 +1,68 @@ +.slide-menu-wrapper .slide-tool-item { + display: block; + text-align: left; + padding: 10px 18px; + color: #aaa; + cursor: pointer; + border-top: solid 1px #555; +} + +.slide-menu-wrapper .slide-tool-item a { + text-decoration: none; +} + +.slide-menu-wrapper .slide-tool-item kbd { + font-family: monospace; + margin-right: 10px; + padding: 3px 8px; + color: inherit; + border: 1px solid; + border-radius: 5px; + border-color: #555; +} + +.slide-menu-wrapper .slide-menu-toolbar > li.active-toolbar-button { + text-decoration: none; +} + +.reveal .slide-menu-button { + left: 8px; + bottom: 8px; +} + +.reveal .slide-menu-button .fas::before, +.reveal .slide-chalkboard-buttons .fas::before, +.slide-menu-wrapper .slide-menu-toolbar .fas::before { + display: inline-block; + height: 2.2rem; + width: 2.2rem; + content: ""; + vertical-align: -0.125em; + background-repeat: no-repeat; + background-size: 2.2rem 2.2rem; +} + +.reveal .slide-chalkboard-buttons .fas::before { + height: 1.45rem; + width: 1.45rem; + background-size: 1.45rem 1.45rem; + vertical-align: 0.1em; +} + +.slide-menu-wrapper .slide-menu-toolbar .fas::before { + height: 1.8rem; + width: 1.8rem; + background-size: 1.8rem 1.8rem; +} + +.slide-menu-wrapper .slide-menu-toolbar .fa-images::before { + background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-images" viewBox="0 0 16 16"><path d="M4.502 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z"/><path d="M14.002 13a2 2 0 0 1-2 2h-10a2 2 0 0 1-2-2V5A2 2 0 0 1 2 3a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v8a2 2 0 0 1-1.998 2zM14 2H4a1 1 0 0 0-1 1h9.002a2 2 0 0 1 2 2v7A1 1 0 0 0 15 11V3a1 1 0 0 0-1-1zM2.002 4a1 1 0 0 0-1 1v8l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094l1.777 1.947V5a1 1 0 0 0-1-1h-10z"/></svg>'); +} + +.slide-menu-wrapper .slide-menu-toolbar .fa-gear::before { + background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-gear" viewBox="0 0 16 16"><path d="M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z"/><path d="M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z"/></svg>'); +} + +.slide-menu-wrapper .slide-menu-toolbar .fa-times::before { + background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-x" viewBox="0 0 16 16"><path d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"/></svg>'); +} diff --git a/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.js b/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.js new file mode 100644 index 0000000..1245b0d --- /dev/null +++ b/public/site_libs/revealjs/plugin/reveal-menu/quarto-menu.js @@ -0,0 +1,40 @@ +window.revealMenuToolHandler = function (handler) { + return function (event) { + event.preventDefault(); + handler(); + Reveal.getPlugin("menu").closeMenu(); + }; +}; + +window.RevealMenuToolHandlers = { + fullscreen: revealMenuToolHandler(function () { + const element = document.documentElement; + const requestMethod = + element.requestFullscreen || + element.webkitRequestFullscreen || + element.webkitRequestFullScreen || + element.mozRequestFullScreen || + element.msRequestFullscreen; + if (requestMethod) { + requestMethod.apply(element); + } + }), + speakerMode: revealMenuToolHandler(function () { + Reveal.getPlugin("notes").open(); + }), + keyboardHelp: revealMenuToolHandler(function () { + Reveal.toggleHelp(true); + }), + overview: revealMenuToolHandler(function () { + Reveal.toggleOverview(true); + }), + toggleChalkboard: revealMenuToolHandler(function () { + RevealChalkboard.toggleChalkboard(); + }), + toggleNotesCanvas: revealMenuToolHandler(function () { + RevealChalkboard.toggleNotesCanvas(); + }), + downloadDrawings: revealMenuToolHandler(function () { + RevealChalkboard.download(); + }), +}; diff --git a/public/site_libs/revealjs/plugin/search/plugin.js b/public/site_libs/revealjs/plugin/search/plugin.js new file mode 100644 index 0000000..5d09ce6 --- /dev/null +++ b/public/site_libs/revealjs/plugin/search/plugin.js @@ -0,0 +1,243 @@ +/*! + * Handles finding a text string anywhere in the slides and showing the next occurrence to the user + * by navigatating to that slide and highlighting it. + * + * @author Jon Snyder <snyder.jon@gmail.com>, February 2013 + */ + +const Plugin = () => { + + // The reveal.js instance this plugin is attached to + let deck; + + let searchElement; + let searchButton; + let searchInput; + + let matchedSlides; + let currentMatchedIndex; + let searchboxDirty; + let hilitor; + + function render() { + + searchElement = document.createElement( 'div' ); + searchElement.classList.add( 'searchbox' ); + searchElement.style.position = 'absolute'; + searchElement.style.top = '10px'; + searchElement.style.right = '10px'; + searchElement.style.zIndex = 10; + + //embedded base64 search icon Designed by Sketchdock - http://www.sketchdock.com/: + searchElement.innerHTML = `<input type="search" class="searchinput" placeholder="Search..." style="vertical-align: top;"/> + </span>`; + + searchInput = searchElement.querySelector( '.searchinput' ); + searchInput.style.width = '240px'; + searchInput.style.fontSize = '14px'; + searchInput.style.padding = '4px 6px'; + searchInput.style.color = '#000'; + searchInput.style.background = '#fff'; + searchInput.style.borderRadius = '2px'; + searchInput.style.border = '0'; + searchInput.style.outline = '0'; + searchInput.style.boxShadow = '0 2px 18px rgba(0, 0, 0, 0.2)'; + searchInput.style['-webkit-appearance'] = 'none'; + + deck.getRevealElement().appendChild( searchElement ); + + // searchButton.addEventListener( 'click', function(event) { + // doSearch(); + // }, false ); + + searchInput.addEventListener( 'keyup', function( event ) { + switch (event.keyCode) { + case 13: + event.preventDefault(); + doSearch(); + searchboxDirty = false; + break; + default: + searchboxDirty = true; + } + }, false ); + + closeSearch(); + + } + + function openSearch() { + if( !searchElement ) render(); + + searchElement.style.display = 'inline'; + searchInput.focus(); + searchInput.select(); + } + + function closeSearch() { + if( !searchElement ) render(); + + searchElement.style.display = 'none'; + if(hilitor) hilitor.remove(); + } + + function toggleSearch() { + if( !searchElement ) render(); + + if (searchElement.style.display !== 'inline') { + openSearch(); + } + else { + closeSearch(); + } + } + + function doSearch() { + //if there's been a change in the search term, perform a new search: + if (searchboxDirty) { + var searchstring = searchInput.value; + + if (searchstring === '') { + if(hilitor) hilitor.remove(); + matchedSlides = null; + } + else { + //find the keyword amongst the slides + hilitor = new Hilitor("slidecontent"); + matchedSlides = hilitor.apply(searchstring); + currentMatchedIndex = 0; + } + } + + if (matchedSlides) { + //navigate to the next slide that has the keyword, wrapping to the first if necessary + if (matchedSlides.length && (matchedSlides.length <= currentMatchedIndex)) { + currentMatchedIndex = 0; + } + if (matchedSlides.length > currentMatchedIndex) { + deck.slide(matchedSlides[currentMatchedIndex].h, matchedSlides[currentMatchedIndex].v); + currentMatchedIndex++; + } + } + } + + // Original JavaScript code by Chirp Internet: www.chirp.com.au + // Please acknowledge use of this code by including this header. + // 2/2013 jon: modified regex to display any match, not restricted to word boundaries. + function Hilitor(id, tag) { + + var targetNode = document.getElementById(id) || document.body; + var hiliteTag = tag || "EM"; + var skipTags = new RegExp("^(?:" + hiliteTag + "|SCRIPT|FORM)$"); + var colors = ["#ff6", "#a0ffff", "#9f9", "#f99", "#f6f"]; + var wordColor = []; + var colorIdx = 0; + var matchRegex = ""; + var matchingSlides = []; + + this.setRegex = function(input) + { + input = input.replace(/^[^\w]+|[^\w]+$/g, "").replace(/[^\w'-]+/g, "|"); + matchRegex = new RegExp("(" + input + ")","i"); + } + + this.getRegex = function() + { + return matchRegex.toString().replace(/^\/\\b\(|\)\\b\/i$/g, "").replace(/\|/g, " "); + } + + // recursively apply word highlighting + this.hiliteWords = function(node) + { + if(node == undefined || !node) return; + if(!matchRegex) return; + if(skipTags.test(node.nodeName)) return; + + if(node.hasChildNodes()) { + for(var i=0; i < node.childNodes.length; i++) + this.hiliteWords(node.childNodes[i]); + } + if(node.nodeType == 3) { // NODE_TEXT + var nv, regs; + if((nv = node.nodeValue) && (regs = matchRegex.exec(nv))) { + //find the slide's section element and save it in our list of matching slides + var secnode = node; + while (secnode != null && secnode.nodeName != 'SECTION') { + secnode = secnode.parentNode; + } + + var slideIndex = deck.getIndices(secnode); + var slidelen = matchingSlides.length; + var alreadyAdded = false; + for (var i=0; i < slidelen; i++) { + if ( (matchingSlides[i].h === slideIndex.h) && (matchingSlides[i].v === slideIndex.v) ) { + alreadyAdded = true; + } + } + if (! alreadyAdded) { + matchingSlides.push(slideIndex); + } + + if(!wordColor[regs[0].toLowerCase()]) { + wordColor[regs[0].toLowerCase()] = colors[colorIdx++ % colors.length]; + } + + var match = document.createElement(hiliteTag); + match.appendChild(document.createTextNode(regs[0])); + match.style.backgroundColor = wordColor[regs[0].toLowerCase()]; + match.style.fontStyle = "inherit"; + match.style.color = "#000"; + + var after = node.splitText(regs.index); + after.nodeValue = after.nodeValue.substring(regs[0].length); + node.parentNode.insertBefore(match, after); + } + } + }; + + // remove highlighting + this.remove = function() + { + var arr = document.getElementsByTagName(hiliteTag); + var el; + while(arr.length && (el = arr[0])) { + el.parentNode.replaceChild(el.firstChild, el); + } + }; + + // start highlighting at target node + this.apply = function(input) + { + if(input == undefined || !input) return; + this.remove(); + this.setRegex(input); + this.hiliteWords(targetNode); + return matchingSlides; + }; + + } + + return { + + id: 'search', + + init: reveal => { + + deck = reveal; + deck.registerKeyboardShortcut( 'CTRL + Shift + F', 'Search' ); + + document.addEventListener( 'keydown', function( event ) { + if( event.key == "F" && (event.ctrlKey || event.metaKey) ) { //Control+Shift+f + event.preventDefault(); + toggleSearch(); + } + }, false ); + + }, + + open: openSearch + + } +}; + +export default Plugin; \ No newline at end of file diff --git a/public/site_libs/revealjs/plugin/search/search.esm.js b/public/site_libs/revealjs/plugin/search/search.esm.js new file mode 100644 index 0000000..b401a70 --- /dev/null +++ b/public/site_libs/revealjs/plugin/search/search.esm.js @@ -0,0 +1,7 @@ +var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=function(e){try{return!!e()}catch(e){return!0}},n=!t((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),r=function(e){return e&&e.Math==Math&&e},o=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof e&&e)||function(){return this}()||Function("return this")(),i=t,c=/#|\.prototype\./,a=function(e,t){var n=l[u(e)];return n==s||n!=f&&("function"==typeof t?i(t):!!t)},u=a.normalize=function(e){return String(e).replace(c,".").toLowerCase()},l=a.data={},f=a.NATIVE="N",s=a.POLYFILL="P",p=a,g=function(e){return"object"==typeof e?null!==e:"function"==typeof e},d=g,h=function(e){if(!d(e))throw TypeError(String(e)+" is not an object");return e},y=g,v=h,x=function(e){if(!y(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},b=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,r){return v(n),x(r),t?e.call(n,r):n.__proto__=r,n}}():void 0),E=g,m=b,S={},w=g,O=o.document,R=w(O)&&w(O.createElement),T=function(e){return R?O.createElement(e):{}},_=!n&&!t((function(){return 7!=Object.defineProperty(T("div"),"a",{get:function(){return 7}}).a})),j=g,P=function(e,t){if(!j(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!j(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!j(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!j(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")},I=n,C=_,N=h,A=P,k=Object.defineProperty;S.f=I?k:function(e,t,n){if(N(e),t=A(t,!0),N(n),C)try{return k(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var $={},L=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},M=L,U=function(e){return Object(M(e))},D=U,F={}.hasOwnProperty,z=function(e,t){return F.call(D(e),t)},K={}.toString,B=function(e){return K.call(e).slice(8,-1)},W=B,G="".split,V=t((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==W(e)?G.call(e,""):Object(e)}:Object,Y=L,q=function(e){return V(Y(e))},X=Math.ceil,H=Math.floor,J=function(e){return isNaN(e=+e)?0:(e>0?H:X)(e)},Q=J,Z=Math.min,ee=function(e){return e>0?Z(Q(e),9007199254740991):0},te=J,ne=Math.max,re=Math.min,oe=q,ie=ee,ce=function(e,t){var n=te(e);return n<0?ne(n+t,0):re(n,t)},ae=function(e){return function(t,n,r){var o,i=oe(t),c=ie(i.length),a=ce(r,c);if(e&&n!=n){for(;c>a;)if((o=i[a++])!=o)return!0}else for(;c>a;a++)if((e||a in i)&&i[a]===n)return e||a||0;return!e&&-1}},ue={includes:ae(!0),indexOf:ae(!1)},le={},fe=z,se=q,pe=ue.indexOf,ge=le,de=function(e,t){var n,r=se(e),o=0,i=[];for(n in r)!fe(ge,n)&&fe(r,n)&&i.push(n);for(;t.length>o;)fe(r,n=t[o++])&&(~pe(i,n)||i.push(n));return i},he=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"].concat("length","prototype");$.f=Object.getOwnPropertyNames||function(e){return de(e,he)};var ye={exports:{}},ve=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},xe=S,be=ve,Ee=n?function(e,t,n){return xe.f(e,t,be(1,n))}:function(e,t,n){return e[t]=n,e},me=o,Se=Ee,we=function(e,t){try{Se(me,e,t)}catch(n){me[e]=t}return t},Oe=we,Re=o["__core-js_shared__"]||Oe("__core-js_shared__",{}),Te=Re;(ye.exports=function(e,t){return Te[e]||(Te[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var _e,je,Pe=0,Ie=Math.random(),Ce=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++Pe+Ie).toString(36)},Ne=o,Ae=o,ke=function(e){return"function"==typeof e?e:void 0},$e=function(e,t){return arguments.length<2?ke(Ne[e])||ke(Ae[e]):Ne[e]&&Ne[e][t]||Ae[e]&&Ae[e][t]},Le=$e("navigator","userAgent")||"",Me=o.process,Ue=Me&&Me.versions,De=Ue&&Ue.v8;De?je=(_e=De.split("."))[0]<4?1:_e[0]+_e[1]:Le&&(!(_e=Le.match(/Edge\/(\d+)/))||_e[1]>=74)&&(_e=Le.match(/Chrome\/(\d+)/))&&(je=_e[1]);var Fe=je&&+je,ze=t,Ke=!!Object.getOwnPropertySymbols&&!ze((function(){return!String(Symbol())||!Symbol.sham&&Fe&&Fe<41})),Be=Ke&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,We=o,Ge=ye.exports,Ve=z,Ye=Ce,qe=Ke,Xe=Be,He=Ge("wks"),Je=We.Symbol,Qe=Xe?Je:Je&&Je.withoutSetter||Ye,Ze=function(e){return Ve(He,e)&&(qe||"string"==typeof He[e])||(qe&&Ve(Je,e)?He[e]=Je[e]:He[e]=Qe("Symbol."+e)),He[e]},et=g,tt=B,nt=Ze("match"),rt=h,ot=function(){var e=rt(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},it={},ct=t;function at(e,t){return RegExp(e,t)}it.UNSUPPORTED_Y=ct((function(){var e=at("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),it.BROKEN_CARET=ct((function(){var e=at("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var ut={exports:{}},lt=Re,ft=Function.toString;"function"!=typeof lt.inspectSource&&(lt.inspectSource=function(e){return ft.call(e)});var st,pt,gt,dt=lt.inspectSource,ht=dt,yt=o.WeakMap,vt="function"==typeof yt&&/native code/.test(ht(yt)),xt=ye.exports,bt=Ce,Et=xt("keys"),mt=vt,St=g,wt=Ee,Ot=z,Rt=Re,Tt=function(e){return Et[e]||(Et[e]=bt(e))},_t=le,jt=o.WeakMap;if(mt||Rt.state){var Pt=Rt.state||(Rt.state=new jt),It=Pt.get,Ct=Pt.has,Nt=Pt.set;st=function(e,t){if(Ct.call(Pt,e))throw new TypeError("Object already initialized");return t.facade=e,Nt.call(Pt,e,t),t},pt=function(e){return It.call(Pt,e)||{}},gt=function(e){return Ct.call(Pt,e)}}else{var At=Tt("state");_t[At]=!0,st=function(e,t){if(Ot(e,At))throw new TypeError("Object already initialized");return t.facade=e,wt(e,At,t),t},pt=function(e){return Ot(e,At)?e[At]:{}},gt=function(e){return Ot(e,At)}}var kt={set:st,get:pt,has:gt,enforce:function(e){return gt(e)?pt(e):st(e,{})},getterFor:function(e){return function(t){var n;if(!St(t)||(n=pt(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},$t=o,Lt=Ee,Mt=z,Ut=we,Dt=dt,Ft=kt.get,zt=kt.enforce,Kt=String(String).split("String");(ut.exports=function(e,t,n,r){var o,i=!!r&&!!r.unsafe,c=!!r&&!!r.enumerable,a=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof t||Mt(n,"name")||Lt(n,"name",t),(o=zt(n)).source||(o.source=Kt.join("string"==typeof t?t:""))),e!==$t?(i?!a&&e[t]&&(c=!0):delete e[t],c?e[t]=n:Lt(e,t,n)):c?e[t]=n:Ut(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Ft(this).source||Dt(this)}));var Bt=$e,Wt=S,Gt=n,Vt=Ze("species"),Yt=n,qt=o,Xt=p,Ht=function(e,t,n){var r,o;return m&&"function"==typeof(r=t.constructor)&&r!==n&&E(o=r.prototype)&&o!==n.prototype&&m(e,o),e},Jt=S.f,Qt=$.f,Zt=function(e){var t;return et(e)&&(void 0!==(t=e[nt])?!!t:"RegExp"==tt(e))},en=ot,tn=it,nn=ut.exports,rn=t,on=kt.enforce,cn=function(e){var t=Bt(e),n=Wt.f;Gt&&t&&!t[Vt]&&n(t,Vt,{configurable:!0,get:function(){return this}})},an=Ze("match"),un=qt.RegExp,ln=un.prototype,fn=/a/g,sn=/a/g,pn=new un(fn)!==fn,gn=tn.UNSUPPORTED_Y;if(Yt&&Xt("RegExp",!pn||gn||rn((function(){return sn[an]=!1,un(fn)!=fn||un(sn)==sn||"/a/i"!=un(fn,"i")})))){for(var dn=function(e,t){var n,r=this instanceof dn,o=Zt(e),i=void 0===t;if(!r&&o&&e.constructor===dn&&i)return e;pn?o&&!i&&(e=e.source):e instanceof dn&&(i&&(t=en.call(e)),e=e.source),gn&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var c=Ht(pn?new un(e,t):un(e,t),r?this:ln,dn);gn&&n&&(on(c).sticky=!0);return c},hn=function(e){e in dn||Jt(dn,e,{configurable:!0,get:function(){return un[e]},set:function(t){un[e]=t}})},yn=Qt(un),vn=0;yn.length>vn;)hn(yn[vn++]);ln.constructor=dn,dn.prototype=ln,nn(qt,"RegExp",dn)}cn("RegExp");var xn={},bn={},En={}.propertyIsEnumerable,mn=Object.getOwnPropertyDescriptor,Sn=mn&&!En.call({1:2},1);bn.f=Sn?function(e){var t=mn(this,e);return!!t&&t.enumerable}:En;var wn=n,On=bn,Rn=ve,Tn=q,_n=P,jn=z,Pn=_,In=Object.getOwnPropertyDescriptor;xn.f=wn?In:function(e,t){if(e=Tn(e),t=_n(t,!0),Pn)try{return In(e,t)}catch(e){}if(jn(e,t))return Rn(!On.f.call(e,t),e[t])};var Cn={};Cn.f=Object.getOwnPropertySymbols;var Nn=$,An=Cn,kn=h,$n=$e("Reflect","ownKeys")||function(e){var t=Nn.f(kn(e)),n=An.f;return n?t.concat(n(e)):t},Ln=z,Mn=$n,Un=xn,Dn=S,Fn=o,zn=xn.f,Kn=Ee,Bn=ut.exports,Wn=we,Gn=function(e,t){for(var n=Mn(t),r=Dn.f,o=Un.f,i=0;i<n.length;i++){var c=n[i];Ln(e,c)||r(e,c,o(t,c))}},Vn=p,Yn=ot,qn=it,Xn=ye.exports,Hn=RegExp.prototype.exec,Jn=Xn("native-string-replace",String.prototype.replace),Qn=Hn,Zn=function(){var e=/a/,t=/b*/g;return Hn.call(e,"a"),Hn.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),er=qn.UNSUPPORTED_Y||qn.BROKEN_CARET,tr=void 0!==/()??/.exec("")[1];(Zn||tr||er)&&(Qn=function(e){var t,n,r,o,i=this,c=er&&i.sticky,a=Yn.call(i),u=i.source,l=0,f=e;return c&&(-1===(a=a.replace("y","")).indexOf("g")&&(a+="g"),f=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(u="(?: "+u+")",f=" "+f,l++),n=new RegExp("^(?:"+u+")",a)),tr&&(n=new RegExp("^"+u+"$(?!\\s)",a)),Zn&&(t=i.lastIndex),r=Hn.call(c?n:i,f),c?r?(r.input=r.input.slice(l),r[0]=r[0].slice(l),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:Zn&&r&&(i.lastIndex=i.global?r.index+r[0].length:t),tr&&r&&r.length>1&&Jn.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r});var nr=Qn;(function(e,t){var n,r,o,i,c,a=e.target,u=e.global,l=e.stat;if(n=u?Fn:l?Fn[a]||Wn(a,{}):(Fn[a]||{}).prototype)for(r in t){if(i=t[r],o=e.noTargetGet?(c=zn(n,r))&&c.value:n[r],!Vn(u?r:a+(l?".":"#")+r,e.forced)&&void 0!==o){if(typeof i==typeof o)continue;Gn(i,o)}(e.sham||o&&o.sham)&&Kn(i,"sham",!0),Bn(n,r,i,e)}})({target:"RegExp",proto:!0,forced:/./.exec!==nr},{exec:nr});var rr=ut.exports,or=h,ir=t,cr=ot,ar=RegExp.prototype,ur=ar.toString,lr=ir((function(){return"/a/b"!=ur.call({source:"a",flags:"b"})})),fr="toString"!=ur.name;(lr||fr)&&rr(RegExp.prototype,"toString",(function(){var e=or(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in ar)?cr.call(e):n)}),{unsafe:!0});var sr=ut.exports,pr=nr,gr=t,dr=Ze,hr=Ee,yr=dr("species"),vr=RegExp.prototype,xr=!gr((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),br="$0"==="a".replace(/./,"$0"),Er=dr("replace"),mr=!!/./[Er]&&""===/./[Er]("a","$0"),Sr=!gr((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),wr=J,Or=L,Rr=function(e){return function(t,n){var r,o,i=String(Or(t)),c=wr(n),a=i.length;return c<0||c>=a?e?"":void 0:(r=i.charCodeAt(c))<55296||r>56319||c+1===a||(o=i.charCodeAt(c+1))<56320||o>57343?e?i.charAt(c):r:e?i.slice(c,c+2):o-56320+(r-55296<<10)+65536}},Tr={codeAt:Rr(!1),charAt:Rr(!0)}.charAt,_r=U,jr=Math.floor,Pr="".replace,Ir=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Cr=/\$([$&'`]|\d{1,2})/g,Nr=B,Ar=nr,kr=function(e,t,n,r){var o=dr(e),i=!gr((function(){var t={};return t[o]=function(){return 7},7!=""[e](t)})),c=i&&!gr((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[yr]=function(){return n},n.flags="",n[o]=/./[o]),n.exec=function(){return t=!0,null},n[o](""),!t}));if(!i||!c||"replace"===e&&(!xr||!br||mr)||"split"===e&&!Sr){var a=/./[o],u=n(o,""[e],(function(e,t,n,r,o){var c=t.exec;return c===pr||c===vr.exec?i&&!o?{done:!0,value:a.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:br,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:mr}),l=u[0],f=u[1];sr(String.prototype,e,l),sr(vr,o,2==t?function(e,t){return f.call(e,this,t)}:function(e){return f.call(e,this)})}r&&hr(vr[o],"sham",!0)},$r=h,Lr=ee,Mr=J,Ur=L,Dr=function(e,t,n){return t+(n?Tr(e,t).length:1)},Fr=function(e,t,n,r,o,i){var c=n+e.length,a=r.length,u=Cr;return void 0!==o&&(o=_r(o),u=Ir),Pr.call(i,u,(function(i,u){var l;switch(u.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(c);case"<":l=o[u.slice(1,-1)];break;default:var f=+u;if(0===f)return i;if(f>a){var s=jr(f/10);return 0===s?i:s<=a?void 0===r[s-1]?u.charAt(1):r[s-1]+u.charAt(1):i}l=r[f-1]}return void 0===l?"":l}))},zr=function(e,t){var n=e.exec;if("function"==typeof n){var r=n.call(e,t);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==Nr(e))throw TypeError("RegExp#exec called on incompatible receiver");return Ar.call(e,t)},Kr=Math.max,Br=Math.min;kr("replace",2,(function(e,t,n,r){var o=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,c=o?"$":"$0";return[function(n,r){var o=Ur(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,o,r):t.call(String(o),n,r)},function(e,r){if(!o&&i||"string"==typeof r&&-1===r.indexOf(c)){var a=n(t,e,this,r);if(a.done)return a.value}var u=$r(e),l=String(this),f="function"==typeof r;f||(r=String(r));var s=u.global;if(s){var p=u.unicode;u.lastIndex=0}for(var g=[];;){var d=zr(u,l);if(null===d)break;if(g.push(d),!s)break;""===String(d[0])&&(u.lastIndex=Dr(l,Lr(u.lastIndex),p))}for(var h,y="",v=0,x=0;x<g.length;x++){d=g[x];for(var b=String(d[0]),E=Kr(Br(Mr(d.index),l.length),0),m=[],S=1;S<d.length;S++)m.push(void 0===(h=d[S])?h:String(h));var w=d.groups;if(f){var O=[b].concat(m,E,l);void 0!==w&&O.push(w);var R=String(r.apply(void 0,O))}else R=Fr(b,l,E,m,w,r);E>=v&&(y+=l.slice(v,E)+R,v=E+b.length)}return y+l.slice(v)}]}));var Wr={};Wr[Ze("toStringTag")]="z";var Gr="[object z]"===String(Wr),Vr=Gr,Yr=B,qr=Ze("toStringTag"),Xr="Arguments"==Yr(function(){return arguments}()),Hr=Vr?Yr:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),qr))?n:Xr?Yr(t):"Object"==(r=Yr(t))&&"function"==typeof t.callee?"Arguments":r},Jr=Gr?{}.toString:function(){return"[object "+Hr(this)+"]"},Qr=Gr,Zr=ut.exports,eo=Jr;Qr||Zr(Object.prototype,"toString",eo,{unsafe:!0}) +/*! + * Handles finding a text string anywhere in the slides and showing the next occurrence to the user + * by navigatating to that slide and highlighting it. + * + * @author Jon Snyder <snyder.jon@gmail.com>, February 2013 + */;export default function(){var e,t,n,r,o,i,c;function a(){(t=document.createElement("div")).classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML='<input type="search" class="searchinput" placeholder="Search..." style="vertical-align: top;"/>\n\t\t</span>',(n=t.querySelector(".searchinput")).style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){switch(t.keyCode){case 13:t.preventDefault(),function(){if(i){var t=n.value;""===t?(c&&c.remove(),r=null):(c=new f("slidecontent"),r=c.apply(t),o=0)}r&&(r.length&&r.length<=o&&(o=0),r.length>o&&(e.slide(r[o].h,r[o].v),o++))}(),i=!1;break;default:i=!0}}),!1),l()}function u(){t||a(),t.style.display="inline",n.focus(),n.select()}function l(){t||a(),t.style.display="none",c&&c.remove()}function f(t,n){var r=document.getElementById(t)||document.body,o=n||"EM",i=new RegExp("^(?:"+o+"|SCRIPT|FORM)$"),c=["#ff6","#a0ffff","#9f9","#f99","#f6f"],a=[],u=0,l="",f=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),l=new RegExp("("+e+")","i")},this.getRegex=function(){return l.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&l&&!i.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;n<t.childNodes.length;n++)this.hiliteWords(t.childNodes[n]);var r,s;if(3==t.nodeType)if((r=t.nodeValue)&&(s=l.exec(r))){for(var p=t;null!=p&&"SECTION"!=p.nodeName;)p=p.parentNode;var g=e.getIndices(p),d=f.length,h=!1;for(n=0;n<d;n++)f[n].h===g.h&&f[n].v===g.v&&(h=!0);h||f.push(g),a[s[0].toLowerCase()]||(a[s[0].toLowerCase()]=c[u++%c.length]);var y=document.createElement(o);y.appendChild(document.createTextNode(s[0])),y.style.backgroundColor=a[s[0].toLowerCase()],y.style.fontStyle="inherit",y.style.color="#000";var v=t.splitText(s.index);v.nodeValue=v.nodeValue.substring(s[0].length),t.parentNode.insertBefore(y,v)}}},this.remove=function(){for(var e,t=document.getElementsByTagName(o);t.length&&(e=t[0]);)e.parentNode.replaceChild(e.firstChild,e)},this.apply=function(e){if(null!=e&&e)return this.remove(),this.setRegex(e),this.hiliteWords(r),f}}return{id:"search",init:function(n){(e=n).registerKeyboardShortcut("CTRL + Shift + F","Search"),document.addEventListener("keydown",(function(e){"F"==e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t||a(),"inline"!==t.style.display?u():l())}),!1)},open:u}} diff --git a/public/site_libs/revealjs/plugin/search/search.js b/public/site_libs/revealjs/plugin/search/search.js new file mode 100644 index 0000000..bcabf72 --- /dev/null +++ b/public/site_libs/revealjs/plugin/search/search.js @@ -0,0 +1,7 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealSearch=t()}(this,(function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=function(e){try{return!!e()}catch(e){return!0}},n=!t((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),r=function(e){return e&&e.Math==Math&&e},o=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof e&&e)||function(){return this}()||Function("return this")(),i=t,c=/#|\.prototype\./,a=function(e,t){var n=l[u(e)];return n==s||n!=f&&("function"==typeof t?i(t):!!t)},u=a.normalize=function(e){return String(e).replace(c,".").toLowerCase()},l=a.data={},f=a.NATIVE="N",s=a.POLYFILL="P",p=a,d=function(e){return"object"==typeof e?null!==e:"function"==typeof e},g=d,h=function(e){if(!g(e))throw TypeError(String(e)+" is not an object");return e},y=d,v=h,x=function(e){if(!y(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e},b=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,r){return v(n),x(r),t?e.call(n,r):n.__proto__=r,n}}():void 0),m=d,E=b,S={},w=d,O=o.document,R=w(O)&&w(O.createElement),T=function(e){return R?O.createElement(e):{}},_=!n&&!t((function(){return 7!=Object.defineProperty(T("div"),"a",{get:function(){return 7}}).a})),j=d,P=function(e,t){if(!j(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!j(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!j(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!j(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")},I=n,C=_,N=h,A=P,k=Object.defineProperty;S.f=I?k:function(e,t,n){if(N(e),t=A(t,!0),N(n),C)try{return k(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var $={},L=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},M=L,U=function(e){return Object(M(e))},D=U,F={}.hasOwnProperty,z=function(e,t){return F.call(D(e),t)},K={}.toString,B=function(e){return K.call(e).slice(8,-1)},W=B,G="".split,V=t((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==W(e)?G.call(e,""):Object(e)}:Object,Y=L,q=function(e){return V(Y(e))},X=Math.ceil,H=Math.floor,J=function(e){return isNaN(e=+e)?0:(e>0?H:X)(e)},Q=J,Z=Math.min,ee=function(e){return e>0?Z(Q(e),9007199254740991):0},te=J,ne=Math.max,re=Math.min,oe=q,ie=ee,ce=function(e,t){var n=te(e);return n<0?ne(n+t,0):re(n,t)},ae=function(e){return function(t,n,r){var o,i=oe(t),c=ie(i.length),a=ce(r,c);if(e&&n!=n){for(;c>a;)if((o=i[a++])!=o)return!0}else for(;c>a;a++)if((e||a in i)&&i[a]===n)return e||a||0;return!e&&-1}},ue={includes:ae(!0),indexOf:ae(!1)},le={},fe=z,se=q,pe=ue.indexOf,de=le,ge=function(e,t){var n,r=se(e),o=0,i=[];for(n in r)!fe(de,n)&&fe(r,n)&&i.push(n);for(;t.length>o;)fe(r,n=t[o++])&&(~pe(i,n)||i.push(n));return i},he=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"].concat("length","prototype");$.f=Object.getOwnPropertyNames||function(e){return ge(e,he)};var ye={exports:{}},ve=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},xe=S,be=ve,me=n?function(e,t,n){return xe.f(e,t,be(1,n))}:function(e,t,n){return e[t]=n,e},Ee=o,Se=me,we=function(e,t){try{Se(Ee,e,t)}catch(n){Ee[e]=t}return t},Oe=we,Re="__core-js_shared__",Te=o[Re]||Oe(Re,{}),_e=Te;(ye.exports=function(e,t){return _e[e]||(_e[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.12.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var je,Pe,Ie=0,Ce=Math.random(),Ne=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++Ie+Ce).toString(36)},Ae=o,ke=o,$e=function(e){return"function"==typeof e?e:void 0},Le=function(e,t){return arguments.length<2?$e(Ae[e])||$e(ke[e]):Ae[e]&&Ae[e][t]||ke[e]&&ke[e][t]},Me=Le("navigator","userAgent")||"",Ue=o.process,De=Ue&&Ue.versions,Fe=De&&De.v8;Fe?Pe=(je=Fe.split("."))[0]<4?1:je[0]+je[1]:Me&&(!(je=Me.match(/Edge\/(\d+)/))||je[1]>=74)&&(je=Me.match(/Chrome\/(\d+)/))&&(Pe=je[1]);var ze=Pe&&+Pe,Ke=t,Be=!!Object.getOwnPropertySymbols&&!Ke((function(){return!String(Symbol())||!Symbol.sham&&ze&&ze<41})),We=Be&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Ge=o,Ve=ye.exports,Ye=z,qe=Ne,Xe=Be,He=We,Je=Ve("wks"),Qe=Ge.Symbol,Ze=He?Qe:Qe&&Qe.withoutSetter||qe,et=function(e){return Ye(Je,e)&&(Xe||"string"==typeof Je[e])||(Xe&&Ye(Qe,e)?Je[e]=Qe[e]:Je[e]=Ze("Symbol."+e)),Je[e]},tt=d,nt=B,rt=et("match"),ot=h,it=function(){var e=ot(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t},ct={},at=t;function ut(e,t){return RegExp(e,t)}ct.UNSUPPORTED_Y=at((function(){var e=ut("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),ct.BROKEN_CARET=at((function(){var e=ut("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));var lt={exports:{}},ft=Te,st=Function.toString;"function"!=typeof ft.inspectSource&&(ft.inspectSource=function(e){return st.call(e)});var pt,dt,gt,ht=ft.inspectSource,yt=ht,vt=o.WeakMap,xt="function"==typeof vt&&/native code/.test(yt(vt)),bt=ye.exports,mt=Ne,Et=bt("keys"),St=xt,wt=d,Ot=me,Rt=z,Tt=Te,_t=function(e){return Et[e]||(Et[e]=mt(e))},jt=le,Pt="Object already initialized",It=o.WeakMap;if(St||Tt.state){var Ct=Tt.state||(Tt.state=new It),Nt=Ct.get,At=Ct.has,kt=Ct.set;pt=function(e,t){if(At.call(Ct,e))throw new TypeError(Pt);return t.facade=e,kt.call(Ct,e,t),t},dt=function(e){return Nt.call(Ct,e)||{}},gt=function(e){return At.call(Ct,e)}}else{var $t=_t("state");jt[$t]=!0,pt=function(e,t){if(Rt(e,$t))throw new TypeError(Pt);return t.facade=e,Ot(e,$t,t),t},dt=function(e){return Rt(e,$t)?e[$t]:{}},gt=function(e){return Rt(e,$t)}}var Lt={set:pt,get:dt,has:gt,enforce:function(e){return gt(e)?dt(e):pt(e,{})},getterFor:function(e){return function(t){var n;if(!wt(t)||(n=dt(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}},Mt=o,Ut=me,Dt=z,Ft=we,zt=ht,Kt=Lt.get,Bt=Lt.enforce,Wt=String(String).split("String");(lt.exports=function(e,t,n,r){var o,i=!!r&&!!r.unsafe,c=!!r&&!!r.enumerable,a=!!r&&!!r.noTargetGet;"function"==typeof n&&("string"!=typeof t||Dt(n,"name")||Ut(n,"name",t),(o=Bt(n)).source||(o.source=Wt.join("string"==typeof t?t:""))),e!==Mt?(i?!a&&e[t]&&(c=!0):delete e[t],c?e[t]=n:Ut(e,t,n)):c?e[t]=n:Ft(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Kt(this).source||zt(this)}));var Gt=Le,Vt=S,Yt=n,qt=et("species"),Xt=n,Ht=o,Jt=p,Qt=function(e,t,n){var r,o;return E&&"function"==typeof(r=t.constructor)&&r!==n&&m(o=r.prototype)&&o!==n.prototype&&E(e,o),e},Zt=S.f,en=$.f,tn=function(e){var t;return tt(e)&&(void 0!==(t=e[rt])?!!t:"RegExp"==nt(e))},nn=it,rn=ct,on=lt.exports,cn=t,an=Lt.enforce,un=function(e){var t=Gt(e),n=Vt.f;Yt&&t&&!t[qt]&&n(t,qt,{configurable:!0,get:function(){return this}})},ln=et("match"),fn=Ht.RegExp,sn=fn.prototype,pn=/a/g,dn=/a/g,gn=new fn(pn)!==pn,hn=rn.UNSUPPORTED_Y;if(Xt&&Jt("RegExp",!gn||hn||cn((function(){return dn[ln]=!1,fn(pn)!=pn||fn(dn)==dn||"/a/i"!=fn(pn,"i")})))){for(var yn=function(e,t){var n,r=this instanceof yn,o=tn(e),i=void 0===t;if(!r&&o&&e.constructor===yn&&i)return e;gn?o&&!i&&(e=e.source):e instanceof yn&&(i&&(t=nn.call(e)),e=e.source),hn&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var c=Qt(gn?new fn(e,t):fn(e,t),r?this:sn,yn);hn&&n&&(an(c).sticky=!0);return c},vn=function(e){e in yn||Zt(yn,e,{configurable:!0,get:function(){return fn[e]},set:function(t){fn[e]=t}})},xn=en(fn),bn=0;xn.length>bn;)vn(xn[bn++]);sn.constructor=yn,yn.prototype=sn,on(Ht,"RegExp",yn)}un("RegExp");var mn={},En={},Sn={}.propertyIsEnumerable,wn=Object.getOwnPropertyDescriptor,On=wn&&!Sn.call({1:2},1);En.f=On?function(e){var t=wn(this,e);return!!t&&t.enumerable}:Sn;var Rn=n,Tn=En,_n=ve,jn=q,Pn=P,In=z,Cn=_,Nn=Object.getOwnPropertyDescriptor;mn.f=Rn?Nn:function(e,t){if(e=jn(e),t=Pn(t,!0),Cn)try{return Nn(e,t)}catch(e){}if(In(e,t))return _n(!Tn.f.call(e,t),e[t])};var An={};An.f=Object.getOwnPropertySymbols;var kn=$,$n=An,Ln=h,Mn=Le("Reflect","ownKeys")||function(e){var t=kn.f(Ln(e)),n=$n.f;return n?t.concat(n(e)):t},Un=z,Dn=Mn,Fn=mn,zn=S,Kn=o,Bn=mn.f,Wn=me,Gn=lt.exports,Vn=we,Yn=function(e,t){for(var n=Dn(t),r=zn.f,o=Fn.f,i=0;i<n.length;i++){var c=n[i];Un(e,c)||r(e,c,o(t,c))}},qn=p,Xn=it,Hn=ct,Jn=ye.exports,Qn=RegExp.prototype.exec,Zn=Jn("native-string-replace",String.prototype.replace),er=Qn,tr=function(){var e=/a/,t=/b*/g;return Qn.call(e,"a"),Qn.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),nr=Hn.UNSUPPORTED_Y||Hn.BROKEN_CARET,rr=void 0!==/()??/.exec("")[1];(tr||rr||nr)&&(er=function(e){var t,n,r,o,i=this,c=nr&&i.sticky,a=Xn.call(i),u=i.source,l=0,f=e;return c&&(-1===(a=a.replace("y","")).indexOf("g")&&(a+="g"),f=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(u="(?: "+u+")",f=" "+f,l++),n=new RegExp("^(?:"+u+")",a)),rr&&(n=new RegExp("^"+u+"$(?!\\s)",a)),tr&&(t=i.lastIndex),r=Qn.call(c?n:i,f),c?r?(r.input=r.input.slice(l),r[0]=r[0].slice(l),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:tr&&r&&(i.lastIndex=i.global?r.index+r[0].length:t),rr&&r&&r.length>1&&Zn.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r});var or=er;(function(e,t){var n,r,o,i,c,a=e.target,u=e.global,l=e.stat;if(n=u?Kn:l?Kn[a]||Vn(a,{}):(Kn[a]||{}).prototype)for(r in t){if(i=t[r],o=e.noTargetGet?(c=Bn(n,r))&&c.value:n[r],!qn(u?r:a+(l?".":"#")+r,e.forced)&&void 0!==o){if(typeof i==typeof o)continue;Yn(i,o)}(e.sham||o&&o.sham)&&Wn(i,"sham",!0),Gn(n,r,i,e)}})({target:"RegExp",proto:!0,forced:/./.exec!==or},{exec:or});var ir=lt.exports,cr=h,ar=t,ur=it,lr="toString",fr=RegExp.prototype,sr=fr.toString,pr=ar((function(){return"/a/b"!=sr.call({source:"a",flags:"b"})})),dr=sr.name!=lr;(pr||dr)&&ir(RegExp.prototype,lr,(function(){var e=cr(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(void 0===n&&e instanceof RegExp&&!("flags"in fr)?ur.call(e):n)}),{unsafe:!0});var gr=lt.exports,hr=or,yr=t,vr=et,xr=me,br=vr("species"),mr=RegExp.prototype,Er=!yr((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),Sr="$0"==="a".replace(/./,"$0"),wr=vr("replace"),Or=!!/./[wr]&&""===/./[wr]("a","$0"),Rr=!yr((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Tr=J,_r=L,jr=function(e){return function(t,n){var r,o,i=String(_r(t)),c=Tr(n),a=i.length;return c<0||c>=a?e?"":void 0:(r=i.charCodeAt(c))<55296||r>56319||c+1===a||(o=i.charCodeAt(c+1))<56320||o>57343?e?i.charAt(c):r:e?i.slice(c,c+2):o-56320+(r-55296<<10)+65536}},Pr={codeAt:jr(!1),charAt:jr(!0)}.charAt,Ir=U,Cr=Math.floor,Nr="".replace,Ar=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,kr=/\$([$&'`]|\d{1,2})/g,$r=B,Lr=or,Mr=function(e,t,n,r){var o=vr(e),i=!yr((function(){var t={};return t[o]=function(){return 7},7!=""[e](t)})),c=i&&!yr((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[br]=function(){return n},n.flags="",n[o]=/./[o]),n.exec=function(){return t=!0,null},n[o](""),!t}));if(!i||!c||"replace"===e&&(!Er||!Sr||Or)||"split"===e&&!Rr){var a=/./[o],u=n(o,""[e],(function(e,t,n,r,o){var c=t.exec;return c===hr||c===mr.exec?i&&!o?{done:!0,value:a.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Sr,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Or}),l=u[0],f=u[1];gr(String.prototype,e,l),gr(mr,o,2==t?function(e,t){return f.call(e,this,t)}:function(e){return f.call(e,this)})}r&&xr(mr[o],"sham",!0)},Ur=h,Dr=ee,Fr=J,zr=L,Kr=function(e,t,n){return t+(n?Pr(e,t).length:1)},Br=function(e,t,n,r,o,i){var c=n+e.length,a=r.length,u=kr;return void 0!==o&&(o=Ir(o),u=Ar),Nr.call(i,u,(function(i,u){var l;switch(u.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(c);case"<":l=o[u.slice(1,-1)];break;default:var f=+u;if(0===f)return i;if(f>a){var s=Cr(f/10);return 0===s?i:s<=a?void 0===r[s-1]?u.charAt(1):r[s-1]+u.charAt(1):i}l=r[f-1]}return void 0===l?"":l}))},Wr=function(e,t){var n=e.exec;if("function"==typeof n){var r=n.call(e,t);if("object"!=typeof r)throw TypeError("RegExp exec method returned something other than an Object or null");return r}if("RegExp"!==$r(e))throw TypeError("RegExp#exec called on incompatible receiver");return Lr.call(e,t)},Gr=Math.max,Vr=Math.min;Mr("replace",2,(function(e,t,n,r){var o=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=r.REPLACE_KEEPS_$0,c=o?"$":"$0";return[function(n,r){var o=zr(this),i=null==n?void 0:n[e];return void 0!==i?i.call(n,o,r):t.call(String(o),n,r)},function(e,r){if(!o&&i||"string"==typeof r&&-1===r.indexOf(c)){var a=n(t,e,this,r);if(a.done)return a.value}var u=Ur(e),l=String(this),f="function"==typeof r;f||(r=String(r));var s=u.global;if(s){var p=u.unicode;u.lastIndex=0}for(var d=[];;){var g=Wr(u,l);if(null===g)break;if(d.push(g),!s)break;""===String(g[0])&&(u.lastIndex=Kr(l,Dr(u.lastIndex),p))}for(var h,y="",v=0,x=0;x<d.length;x++){g=d[x];for(var b=String(g[0]),m=Gr(Vr(Fr(g.index),l.length),0),E=[],S=1;S<g.length;S++)E.push(void 0===(h=g[S])?h:String(h));var w=g.groups;if(f){var O=[b].concat(E,m,l);void 0!==w&&O.push(w);var R=String(r.apply(void 0,O))}else R=Br(b,l,m,E,w,r);m>=v&&(y+=l.slice(v,m)+R,v=m+b.length)}return y+l.slice(v)}]}));var Yr={};Yr[et("toStringTag")]="z";var qr="[object z]"===String(Yr),Xr=qr,Hr=B,Jr=et("toStringTag"),Qr="Arguments"==Hr(function(){return arguments}()),Zr=Xr?Hr:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),Jr))?n:Qr?Hr(t):"Object"==(r=Hr(t))&&"function"==typeof t.callee?"Arguments":r},eo=qr?{}.toString:function(){return"[object "+Zr(this)+"]"},to=qr,no=lt.exports,ro=eo;to||no(Object.prototype,"toString",ro,{unsafe:!0}) +/*! + * Handles finding a text string anywhere in the slides and showing the next occurrence to the user + * by navigatating to that slide and highlighting it. + * + * @author Jon Snyder <snyder.jon@gmail.com>, February 2013 + */;return function(){var e,t,n,r,o,i,c;function a(){(t=document.createElement("div")).classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML='<input type="search" class="searchinput" placeholder="Search..." style="vertical-align: top;"/>\n\t\t</span>',(n=t.querySelector(".searchinput")).style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){switch(t.keyCode){case 13:t.preventDefault(),function(){if(i){var t=n.value;""===t?(c&&c.remove(),r=null):(c=new f("slidecontent"),r=c.apply(t),o=0)}r&&(r.length&&r.length<=o&&(o=0),r.length>o&&(e.slide(r[o].h,r[o].v),o++))}(),i=!1;break;default:i=!0}}),!1),l()}function u(){t||a(),t.style.display="inline",n.focus(),n.select()}function l(){t||a(),t.style.display="none",c&&c.remove()}function f(t,n){var r=document.getElementById(t)||document.body,o=n||"EM",i=new RegExp("^(?:"+o+"|SCRIPT|FORM)$"),c=["#ff6","#a0ffff","#9f9","#f99","#f6f"],a=[],u=0,l="",f=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),l=new RegExp("("+e+")","i")},this.getRegex=function(){return l.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&l&&!i.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;n<t.childNodes.length;n++)this.hiliteWords(t.childNodes[n]);var r,s;if(3==t.nodeType)if((r=t.nodeValue)&&(s=l.exec(r))){for(var p=t;null!=p&&"SECTION"!=p.nodeName;)p=p.parentNode;var d=e.getIndices(p),g=f.length,h=!1;for(n=0;n<g;n++)f[n].h===d.h&&f[n].v===d.v&&(h=!0);h||f.push(d),a[s[0].toLowerCase()]||(a[s[0].toLowerCase()]=c[u++%c.length]);var y=document.createElement(o);y.appendChild(document.createTextNode(s[0])),y.style.backgroundColor=a[s[0].toLowerCase()],y.style.fontStyle="inherit",y.style.color="#000";var v=t.splitText(s.index);v.nodeValue=v.nodeValue.substring(s[0].length),t.parentNode.insertBefore(y,v)}}},this.remove=function(){for(var e,t=document.getElementsByTagName(o);t.length&&(e=t[0]);)e.parentNode.replaceChild(e.firstChild,e)},this.apply=function(e){if(null!=e&&e)return this.remove(),this.setRegex(e),this.hiliteWords(r),f}}return{id:"search",init:function(n){(e=n).registerKeyboardShortcut("CTRL + Shift + F","Search"),document.addEventListener("keydown",(function(e){"F"==e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t||a(),"inline"!==t.style.display?u():l())}),!1)},open:u}}})); diff --git a/public/site_libs/revealjs/plugin/zoom/plugin.js b/public/site_libs/revealjs/plugin/zoom/plugin.js new file mode 100644 index 0000000..0d4624d --- /dev/null +++ b/public/site_libs/revealjs/plugin/zoom/plugin.js @@ -0,0 +1,279 @@ +/*! + * reveal.js Zoom plugin + */ +const Plugin = { + + id: 'zoom', + + init: function( reveal ) { + + reveal.getRevealElement().addEventListener( 'mousedown', function( event ) { + var defaultModifier = /Linux/.test( window.navigator.platform ) ? 'ctrl' : 'alt'; + + var modifier = ( reveal.getConfig().zoomKey ? reveal.getConfig().zoomKey : defaultModifier ) + 'Key'; + var zoomLevel = ( reveal.getConfig().zoomLevel ? reveal.getConfig().zoomLevel : 2 ); + + if( event[ modifier ] && !reveal.isOverview() ) { + event.preventDefault(); + + zoom.to({ + x: event.clientX, + y: event.clientY, + scale: zoomLevel, + pan: false + }); + } + } ); + + } + +}; + +export default () => Plugin; + +/*! + * zoom.js 0.3 (modified for use with reveal.js) + * http://lab.hakim.se/zoom-js + * MIT licensed + * + * Copyright (C) 2011-2014 Hakim El Hattab, http://hakim.se + */ +var zoom = (function(){ + + // The current zoom level (scale) + var level = 1; + + // The current mouse position, used for panning + var mouseX = 0, + mouseY = 0; + + // Timeout before pan is activated + var panEngageTimeout = -1, + panUpdateInterval = -1; + + // Check for transform support so that we can fallback otherwise + var supportsTransforms = 'WebkitTransform' in document.body.style || + 'MozTransform' in document.body.style || + 'msTransform' in document.body.style || + 'OTransform' in document.body.style || + 'transform' in document.body.style; + + if( supportsTransforms ) { + // The easing that will be applied when we zoom in/out + document.body.style.transition = 'transform 0.8s ease'; + document.body.style.OTransition = '-o-transform 0.8s ease'; + document.body.style.msTransition = '-ms-transform 0.8s ease'; + document.body.style.MozTransition = '-moz-transform 0.8s ease'; + document.body.style.WebkitTransition = '-webkit-transform 0.8s ease'; + } + + // Zoom out if the user hits escape + document.addEventListener( 'keyup', function( event ) { + if( level !== 1 && event.keyCode === 27 ) { + zoom.out(); + } + } ); + + // Monitor mouse movement for panning + document.addEventListener( 'mousemove', function( event ) { + if( level !== 1 ) { + mouseX = event.clientX; + mouseY = event.clientY; + } + } ); + + /** + * Applies the CSS required to zoom in, prefers the use of CSS3 + * transforms but falls back on zoom for IE. + * + * @param {Object} rect + * @param {Number} scale + */ + function magnify( rect, scale ) { + + var scrollOffset = getScrollOffset(); + + // Ensure a width/height is set + rect.width = rect.width || 1; + rect.height = rect.height || 1; + + // Center the rect within the zoomed viewport + rect.x -= ( window.innerWidth - ( rect.width * scale ) ) / 2; + rect.y -= ( window.innerHeight - ( rect.height * scale ) ) / 2; + + if( supportsTransforms ) { + // Reset + if( scale === 1 ) { + document.body.style.transform = ''; + document.body.style.OTransform = ''; + document.body.style.msTransform = ''; + document.body.style.MozTransform = ''; + document.body.style.WebkitTransform = ''; + } + // Scale + else { + var origin = scrollOffset.x +'px '+ scrollOffset.y +'px', + transform = 'translate('+ -rect.x +'px,'+ -rect.y +'px) scale('+ scale +')'; + + document.body.style.transformOrigin = origin; + document.body.style.OTransformOrigin = origin; + document.body.style.msTransformOrigin = origin; + document.body.style.MozTransformOrigin = origin; + document.body.style.WebkitTransformOrigin = origin; + + document.body.style.transform = transform; + document.body.style.OTransform = transform; + document.body.style.msTransform = transform; + document.body.style.MozTransform = transform; + document.body.style.WebkitTransform = transform; + } + } + else { + // Reset + if( scale === 1 ) { + document.body.style.position = ''; + document.body.style.left = ''; + document.body.style.top = ''; + document.body.style.width = ''; + document.body.style.height = ''; + document.body.style.zoom = ''; + } + // Scale + else { + document.body.style.position = 'relative'; + document.body.style.left = ( - ( scrollOffset.x + rect.x ) / scale ) + 'px'; + document.body.style.top = ( - ( scrollOffset.y + rect.y ) / scale ) + 'px'; + document.body.style.width = ( scale * 100 ) + '%'; + document.body.style.height = ( scale * 100 ) + '%'; + document.body.style.zoom = scale; + } + } + + level = scale; + + if( document.documentElement.classList ) { + if( level !== 1 ) { + document.documentElement.classList.add( 'zoomed' ); + } + else { + document.documentElement.classList.remove( 'zoomed' ); + } + } + } + + /** + * Pan the document when the mosue cursor approaches the edges + * of the window. + */ + function pan() { + var range = 0.12, + rangeX = window.innerWidth * range, + rangeY = window.innerHeight * range, + scrollOffset = getScrollOffset(); + + // Up + if( mouseY < rangeY ) { + window.scroll( scrollOffset.x, scrollOffset.y - ( 1 - ( mouseY / rangeY ) ) * ( 14 / level ) ); + } + // Down + else if( mouseY > window.innerHeight - rangeY ) { + window.scroll( scrollOffset.x, scrollOffset.y + ( 1 - ( window.innerHeight - mouseY ) / rangeY ) * ( 14 / level ) ); + } + + // Left + if( mouseX < rangeX ) { + window.scroll( scrollOffset.x - ( 1 - ( mouseX / rangeX ) ) * ( 14 / level ), scrollOffset.y ); + } + // Right + else if( mouseX > window.innerWidth - rangeX ) { + window.scroll( scrollOffset.x + ( 1 - ( window.innerWidth - mouseX ) / rangeX ) * ( 14 / level ), scrollOffset.y ); + } + } + + function getScrollOffset() { + return { + x: window.scrollX !== undefined ? window.scrollX : window.pageXOffset, + y: window.scrollY !== undefined ? window.scrollY : window.pageYOffset + } + } + + return { + /** + * Zooms in on either a rectangle or HTML element. + * + * @param {Object} options + * - element: HTML element to zoom in on + * OR + * - x/y: coordinates in non-transformed space to zoom in on + * - width/height: the portion of the screen to zoom in on + * - scale: can be used instead of width/height to explicitly set scale + */ + to: function( options ) { + + // Due to an implementation limitation we can't zoom in + // to another element without zooming out first + if( level !== 1 ) { + zoom.out(); + } + else { + options.x = options.x || 0; + options.y = options.y || 0; + + // If an element is set, that takes precedence + if( !!options.element ) { + // Space around the zoomed in element to leave on screen + var padding = 20; + var bounds = options.element.getBoundingClientRect(); + + options.x = bounds.left - padding; + options.y = bounds.top - padding; + options.width = bounds.width + ( padding * 2 ); + options.height = bounds.height + ( padding * 2 ); + } + + // If width/height values are set, calculate scale from those values + if( options.width !== undefined && options.height !== undefined ) { + options.scale = Math.max( Math.min( window.innerWidth / options.width, window.innerHeight / options.height ), 1 ); + } + + if( options.scale > 1 ) { + options.x *= options.scale; + options.y *= options.scale; + + magnify( options, options.scale ); + + if( options.pan !== false ) { + + // Wait with engaging panning as it may conflict with the + // zoom transition + panEngageTimeout = setTimeout( function() { + panUpdateInterval = setInterval( pan, 1000 / 60 ); + }, 800 ); + + } + } + } + }, + + /** + * Resets the document zoom state to its default. + */ + out: function() { + clearTimeout( panEngageTimeout ); + clearInterval( panUpdateInterval ); + + magnify( { x: 0, y: 0 }, 1 ); + + level = 1; + }, + + // Alias + magnify: function( options ) { this.to( options ) }, + reset: function() { this.out() }, + + zoomLevel: function() { + return level; + } + } + +})(); diff --git a/public/site_libs/revealjs/plugin/zoom/zoom.esm.js b/public/site_libs/revealjs/plugin/zoom/zoom.esm.js new file mode 100644 index 0000000..27c0921 --- /dev/null +++ b/public/site_libs/revealjs/plugin/zoom/zoom.esm.js @@ -0,0 +1,4 @@ +/*! + * reveal.js Zoom plugin + */ +var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))}},t=function(){var e=1,o=0,n=0,i=-1,d=-1,s="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style;function r(t,o){var n=y();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,s)if(1===o)document.body.style.transform="",document.body.style.OTransform="",document.body.style.msTransform="",document.body.style.MozTransform="",document.body.style.WebkitTransform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.OTransformOrigin=i,document.body.style.msTransformOrigin=i,document.body.style.MozTransformOrigin=i,document.body.style.WebkitTransformOrigin=i,document.body.style.transform=d,document.body.style.OTransform=d,document.body.style.msTransform=d,document.body.style.MozTransform=d,document.body.style.WebkitTransform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function m(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=y();n<i?window.scroll(d.x,d.y-14/e*(1-n/i)):n>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),o<t?window.scroll(d.x-14/e*(1-o/t),d.y):o>window.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function y(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,r(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();export default function(){return e} diff --git a/public/site_libs/revealjs/plugin/zoom/zoom.js b/public/site_libs/revealjs/plugin/zoom/zoom.js new file mode 100644 index 0000000..686a548 --- /dev/null +++ b/public/site_libs/revealjs/plugin/zoom/zoom.js @@ -0,0 +1,4 @@ +!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealZoom=o()}(this,(function(){"use strict"; +/*! + * reveal.js Zoom plugin + */var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(t){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;t[i]&&!e.isOverview()&&(t.preventDefault(),o.to({x:t.clientX,y:t.clientY,scale:d,pan:!1}))}))}},o=function(){var e=1,t=0,n=0,i=-1,d=-1,s="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style;function r(o,t){var n=l();if(o.width=o.width||1,o.height=o.height||1,o.x-=(window.innerWidth-o.width*t)/2,o.y-=(window.innerHeight-o.height*t)/2,s)if(1===t)document.body.style.transform="",document.body.style.OTransform="",document.body.style.msTransform="",document.body.style.MozTransform="",document.body.style.WebkitTransform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-o.x+"px,"+-o.y+"px) scale("+t+")";document.body.style.transformOrigin=i,document.body.style.OTransformOrigin=i,document.body.style.msTransformOrigin=i,document.body.style.MozTransformOrigin=i,document.body.style.WebkitTransformOrigin=i,document.body.style.transform=d,document.body.style.OTransform=d,document.body.style.msTransform=d,document.body.style.MozTransform=d,document.body.style.WebkitTransform=d}else 1===t?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+o.x)/t+"px",document.body.style.top=-(n.y+o.y)/t+"px",document.body.style.width=100*t+"%",document.body.style.height=100*t+"%",document.body.style.zoom=t);e=t,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function m(){var o=.12*window.innerWidth,i=.12*window.innerHeight,d=l();n<i?window.scroll(d.x,d.y-14/e*(1-n/i)):n>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),t<o?window.scroll(d.x-14/e*(1-t/o),d.y):t>window.innerWidth-o&&window.scroll(d.x+(1-(window.innerWidth-t)/o)*(14/e),d.y)}function l(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(t){1!==e&&27===t.keyCode&&o.out()})),document.addEventListener("mousemove",(function(o){1!==e&&(t=o.clientX,n=o.clientY)})),{to:function(t){if(1!==e)o.out();else{if(t.x=t.x||0,t.y=t.y||0,t.element){var n=t.element.getBoundingClientRect();t.x=n.left-20,t.y=n.top-20,t.width=n.width+40,t.height=n.height+40}void 0!==t.width&&void 0!==t.height&&(t.scale=Math.max(Math.min(window.innerWidth/t.width,window.innerHeight/t.height),1)),t.scale>1&&(t.x*=t.scale,t.y*=t.scale,r(t,t.scale),!1!==t.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();return function(){return e}})); diff --git a/public/slides/slides.html b/public/slides/slides.html new file mode 100644 index 0000000..fe9e392 --- /dev/null +++ b/public/slides/slides.html @@ -0,0 +1,1077 @@ +<!DOCTYPE html> +<html lang="en"><head> +<script src="../site_libs/clipboard/clipboard.min.js"></script> +<script src="../site_libs/quarto-html/tabby.min.js"></script> +<script src="../site_libs/quarto-html/popper.min.js"></script> +<script src="../site_libs/quarto-html/tippy.umd.min.js"></script> +<link href="../site_libs/quarto-html/tippy.css" rel="stylesheet"> +<link href="../site_libs/quarto-html/quarto-html.min.css" rel="stylesheet" data-mode="light"> +<link href="../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles"><meta charset="utf-8"> + <meta name="generator" content="quarto-1.1.189"> + + <meta name="author" content="Vincent Guillemot"> + <title>Intégration de Données avec des Méthodes à Noyaux</title> + <meta name="apple-mobile-web-app-capable" content="yes"> + <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui"> + <link rel="stylesheet" href="../site_libs/revealjs/dist/reset.css"> + <link rel="stylesheet" href="../site_libs/revealjs/dist/reveal.css"> + <style> + code{white-space: pre-wrap;} + span.smallcaps{font-variant: small-caps;} + div.columns{display: flex; gap: min(4vw, 1.5em);} + div.column{flex: auto; overflow-x: auto;} + div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} + ul.task-list{list-style: none;} + ul.task-list li input[type="checkbox"] { + width: 0.8em; + margin: 0 0.8em 0.2em -1.6em; + vertical-align: middle; + } + pre > code.sourceCode { white-space: pre; position: relative; } + pre > code.sourceCode > span { display: inline-block; line-height: 1.25; } + pre > code.sourceCode > span:empty { height: 1.2em; } + .sourceCode { overflow: visible; } + code.sourceCode > span { color: inherit; text-decoration: inherit; } + div.sourceCode { margin: 1em 0; } + pre.sourceCode { margin: 0; } + @media screen { + div.sourceCode { overflow: auto; } + } + @media print { + pre > code.sourceCode { white-space: pre-wrap; } + pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; } + } + pre.numberSource code + { counter-reset: source-line 0; } + pre.numberSource code > span + { position: relative; left: -4em; counter-increment: source-line; } + pre.numberSource code > span > a:first-child::before + { content: counter(source-line); + position: relative; left: -1em; text-align: right; vertical-align: baseline; + border: none; display: inline-block; + -webkit-touch-callout: none; -webkit-user-select: none; + -khtml-user-select: none; -moz-user-select: none; + -ms-user-select: none; user-select: none; + padding: 0 4px; width: 4em; + color: #aaaaaa; + } + pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; } + div.sourceCode + { color: #003b4f; background-color: #f1f3f5; } + @media screen { + pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; } + } + code span { color: #003b4f; } /* Normal */ + code span.al { color: #ad0000; } /* Alert */ + code span.an { color: #5e5e5e; } /* Annotation */ + code span.at { color: #657422; } /* Attribute */ + code span.bn { color: #ad0000; } /* BaseN */ + code span.bu { } /* BuiltIn */ + code span.cf { color: #003b4f; } /* ControlFlow */ + code span.ch { color: #20794d; } /* Char */ + code span.cn { color: #8f5902; } /* Constant */ + code span.co { color: #5e5e5e; } /* Comment */ + code span.cv { color: #5e5e5e; font-style: italic; } /* CommentVar */ + code span.do { color: #5e5e5e; font-style: italic; } /* Documentation */ + code span.dt { color: #ad0000; } /* DataType */ + code span.dv { color: #ad0000; } /* DecVal */ + code span.er { color: #ad0000; } /* Error */ + code span.ex { } /* Extension */ + code span.fl { color: #ad0000; } /* Float */ + code span.fu { color: #4758ab; } /* Function */ + code span.im { color: #00769e; } /* Import */ + code span.in { color: #5e5e5e; } /* Information */ + code span.kw { color: #003b4f; } /* Keyword */ + code span.op { color: #5e5e5e; } /* Operator */ + code span.ot { color: #003b4f; } /* Other */ + code span.pp { color: #ad0000; } /* Preprocessor */ + code span.sc { color: #5e5e5e; } /* SpecialChar */ + code span.ss { color: #20794d; } /* SpecialString */ + code span.st { color: #20794d; } /* String */ + code span.va { color: #111111; } /* Variable */ + code span.vs { color: #20794d; } /* VerbatimString */ + code span.wa { color: #5e5e5e; font-style: italic; } /* Warning */ + </style> + <link rel="stylesheet" href="../site_libs/revealjs/dist/theme/quarto.css" id="theme"> + <link href="../site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css" rel="stylesheet"> + <link href="../site_libs/revealjs/plugin/reveal-menu/menu.css" rel="stylesheet"> + <link href="../site_libs/revealjs/plugin/reveal-menu/quarto-menu.css" rel="stylesheet"> + <link href="../site_libs/revealjs/plugin/quarto-support/footer.css" rel="stylesheet"> + <style type="text/css"> + + .callout { + margin-top: 1em; + margin-bottom: 1em; + border-radius: .25rem; + } + + .callout.callout-style-simple { + padding: 0em 0.5em; + border-left: solid #acacac .3rem; + border-right: solid 1px silver; + border-top: solid 1px silver; + border-bottom: solid 1px silver; + display: flex; + } + + .callout.callout-style-default { + border-left: solid #acacac .3rem; + border-right: solid 1px silver; + border-top: solid 1px silver; + border-bottom: solid 1px silver; + } + + .callout .callout-body-container { + flex-grow: 1; + } + + .callout.callout-style-simple .callout-body { + font-size: 1rem; + font-weight: 400; + } + + .callout.callout-style-default .callout-body { + font-size: 0.9rem; + font-weight: 400; + } + + .callout.callout-captioned.callout-style-simple .callout-body { + margin-top: 0.2em; + } + + .callout:not(.callout-captioned) .callout-body { + display: flex; + } + + .callout:not(.no-icon).callout-captioned.callout-style-simple .callout-content { + padding-left: 1.6em; + } + + .callout.callout-captioned .callout-header { + padding-top: 0.2em; + margin-bottom: -0.2em; + } + + .callout.callout-captioned .callout-caption p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + + .callout.callout-captioned.callout-style-simple .callout-content p { + margin-top: 0; + } + + .callout.callout-captioned.callout-style-default .callout-content p { + margin-top: 0.7em; + } + + .callout.callout-style-simple div.callout-caption { + border-bottom: none; + font-size: .9rem; + font-weight: 600; + opacity: 75%; + } + + .callout.callout-style-default div.callout-caption { + border-bottom: none; + font-weight: 600; + opacity: 85%; + font-size: 0.9rem; + padding-left: 0.5em; + padding-right: 0.5em; + } + + .callout.callout-style-default div.callout-content { + padding-left: 0.5em; + padding-right: 0.5em; + } + + .callout.callout-style-simple .callout-icon::before { + height: 1rem; + width: 1rem; + display: inline-block; + content: ""; + background-repeat: no-repeat; + background-size: 1rem 1rem; + } + + .callout.callout-style-default .callout-icon::before { + height: 0.9rem; + width: 0.9rem; + display: inline-block; + content: ""; + background-repeat: no-repeat; + background-size: 0.9rem 0.9rem; + } + + .callout-caption { + display: flex + } + + .callout-icon::before { + margin-top: 1rem; + padding-right: .5rem; + } + + .callout.no-icon::before { + display: none !important; + } + + .callout.callout-captioned .callout-body > .callout-content > :last-child { + margin-bottom: 0.5rem; + } + + .callout.callout-captioned .callout-icon::before { + margin-top: .5rem; + padding-right: .5rem; + } + + .callout:not(.callout-captioned) .callout-icon::before { + margin-top: 1rem; + padding-right: .5rem; + } + + /* Callout Types */ + + div.callout-note { + border-left-color: #4582ec !important; + } + + div.callout-note .callout-icon::before { + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAAEU0lEQVRYCcVXTWhcVRQ+586kSUMMxkyaElstCto2SIhitS5Ek8xUKV2poatCcVHtUlFQk8mbaaziwpWgglJwVaquitBOfhQXFlqlzSJpFSpIYyXNjBNiTCck7x2/8/LeNDOZxDuEkgOXe++553zfefee+/OYLOXFk3+1LLrRdiO81yNqZ6K9cG0P3MeFaMIQjXssE8Z1JzLO9ls20MBZX7oG8w9GxB0goaPrW5aNMp1yOZIa7Wv6o2ykpLtmAPs/vrG14Z+6d4jpbSKuhdcSyq9wGMPXjonwmESXrriLzFGOdDBLB8Y6MNYBu0dRokSygMA/mrun8MGFN3behm6VVAwg4WR3i6FvYK1T7MHo9BK7ydH+1uurECoouk5MPRyVSBrBHMYwVobG2aOXM07sWrn5qgB60rc6mcwIDJtQrnrEr44kmy+UO9r0u9O5/YbkS9juQckLed3DyW2XV/qWBBB3ptvI8EUY3I9p/67OW+g967TNr3Sotn3IuVlfMLVnsBwH4fsnebJvyGm5GeIUA3jljERmrv49SizPYuq+z7c2H/jlGC+Ghhupn/hcapqmcudB9jwJ/3jvnvu6vu5lVzF1fXyZuZZ7U8nRmVzytvT+H3kilYvH09mLWrQdwFSsFEsxFVs5fK7A0g8gMZjbif4ACpKbjv7gNGaD8bUrlk8x+KRflttr22JEMRUbTUwwDQScyzPgedQHZT0xnx7ujw2jfVfExwYHwOsDTjLdJ2ebmeQIlJ7neo41s/DrsL3kl+W2lWvAga0tR3zueGr6GL78M3ifH0rGXrBC2aAR8uYcIA5gwV8zIE8onoh8u0Fca/ciF7j1uOzEnqcIm59sEXoGc0+z6+H45V1CvAvHcD7THztu669cnp+L0okAeIc6zjbM/24LgGM1gZk7jnRu1aQWoU9sfUOuhrmtaPIO3YY1KLLWZaEO5TKUbMY5zx8W9UJ6elpLwKXbsaZ4EFl7B4bMtDv0iRipKoDQT2sNQI9b1utXFdYisi+wzZ/ri/1m7QfDgEuvgUUEIJPq3DhX/5DWNqIXDOweC2wvIR90Oq3lDpdMIgD2r0dXvGdsEW5H6x6HLRJYU7C69VefO1x8Gde1ZFSJLfWS1jbCnhtOPxmpfv2LXOA2Xk2tvnwKKPFuZ/oRmwBwqRQDcKNeVQkYcOjtWVBuM/JuYw5b6isojIkYxyYAFn5K7ZBF10fea52y8QltAg6jnMqNHFBmGkQ1j+U43HMi2xMar1Nv0zGsf1s8nUsmUtPOOrbFIR8bHFDMB5zL13Gmr/kGlCkUzedTzzmzsaJXhYawnA3UmARpiYj5ooJZiUoxFRtK3X6pgNPv+IZVPcnwbOl6f+aBaO1CNvPW9n9LmCp01nuSaTRF2YxHqZ8DYQT6WsXT+RD6eUztwYLZ8rM+rcPxamv1VQzFUkzFXvkiVrySGQgJNvXHJAxiU3/NwiC03rSf05VBaPtu/Z7/B8Yn/w7eguloAAAAAElFTkSuQmCC'); + } + + div.callout-note.callout-style-default .callout-caption { + background-color: #dae6fb + } + + div.callout-important { + border-left-color: #d9534f !important; + } + + div.callout-important .callout-icon::before { + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAAEKklEQVRYCcVXTWhcVRS+575MJym48A+hSRFr00ySRQhURRfd2HYjk2SSTokuBCkU2o0LoSKKraKIBTcuFCoidGFD08nkBzdREbpQ1EDNIv8qSGMFUboImMSZd4/f9zJv8ibJMC8xJQfO3HPPPef7zrvvvnvviIkpC9nsw0UttFunbUhpFzFtarSd6WJkStVMw5xyVqYTvkwfzuf/5FgtkVoB0729j1rjXwThS7Vio+Mo6DNnvLfahoZ+i/o32lULuJ3NNiz7q6+pyAUkJaFF6JwaM2lUJlV0MlnQn5aTRbEu0SEqHUa0A4AdiGuB1kFXRfVyg5d87+Dg4DL6m2TLAub60ilj7A1Ec4odSAc8X95sHh7+ZRPCFo6Fnp7HfU/fBng/hi10CjCnWnJjsxvDNxWw0NfV6Rv5GgP3I3jGWXumdTD/3cbEOP2ZbOZp69yniG3FQ9z1jD7bnBu9Fc2tKGC2q+uAJOQHBDRiZX1x36o7fWBs7J9ownbtO+n0/qWkvW7UPIfc37WgT6ZGR++EOJyeQDSb9UB+DZ1G6DdLDzyS+b/kBCYGsYgJbSQHuThGKRcw5xdeQf8YdNHsc6ePXrlSYMBuSIAFTGAtQo+VuALo4BX83N190NWZWbynBjhOHsmNfFWLeL6v+ynsA58zDvvAC8j5PkbOcXCMg2PZFk3q8MjI7WAG/Dp9AwP7jdGBOOQkAvlFUB+irtm16I1Zw9YBcpGTGXYmk3kQIC/Cds55l+iMI3jqhjAuaoe+am2Jw5GT3Nbz3CkE12NavmzN5+erJW7046n/CH1RO/RVa8lBLozXk9uqykkGAyRXLWlLv5jyp4RFsG5vGVzpDLnIjTWgnRy2Rr+tDKvRc7Y8AyZq10jj8DqXdnIRNtFZb+t/ZRtXcDiVnzpqx8mPcDWxgARUqx0W1QB9MeUZiNrV4qP+Ehc+BpNgATsTX8ozYKL2NtFYAHc84fG7ndxUPr+AR/iQSns7uSUufAymwDOb2+NjK27lEFocm/EE2WpyIy/Hi66MWuMKJn8RvxIcj87IM5Vh9663ziW36kR0HNenXuxmfaD8JC7tfKbrhFr7LiZCrMjrzTeGx+PmkosrkNzW94ObzwocJ7A1HokLolY+AvkTiD/q1H0cN48c5EL8Crkttsa/AXQVDmutfyku0E7jShx49XqV3MFK8IryDhYVbj7Sj2P2eBxwcXoe8T8idsKKPRcnZw1b+slFTubwUwhktrfnAt7J++jwQtLZcm3sr9LQrjRzz6cfMv9aLvgmnAGvpoaGLxM4mAEaLV7iAzQ3oU0IvD5x9ix3yF2RAAuYAOO2f7PEFWCXZ4C9Pb2UsgDeVnFSpbFK7/IWu7TPTvBqzbGdCHOJQSxiEjt6IyZmxQyEJHv6xyQsYk//moVFsN2zP6fRImjfq7/n/wFDguUQFNEwugAAAABJRU5ErkJggg=='); + } + + div.callout-important.callout-style-default .callout-caption { + background-color: #f7dddc + } + + div.callout-warning { + border-left-color: #f0ad4e !important; + } + + div.callout-warning .callout-icon::before { + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAAETklEQVRYCeVWW2gcVRg+58yaTUnizqbipZeX4uWhBEniBaoUX1Ioze52t7sRq6APio9V9MEaoWlVsFasRq0gltaAPuxms8lu0gcviE/FFOstVbSIxgcv6SU7EZqmdc7v9+9mJtNks51NTUH84ed889/PP+cmxP+d5FIbMJmNbpREu4WUkiTtCicKny0l1pIKmBzovF2S+hIJHX8iEu3hZJ5lNZGqyRrGSIQpq15AzF28jgpeY6yk6GVdrfFqdrD6Iw+QlB8g0YS2g7dyQmXM/IDhBhT0UCiRf59lfqmmDvzRt6kByV/m4JjtzuaujMUM2c5Z2d6JdKrRb3K2q6mA+oYVz8JnDdKPmmNthzkAk/lN63sYPgevrguc72aZX/L9C6x09GYyxBgCX4NlvyGUHOKELlm5rXeR1kchuChJt4SSwyddZRXgvwMGvYo4QSlk3/zkHD8UHxwVJA6zjZZqP8v8kK8OWLnIZtLyCAJagYC4rTGW/9Pqj92N/c+LUaAj27movwbi19tk/whRCIE7Q9vyI6yvRpftAKVTdUjOW40X3h5OXsKCdmFcx0xlLJoSuQngnrJe7Kcjm4OMq9FlC7CMmScQANuNvjfP3PjGXDBaUQmbp296S5L4DrpbrHN1T87ZVEZVCzg1FF0Ft+dKrlLukI+/c9ENo+TvlTDbYFvuKPtQ9+l052rXrgKoWkDAFnvh0wTOmYn8R5f4k/jN/fZiCM1tQx9jQQ4ANhqG4hiL0qIFTGViG9DKB7GYzgubnpofgYRwO+DFjh0Zin2m4b/97EDkXkc+f6xYAPX0KK2I/7fUQuwzuwo/L3AkcjugPNixC8cHf0FyPjWlItmLxWw4Ou9YsQCr5fijMGoD/zpdRy95HRysyXA74MWOnscpO4j2y3HAVisw85hX5+AFBRSHt4ShfLFkIMXTqyKFc46xdzQM6XbAi702a7sy04J0+feReMFKp5q9esYLCqAZYw/k14E/xcLLsFElaornTuJB0svMuJINy8xkIYuL+xPAlWRceH6+HX7THJ0djLUom46zREu7tTkxwmf/FdOZ/sh6Q8qvEAiHpm4PJ4a/doJe0gH1t+aHRgCzOvBvJedEK5OFE5jpm4AGP2a8Dxe3gGJ/pAutug9Gp6he92CsSsWBaEcxGx0FHytmIpuqGkOpldqNYQK8cSoXvd+xLxXADw0kf6UkJNFtdo5MOgaLjiQOQHcn+A6h5NuL2s0qsC2LOM75PcF3yr5STuBSAcGG+meA14K/CI21HcS4LBT6tv0QAh8Dr5l93AhZzG5ZJ4VxAqdZUEl9z7WJ4aN+svMvwHHL21UKTd1mqvChH7/Za5xzXBBKrUcB0TQ+Ulgkfbi/H/YT5EptrGzsEK7tR1B7ln9BBwckYfMiuSqklSznIuoIIOM42MQO+QnduCoFCI0bpkzjCjddHPN/F+2Yu+sd9bKNpVwHhbS3LluK/0zgfwD0xYI5dXuzlQAAAABJRU5ErkJggg=='); + } + + div.callout-warning.callout-style-default .callout-caption { + background-color: #fcefdc + } + + div.callout-tip { + border-left-color: #02b875 !important; + } + + div.callout-tip .callout-icon::before { + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAADr0lEQVRYCe1XTWgTQRj9ZjZV8a9SPIkKgj8I1bMHsUWrqYLVg4Ue6v9BwZOxSYsIerFao7UiUryIqJcqgtpimhbBXoSCVxUFe9CTiogUrUp2Pt+3aUI2u5vdNh4dmMzOzHvvezuz8xNFM0mjnbXaNu1MvFWRXkXEyE6aYOYJpdW4IXuA4r0fo8qqSMDBU0v1HJUgVieAXxzCsdE/YJTdFcVIZQNMyhruOMJKXYFoLfIfIvVIMWdsrd+Rpd86ZmyzzjJmLStqRn0v8lzkb4rVIXvnpScOJuAn2ACC65FkPzEdEy4TPWRLJ2h7z4cArXzzaOdKlbOvKKX25Wl00jSnrwVxAg3o4dRxhO13RBSdNvH0xSARv3adTXbBdTf64IWO2vH0LT+cv4GR1DJt+DUItaQogeBX/chhbTBxEiZ6gftlDNXTrvT7co4ub5A6gp9HIcHvzTa46OS5fBeP87Qm0fQkr4FsYgVQ7Qg+ZayaDg9jhg1GkWj8RG6lkeSacrrHgDaxdoBiZPg+NXV/KifMuB6//JmYH4CntVEHy/keA6x4h4CU5oFy8GzrBS18cLJMXcljAKB6INjWsRcuZBWVaS3GDrqB7rdapVIeA+isQ57Eev9eCqzqOa81CY05VLd6SamW2wA2H3SiTbnbSxmzfp7WtKZkqy4mdyAlGx7ennghYf8voqp9cLSgKdqNfa6RdRsAAkPwRuJZNbpByn+RrJi1RXTwdi8RQF6ymDwGMAtZ6TVE+4uoKh+MYkcLsT0Hk8eAienbiGdjJHZTpmNjlbFJNKDVAp2fJlYju6IreQxQ08UJDNYdoLSl6AadO+fFuCQqVMB1NJwPm69T04Wv5WhfcWyfXQB+wXRs1pt+nCknRa0LVzSA/2B+a9+zQJadb7IyyV24YAxKp2Jqs3emZTuNnKxsah+uabKbMk7CbTgJx/zIgQYErIeTKRQ9yD9wxVof5YolPHqaWo7TD6tJlh7jQnK5z2n3+fGdggIOx2kaa2YI9QWarc5Ce1ipNWMKeSG4DysFF52KBmTNMmn5HqCFkwy34rDg05gDwgH3bBi+sgFhN/e8QvRn8kbamCOhgrZ9GJhFDgfcMHzFb6BAtjKpFhzTjwv1KCVuxHvCbsSiEz4CANnj84cwHdFXAbAOJ4LTSAawGWFn5tDhLMYz6nWeU2wJfIhmIJBefcd/A5FWQWGgrWzyORZ3Q6HuV+Jf0Bj+BTX69fm1zWgK7By1YTXchFDORywnfQ7GpzOo6S+qECrsx2ifVQAAAABJRU5ErkJggg=='); + } + + div.callout-tip.callout-style-default .callout-caption { + background-color: #ccf1e3 + } + + div.callout-caution { + border-left-color: #fd7e14 !important; + } + + div.callout-caution .callout-icon::before { + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAACV0lEQVRYCdVWzWoUQRCuqp2ICBLJXgITZL1EfQDBW/bkzUMUD7klD+ATSHBEfAIfQO+iXsWDxJsHL96EHAwhgzlkg8nBg25XWb0zIb0zs9muYYWkoKeru+vn664fBqElyZNuyh167NXJ8Ut8McjbmEraKHkd7uAnAFku+VWdb3reSmRV8PKSLfZ0Gjn3a6Xlcq9YGb6tADjn+lUfTXtVmaZ1KwBIvFI11rRXlWlatwIAAv2asaa9mlB9wwygiDX26qaw1yYPzFXg2N1GgG0FMF8Oj+VIx7E/03lHx8UhvYyNZLN7BwSPgekXXLribw7w5/c8EF+DBK5idvDVYtEEwMeYefjjLAdEyQ3M9nfOkgnPTEkYU+sxMq0BxNR6jExrAI31H1rzvLEfRIdgcv1XEdj6QTQAS2wtstEALLG1yEZ3QhH6oDX7ExBSFEkFINXH98NTrme5IOaaA7kIfiu2L8A3qhH9zRbukdCqdsA98TdElyeMe5BI8Rs2xHRIsoTSSVFfCFCWGPn9XHb4cdobRIWABNf0add9jakDjQJpJ1bTXOJXnnRXHRf+dNL1ZV1MBRCXhMbaHqGI1JkKIL7+i8uffuP6wVQAzO7+qVEbF6NbS0LJureYcWXUUhH66nLR5rYmva+2tjRFtojkM2aD76HEGAD3tPtKM309FJg5j/K682ywcWJ3PASCcycH/22u+Bh7Aa0ehM2Fu4z0SAE81HF9RkB21c5bEn4Dzw+/qNOyXr3DCTQDMBOdhi4nAgiFDGCinIa2owCEChUwD8qzd03PG+qdW/4fDzjUMcE1ZpIAAAAASUVORK5CYII='); + } + + div.callout-caution.callout-style-default .callout-caption { + background-color: #ffe5d0 + } + + </style> + <style type="text/css"> + .reveal div.sourceCode { + margin: 0; + overflow: auto; + } + .reveal div.hanging-indent { + margin-left: 1em; + text-indent: -1em; + } + .reveal .slide:not(.center) { + height: 100%; + } + .reveal .slide.scrollable { + overflow-y: auto; + } + .reveal .footnotes { + height: 100%; + overflow-y: auto; + } + .reveal .slide .absolute { + position: absolute; + display: block; + } + .reveal .footnotes ol { + counter-reset: ol; + list-style-type: none; + margin-left: 0; + } + .reveal .footnotes ol li:before { + counter-increment: ol; + content: counter(ol) ". "; + } + .reveal .footnotes ol li > p:first-child { + display: inline-block; + } + .reveal .slide ul, + .reveal .slide ol { + margin-bottom: 0.5em; + } + .reveal .slide ul li, + .reveal .slide ol li { + margin-top: 0.4em; + margin-bottom: 0.2em; + } + .reveal .slide ul[role="tablist"] li { + margin-bottom: 0; + } + .reveal .slide ul li > *:first-child, + .reveal .slide ol li > *:first-child { + margin-block-start: 0; + } + .reveal .slide ul li > *:last-child, + .reveal .slide ol li > *:last-child { + margin-block-end: 0; + } + .reveal .slide .columns:nth-child(3) { + margin-block-start: 0.8em; + } + .reveal blockquote { + box-shadow: none; + } + .reveal .tippy-content>* { + margin-top: 0.2em; + margin-bottom: 0.7em; + } + .reveal .tippy-content>*:last-child { + margin-bottom: 0.2em; + } + .reveal .slide > img.stretch.quarto-figure-center, + .reveal .slide > img.r-stretch.quarto-figure-center { + display: block; + margin-left: auto; + margin-right: auto; + } + .reveal .slide > img.stretch.quarto-figure-left, + .reveal .slide > img.r-stretch.quarto-figure-left { + display: block; + margin-left: 0; + margin-right: auto; + } + .reveal .slide > img.stretch.quarto-figure-right, + .reveal .slide > img.r-stretch.quarto-figure-right { + display: block; + margin-left: auto; + margin-right: 0; + } + </style> + <link href="../site_libs/countdown-0.4.0/countdown.css" rel="stylesheet"> + <script src="../site_libs/countdown-0.4.0/countdown.js"></script> +</head> +<body class="quarto-light"> + <div class="reveal"> + <div class="slides"> + +<section id="title-slide" class="center"> + <h1 class="title">Intégration de Données avec des Méthodes à Noyaux</h1> + <p class="subtitle">Café Méthodo : mardi 13 décembre</p> + <p class="author">Vincent Guillemot</p> +</section> + +<section id="course-website" class="title-slide slide level1 center"> +<h1>Course website</h1> +<div class="r-fit-text"> +<p><a href="https://hfrick.github.io/2022-AI-and-health/" class="uri">https://hfrick.github.io/2022-AI-and-health/</a></p> +</div> +</section> + +<section> +<section id="section" class="title-slide slide level1 center"> +<h1></h1> +<div class="r-stack"> +<p><a href="https://github.com/hfrick"><svg viewbox="0 0 496 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg> <span class="citation" data-cites="hfrick">@hfrick</span></a><br> +<a href="https://twitter.com/hfcfcrick"><svg viewbox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> <span class="citation" data-cites="hfcfrick">@hfcfrick</span></a><br> +<a href="https://frick.ws"><svg viewbox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg> frick.ws</a></p> +</div> +</section> +<section id="our-goals-for-this-workshop" class="slide level2"> +<h2>Our goals for this workshop</h2> +<ul> +<li>Introduce tidymodels and its general philosophy on modeling.</li> +<li>Help you become proficient with the core packages for modeling.</li> +<li>Point you to places to learn more and get help.</li> +</ul> +</section> +<section id="why-tidymodels" class="slide level2"> +<h2>Why tidymodels?</h2> +<p>There are several other modeling frameworks in R that try to:</p> +<ul> +<li>create a uniform, <span class="pkg">cohesive</span>, and unsurprising set of modeling APIs</li> +</ul> +<p>Examples are <span class="pkg">caret</span>, <span class="pkg">mlr3</span>, and others.</p> +<ul> +<li><span class="pkg">caret</span> is more favorable for people who prefer base R/traditional interfaces.</li> +<li><span class="pkg">mlr3</span> is more pythonic and also has many features.</li> +<li><span class="pkg">tidymodels</span> would probably be preferable to those who place importance on a tidy <em>R</em> interface, a large number of features, and the idea that the interfaces should enable the “pit of success”.</li> +</ul> +</section> +<section id="the-tidymodels-package" class="slide level2"> +<h2>The tidymodels package</h2> +<p>There are a lot of tidymodels packages but about 90% of the work is done by 5 packages. (<span class="pkg">rsample</span>, <span class="pkg">recipes</span>, <span class="pkg">parsnip</span>, <span class="pkg">tune</span>, and <span class="pkg">yardstick</span>)</p> +<p>The best way to get started with tidymodels is to use the <span class="pkg">tidymodels</span> meta-package. It loads the core packages plus some tidyverse packages.</p> +<p>Some helpful links:</p> +<ul> +<li>List of <a href="https://www.tidymodels.org/find/#search-all-of-tidymodels">all tidymodels functions</a></li> +<li>List of <a href="https://www.tidymodels.org/find/parsnip/">all parsnip models</a></li> +<li>List of <a href="https://www.tidymodels.org/find/recipes/">all recipe steps</a></li> +</ul> +<aside class="notes"> +<p>click on the search button on tidymodels.org for all those lists</p> +<style type="text/css"> + span.MJX_Assistive_MathML { + position:absolute!important; + clip: rect(1px, 1px, 1px, 1px); + padding: 1px 0 0 0!important; + border: 0!important; + height: 1px!important; + width: 1px!important; + overflow: hidden!important; + display:block!important; + }</style></aside> +</section> +<section id="the-tidymodels-package-1" class="slide level2"> +<h2>The tidymodels package</h2> +<div class="cell"> +<div class="sourceCode cell-code" id="cb1"><pre class="sourceCode numberSource r number-lines code-with-copy"><code class="sourceCode r"><span id="cb1-1"><a href="#cb1-1"></a><span class="fu">library</span>(tidymodels)</span> +<span id="cb1-2"><a href="#cb1-2"></a><span class="co">#> ── Attaching packages ──────────────────────────── tidymodels 1.0.0 ──</span></span> +<span id="cb1-3"><a href="#cb1-3"></a><span class="co">#> ✔ broom 1.0.1 ✔ rsample 1.1.0 </span></span> +<span id="cb1-4"><a href="#cb1-4"></a><span class="co">#> ✔ dials 1.1.0 ✔ tibble 3.1.8 </span></span> +<span id="cb1-5"><a href="#cb1-5"></a><span class="co">#> ✔ dplyr 1.0.10 ✔ tidyr 1.2.1 </span></span> +<span id="cb1-6"><a href="#cb1-6"></a><span class="co">#> ✔ infer 1.0.3 ✔ tune 1.0.1 </span></span> +<span id="cb1-7"><a href="#cb1-7"></a><span class="co">#> ✔ modeldata 1.0.1 ✔ workflows 1.1.2 </span></span> +<span id="cb1-8"><a href="#cb1-8"></a><span class="co">#> ✔ parsnip 1.0.3 ✔ workflowsets 1.0.0 </span></span> +<span id="cb1-9"><a href="#cb1-9"></a><span class="co">#> ✔ purrr 0.3.5 ✔ yardstick 1.1.0 </span></span> +<span id="cb1-10"><a href="#cb1-10"></a><span class="co">#> ✔ recipes 1.0.3</span></span> +<span id="cb1-11"><a href="#cb1-11"></a><span class="co">#> ── Conflicts ─────────────────────────────── tidymodels_conflicts() ──</span></span> +<span id="cb1-12"><a href="#cb1-12"></a><span class="co">#> ✖ purrr::discard() masks scales::discard()</span></span> +<span id="cb1-13"><a href="#cb1-13"></a><span class="co">#> ✖ dplyr::filter() masks stats::filter()</span></span> +<span id="cb1-14"><a href="#cb1-14"></a><span class="co">#> ✖ dplyr::lag() masks stats::lag()</span></span> +<span id="cb1-15"><a href="#cb1-15"></a><span class="co">#> ✖ recipes::step() masks stats::step()</span></span> +<span id="cb1-16"><a href="#cb1-16"></a><span class="co">#> • Dig deeper into tidy modeling with R at https://www.tmwr.org</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div> +</div> +</section> +<section id="managing-name-conflicts" class="slide level2"> +<h2>Managing name conflicts</h2> +<div class="cell"> +<div class="sourceCode cell-code" id="cb2"><pre class="sourceCode numberSource r number-lines code-with-copy"><code class="sourceCode r"><span id="cb2-1"><a href="#cb2-1"></a><span class="fu">tidymodels_prefer</span>(<span class="at">quiet =</span> <span class="cn">FALSE</span>)</span> +<span id="cb2-2"><a href="#cb2-2"></a><span class="co">#> [conflicted] Will prefer dplyr::filter over any other package</span></span> +<span id="cb2-3"><a href="#cb2-3"></a><span class="co">#> [conflicted] Will prefer dplyr::select over any other package</span></span> +<span id="cb2-4"><a href="#cb2-4"></a><span class="co">#> [conflicted] Will prefer dplyr::slice over any other package</span></span> +<span id="cb2-5"><a href="#cb2-5"></a><span class="co">#> [conflicted] Will prefer dplyr::rename over any other package</span></span> +<span id="cb2-6"><a href="#cb2-6"></a><span class="co">#> [conflicted] Will prefer dials::neighbors over any other package</span></span> +<span id="cb2-7"><a href="#cb2-7"></a><span class="co">#> [conflicted] Will prefer parsnip::fit over any other package</span></span> +<span id="cb2-8"><a href="#cb2-8"></a><span class="co">#> [conflicted] Will prefer parsnip::bart over any other package</span></span> +<span id="cb2-9"><a href="#cb2-9"></a><span class="co">#> [conflicted] Will prefer parsnip::pls over any other package</span></span> +<span id="cb2-10"><a href="#cb2-10"></a><span class="co">#> [conflicted] Will prefer purrr::map over any other package</span></span> +<span id="cb2-11"><a href="#cb2-11"></a><span class="co">#> [conflicted] Will prefer recipes::step over any other package</span></span> +<span id="cb2-12"><a href="#cb2-12"></a><span class="co">#> [conflicted] Will prefer themis::step_downsample over any other package</span></span> +<span id="cb2-13"><a href="#cb2-13"></a><span class="co">#> [conflicted] Will prefer themis::step_upsample over any other package</span></span> +<span id="cb2-14"><a href="#cb2-14"></a><span class="co">#> [conflicted] Will prefer tune::tune over any other package</span></span> +<span id="cb2-15"><a href="#cb2-15"></a><span class="co">#> [conflicted] Will prefer yardstick::precision over any other package</span></span> +<span id="cb2-16"><a href="#cb2-16"></a><span class="co">#> [conflicted] Will prefer yardstick::recall over any other package</span></span> +<span id="cb2-17"><a href="#cb2-17"></a><span class="co">#> [conflicted] Will prefer yardstick::spec over any other package</span></span> +<span id="cb2-18"><a href="#cb2-18"></a><span class="co">#> ── Conflicts ────────────────────────────────── tidymodels_prefer() ──</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div> +</div> +</section> +<section id="alzheimers-disease-data" class="slide level2"> +<h2>Alzheimer’s disease data</h2> +<p>Data from a clinical trial of individuals with well-characterized cognitive impairment, and age-matched control participants.</p> +<div class="cell"> +<div class="sourceCode cell-code" id="cb3"><pre class="sourceCode numberSource r number-lines code-with-copy"><code class="sourceCode r"><span id="cb3-1"><a href="#cb3-1"></a><span class="co"># install.packages("modeldata")</span></span> +<span id="cb3-2"><a href="#cb3-2"></a><span class="fu">library</span>(modeldata)</span> +<span id="cb3-3"><a href="#cb3-3"></a><span class="fu">data</span>(<span class="st">"ad_data"</span>)</span> +<span id="cb3-4"><a href="#cb3-4"></a>alz <span class="ot"><-</span> ad_data</span> +<span id="cb3-5"><a href="#cb3-5"></a></span> +<span id="cb3-6"><a href="#cb3-6"></a><span class="fu">glimpse</span>(alz)</span> +<span id="cb3-7"><a href="#cb3-7"></a><span class="co">#> Rows: 333</span></span> +<span id="cb3-8"><a href="#cb3-8"></a><span class="co">#> Columns: 131</span></span> +<span id="cb3-9"><a href="#cb3-9"></a><span class="co">#> $ ACE_CD143_Angiotensin_Converti <dbl> 2.0031003, 1.5618560, 1.5206598, 1.68…</span></span> +<span id="cb3-10"><a href="#cb3-10"></a><span class="co">#> $ ACTH_Adrenocorticotropic_Hormon <dbl> -1.3862944, -1.3862944, -1.7147984, -…</span></span> +<span id="cb3-11"><a href="#cb3-11"></a><span class="co">#> $ AXL <dbl> 1.09838668, 0.68328157, -0.14527630, …</span></span> +<span id="cb3-12"><a href="#cb3-12"></a><span class="co">#> $ Adiponectin <dbl> -5.360193, -5.020686, -5.809143, -5.1…</span></span> +<span id="cb3-13"><a href="#cb3-13"></a><span class="co">#> $ Alpha_1_Antichymotrypsin <dbl> 1.7404662, 1.4586150, 1.1939225, 1.28…</span></span> +<span id="cb3-14"><a href="#cb3-14"></a><span class="co">#> $ Alpha_1_Antitrypsin <dbl> -12.631361, -11.909882, -13.642963, -…</span></span> +<span id="cb3-15"><a href="#cb3-15"></a><span class="co">#> $ Alpha_1_Microglobulin <dbl> -2.577022, -3.244194, -2.882404, -3.1…</span></span> +<span id="cb3-16"><a href="#cb3-16"></a><span class="co">#> $ Alpha_2_Macroglobulin <dbl> -72.65029, -154.61228, -136.52918, -9…</span></span> +<span id="cb3-17"><a href="#cb3-17"></a><span class="co">#> $ Angiopoietin_2_ANG_2 <dbl> 1.06471074, 0.74193734, 0.83290912, 0…</span></span> +<span id="cb3-18"><a href="#cb3-18"></a><span class="co">#> $ Angiotensinogen <dbl> 2.510547, 2.457283, 1.976365, 2.37608…</span></span> +<span id="cb3-19"><a href="#cb3-19"></a><span class="co">#> $ Apolipoprotein_A_IV <dbl> -1.427116, -1.660731, -1.660731, -2.1…</span></span> +<span id="cb3-20"><a href="#cb3-20"></a><span class="co">#> $ Apolipoprotein_A1 <dbl> -7.402052, -7.047017, -7.684284, -8.0…</span></span> +<span id="cb3-21"><a href="#cb3-21"></a><span class="co">#> $ Apolipoprotein_A2 <dbl> -0.26136476, -0.86750057, -0.65392647…</span></span> +<span id="cb3-22"><a href="#cb3-22"></a><span class="co">#> $ Apolipoprotein_B <dbl> -4.624044, -6.747507, -3.976069, -6.5…</span></span> +<span id="cb3-23"><a href="#cb3-23"></a><span class="co">#> $ Apolipoprotein_CI <dbl> -1.2729657, -1.2729657, -1.7147984, -…</span></span> +<span id="cb3-24"><a href="#cb3-24"></a><span class="co">#> $ Apolipoprotein_CIII <dbl> -2.312635, -2.343407, -2.748872, -2.9…</span></span> +<span id="cb3-25"><a href="#cb3-25"></a><span class="co">#> $ Apolipoprotein_D <dbl> 2.0794415, 1.3350011, 1.3350011, 1.43…</span></span> +<span id="cb3-26"><a href="#cb3-26"></a><span class="co">#> $ Apolipoprotein_E <dbl> 3.7545215, 3.0971187, 2.7530556, 2.37…</span></span> +<span id="cb3-27"><a href="#cb3-27"></a><span class="co">#> $ Apolipoprotein_H <dbl> -0.15734908, -0.57539617, -0.34483937…</span></span> +<span id="cb3-28"><a href="#cb3-28"></a><span class="co">#> $ B_Lymphocyte_Chemoattractant_BL <dbl> 2.2969819, 1.6731213, 1.6731213, 1.98…</span></span> +<span id="cb3-29"><a href="#cb3-29"></a><span class="co">#> $ BMP_6 <dbl> -2.200744, -1.728053, -2.062421, -1.9…</span></span> +<span id="cb3-30"><a href="#cb3-30"></a><span class="co">#> $ Beta_2_Microglobulin <dbl> 0.69314718, 0.47000363, 0.33647224, 0…</span></span> +<span id="cb3-31"><a href="#cb3-31"></a><span class="co">#> $ Betacellulin <int> 34, 53, 49, 52, 67, 51, 41, 42, 58, 5…</span></span> +<span id="cb3-32"><a href="#cb3-32"></a><span class="co">#> $ C_Reactive_Protein <dbl> -4.074542, -6.645391, -8.047190, -6.2…</span></span> +<span id="cb3-33"><a href="#cb3-33"></a><span class="co">#> $ CD40 <dbl> -0.7964147, -1.2733760, -1.2415199, -…</span></span> +<span id="cb3-34"><a href="#cb3-34"></a><span class="co">#> $ CD5L <dbl> 0.09531018, -0.67334455, 0.09531018, …</span></span> +<span id="cb3-35"><a href="#cb3-35"></a><span class="co">#> $ Calbindin <dbl> 33.21363, 25.27636, 22.16609, 23.4558…</span></span> +<span id="cb3-36"><a href="#cb3-36"></a><span class="co">#> $ Calcitonin <dbl> 1.3862944, 3.6109179, 2.1162555, -0.1…</span></span> +<span id="cb3-37"><a href="#cb3-37"></a><span class="co">#> $ CgA <dbl> 397.6536, 465.6759, 347.8639, 334.234…</span></span> +<span id="cb3-38"><a href="#cb3-38"></a><span class="co">#> $ Clusterin_Apo_J <dbl> 3.555348, 3.044522, 2.772589, 2.83321…</span></span> +<span id="cb3-39"><a href="#cb3-39"></a><span class="co">#> $ Complement_3 <dbl> -10.36305, -16.10824, -16.10824, -13.…</span></span> +<span id="cb3-40"><a href="#cb3-40"></a><span class="co">#> $ Complement_Factor_H <dbl> 3.5737252, 3.6000471, 4.4745686, 3.09…</span></span> +<span id="cb3-41"><a href="#cb3-41"></a><span class="co">#> $ Connective_Tissue_Growth_Factor <dbl> 0.5306283, 0.5877867, 0.6418539, 0.53…</span></span> +<span id="cb3-42"><a href="#cb3-42"></a><span class="co">#> $ Cortisol <dbl> 10.0, 12.0, 10.0, 14.0, 11.0, 13.0, 4…</span></span> +<span id="cb3-43"><a href="#cb3-43"></a><span class="co">#> $ Creatine_Kinase_MB <dbl> -1.710172, -1.751002, -1.383559, -1.6…</span></span> +<span id="cb3-44"><a href="#cb3-44"></a><span class="co">#> $ Cystatin_C <dbl> 9.041922, 9.067624, 8.954157, 9.58190…</span></span> +<span id="cb3-45"><a href="#cb3-45"></a><span class="co">#> $ EGF_R <dbl> -0.1354543, -0.3700474, -0.7329871, -…</span></span> +<span id="cb3-46"><a href="#cb3-46"></a><span class="co">#> $ EN_RAGE <dbl> -3.688879, -3.816713, -4.755993, -2.9…</span></span> +<span id="cb3-47"><a href="#cb3-47"></a><span class="co">#> $ ENA_78 <dbl> -1.349543, -1.356595, -1.390672, -1.3…</span></span> +<span id="cb3-48"><a href="#cb3-48"></a><span class="co">#> $ Eotaxin_3 <int> 53, 62, 62, 44, 64, 57, 64, 64, 64, 7…</span></span> +<span id="cb3-49"><a href="#cb3-49"></a><span class="co">#> $ FAS <dbl> -0.08338161, -0.52763274, -0.63487827…</span></span> +<span id="cb3-50"><a href="#cb3-50"></a><span class="co">#> $ FSH_Follicle_Stimulation_Hormon <dbl> -0.6516715, -1.6272839, -1.5630004, -…</span></span> +<span id="cb3-51"><a href="#cb3-51"></a><span class="co">#> $ Fas_Ligand <dbl> 3.1014922, 2.9788133, 1.3600098, 2.53…</span></span> +<span id="cb3-52"><a href="#cb3-52"></a><span class="co">#> $ Fatty_Acid_Binding_Protein <dbl> 2.5208712, 2.2477966, 0.9063009, 0.62…</span></span> +<span id="cb3-53"><a href="#cb3-53"></a><span class="co">#> $ Ferritin <dbl> 3.329165, 3.932959, 3.176872, 3.13809…</span></span> +<span id="cb3-54"><a href="#cb3-54"></a><span class="co">#> $ Fetuin_A <dbl> 1.2809338, 1.1939225, 1.4109870, 0.74…</span></span> +<span id="cb3-55"><a href="#cb3-55"></a><span class="co">#> $ Fibrinogen <dbl> -7.035589, -8.047190, -7.195437, -7.7…</span></span> +<span id="cb3-56"><a href="#cb3-56"></a><span class="co">#> $ GRO_alpha <dbl> 1.381830, 1.372438, 1.412679, 1.37243…</span></span> +<span id="cb3-57"><a href="#cb3-57"></a><span class="co">#> $ Gamma_Interferon_induced_Monokin <dbl> 2.949822, 2.721793, 2.762231, 2.88547…</span></span> +<span id="cb3-58"><a href="#cb3-58"></a><span class="co">#> $ Glutathione_S_Transferase_alpha <dbl> 1.0641271, 0.8670202, 0.8890150, 0.70…</span></span> +<span id="cb3-59"><a href="#cb3-59"></a><span class="co">#> $ HB_EGF <dbl> 6.559746, 8.754531, 7.745463, 5.94943…</span></span> +<span id="cb3-60"><a href="#cb3-60"></a><span class="co">#> $ HCC_4 <dbl> -3.036554, -4.074542, -3.649659, -3.8…</span></span> +<span id="cb3-61"><a href="#cb3-61"></a><span class="co">#> $ Hepatocyte_Growth_Factor_HGF <dbl> 0.58778666, 0.53062825, 0.09531018, 0…</span></span> +<span id="cb3-62"><a href="#cb3-62"></a><span class="co">#> $ I_309 <dbl> 3.433987, 3.135494, 2.397895, 3.36729…</span></span> +<span id="cb3-63"><a href="#cb3-63"></a><span class="co">#> $ ICAM_1 <dbl> -0.1907787, -0.4620172, -0.4620172, -…</span></span> +<span id="cb3-64"><a href="#cb3-64"></a><span class="co">#> $ IGF_BP_2 <dbl> 5.609472, 5.347108, 5.181784, 5.42495…</span></span> +<span id="cb3-65"><a href="#cb3-65"></a><span class="co">#> $ IL_11 <dbl> 5.121987, 4.936704, 4.665910, 6.22393…</span></span> +<span id="cb3-66"><a href="#cb3-66"></a><span class="co">#> $ IL_13 <dbl> 1.282549, 1.269463, 1.274133, 1.30754…</span></span> +<span id="cb3-67"><a href="#cb3-67"></a><span class="co">#> $ IL_16 <dbl> 4.192081, 2.876338, 2.616102, 2.44105…</span></span> +<span id="cb3-68"><a href="#cb3-68"></a><span class="co">#> $ IL_17E <dbl> 5.731246, 6.705891, 4.149327, 4.69584…</span></span> +<span id="cb3-69"><a href="#cb3-69"></a><span class="co">#> $ IL_1alpha <dbl> -6.571283, -8.047190, -8.180721, -7.6…</span></span> +<span id="cb3-70"><a href="#cb3-70"></a><span class="co">#> $ IL_3 <dbl> -3.244194, -3.912023, -4.645992, -4.2…</span></span> +<span id="cb3-71"><a href="#cb3-71"></a><span class="co">#> $ IL_4 <dbl> 2.484907, 2.397895, 1.824549, 1.48160…</span></span> +<span id="cb3-72"><a href="#cb3-72"></a><span class="co">#> $ IL_5 <dbl> 1.09861229, 0.69314718, -0.24846136, …</span></span> +<span id="cb3-73"><a href="#cb3-73"></a><span class="co">#> $ IL_6 <dbl> 0.26936976, 0.09622438, 0.18568645, -…</span></span> +<span id="cb3-74"><a href="#cb3-74"></a><span class="co">#> $ IL_6_Receptor <dbl> 0.64279595, 0.43115645, 0.09668586, 0…</span></span> +<span id="cb3-75"><a href="#cb3-75"></a><span class="co">#> $ IL_7 <dbl> 4.8050453, 3.7055056, 1.0056222, 2.33…</span></span> +<span id="cb3-76"><a href="#cb3-76"></a><span class="co">#> $ IL_8 <dbl> 1.711325, 1.675557, 1.691393, 1.71994…</span></span> +<span id="cb3-77"><a href="#cb3-77"></a><span class="co">#> $ IP_10_Inducible_Protein_10 <dbl> 6.242223, 5.686975, 5.049856, 5.60211…</span></span> +<span id="cb3-78"><a href="#cb3-78"></a><span class="co">#> $ IgA <dbl> -6.812445, -6.377127, -6.319969, -7.6…</span></span> +<span id="cb3-79"><a href="#cb3-79"></a><span class="co">#> $ Insulin <dbl> -0.6258253, -0.9431406, -1.4466191, -…</span></span> +<span id="cb3-80"><a href="#cb3-80"></a><span class="co">#> $ Kidney_Injury_Molecule_1_KIM_1 <dbl> -1.204295, -1.197703, -1.191191, -1.2…</span></span> +<span id="cb3-81"><a href="#cb3-81"></a><span class="co">#> $ LOX_1 <dbl> 1.7047481, 1.5260563, 1.1631508, 1.22…</span></span> +<span id="cb3-82"><a href="#cb3-82"></a><span class="co">#> $ Leptin <dbl> -1.5290628, -1.4660558, -1.6622675, -…</span></span> +<span id="cb3-83"><a href="#cb3-83"></a><span class="co">#> $ Lipoprotein_a <dbl> -4.268698, -4.933674, -5.843045, -4.9…</span></span> +<span id="cb3-84"><a href="#cb3-84"></a><span class="co">#> $ MCP_1 <dbl> 6.740519, 6.849066, 6.767343, 6.78105…</span></span> +<span id="cb3-85"><a href="#cb3-85"></a><span class="co">#> $ MCP_2 <dbl> 1.9805094, 1.8088944, 0.4005958, 1.98…</span></span> +<span id="cb3-86"><a href="#cb3-86"></a><span class="co">#> $ MIF <dbl> -1.237874, -1.897120, -2.302585, -1.6…</span></span> +<span id="cb3-87"><a href="#cb3-87"></a><span class="co">#> $ MIP_1alpha <dbl> 4.968453, 3.690160, 4.049508, 4.92856…</span></span> +<span id="cb3-88"><a href="#cb3-88"></a><span class="co">#> $ MIP_1beta <dbl> 3.258097, 3.135494, 2.397895, 3.21887…</span></span> +<span id="cb3-89"><a href="#cb3-89"></a><span class="co">#> $ MMP_2 <dbl> 4.478566, 3.781473, 2.866631, 2.96851…</span></span> +<span id="cb3-90"><a href="#cb3-90"></a><span class="co">#> $ MMP_3 <dbl> -2.207275, -2.465104, -2.302585, -1.7…</span></span> +<span id="cb3-91"><a href="#cb3-91"></a><span class="co">#> $ MMP10 <dbl> -3.270169, -3.649659, -2.733368, -4.0…</span></span> +<span id="cb3-92"><a href="#cb3-92"></a><span class="co">#> $ MMP7 <dbl> -3.7735027, -5.9681907, -4.0302269, -…</span></span> +<span id="cb3-93"><a href="#cb3-93"></a><span class="co">#> $ Myoglobin <dbl> -1.89711998, -0.75502258, -1.38629436…</span></span> +<span id="cb3-94"><a href="#cb3-94"></a><span class="co">#> $ NT_proBNP <dbl> 4.553877, 4.219508, 4.248495, 4.11087…</span></span> +<span id="cb3-95"><a href="#cb3-95"></a><span class="co">#> $ NrCAM <dbl> 5.003946, 5.209486, 4.744932, 4.96981…</span></span> +<span id="cb3-96"><a href="#cb3-96"></a><span class="co">#> $ Osteopontin <dbl> 5.356586, 6.003887, 5.017280, 5.76832…</span></span> +<span id="cb3-97"><a href="#cb3-97"></a><span class="co">#> $ PAI_1 <dbl> 1.00350156, -0.03059880, 0.43837211, …</span></span> +<span id="cb3-98"><a href="#cb3-98"></a><span class="co">#> $ PAPP_A <dbl> -2.902226, -2.813276, -2.935541, -2.7…</span></span> +<span id="cb3-99"><a href="#cb3-99"></a><span class="co">#> $ PLGF <dbl> 4.442651, 4.025352, 4.510860, 3.43398…</span></span> +<span id="cb3-100"><a href="#cb3-100"></a><span class="co">#> $ PYY <dbl> 3.218876, 3.135494, 2.890372, 2.83321…</span></span> +<span id="cb3-101"><a href="#cb3-101"></a><span class="co">#> $ Pancreatic_polypeptide <dbl> 0.57878085, 0.33647224, -0.89159812, …</span></span> +<span id="cb3-102"><a href="#cb3-102"></a><span class="co">#> $ Prolactin <dbl> 0.00000000, -0.51082562, -0.13926207,…</span></span> +<span id="cb3-103"><a href="#cb3-103"></a><span class="co">#> $ Prostatic_Acid_Phosphatase <dbl> -1.620527, -1.739232, -1.636682, -1.7…</span></span> +<span id="cb3-104"><a href="#cb3-104"></a><span class="co">#> $ Protein_S <dbl> -1.784998, -2.463991, -2.259135, -2.7…</span></span> +<span id="cb3-105"><a href="#cb3-105"></a><span class="co">#> $ Pulmonary_and_Activation_Regulat <dbl> -0.8439701, -2.3025851, -1.6607312, -…</span></span> +<span id="cb3-106"><a href="#cb3-106"></a><span class="co">#> $ RANTES <dbl> -6.214608, -6.938214, -6.645391, -5.9…</span></span> +<span id="cb3-107"><a href="#cb3-107"></a><span class="co">#> $ Resistin <dbl> -16.475315, -16.025283, -16.475315, -…</span></span> +<span id="cb3-108"><a href="#cb3-108"></a><span class="co">#> $ S100b <dbl> 1.5618560, 1.7566212, 1.4357282, 1.25…</span></span> +<span id="cb3-109"><a href="#cb3-109"></a><span class="co">#> $ SGOT <dbl> -0.94160854, -0.65392647, 0.33647224,…</span></span> +<span id="cb3-110"><a href="#cb3-110"></a><span class="co">#> $ SHBG <dbl> -1.897120, -1.560648, -2.207275, -3.1…</span></span> +<span id="cb3-111"><a href="#cb3-111"></a><span class="co">#> $ SOD <dbl> 5.609472, 5.814131, 5.723585, 5.77144…</span></span> +<span id="cb3-112"><a href="#cb3-112"></a><span class="co">#> $ Serum_Amyloid_P <dbl> -5.599422, -6.119298, -5.381699, -6.6…</span></span> +<span id="cb3-113"><a href="#cb3-113"></a><span class="co">#> $ Sortilin <dbl> 4.908629, 5.478731, 3.810182, 3.40217…</span></span> +<span id="cb3-114"><a href="#cb3-114"></a><span class="co">#> $ Stem_Cell_Factor <dbl> 4.174387, 3.713572, 3.433987, 3.95124…</span></span> +<span id="cb3-115"><a href="#cb3-115"></a><span class="co">#> $ TGF_alpha <dbl> 8.649098, 11.331619, 10.858497, 9.454…</span></span> +<span id="cb3-116"><a href="#cb3-116"></a><span class="co">#> $ TIMP_1 <dbl> 15.204651, 11.266499, 12.282857, 11.1…</span></span> +<span id="cb3-117"><a href="#cb3-117"></a><span class="co">#> $ TNF_RII <dbl> -0.06187540, -0.32850407, -0.41551544…</span></span> +<span id="cb3-118"><a href="#cb3-118"></a><span class="co">#> $ TRAIL_R3 <dbl> -0.1829004, -0.5007471, -0.9240345, -…</span></span> +<span id="cb3-119"><a href="#cb3-119"></a><span class="co">#> $ TTR_prealbumin <dbl> 2.944439, 2.833213, 2.944439, 2.94443…</span></span> +<span id="cb3-120"><a href="#cb3-120"></a><span class="co">#> $ Tamm_Horsfall_Protein_THP <dbl> -3.095810, -3.111190, -3.166721, -3.1…</span></span> +<span id="cb3-121"><a href="#cb3-121"></a><span class="co">#> $ Thrombomodulin <dbl> -1.340566, -1.675252, -1.534276, -1.9…</span></span> +<span id="cb3-122"><a href="#cb3-122"></a><span class="co">#> $ Thrombopoietin <dbl> -0.1026334, -0.6733501, -0.9229670, -…</span></span> +<span id="cb3-123"><a href="#cb3-123"></a><span class="co">#> $ Thymus_Expressed_Chemokine_TECK <dbl> 4.149327, 3.810182, 2.791992, 4.03728…</span></span> +<span id="cb3-124"><a href="#cb3-124"></a><span class="co">#> $ Thyroid_Stimulating_Hormone <dbl> -3.863233, -4.828314, -4.990833, -4.8…</span></span> +<span id="cb3-125"><a href="#cb3-125"></a><span class="co">#> $ Thyroxine_Binding_Globulin <dbl> -1.4271164, -1.6094379, -1.8971200, -…</span></span> +<span id="cb3-126"><a href="#cb3-126"></a><span class="co">#> $ Tissue_Factor <dbl> 2.04122033, 2.02814825, 1.43508453, 2…</span></span> +<span id="cb3-127"><a href="#cb3-127"></a><span class="co">#> $ Transferrin <dbl> 3.332205, 2.890372, 2.890372, 2.89037…</span></span> +<span id="cb3-128"><a href="#cb3-128"></a><span class="co">#> $ Trefoil_Factor_3_TFF3 <dbl> -3.381395, -3.912023, -3.729701, -3.8…</span></span> +<span id="cb3-129"><a href="#cb3-129"></a><span class="co">#> $ VCAM_1 <dbl> 3.258097, 2.708050, 2.639057, 2.77258…</span></span> +<span id="cb3-130"><a href="#cb3-130"></a><span class="co">#> $ VEGF <dbl> 22.03456, 18.60184, 17.47619, 17.5456…</span></span> +<span id="cb3-131"><a href="#cb3-131"></a><span class="co">#> $ Vitronectin <dbl> -0.04082199, -0.38566248, -0.22314355…</span></span> +<span id="cb3-132"><a href="#cb3-132"></a><span class="co">#> $ von_Willebrand_Factor <dbl> -3.146555, -3.863233, -3.540459, -3.8…</span></span> +<span id="cb3-133"><a href="#cb3-133"></a><span class="co">#> $ age <dbl> 0.9876238, 0.9861496, 0.9866667, 0.98…</span></span> +<span id="cb3-134"><a href="#cb3-134"></a><span class="co">#> $ tau <dbl> 6.297754, 6.659294, 6.270988, 6.15273…</span></span> +<span id="cb3-135"><a href="#cb3-135"></a><span class="co">#> $ p_tau <dbl> 4.348108, 4.859967, 4.400247, 4.49488…</span></span> +<span id="cb3-136"><a href="#cb3-136"></a><span class="co">#> $ Ab_42 <dbl> 12.019678, 11.015759, 12.302271, 12.3…</span></span> +<span id="cb3-137"><a href="#cb3-137"></a><span class="co">#> $ male <dbl> 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1…</span></span> +<span id="cb3-138"><a href="#cb3-138"></a><span class="co">#> $ Genotype <fct> E3E3, E3E4, E3E4, E3E4, E3E3, E4E4, E…</span></span> +<span id="cb3-139"><a href="#cb3-139"></a><span class="co">#> $ Class <fct> Control, Control, Control, Control, C…</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div> +</div> +</section> +<section id="alzheimers-disease-data-1" class="slide level2"> +<h2>Alzheimer’s disease data</h2> +<div class="columns"> +<div class="column" style="width:50%;"> +<ul> +<li>1 categorical outcome: <code>Class</code></li> +<li>130 predictors</li> +<li>126 protein measurements</li> +<li>also: <code>age</code>, <code>male</code>, <code>Genotype</code></li> +</ul> +</div><div class="column" style="width:50%;"> +<div class="cell" data-layout-align="center"> +<div class="cell-output-display"> +<div class="quarto-figure quarto-figure-center"> +<figure> +<p><img data-src="slides_files/figure-revealjs/unnamed-chunk-5-1.svg" style="width:90.0%"></p> +</figure> +</div> +</div> +</div> +</div> +</div> +</section> +<section id="your-turn" class="slide level2" data-transition="slide-in"> +<h2>Your turn</h2> +<!-- {.absolute top="0" right="0" width="150" height="150"} --> +<p><img data-src="hexes/tidymodels.png" class="absolute" style="top: 0px; right: 0px; height: 25%; "></p> +<div class="columns"> +<div class="column" style="width:70%;"> +<p><em>Explore the data.</em></p> +<div class="cell"> +<div class="sourceCode cell-code" id="cb4"><pre class="sourceCode numberSource r number-lines code-with-copy"><code class="sourceCode r"><span id="cb4-1"><a href="#cb4-1"></a><span class="fu">library</span>(tidymodels)</span> +<span id="cb4-2"><a href="#cb4-2"></a><span class="fu">tidymodels_prefer</span>()</span> +<span id="cb4-3"><a href="#cb4-3"></a></span> +<span id="cb4-4"><a href="#cb4-4"></a><span class="fu">data</span>(<span class="st">"ad_data"</span>, <span class="at">package =</span> <span class="st">"modeldata"</span>)</span> +<span id="cb4-5"><a href="#cb4-5"></a>alz <span class="ot"><-</span> ad_data</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div> +</div> +</div> +</div> +<div class="cell"> +<div class="cell-output-display"> +<div class="countdown" id="explore-data" data-update-every="1" tabindex="0" style="right:0;bottom:0;"> +<div class="countdown-controls"><button class="countdown-bump-down">−</button><button class="countdown-bump-up">+</button></div> +<code class="countdown-time"><span class="countdown-digits minutes">10</span><span class="countdown-digits colon">:</span><span class="countdown-digits seconds">00</span></code> +</div> +</div> +</div> +</section> +<section id="schedule-for-today" class="slide level2"> +<h2>Schedule for today</h2> +<ul> +<li>A minimal model</li> +<li>A better workflow</li> +<li>A tuned model</li> +</ul> +<aside class="notes"> +<ul> +<li>get through the fundamentals</li> +<li>make our model better</li> +<li>let the computer make our model better</li> +</ul> +<style type="text/css"> + span.MJX_Assistive_MathML { + position:absolute!important; + clip: rect(1px, 1px, 1px, 1px); + padding: 1px 0 0 0!important; + border: 0!important; + height: 1px!important; + width: 1px!important; + overflow: hidden!important; + display:block!important; + }</style></aside> + +<div class="footer footer-default"> + +</div> +</section></section> + </div> + </div> + + <script>window.backupDefine = window.define; window.define = undefined;</script> + <script src="../site_libs/revealjs/dist/reveal.js"></script> + <!-- reveal.js plugins --> + <script src="../site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.js"></script> + <script src="../site_libs/revealjs/plugin/pdf-export/pdfexport.js"></script> + <script src="../site_libs/revealjs/plugin/reveal-menu/menu.js"></script> + <script src="../site_libs/revealjs/plugin/reveal-menu/quarto-menu.js"></script> + <script src="../site_libs/revealjs/plugin/quarto-support/support.js"></script> + + + <script src="../site_libs/revealjs/plugin/notes/notes.js"></script> + <script src="../site_libs/revealjs/plugin/search/search.js"></script> + <script src="../site_libs/revealjs/plugin/zoom/zoom.js"></script> + <script src="../site_libs/revealjs/plugin/math/math.js"></script> + <script>window.define = window.backupDefine; window.backupDefine = undefined;</script> + + <script> + + // Full list of configuration options available at: + // https://revealjs.com/config/ + Reveal.initialize({ +'controlsAuto': true, +'previewLinksAuto': false, +'smaller': false, +'pdfSeparateFragments': false, +'autoAnimateEasing': "ease", +'autoAnimateDuration': 1, +'autoAnimateUnmatched': true, +'menu': {"side":"left","useTextContentForMissingTitles":true,"markers":false,"loadIcons":false,"custom":[{"title":"Tools","icon":"<i class=\"fas fa-gear\"></i>","content":"<ul class=\"slide-menu-items\">\n<li class=\"slide-tool-item active\" data-item=\"0\"><a href=\"#\" onclick=\"RevealMenuToolHandlers.fullscreen(event)\"><kbd>f</kbd> Fullscreen</a></li>\n<li class=\"slide-tool-item\" data-item=\"1\"><a href=\"#\" onclick=\"RevealMenuToolHandlers.speakerMode(event)\"><kbd>s</kbd> Speaker View</a></li>\n<li class=\"slide-tool-item\" data-item=\"2\"><a href=\"#\" onclick=\"RevealMenuToolHandlers.overview(event)\"><kbd>o</kbd> Slide Overview</a></li>\n<li class=\"slide-tool-item\" data-item=\"3\"><a href=\"#\" onclick=\"RevealMenuToolHandlers.overview(event)\"><kbd>e</kbd> PDF Export Mode</a></li>\n<li class=\"slide-tool-item\" data-item=\"4\"><a href=\"#\" onclick=\"RevealMenuToolHandlers.keyboardHelp(event)\"><kbd>?</kbd> Keyboard Help</a></li>\n</ul>"}],"openButton":true}, +'smaller': false, + + // Display controls in the bottom right corner + controls: false, + + // Help the user learn the controls by providing hints, for example by + // bouncing the down arrow when they first encounter a vertical slide + controlsTutorial: false, + + // Determines where controls appear, "edges" or "bottom-right" + controlsLayout: 'edges', + + // Visibility rule for backwards navigation arrows; "faded", "hidden" + // or "visible" + controlsBackArrows: 'faded', + + // Display a presentation progress bar + progress: true, + + // Display the page number of the current slide + slideNumber: 'c/t', + + // 'all', 'print', or 'speaker' + showSlideNumber: 'all', + + // Add the current slide number to the URL hash so that reloading the + // page/copying the URL will return you to the same slide + hash: true, + + // Start with 1 for the hash rather than 0 + hashOneBasedIndex: false, + + // Flags if we should monitor the hash and change slides accordingly + respondToHashChanges: true, + + // Push each slide change to the browser history + history: true, + + // Enable keyboard shortcuts for navigation + keyboard: true, + + // Enable the slide overview mode + overview: true, + + // Disables the default reveal.js slide layout (scaling and centering) + // so that you can use custom CSS layout + disableLayout: false, + + // Vertical centering of slides + center: false, + + // Enables touch navigation on devices with touch input + touch: true, + + // Loop the presentation + loop: false, + + // Change the presentation direction to be RTL + rtl: false, + + // see https://revealjs.com/vertical-slides/#navigation-mode + navigationMode: 'linear', + + // Randomizes the order of slides each time the presentation loads + shuffle: false, + + // Turns fragments on and off globally + fragments: true, + + // Flags whether to include the current fragment in the URL, + // so that reloading brings you to the same fragment position + fragmentInURL: false, + + // Flags if the presentation is running in an embedded mode, + // i.e. contained within a limited portion of the screen + embedded: false, + + // Flags if we should show a help overlay when the questionmark + // key is pressed + help: true, + + // Flags if it should be possible to pause the presentation (blackout) + pause: true, + + // Flags if speaker notes should be visible to all viewers + showNotes: false, + + // Global override for autoplaying embedded media (null/true/false) + autoPlayMedia: null, + + // Global override for preloading lazy-loaded iframes (null/true/false) + preloadIframes: null, + + // Number of milliseconds between automatically proceeding to the + // next slide, disabled when set to 0, this value can be overwritten + // by using a data-autoslide attribute on your slides + autoSlide: 0, + + // Stop auto-sliding after user input + autoSlideStoppable: true, + + // Use this method for navigation when auto-sliding + autoSlideMethod: null, + + // Specify the average time in seconds that you think you will spend + // presenting each slide. This is used to show a pacing timer in the + // speaker view + defaultTiming: null, + + // Enable slide navigation via mouse wheel + mouseWheel: false, + + // The display mode that will be used to show slides + display: 'block', + + // Hide cursor if inactive + hideInactiveCursor: true, + + // Time before the cursor is hidden (in ms) + hideCursorTime: 5000, + + // Opens links in an iframe preview overlay + previewLinks: false, + + // Transition style (none/fade/slide/convex/concave/zoom) + transition: 'none', + + // Transition speed (default/fast/slow) + transitionSpeed: 'default', + + // Transition style for full page slide backgrounds + // (none/fade/slide/convex/concave/zoom) + backgroundTransition: 'none', + + // Number of slides away from the current that are visible + viewDistance: 3, + + // Number of slides away from the current that are visible on mobile + // devices. It is advisable to set this to a lower number than + // viewDistance in order to save resources. + mobileViewDistance: 2, + + // The "normal" size of the presentation, aspect ratio will be preserved + // when the presentation is scaled to fit different resolutions. Can be + // specified using percentage units. + width: 1600, + + height: 900, + + // Factor of the display size that should remain empty around the content + margin: 0.1, + + math: { + mathjax: 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js', + config: 'TeX-AMS_HTML-full', + tex2jax: { + inlineMath: [['\\(','\\)']], + displayMath: [['\\[','\\]']], + balanceBraces: true, + processEscapes: false, + processRefs: true, + processEnvironments: true, + preview: 'TeX', + skipTags: ['script','noscript','style','textarea','pre','code'], + ignoreClass: 'tex2jax_ignore', + processClass: 'tex2jax_process' + }, + }, + + // reveal.js plugins + plugins: [QuartoLineHighlight, PdfExport, RevealMenu, QuartoSupport, + + RevealMath, + RevealNotes, + RevealSearch, + RevealZoom + ] + }); + </script> + + <script> + // htmlwidgets need to know to resize themselves when slides are shown/hidden. + // Fire the "slideenter" event (handled by htmlwidgets.js) when the current + // slide changes (different for each slide format). + (function () { + function fireSlideChanged(previousSlide, currentSlide) { + + // dispatch for htmlwidgets + const event = window.document.createEvent("Event"); + event.initEvent("slideenter", true, true); + window.document.dispatchEvent(event); + + // dispatch for shiny + if (window.jQuery) { + if (previousSlide) { + window.jQuery(previousSlide).trigger("hidden"); + } + if (currentSlide) { + window.jQuery(currentSlide).trigger("shown"); + } + } + } + + // hookup for reveal + if (window.Reveal) { + window.Reveal.addEventListener("slidechanged", function(event) { + fireSlideChanged(event.previousSlide, event.currentSlide); + }); + } + + // hookup for slidy + if (window.w3c_slidy) { + window.w3c_slidy.add_observer(function (slide_num) { + // slide_num starts at position 1 + fireSlideChanged(null, w3c_slidy.slides[slide_num - 1]); + }); + } + + })(); + </script> + + <script id="quarto-html-after-body" type="application/javascript"> + window.document.addEventListener("DOMContentLoaded", function (event) { + const toggleBodyColorMode = (bsSheetEl) => { + const mode = bsSheetEl.getAttribute("data-mode"); + const bodyEl = window.document.querySelector("body"); + if (mode === "dark") { + bodyEl.classList.add("quarto-dark"); + bodyEl.classList.remove("quarto-light"); + } else { + bodyEl.classList.add("quarto-light"); + bodyEl.classList.remove("quarto-dark"); + } + } + const toggleBodyColorPrimary = () => { + const bsSheetEl = window.document.querySelector("link#quarto-bootstrap"); + if (bsSheetEl) { + toggleBodyColorMode(bsSheetEl); + } + } + toggleBodyColorPrimary(); + const tabsets = window.document.querySelectorAll(".panel-tabset-tabby") + tabsets.forEach(function(tabset) { + const tabby = new Tabby('#' + tabset.id); + }); + const clipboard = new window.ClipboardJS('.code-copy-button', { + target: function(trigger) { + return trigger.previousElementSibling; + } + }); + clipboard.on('success', function(e) { + // button target + const button = e.trigger; + // don't keep focus + button.blur(); + // flash "checked" + button.classList.add('code-copy-button-checked'); + var currentTitle = button.getAttribute("title"); + button.setAttribute("title", "Copied!"); + setTimeout(function() { + button.setAttribute("title", currentTitle); + button.classList.remove('code-copy-button-checked'); + }, 1000); + // clear code selection + e.clearSelection(); + }); + function tippyHover(el, contentFn) { + const config = { + allowHTML: true, + content: contentFn, + maxWidth: 500, + delay: 100, + arrow: false, + appendTo: function(el) { + return el.closest('section.slide') || el.parentElement; + }, + interactive: true, + interactiveBorder: 10, + theme: 'quarto-reveal', + placement: 'bottom-start' + }; + config['offset'] = [0,0]; + config['maxWidth'] = 700; + window.tippy(el, config); + } + const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]'); + for (var i=0; i<noterefs.length; i++) { + const ref = noterefs[i]; + tippyHover(ref, function() { + // use id or data attribute instead here + let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href'); + try { href = new URL(href).hash; } catch {} + const id = href.replace(/^#\/?/, ""); + const note = window.document.getElementById(id); + return note.innerHTML; + }); + } + var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]'); + for (var i=0; i<bibliorefs.length; i++) { + const ref = bibliorefs[i]; + const cites = ref.parentNode.getAttribute('data-cites').split(' '); + tippyHover(ref, function() { + var popup = window.document.createElement('div'); + cites.forEach(function(cite) { + var citeDiv = window.document.createElement('div'); + citeDiv.classList.add('hanging-indent'); + citeDiv.classList.add('csl-entry'); + var biblioDiv = window.document.getElementById('ref-' + cite); + if (biblioDiv) { + citeDiv.innerHTML = biblioDiv.innerHTML; + } + popup.appendChild(citeDiv); + }); + return popup.innerHTML; + }); + } + }); + </script> + + +</body></html> \ No newline at end of file diff --git a/public/slides/slides_files/figure-revealjs/unnamed-chunk-5-1.svg b/public/slides/slides_files/figure-revealjs/unnamed-chunk-5-1.svg new file mode 100644 index 0000000..8e5c61e --- /dev/null +++ b/public/slides/slides_files/figure-revealjs/unnamed-chunk-5-1.svg @@ -0,0 +1,670 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="360pt" height="367pt" viewBox="0 0 360 367" version="1.1"> +<defs> +<g> +<symbol overflow="visible" id="glyph0-0"> +<path style="stroke:none;" d="M 0.28125 0 L 0.28125 -6.3125 L 5.296875 -6.3125 L 5.296875 0 Z M 4.5 -0.796875 L 4.5 -5.515625 L 1.078125 -5.515625 L 1.078125 -0.796875 Z M 4.5 -0.796875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-1"> +<path style="stroke:none;" d="M 0.84375 -4.359375 L 0.84375 -4.953125 C 1.394531 -5.003906 1.78125 -5.09375 2 -5.21875 C 2.226562 -5.34375 2.394531 -5.644531 2.5 -6.125 L 3.109375 -6.125 L 3.109375 0 L 2.296875 0 L 2.296875 -4.359375 Z M 0.84375 -4.359375 "/> +</symbol> +<symbol overflow="visible" id="glyph0-2"> +<path style="stroke:none;" d="M 0.28125 0 C 0.300781 -0.53125 0.40625 -0.988281 0.59375 -1.375 C 0.789062 -1.769531 1.164062 -2.128906 1.71875 -2.453125 L 2.546875 -2.921875 C 2.910156 -3.140625 3.164062 -3.328125 3.3125 -3.484375 C 3.550781 -3.710938 3.671875 -3.984375 3.671875 -4.296875 C 3.671875 -4.648438 3.5625 -4.929688 3.34375 -5.140625 C 3.132812 -5.359375 2.847656 -5.46875 2.484375 -5.46875 C 1.960938 -5.46875 1.597656 -5.265625 1.390625 -4.859375 C 1.285156 -4.648438 1.226562 -4.351562 1.21875 -3.96875 L 0.421875 -3.96875 C 0.429688 -4.5 0.53125 -4.9375 0.71875 -5.28125 C 1.050781 -5.875 1.644531 -6.171875 2.5 -6.171875 C 3.195312 -6.171875 3.707031 -5.976562 4.03125 -5.59375 C 4.363281 -5.21875 4.53125 -4.796875 4.53125 -4.328125 C 4.53125 -3.835938 4.351562 -3.414062 4 -3.0625 C 3.800781 -2.863281 3.441406 -2.617188 2.921875 -2.328125 L 2.34375 -2 C 2.0625 -1.84375 1.835938 -1.695312 1.671875 -1.5625 C 1.390625 -1.3125 1.210938 -1.035156 1.140625 -0.734375 L 4.5 -0.734375 L 4.5 0 Z M 0.28125 0 "/> +</symbol> +<symbol overflow="visible" id="glyph0-3"> +<path style="stroke:none;" d="M 0.75 -0.9375 L 1.65625 -0.9375 L 1.65625 0 L 0.75 0 Z M 0.75 -0.9375 "/> +</symbol> +<symbol overflow="visible" id="glyph0-4"> +<path style="stroke:none;" d="M 1.09375 -1.5625 C 1.132812 -1.125 1.335938 -0.820312 1.703125 -0.65625 C 1.878906 -0.570312 2.09375 -0.53125 2.34375 -0.53125 C 2.800781 -0.53125 3.140625 -0.675781 3.359375 -0.96875 C 3.578125 -1.257812 3.6875 -1.582031 3.6875 -1.9375 C 3.6875 -2.363281 3.554688 -2.691406 3.296875 -2.921875 C 3.035156 -3.160156 2.71875 -3.28125 2.34375 -3.28125 C 2.082031 -3.28125 1.851562 -3.226562 1.65625 -3.125 C 1.46875 -3.019531 1.304688 -2.878906 1.171875 -2.703125 L 0.5 -2.734375 L 0.96875 -6.046875 L 4.171875 -6.046875 L 4.171875 -5.296875 L 1.5625 -5.296875 L 1.296875 -3.59375 C 1.429688 -3.695312 1.566406 -3.773438 1.703125 -3.828125 C 1.929688 -3.929688 2.195312 -3.984375 2.5 -3.984375 C 3.0625 -3.984375 3.535156 -3.800781 3.921875 -3.4375 C 4.316406 -3.070312 4.515625 -2.609375 4.515625 -2.046875 C 4.515625 -1.460938 4.332031 -0.945312 3.96875 -0.5 C 3.613281 -0.0625 3.046875 0.15625 2.265625 0.15625 C 1.753906 0.15625 1.304688 0.015625 0.921875 -0.265625 C 0.546875 -0.546875 0.332031 -0.976562 0.28125 -1.5625 Z M 1.09375 -1.5625 "/> +</symbol> +<symbol overflow="visible" id="glyph0-5"> +<path style="stroke:none;" d="M 2.375 -6.15625 C 3.175781 -6.15625 3.753906 -5.828125 4.109375 -5.171875 C 4.378906 -4.660156 4.515625 -3.960938 4.515625 -3.078125 C 4.515625 -2.242188 4.390625 -1.554688 4.140625 -1.015625 C 3.785156 -0.222656 3.195312 0.171875 2.375 0.171875 C 1.632812 0.171875 1.082031 -0.148438 0.71875 -0.796875 C 0.425781 -1.328125 0.28125 -2.046875 0.28125 -2.953125 C 0.28125 -3.648438 0.367188 -4.25 0.546875 -4.75 C 0.878906 -5.6875 1.488281 -6.15625 2.375 -6.15625 Z M 2.375 -0.53125 C 2.769531 -0.53125 3.085938 -0.707031 3.328125 -1.0625 C 3.566406 -1.425781 3.6875 -2.085938 3.6875 -3.046875 C 3.6875 -3.753906 3.597656 -4.332031 3.421875 -4.78125 C 3.253906 -5.226562 2.921875 -5.453125 2.421875 -5.453125 C 1.972656 -5.453125 1.640625 -5.238281 1.421875 -4.8125 C 1.210938 -4.382812 1.109375 -3.753906 1.109375 -2.921875 C 1.109375 -2.296875 1.175781 -1.789062 1.3125 -1.40625 C 1.519531 -0.820312 1.875 -0.53125 2.375 -0.53125 Z M 2.375 -0.53125 "/> +</symbol> +<symbol overflow="visible" id="glyph0-6"> +<path style="stroke:none;" d="M 4.59375 -6.046875 L 4.59375 -5.375 C 4.394531 -5.175781 4.128906 -4.835938 3.796875 -4.359375 C 3.472656 -3.890625 3.1875 -3.378906 2.9375 -2.828125 C 2.6875 -2.296875 2.5 -1.8125 2.375 -1.375 C 2.289062 -1.082031 2.179688 -0.625 2.046875 0 L 1.203125 0 C 1.390625 -1.175781 1.816406 -2.34375 2.484375 -3.5 C 2.878906 -4.1875 3.289062 -4.773438 3.71875 -5.265625 L 0.328125 -5.265625 L 0.328125 -6.046875 Z M 4.59375 -6.046875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-7"> +<path style="stroke:none;" d="M 2.90625 -2.171875 L 2.90625 -4.96875 L 0.9375 -2.171875 Z M 2.921875 0 L 2.921875 -1.5 L 0.21875 -1.5 L 0.21875 -2.265625 L 3.046875 -6.171875 L 3.6875 -6.171875 L 3.6875 -2.171875 L 4.59375 -2.171875 L 4.59375 -1.5 L 3.6875 -1.5 L 3.6875 0 Z M 2.921875 0 "/> +</symbol> +<symbol overflow="visible" id="glyph0-8"> +<path style="stroke:none;" d="M 2.578125 -6.171875 C 3.265625 -6.171875 3.742188 -5.992188 4.015625 -5.640625 C 4.285156 -5.285156 4.421875 -4.921875 4.421875 -4.546875 L 3.65625 -4.546875 C 3.601562 -4.785156 3.53125 -4.972656 3.4375 -5.109375 C 3.25 -5.367188 2.960938 -5.5 2.578125 -5.5 C 2.148438 -5.5 1.804688 -5.296875 1.546875 -4.890625 C 1.296875 -4.492188 1.15625 -3.925781 1.125 -3.1875 C 1.300781 -3.445312 1.523438 -3.640625 1.796875 -3.765625 C 2.046875 -3.878906 2.320312 -3.9375 2.625 -3.9375 C 3.132812 -3.9375 3.582031 -3.769531 3.96875 -3.4375 C 4.351562 -3.113281 4.546875 -2.625 4.546875 -1.96875 C 4.546875 -1.414062 4.363281 -0.921875 4 -0.484375 C 3.632812 -0.0546875 3.117188 0.15625 2.453125 0.15625 C 1.867188 0.15625 1.367188 -0.0625 0.953125 -0.5 C 0.535156 -0.9375 0.328125 -1.671875 0.328125 -2.703125 C 0.328125 -3.460938 0.421875 -4.109375 0.609375 -4.640625 C 0.960938 -5.660156 1.617188 -6.171875 2.578125 -6.171875 Z M 2.515625 -0.53125 C 2.921875 -0.53125 3.222656 -0.664062 3.421875 -0.9375 C 3.628906 -1.207031 3.734375 -1.53125 3.734375 -1.90625 C 3.734375 -2.21875 3.640625 -2.515625 3.453125 -2.796875 C 3.273438 -3.085938 2.953125 -3.234375 2.484375 -3.234375 C 2.148438 -3.234375 1.859375 -3.125 1.609375 -2.90625 C 1.359375 -2.6875 1.234375 -2.351562 1.234375 -1.90625 C 1.234375 -1.519531 1.34375 -1.191406 1.5625 -0.921875 C 1.789062 -0.660156 2.109375 -0.53125 2.515625 -0.53125 Z M 2.515625 -0.53125 "/> +</symbol> +<symbol overflow="visible" id="glyph0-9"> +<path style="stroke:none;" d="M 0.859375 -6.3125 L 1.734375 -6.3125 L 1.734375 0 L 0.859375 0 Z M 0.859375 -6.3125 "/> +</symbol> +<symbol overflow="visible" id="glyph0-10"> +<path style="stroke:none;" d="M 0.5625 -4.59375 L 1.328125 -4.59375 L 1.328125 -3.953125 C 1.515625 -4.171875 1.679688 -4.332031 1.828125 -4.4375 C 2.085938 -4.613281 2.378906 -4.703125 2.703125 -4.703125 C 3.066406 -4.703125 3.359375 -4.613281 3.578125 -4.4375 C 3.703125 -4.332031 3.816406 -4.179688 3.921875 -3.984375 C 4.097656 -4.222656 4.300781 -4.398438 4.53125 -4.515625 C 4.757812 -4.640625 5.019531 -4.703125 5.3125 -4.703125 C 5.925781 -4.703125 6.347656 -4.476562 6.578125 -4.03125 C 6.691406 -3.789062 6.75 -3.46875 6.75 -3.0625 L 6.75 0 L 5.953125 0 L 5.953125 -3.203125 C 5.953125 -3.503906 5.875 -3.710938 5.71875 -3.828125 C 5.570312 -3.941406 5.382812 -4 5.15625 -4 C 4.851562 -4 4.59375 -3.894531 4.375 -3.6875 C 4.15625 -3.488281 4.046875 -3.148438 4.046875 -2.671875 L 4.046875 0 L 3.265625 0 L 3.265625 -3 C 3.265625 -3.3125 3.226562 -3.539062 3.15625 -3.6875 C 3.039062 -3.894531 2.820312 -4 2.5 -4 C 2.207031 -4 1.941406 -3.882812 1.703125 -3.65625 C 1.460938 -3.4375 1.34375 -3.03125 1.34375 -2.4375 L 1.34375 0 L 0.5625 0 Z M 0.5625 -4.59375 "/> +</symbol> +<symbol overflow="visible" id="glyph0-11"> +<path style="stroke:none;" d="M 2.515625 -0.515625 C 2.867188 -0.515625 3.164062 -0.664062 3.40625 -0.96875 C 3.644531 -1.269531 3.765625 -1.722656 3.765625 -2.328125 C 3.765625 -2.691406 3.710938 -3.003906 3.609375 -3.265625 C 3.410156 -3.773438 3.046875 -4.03125 2.515625 -4.03125 C 1.972656 -4.03125 1.601562 -3.765625 1.40625 -3.234375 C 1.300781 -2.941406 1.25 -2.578125 1.25 -2.140625 C 1.25 -1.785156 1.300781 -1.484375 1.40625 -1.234375 C 1.601562 -0.753906 1.972656 -0.515625 2.515625 -0.515625 Z M 0.5 -4.578125 L 1.265625 -4.578125 L 1.265625 -3.96875 C 1.410156 -4.175781 1.578125 -4.335938 1.765625 -4.453125 C 2.023438 -4.628906 2.332031 -4.71875 2.6875 -4.71875 C 3.207031 -4.71875 3.648438 -4.515625 4.015625 -4.109375 C 4.378906 -3.710938 4.5625 -3.144531 4.5625 -2.40625 C 4.5625 -1.394531 4.296875 -0.675781 3.765625 -0.25 C 3.429688 0.0195312 3.046875 0.15625 2.609375 0.15625 C 2.265625 0.15625 1.972656 0.078125 1.734375 -0.078125 C 1.597656 -0.160156 1.445312 -0.304688 1.28125 -0.515625 L 1.28125 1.828125 L 0.5 1.828125 Z M 0.5 -4.578125 "/> +</symbol> +<symbol overflow="visible" id="glyph0-12"> +<path style="stroke:none;" d="M 1.15625 -1.21875 C 1.15625 -1 1.238281 -0.820312 1.40625 -0.6875 C 1.570312 -0.5625 1.765625 -0.5 1.984375 -0.5 C 2.253906 -0.5 2.519531 -0.5625 2.78125 -0.6875 C 3.207031 -0.894531 3.421875 -1.238281 3.421875 -1.71875 L 3.421875 -2.34375 C 3.328125 -2.28125 3.203125 -2.226562 3.046875 -2.1875 C 2.898438 -2.144531 2.753906 -2.117188 2.609375 -2.109375 L 2.140625 -2.046875 C 1.867188 -2.003906 1.660156 -1.945312 1.515625 -1.875 C 1.273438 -1.738281 1.15625 -1.519531 1.15625 -1.21875 Z M 3.03125 -2.78125 C 3.207031 -2.8125 3.328125 -2.890625 3.390625 -3.015625 C 3.421875 -3.078125 3.4375 -3.175781 3.4375 -3.3125 C 3.4375 -3.570312 3.34375 -3.757812 3.15625 -3.875 C 2.96875 -4 2.703125 -4.0625 2.359375 -4.0625 C 1.953125 -4.0625 1.664062 -3.953125 1.5 -3.734375 C 1.40625 -3.609375 1.34375 -3.429688 1.3125 -3.203125 L 0.59375 -3.203125 C 0.601562 -3.765625 0.785156 -4.15625 1.140625 -4.375 C 1.492188 -4.601562 1.90625 -4.71875 2.375 -4.71875 C 2.914062 -4.71875 3.351562 -4.613281 3.6875 -4.40625 C 4.019531 -4.195312 4.1875 -3.875 4.1875 -3.4375 L 4.1875 -0.796875 C 4.1875 -0.710938 4.203125 -0.644531 4.234375 -0.59375 C 4.273438 -0.550781 4.347656 -0.53125 4.453125 -0.53125 C 4.484375 -0.53125 4.519531 -0.53125 4.5625 -0.53125 C 4.601562 -0.53125 4.648438 -0.535156 4.703125 -0.546875 L 4.703125 0.015625 C 4.578125 0.0546875 4.484375 0.078125 4.421875 0.078125 C 4.359375 0.0859375 4.273438 0.09375 4.171875 0.09375 C 3.898438 0.09375 3.707031 0 3.59375 -0.1875 C 3.53125 -0.28125 3.484375 -0.421875 3.453125 -0.609375 C 3.296875 -0.398438 3.070312 -0.21875 2.78125 -0.0625 C 2.488281 0.0820312 2.160156 0.15625 1.796875 0.15625 C 1.367188 0.15625 1.019531 0.0234375 0.75 -0.234375 C 0.488281 -0.492188 0.359375 -0.816406 0.359375 -1.203125 C 0.359375 -1.628906 0.488281 -1.957031 0.75 -2.1875 C 1.019531 -2.425781 1.367188 -2.578125 1.796875 -2.640625 Z M 2.390625 -4.71875 Z M 2.390625 -4.71875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-13"> +<path style="stroke:none;" d="M 0.5625 -4.578125 L 1.359375 -4.578125 L 1.359375 0 L 0.5625 0 Z M 0.5625 -6.3125 L 1.359375 -6.3125 L 1.359375 -5.4375 L 0.5625 -5.4375 Z M 0.5625 -6.3125 "/> +</symbol> +<symbol overflow="visible" id="glyph0-14"> +<path style="stroke:none;" d="M 0.59375 -4.59375 L 1.328125 -4.59375 L 1.328125 -3.8125 C 1.378906 -3.957031 1.523438 -4.140625 1.765625 -4.359375 C 2.003906 -4.585938 2.273438 -4.703125 2.578125 -4.703125 C 2.585938 -4.703125 2.609375 -4.695312 2.640625 -4.6875 C 2.679688 -4.6875 2.742188 -4.6875 2.828125 -4.6875 L 2.828125 -3.859375 C 2.773438 -3.867188 2.726562 -3.875 2.6875 -3.875 C 2.65625 -3.882812 2.617188 -3.890625 2.578125 -3.890625 C 2.179688 -3.890625 1.878906 -3.765625 1.671875 -3.515625 C 1.460938 -3.265625 1.359375 -2.972656 1.359375 -2.640625 L 1.359375 0 L 0.59375 0 Z M 0.59375 -4.59375 "/> +</symbol> +<symbol overflow="visible" id="glyph0-15"> +<path style="stroke:none;" d="M 2.484375 -4.703125 C 2.804688 -4.703125 3.117188 -4.625 3.421875 -4.46875 C 3.734375 -4.320312 3.96875 -4.125 4.125 -3.875 C 4.28125 -3.644531 4.382812 -3.375 4.4375 -3.0625 C 4.488281 -2.851562 4.515625 -2.515625 4.515625 -2.046875 L 1.140625 -2.046875 C 1.148438 -1.585938 1.257812 -1.210938 1.46875 -0.921875 C 1.675781 -0.640625 1.992188 -0.5 2.421875 -0.5 C 2.828125 -0.5 3.148438 -0.632812 3.390625 -0.90625 C 3.523438 -1.0625 3.625 -1.238281 3.6875 -1.4375 L 4.453125 -1.4375 C 4.429688 -1.269531 4.363281 -1.082031 4.25 -0.875 C 4.132812 -0.664062 4.003906 -0.5 3.859375 -0.375 C 3.628906 -0.144531 3.34375 0.0078125 3 0.09375 C 2.8125 0.132812 2.597656 0.15625 2.359375 0.15625 C 1.785156 0.15625 1.300781 -0.0507812 0.90625 -0.46875 C 0.507812 -0.882812 0.3125 -1.46875 0.3125 -2.21875 C 0.3125 -2.945312 0.507812 -3.539062 0.90625 -4 C 1.3125 -4.46875 1.835938 -4.703125 2.484375 -4.703125 Z M 3.71875 -2.671875 C 3.6875 -3.003906 3.613281 -3.269531 3.5 -3.46875 C 3.28125 -3.84375 2.925781 -4.03125 2.4375 -4.03125 C 2.082031 -4.03125 1.785156 -3.898438 1.546875 -3.640625 C 1.304688 -3.390625 1.175781 -3.066406 1.15625 -2.671875 Z M 2.40625 -4.71875 Z M 2.40625 -4.71875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-16"> +<path style="stroke:none;" d="M 1.0625 -2.25 C 1.0625 -1.75 1.164062 -1.332031 1.375 -1 C 1.582031 -0.675781 1.914062 -0.515625 2.375 -0.515625 C 2.726562 -0.515625 3.019531 -0.664062 3.25 -0.96875 C 3.488281 -1.28125 3.609375 -1.722656 3.609375 -2.296875 C 3.609375 -2.878906 3.488281 -3.304688 3.25 -3.578125 C 3.007812 -3.859375 2.710938 -4 2.359375 -4 C 1.972656 -4 1.660156 -3.847656 1.421875 -3.546875 C 1.179688 -3.253906 1.0625 -2.820312 1.0625 -2.25 Z M 2.21875 -4.6875 C 2.570312 -4.6875 2.867188 -4.609375 3.109375 -4.453125 C 3.242188 -4.367188 3.398438 -4.21875 3.578125 -4 L 3.578125 -6.328125 L 4.3125 -6.328125 L 4.3125 0 L 3.625 0 L 3.625 -0.640625 C 3.4375 -0.359375 3.21875 -0.15625 2.96875 -0.03125 C 2.726562 0.09375 2.453125 0.15625 2.140625 0.15625 C 1.617188 0.15625 1.171875 -0.0546875 0.796875 -0.484375 C 0.421875 -0.910156 0.234375 -1.484375 0.234375 -2.203125 C 0.234375 -2.867188 0.40625 -3.445312 0.75 -3.9375 C 1.09375 -4.4375 1.582031 -4.6875 2.21875 -4.6875 Z M 2.21875 -4.6875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-17"> +<path style="stroke:none;" d="M 3.328125 -6.484375 C 4.128906 -6.484375 4.75 -6.269531 5.1875 -5.84375 C 5.625 -5.425781 5.867188 -4.953125 5.921875 -4.421875 L 5.09375 -4.421875 C 5 -4.828125 4.8125 -5.144531 4.53125 -5.375 C 4.25 -5.613281 3.851562 -5.734375 3.34375 -5.734375 C 2.71875 -5.734375 2.210938 -5.515625 1.828125 -5.078125 C 1.453125 -4.640625 1.265625 -3.972656 1.265625 -3.078125 C 1.265625 -2.335938 1.4375 -1.738281 1.78125 -1.28125 C 2.125 -0.820312 2.632812 -0.59375 3.3125 -0.59375 C 3.945312 -0.59375 4.429688 -0.832031 4.765625 -1.3125 C 4.929688 -1.570312 5.0625 -1.90625 5.15625 -2.3125 L 5.984375 -2.3125 C 5.910156 -1.65625 5.664062 -1.101562 5.25 -0.65625 C 4.75 -0.113281 4.070312 0.15625 3.21875 0.15625 C 2.488281 0.15625 1.875 -0.0625 1.375 -0.5 C 0.71875 -1.09375 0.390625 -2 0.390625 -3.21875 C 0.390625 -4.15625 0.632812 -4.921875 1.125 -5.515625 C 1.65625 -6.160156 2.390625 -6.484375 3.328125 -6.484375 Z M 3.15625 -6.484375 Z M 3.15625 -6.484375 "/> +</symbol> +<symbol overflow="visible" id="glyph0-18"> +<path style="stroke:none;" d="M 2.390625 -0.5 C 2.898438 -0.5 3.25 -0.691406 3.4375 -1.078125 C 3.632812 -1.460938 3.734375 -1.894531 3.734375 -2.375 C 3.734375 -2.800781 3.664062 -3.148438 3.53125 -3.421875 C 3.3125 -3.847656 2.9375 -4.0625 2.40625 -4.0625 C 1.925781 -4.0625 1.578125 -3.878906 1.359375 -3.515625 C 1.148438 -3.160156 1.046875 -2.726562 1.046875 -2.21875 C 1.046875 -1.726562 1.148438 -1.316406 1.359375 -0.984375 C 1.578125 -0.660156 1.921875 -0.5 2.390625 -0.5 Z M 2.421875 -4.734375 C 3.015625 -4.734375 3.515625 -4.535156 3.921875 -4.140625 C 4.335938 -3.742188 4.546875 -3.160156 4.546875 -2.390625 C 4.546875 -1.648438 4.363281 -1.035156 4 -0.546875 C 3.632812 -0.0664062 3.070312 0.171875 2.3125 0.171875 C 1.6875 0.171875 1.1875 -0.0390625 0.8125 -0.46875 C 0.4375 -0.894531 0.25 -1.472656 0.25 -2.203125 C 0.25 -2.972656 0.445312 -3.585938 0.84375 -4.046875 C 1.238281 -4.503906 1.765625 -4.734375 2.421875 -4.734375 Z M 2.390625 -4.71875 Z M 2.390625 -4.71875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-19"> +<path style="stroke:none;" d="M 0.5625 -4.59375 L 1.296875 -4.59375 L 1.296875 -3.953125 C 1.515625 -4.210938 1.742188 -4.398438 1.984375 -4.515625 C 2.234375 -4.640625 2.507812 -4.703125 2.8125 -4.703125 C 3.457031 -4.703125 3.894531 -4.472656 4.125 -4.015625 C 4.25 -3.765625 4.3125 -3.410156 4.3125 -2.953125 L 4.3125 0 L 3.53125 0 L 3.53125 -2.90625 C 3.53125 -3.175781 3.488281 -3.398438 3.40625 -3.578125 C 3.269531 -3.859375 3.019531 -4 2.65625 -4 C 2.476562 -4 2.328125 -3.984375 2.203125 -3.953125 C 1.992188 -3.890625 1.8125 -3.765625 1.65625 -3.578125 C 1.519531 -3.421875 1.429688 -3.257812 1.390625 -3.09375 C 1.359375 -2.9375 1.34375 -2.707031 1.34375 -2.40625 L 1.34375 0 L 0.5625 0 Z M 2.390625 -4.71875 Z M 2.390625 -4.71875 "/> +</symbol> +<symbol overflow="visible" id="glyph0-20"> +<path style="stroke:none;" d="M 0.71875 -5.890625 L 1.5 -5.890625 L 1.5 -4.59375 L 2.234375 -4.59375 L 2.234375 -3.96875 L 1.5 -3.96875 L 1.5 -0.96875 C 1.5 -0.800781 1.554688 -0.691406 1.671875 -0.640625 C 1.722656 -0.609375 1.820312 -0.59375 1.96875 -0.59375 C 2 -0.59375 2.035156 -0.59375 2.078125 -0.59375 C 2.128906 -0.59375 2.179688 -0.597656 2.234375 -0.609375 L 2.234375 0 C 2.148438 0.0195312 2.054688 0.0351562 1.953125 0.046875 C 1.859375 0.0664062 1.757812 0.078125 1.65625 0.078125 C 1.289062 0.078125 1.039062 -0.015625 0.90625 -0.203125 C 0.78125 -0.390625 0.71875 -0.628906 0.71875 -0.921875 L 0.71875 -3.96875 L 0.09375 -3.96875 L 0.09375 -4.59375 L 0.71875 -4.59375 Z M 0.71875 -5.890625 "/> +</symbol> +<symbol overflow="visible" id="glyph0-21"> +<path style="stroke:none;" d="M 0.59375 -6.3125 L 1.359375 -6.3125 L 1.359375 0 L 0.59375 0 Z M 0.59375 -6.3125 "/> +</symbol> +<symbol overflow="visible" id="glyph1-0"> +<path style="stroke:none;" d="M 0.359375 0 L 0.359375 -7.890625 L 6.625 -7.890625 L 6.625 0 Z M 5.625 -0.984375 L 5.625 -6.90625 L 1.34375 -6.90625 L 1.34375 -0.984375 Z M 5.625 -0.984375 "/> +</symbol> +<symbol overflow="visible" id="glyph1-1"> +<path style="stroke:none;" d="M 0.90625 -7.359375 L 1.875 -7.359375 L 1.875 -5.75 L 2.796875 -5.75 L 2.796875 -4.96875 L 1.875 -4.96875 L 1.875 -1.203125 C 1.875 -1.003906 1.941406 -0.875 2.078125 -0.8125 C 2.160156 -0.769531 2.285156 -0.75 2.453125 -0.75 C 2.503906 -0.75 2.554688 -0.75 2.609375 -0.75 C 2.660156 -0.75 2.722656 -0.753906 2.796875 -0.765625 L 2.796875 0 C 2.679688 0.03125 2.5625 0.0507812 2.4375 0.0625 C 2.320312 0.0820312 2.195312 0.09375 2.0625 0.09375 C 1.613281 0.09375 1.304688 -0.0195312 1.140625 -0.25 C 0.984375 -0.488281 0.90625 -0.789062 0.90625 -1.15625 L 0.90625 -4.96875 L 0.125 -4.96875 L 0.125 -5.75 L 0.90625 -5.75 Z M 0.90625 -7.359375 "/> +</symbol> +<symbol overflow="visible" id="glyph1-2"> +<path style="stroke:none;" d="M 1.453125 -1.53125 C 1.453125 -1.25 1.550781 -1.023438 1.75 -0.859375 C 1.957031 -0.703125 2.203125 -0.625 2.484375 -0.625 C 2.816406 -0.625 3.144531 -0.703125 3.46875 -0.859375 C 4.007812 -1.117188 4.28125 -1.550781 4.28125 -2.15625 L 4.28125 -2.921875 C 4.15625 -2.847656 4 -2.785156 3.8125 -2.734375 C 3.632812 -2.691406 3.453125 -2.65625 3.265625 -2.625 L 2.6875 -2.5625 C 2.332031 -2.507812 2.066406 -2.4375 1.890625 -2.34375 C 1.597656 -2.164062 1.453125 -1.894531 1.453125 -1.53125 Z M 3.796875 -3.484375 C 4.015625 -3.515625 4.160156 -3.609375 4.234375 -3.765625 C 4.273438 -3.847656 4.296875 -3.972656 4.296875 -4.140625 C 4.296875 -4.460938 4.175781 -4.695312 3.9375 -4.84375 C 3.707031 -5 3.375 -5.078125 2.9375 -5.078125 C 2.4375 -5.078125 2.082031 -4.941406 1.875 -4.671875 C 1.75 -4.515625 1.671875 -4.289062 1.640625 -4 L 0.734375 -4 C 0.753906 -4.707031 0.984375 -5.195312 1.421875 -5.46875 C 1.867188 -5.75 2.382812 -5.890625 2.96875 -5.890625 C 3.644531 -5.890625 4.191406 -5.757812 4.609375 -5.5 C 5.035156 -5.25 5.25 -4.847656 5.25 -4.296875 L 5.25 -0.984375 C 5.25 -0.890625 5.265625 -0.8125 5.296875 -0.75 C 5.335938 -0.6875 5.425781 -0.65625 5.5625 -0.65625 C 5.601562 -0.65625 5.648438 -0.65625 5.703125 -0.65625 C 5.765625 -0.664062 5.820312 -0.675781 5.875 -0.6875 L 5.875 0.03125 C 5.726562 0.0703125 5.613281 0.0976562 5.53125 0.109375 C 5.457031 0.117188 5.351562 0.125 5.21875 0.125 C 4.882812 0.125 4.640625 0.00390625 4.484375 -0.234375 C 4.410156 -0.359375 4.359375 -0.535156 4.328125 -0.765625 C 4.128906 -0.503906 3.84375 -0.28125 3.46875 -0.09375 C 3.101562 0.09375 2.695312 0.1875 2.25 0.1875 C 1.71875 0.1875 1.28125 0.0234375 0.9375 -0.296875 C 0.601562 -0.617188 0.4375 -1.023438 0.4375 -1.515625 C 0.4375 -2.046875 0.601562 -2.457031 0.9375 -2.75 C 1.269531 -3.039062 1.707031 -3.222656 2.25 -3.296875 Z M 2.984375 -5.890625 Z M 2.984375 -5.890625 "/> +</symbol> +<symbol overflow="visible" id="glyph1-3"> +<path style="stroke:none;" d="M 1.671875 -5.75 L 1.671875 -1.9375 C 1.671875 -1.644531 1.71875 -1.40625 1.8125 -1.21875 C 1.988281 -0.875 2.3125 -0.703125 2.78125 -0.703125 C 3.445312 -0.703125 3.90625 -1 4.15625 -1.59375 C 4.28125 -1.914062 4.34375 -2.359375 4.34375 -2.921875 L 4.34375 -5.75 L 5.3125 -5.75 L 5.3125 0 L 4.40625 0 L 4.421875 -0.84375 C 4.296875 -0.625 4.140625 -0.441406 3.953125 -0.296875 C 3.578125 0.00390625 3.128906 0.15625 2.609375 0.15625 C 1.785156 0.15625 1.222656 -0.117188 0.921875 -0.671875 C 0.765625 -0.960938 0.6875 -1.351562 0.6875 -1.84375 L 0.6875 -5.75 Z M 3 -5.890625 Z M 3 -5.890625 "/> +</symbol> +<symbol overflow="visible" id="glyph1-4"> +<path style="stroke:none;" d="M 4.15625 -8.109375 C 5.15625 -8.109375 5.929688 -7.84375 6.484375 -7.3125 C 7.035156 -6.789062 7.34375 -6.191406 7.40625 -5.515625 L 6.359375 -5.515625 C 6.242188 -6.023438 6.007812 -6.425781 5.65625 -6.71875 C 5.300781 -7.019531 4.804688 -7.171875 4.171875 -7.171875 C 3.398438 -7.171875 2.773438 -6.894531 2.296875 -6.34375 C 1.816406 -5.800781 1.578125 -4.96875 1.578125 -3.84375 C 1.578125 -2.914062 1.789062 -2.164062 2.21875 -1.59375 C 2.65625 -1.019531 3.300781 -0.734375 4.15625 -0.734375 C 4.9375 -0.734375 5.535156 -1.035156 5.953125 -1.640625 C 6.171875 -1.960938 6.332031 -2.382812 6.4375 -2.90625 L 7.484375 -2.90625 C 7.390625 -2.070312 7.082031 -1.375 6.5625 -0.8125 C 5.9375 -0.132812 5.085938 0.203125 4.015625 0.203125 C 3.097656 0.203125 2.332031 -0.0703125 1.71875 -0.625 C 0.894531 -1.363281 0.484375 -2.5 0.484375 -4.03125 C 0.484375 -5.195312 0.789062 -6.148438 1.40625 -6.890625 C 2.070312 -7.703125 2.988281 -8.109375 4.15625 -8.109375 Z M 3.953125 -8.109375 Z M 3.953125 -8.109375 "/> +</symbol> +<symbol overflow="visible" id="glyph1-5"> +<path style="stroke:none;" d="M 0.734375 -7.890625 L 1.703125 -7.890625 L 1.703125 0 L 0.734375 0 Z M 0.734375 -7.890625 "/> +</symbol> +<symbol overflow="visible" id="glyph1-6"> +<path style="stroke:none;" d="M 1.28125 -1.8125 C 1.3125 -1.488281 1.394531 -1.238281 1.53125 -1.0625 C 1.769531 -0.75 2.191406 -0.59375 2.796875 -0.59375 C 3.148438 -0.59375 3.460938 -0.671875 3.734375 -0.828125 C 4.003906 -0.984375 4.140625 -1.222656 4.140625 -1.546875 C 4.140625 -1.796875 4.03125 -1.984375 3.8125 -2.109375 C 3.675781 -2.191406 3.398438 -2.285156 2.984375 -2.390625 L 2.21875 -2.578125 C 1.726562 -2.703125 1.367188 -2.835938 1.140625 -2.984375 C 0.722656 -3.253906 0.515625 -3.617188 0.515625 -4.078125 C 0.515625 -4.617188 0.707031 -5.054688 1.09375 -5.390625 C 1.488281 -5.734375 2.019531 -5.90625 2.6875 -5.90625 C 3.550781 -5.90625 4.175781 -5.648438 4.5625 -5.140625 C 4.800781 -4.816406 4.914062 -4.46875 4.90625 -4.09375 L 4 -4.09375 C 3.976562 -4.3125 3.898438 -4.507812 3.765625 -4.6875 C 3.546875 -4.945312 3.160156 -5.078125 2.609375 -5.078125 C 2.242188 -5.078125 1.96875 -5.003906 1.78125 -4.859375 C 1.59375 -4.722656 1.5 -4.539062 1.5 -4.3125 C 1.5 -4.0625 1.625 -3.863281 1.875 -3.71875 C 2.007812 -3.625 2.21875 -3.539062 2.5 -3.46875 L 3.140625 -3.3125 C 3.835938 -3.144531 4.300781 -2.984375 4.53125 -2.828125 C 4.914062 -2.578125 5.109375 -2.191406 5.109375 -1.671875 C 5.109375 -1.148438 4.910156 -0.703125 4.515625 -0.328125 C 4.128906 0.0351562 3.539062 0.21875 2.75 0.21875 C 1.894531 0.21875 1.285156 0.0234375 0.921875 -0.359375 C 0.566406 -0.753906 0.378906 -1.238281 0.359375 -1.8125 Z M 2.71875 -5.890625 Z M 2.71875 -5.890625 "/> +</symbol> +<symbol overflow="visible" id="glyph2-0"> +<path style="stroke:none;" d="M 0 -0.359375 L -7.890625 -0.359375 L -7.890625 -6.625 L 0 -6.625 Z M -0.984375 -5.625 L -6.90625 -5.625 L -6.90625 -1.34375 L -0.984375 -1.34375 Z M -0.984375 -5.625 "/> +</symbol> +<symbol overflow="visible" id="glyph2-1"> +<path style="stroke:none;" d="M -7.890625 -1.46875 L -1.171875 -3.734375 L -7.890625 -5.96875 L -7.890625 -7.171875 L 0 -4.28125 L 0 -3.15625 L -7.890625 -0.28125 Z M -7.890625 -1.46875 "/> +</symbol> +<symbol overflow="visible" id="glyph2-2"> +<path style="stroke:none;" d="M -7.890625 -0.9375 L -7.890625 -6.6875 L -6.921875 -6.6875 L -6.921875 -1.984375 L -4.53125 -1.984375 L -4.53125 -6.34375 L -3.609375 -6.34375 L -3.609375 -1.984375 L -0.9375 -1.984375 L -0.9375 -6.765625 L 0 -6.765625 L 0 -0.9375 Z M -7.890625 -3.859375 Z M -7.890625 -3.859375 "/> +</symbol> +<symbol overflow="visible" id="glyph2-3"> +<path style="stroke:none;" d="M -8.09375 -4.25 C -8.09375 -4.988281 -7.953125 -5.628906 -7.671875 -6.171875 C -7.253906 -6.953125 -6.53125 -7.429688 -5.5 -7.609375 L -5.5 -6.546875 C -6.070312 -6.421875 -6.488281 -6.15625 -6.75 -5.75 C -7.019531 -5.34375 -7.15625 -4.832031 -7.15625 -4.21875 C -7.15625 -3.488281 -6.878906 -2.875 -6.328125 -2.375 C -5.785156 -1.875 -4.972656 -1.625 -3.890625 -1.625 C -2.941406 -1.625 -2.171875 -1.828125 -1.578125 -2.234375 C -0.992188 -2.648438 -0.703125 -3.328125 -0.703125 -4.265625 C -0.703125 -4.972656 -0.910156 -5.5625 -1.328125 -6.03125 C -1.742188 -6.5 -2.410156 -6.738281 -3.328125 -6.75 L -3.328125 -4.28125 L -4.21875 -4.28125 L -4.21875 -7.734375 L 0 -7.734375 L 0 -7.046875 L -1.015625 -6.796875 C -0.617188 -6.429688 -0.34375 -6.109375 -0.1875 -5.828125 C 0.0703125 -5.359375 0.203125 -4.765625 0.203125 -4.046875 C 0.203125 -3.109375 -0.0976562 -2.304688 -0.703125 -1.640625 C -1.460938 -0.898438 -2.503906 -0.53125 -3.828125 -0.53125 C -5.148438 -0.53125 -6.203125 -0.890625 -6.984375 -1.609375 C -7.722656 -2.285156 -8.09375 -3.164062 -8.09375 -4.25 Z M -8.109375 -4.078125 Z M -8.109375 -4.078125 "/> +</symbol> +<symbol overflow="visible" id="glyph2-4"> +<path style="stroke:none;" d="M -7.890625 -0.9375 L -7.890625 -6.40625 L -6.921875 -6.40625 L -6.921875 -2.015625 L -4.53125 -2.015625 L -4.53125 -5.875 L -3.59375 -5.875 L -3.59375 -2.015625 L 0 -2.015625 L 0 -0.9375 Z M -7.890625 -0.9375 "/> +</symbol> +</g> +<clipPath id="clip1"> + <path d="M 40.601562 265 L 275.605469 265 L 275.605469 266 L 40.601562 266 Z M 40.601562 265 "/> +</clipPath> +<clipPath id="clip2"> + <path d="M 40.601562 194 L 275.605469 194 L 275.605469 195 L 40.601562 195 Z M 40.601562 194 "/> +</clipPath> +<clipPath id="clip3"> + <path d="M 40.601562 123 L 275.605469 123 L 275.605469 124 L 40.601562 124 Z M 40.601562 123 "/> +</clipPath> +<clipPath id="clip4"> + <path d="M 40.601562 52 L 275.605469 52 L 275.605469 53 L 40.601562 53 Z M 40.601562 52 "/> +</clipPath> +<clipPath id="clip5"> + <path d="M 68 5.480469 L 69 5.480469 L 69 335.269531 L 68 335.269531 Z M 68 5.480469 "/> +</clipPath> +<clipPath id="clip6"> + <path d="M 108 5.480469 L 110 5.480469 L 110 335.269531 L 108 335.269531 Z M 108 5.480469 "/> +</clipPath> +<clipPath id="clip7"> + <path d="M 149 5.480469 L 150 5.480469 L 150 335.269531 L 149 335.269531 Z M 149 5.480469 "/> +</clipPath> +<clipPath id="clip8"> + <path d="M 189 5.480469 L 191 5.480469 L 191 335.269531 L 189 335.269531 Z M 189 5.480469 "/> +</clipPath> +<clipPath id="clip9"> + <path d="M 230 5.480469 L 231 5.480469 L 231 335.269531 L 230 335.269531 Z M 230 5.480469 "/> +</clipPath> +<clipPath id="clip10"> + <path d="M 270 5.480469 L 272 5.480469 L 272 335.269531 L 270 335.269531 Z M 270 5.480469 "/> +</clipPath> +<clipPath id="clip11"> + <path d="M 40.601562 300 L 275.605469 300 L 275.605469 302 L 40.601562 302 Z M 40.601562 300 "/> +</clipPath> +<clipPath id="clip12"> + <path d="M 40.601562 229 L 275.605469 229 L 275.605469 231 L 40.601562 231 Z M 40.601562 229 "/> +</clipPath> +<clipPath id="clip13"> + <path d="M 40.601562 158 L 275.605469 158 L 275.605469 160 L 40.601562 160 Z M 40.601562 158 "/> +</clipPath> +<clipPath id="clip14"> + <path d="M 40.601562 87 L 275.605469 87 L 275.605469 89 L 40.601562 89 Z M 40.601562 87 "/> +</clipPath> +<clipPath id="clip15"> + <path d="M 40.601562 16 L 275.605469 16 L 275.605469 18 L 40.601562 18 Z M 40.601562 16 "/> +</clipPath> +<clipPath id="clip16"> + <path d="M 47 5.480469 L 49 5.480469 L 49 335.269531 L 47 335.269531 Z M 47 5.480469 "/> +</clipPath> +<clipPath id="clip17"> + <path d="M 88 5.480469 L 90 5.480469 L 90 335.269531 L 88 335.269531 Z M 88 5.480469 "/> +</clipPath> +<clipPath id="clip18"> + <path d="M 128 5.480469 L 130 5.480469 L 130 335.269531 L 128 335.269531 Z M 128 5.480469 "/> +</clipPath> +<clipPath id="clip19"> + <path d="M 169 5.480469 L 171 5.480469 L 171 335.269531 L 169 335.269531 Z M 169 5.480469 "/> +</clipPath> +<clipPath id="clip20"> + <path d="M 209 5.480469 L 211 5.480469 L 211 335.269531 L 209 335.269531 Z M 209 5.480469 "/> +</clipPath> +<clipPath id="clip21"> + <path d="M 250 5.480469 L 252 5.480469 L 252 335.269531 L 250 335.269531 Z M 250 5.480469 "/> +</clipPath> +</defs> +<g id="surface9"> +<rect x="0" y="0" width="360" height="367" style="fill:rgb(100%,100%,100%);fill-opacity:1;stroke:none;"/> +<g clip-path="url(#clip1)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 265.734375 L 275.605469 265.734375 "/> +</g> +<g clip-path="url(#clip2)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 194.683594 L 275.605469 194.683594 "/> +</g> +<g clip-path="url(#clip3)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 123.636719 L 275.605469 123.636719 "/> +</g> +<g clip-path="url(#clip4)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 52.589844 L 275.605469 52.589844 "/> +</g> +<g clip-path="url(#clip5)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 68.691406 335.265625 L 68.691406 5.480469 "/> +</g> +<g clip-path="url(#clip6)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 109.195312 335.265625 L 109.195312 5.480469 "/> +</g> +<g clip-path="url(#clip7)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 149.695312 335.265625 L 149.695312 5.480469 "/> +</g> +<g clip-path="url(#clip8)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 190.199219 335.265625 L 190.199219 5.480469 "/> +</g> +<g clip-path="url(#clip9)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 230.703125 335.265625 L 230.703125 5.480469 "/> +</g> +<g clip-path="url(#clip10)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:0.533489;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 271.207031 335.265625 L 271.207031 5.480469 "/> +</g> +<g clip-path="url(#clip11)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 301.257812 L 275.605469 301.257812 "/> +</g> +<g clip-path="url(#clip12)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 230.210938 L 275.605469 230.210938 "/> +</g> +<g clip-path="url(#clip13)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 159.160156 L 275.605469 159.160156 "/> +</g> +<g clip-path="url(#clip14)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 88.113281 L 275.605469 88.113281 "/> +</g> +<g clip-path="url(#clip15)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.601562 17.0625 L 275.605469 17.0625 "/> +</g> +<g clip-path="url(#clip16)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 48.4375 335.265625 L 48.4375 5.480469 "/> +</g> +<g clip-path="url(#clip17)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 88.941406 335.265625 L 88.941406 5.480469 "/> +</g> +<g clip-path="url(#clip18)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 129.445312 335.265625 L 129.445312 5.480469 "/> +</g> +<g clip-path="url(#clip19)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 169.949219 335.265625 L 169.949219 5.480469 "/> +</g> +<g clip-path="url(#clip20)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 210.453125 335.265625 L 210.453125 5.480469 "/> +</g> +<g clip-path="url(#clip21)" clip-rule="nonzero"> +<path style="fill:none;stroke-width:1.066978;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(92.156863%,92.156863%,92.156863%);stroke-opacity:1;stroke-miterlimit:10;" d="M 250.957031 335.265625 L 250.957031 5.480469 "/> +</g> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 197.625 30.292969 C 197.625 35.03125 190.515625 35.03125 190.515625 30.292969 C 190.515625 25.550781 197.625 25.550781 197.625 30.292969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 226.910156 127.847656 C 226.910156 132.585938 219.800781 132.585938 219.800781 127.847656 C 219.800781 123.105469 226.910156 123.105469 226.910156 127.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 195.457031 159.835938 C 195.457031 164.578125 188.34375 164.578125 188.34375 159.835938 C 188.34375 155.097656 195.457031 155.097656 195.457031 159.835938 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 185.875 157.863281 C 185.875 162.605469 178.765625 162.605469 178.765625 157.863281 C 178.765625 153.125 185.875 153.125 185.875 157.863281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 224.027344 65.984375 C 224.027344 70.726562 216.917969 70.726562 216.917969 65.984375 C 216.917969 61.246094 224.027344 61.246094 224.027344 65.984375 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 121.765625 281.433594 C 121.765625 286.171875 114.652344 286.171875 114.652344 281.433594 C 114.652344 276.691406 121.765625 276.691406 121.765625 281.433594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 152.507812 147.46875 C 152.507812 152.210938 145.394531 152.210938 145.394531 147.46875 C 145.394531 142.730469 152.507812 142.730469 152.507812 147.46875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 82.097656 279.410156 C 82.097656 284.148438 74.984375 284.148438 74.984375 279.410156 C 74.984375 274.667969 82.097656 274.667969 82.097656 279.410156 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 91.007812 208.253906 C 91.007812 212.992188 83.898438 212.992188 83.898438 208.253906 C 83.898438 203.511719 91.007812 203.511719 91.007812 208.253906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 181.128906 212.644531 C 181.128906 217.386719 174.019531 217.386719 174.019531 212.644531 C 174.019531 207.902344 181.128906 207.902344 181.128906 212.644531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 186.566406 211.660156 C 186.566406 216.402344 179.457031 216.402344 179.457031 211.660156 C 179.457031 206.921875 186.566406 206.921875 186.566406 211.660156 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 164.503906 168.703125 C 164.503906 173.445312 157.390625 173.445312 157.390625 168.703125 C 157.390625 163.964844 164.503906 163.964844 164.503906 168.703125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 97.707031 253 C 97.707031 257.742188 90.59375 257.742188 90.59375 253 C 90.59375 248.261719 97.707031 248.261719 97.707031 253 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 157.960938 202.996094 C 157.960938 207.734375 150.851562 207.734375 150.851562 202.996094 C 150.851562 198.253906 157.960938 198.253906 157.960938 202.996094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 193.910156 153.578125 C 193.910156 158.320312 186.800781 158.320312 186.800781 153.578125 C 186.800781 148.839844 193.910156 148.839844 193.910156 153.578125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 244.738281 159.835938 C 244.738281 164.578125 237.628906 164.578125 237.628906 159.835938 C 237.628906 155.097656 244.738281 155.097656 244.738281 159.835938 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 172.40625 282.792969 C 172.40625 287.53125 165.296875 287.53125 165.296875 282.792969 C 165.296875 278.050781 172.40625 278.050781 172.40625 282.792969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 116.398438 258.386719 C 116.398438 263.125 109.289062 263.125 109.289062 258.386719 C 109.289062 253.644531 116.398438 253.644531 116.398438 258.386719 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 73.914062 227.394531 C 73.914062 232.136719 66.804688 232.136719 66.804688 227.394531 C 66.804688 222.65625 73.914062 222.65625 73.914062 227.394531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 89.011719 165.039062 C 89.011719 169.777344 81.898438 169.777344 81.898438 165.039062 C 81.898438 160.296875 89.011719 160.296875 89.011719 165.039062 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 168.699219 266.414062 C 168.699219 271.15625 161.589844 271.15625 161.589844 266.414062 C 161.589844 261.675781 168.699219 261.675781 168.699219 266.414062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 187.125 95.214844 C 187.125 99.957031 180.015625 99.957031 180.015625 95.214844 C 180.015625 90.476562 187.125 90.476562 187.125 95.214844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 119.839844 234.878906 C 119.839844 239.617188 112.730469 239.617188 112.730469 234.878906 C 112.730469 230.136719 119.839844 230.136719 119.839844 234.878906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 215.117188 168.292969 C 215.117188 173.035156 208.003906 173.035156 208.003906 168.292969 C 208.003906 163.554688 215.117188 163.554688 215.117188 168.292969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 99.117188 219.140625 C 99.117188 223.878906 92.007812 223.878906 92.007812 219.140625 C 92.007812 214.398438 99.117188 214.398438 99.117188 219.140625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 142.308594 177.472656 C 142.308594 182.210938 135.199219 182.210938 135.199219 177.472656 C 135.199219 172.730469 142.308594 172.730469 142.308594 177.472656 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 196.367188 254.78125 C 196.367188 259.523438 189.257812 259.523438 189.257812 254.78125 C 189.257812 250.039062 196.367188 250.039062 196.367188 254.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 230.867188 189.671875 C 230.867188 194.410156 223.757812 194.410156 223.757812 189.671875 C 223.757812 184.929688 230.867188 184.929688 230.867188 189.671875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.121094 238.714844 C 137.121094 243.457031 130.011719 243.457031 130.011719 238.714844 C 130.011719 233.976562 137.121094 233.976562 137.121094 238.714844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 122.101562 227.921875 C 122.101562 232.664062 114.992188 232.664062 114.992188 227.921875 C 114.992188 223.179688 122.101562 223.179688 122.101562 227.921875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 177.425781 170.761719 C 177.425781 175.503906 170.316406 175.503906 170.316406 170.761719 C 170.316406 166.023438 177.425781 166.023438 177.425781 170.761719 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 129.121094 243.75 C 129.121094 248.492188 122.011719 248.492188 122.011719 243.75 C 122.011719 239.011719 129.121094 239.011719 129.121094 243.75 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 78.632812 267.679688 C 78.632812 272.417969 71.523438 272.417969 71.523438 267.679688 C 71.523438 262.9375 78.632812 262.9375 78.632812 267.679688 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 140.207031 215.121094 C 140.207031 219.859375 133.097656 219.859375 133.097656 215.121094 C 133.097656 210.378906 140.207031 210.378906 140.207031 215.121094 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 151.320312 230.570312 C 151.320312 235.3125 144.207031 235.3125 144.207031 230.570312 C 144.207031 225.832031 151.320312 225.832031 151.320312 230.570312 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 215.253906 209.707031 C 215.253906 214.449219 208.140625 214.449219 208.140625 209.707031 C 208.140625 204.96875 215.253906 204.96875 215.253906 209.707031 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 251.683594 169.113281 C 251.683594 173.855469 244.570312 173.855469 244.570312 169.113281 C 244.570312 164.375 251.683594 164.375 251.683594 169.113281 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 166.03125 211.171875 C 166.03125 215.910156 158.921875 215.910156 158.921875 211.171875 C 158.921875 206.429688 166.03125 206.429688 166.03125 211.171875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 199.289062 126.449219 C 199.289062 131.191406 192.179688 131.191406 192.179688 126.449219 C 192.179688 121.710938 199.289062 121.710938 199.289062 126.449219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 146.480469 198.78125 C 146.480469 203.519531 139.371094 203.519531 139.371094 198.78125 C 139.371094 194.039062 146.480469 194.039062 146.480469 198.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 199.925781 232.714844 C 199.925781 237.453125 192.8125 237.453125 192.8125 232.714844 C 192.8125 227.972656 199.925781 227.972656 199.925781 232.714844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 160.050781 163.425781 C 160.050781 168.167969 152.941406 168.167969 152.941406 163.425781 C 152.941406 158.6875 160.050781 158.6875 160.050781 163.425781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 133.589844 231.105469 C 133.589844 235.847656 126.480469 235.847656 126.480469 231.105469 C 126.480469 226.363281 133.589844 226.363281 133.589844 231.105469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 162.226562 138.203125 C 162.226562 142.941406 155.117188 142.941406 155.117188 138.203125 C 155.117188 133.460938 162.226562 133.460938 162.226562 138.203125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 216.160156 170.761719 C 216.160156 175.503906 209.046875 175.503906 209.046875 170.761719 C 209.046875 166.023438 216.160156 166.023438 216.160156 170.761719 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 190.238281 118.890625 C 190.238281 123.632812 183.128906 123.632812 183.128906 118.890625 C 183.128906 114.152344 190.238281 114.152344 190.238281 118.890625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.996094 220.15625 C 137.996094 224.894531 130.886719 224.894531 130.886719 220.15625 C 130.886719 215.414062 137.996094 215.414062 137.996094 220.15625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 198.578125 92.738281 C 198.578125 97.480469 191.46875 97.480469 191.46875 92.738281 C 191.46875 88 198.578125 88 198.578125 92.738281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 138.785156 212.152344 C 138.785156 216.894531 131.675781 216.894531 131.675781 212.152344 C 131.675781 207.410156 138.785156 207.410156 138.785156 212.152344 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 232.042969 169.113281 C 232.042969 173.855469 224.933594 173.855469 224.933594 169.113281 C 224.933594 164.375 232.042969 164.375 232.042969 169.113281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 187.582031 115.191406 C 187.582031 119.933594 180.472656 119.933594 180.472656 115.191406 C 180.472656 110.449219 187.582031 110.449219 187.582031 115.191406 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 201.402344 175.777344 C 201.402344 180.519531 194.289062 180.519531 194.289062 175.777344 C 194.289062 171.035156 201.402344 171.035156 201.402344 175.777344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 136.3125 151.652344 C 136.3125 156.394531 129.199219 156.394531 129.199219 151.652344 C 129.199219 146.914062 136.3125 146.914062 136.3125 151.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 105.847656 266.414062 C 105.847656 271.15625 98.734375 271.15625 98.734375 266.414062 C 98.734375 261.675781 105.847656 261.675781 105.847656 266.414062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 159.648438 139.664062 C 159.648438 144.402344 152.535156 144.402344 152.535156 139.664062 C 152.535156 134.921875 159.648438 134.921875 159.648438 139.664062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 204.117188 179.605469 C 204.117188 184.347656 197.003906 184.347656 197.003906 179.605469 C 197.003906 174.867188 204.117188 174.867188 204.117188 179.605469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 194.066406 98.65625 C 194.066406 103.394531 186.957031 103.394531 186.957031 98.65625 C 186.957031 93.914062 194.066406 93.914062 194.066406 98.65625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 173.539062 107.613281 C 173.539062 112.351562 166.429688 112.351562 166.429688 107.613281 C 166.429688 102.871094 173.539062 102.871094 173.539062 107.613281 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 188.753906 200.175781 C 188.753906 204.917969 181.644531 204.917969 181.644531 200.175781 C 181.644531 195.4375 188.753906 195.4375 188.753906 200.175781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 118.648438 208.253906 C 118.648438 212.992188 111.535156 212.992188 111.535156 208.253906 C 111.535156 203.511719 118.648438 203.511719 118.648438 208.253906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 104.078125 215.121094 C 104.078125 219.859375 96.964844 219.859375 96.964844 215.121094 C 96.964844 210.378906 104.078125 210.378906 104.078125 215.121094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 91.761719 184.367188 C 91.761719 189.109375 84.648438 189.109375 84.648438 184.367188 C 84.648438 179.628906 91.761719 179.628906 91.761719 184.367188 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 227.121094 181.757812 C 227.121094 186.5 220.007812 186.5 220.007812 181.757812 C 220.007812 177.019531 227.121094 177.019531 227.121094 181.757812 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 179.980469 208.738281 C 179.980469 213.476562 172.867188 213.476562 172.867188 208.738281 C 172.867188 203.996094 179.980469 203.996094 179.980469 208.738281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 175.597656 189.671875 C 175.597656 194.410156 168.488281 194.410156 168.488281 189.671875 C 168.488281 184.929688 175.597656 184.929688 175.597656 189.671875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 151.277344 159.441406 C 151.277344 164.183594 144.164062 164.183594 144.164062 159.441406 C 144.164062 154.703125 151.277344 154.703125 151.277344 159.441406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 252.375 160.628906 C 252.375 165.371094 245.265625 165.371094 245.265625 160.628906 C 245.265625 155.890625 252.375 155.890625 252.375 160.628906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 149.980469 140.765625 C 149.980469 145.503906 142.867188 145.503906 142.867188 140.765625 C 142.867188 136.023438 149.980469 136.023438 149.980469 140.765625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 174.21875 238.714844 C 174.21875 243.457031 167.109375 243.457031 167.109375 238.714844 C 167.109375 233.976562 174.21875 233.976562 174.21875 238.714844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 182.632812 137.839844 C 182.632812 142.578125 175.523438 142.578125 175.523438 137.839844 C 175.523438 133.097656 182.632812 133.097656 182.632812 137.839844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 112.410156 150.125 C 112.410156 154.863281 105.300781 154.863281 105.300781 150.125 C 105.300781 145.382812 112.410156 145.382812 112.410156 150.125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 209.085938 91.816406 C 209.085938 96.554688 201.976562 96.554688 201.976562 91.816406 C 201.976562 87.074219 209.085938 87.074219 209.085938 91.816406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 222.542969 108.261719 C 222.542969 113.003906 215.433594 113.003906 215.433594 108.261719 C 215.433594 103.523438 222.542969 103.523438 222.542969 108.261719 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 97.128906 258.992188 C 97.128906 263.734375 90.019531 263.734375 90.019531 258.992188 C 90.019531 254.253906 97.128906 254.253906 97.128906 258.992188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 132.105469 229.507812 C 132.105469 234.25 124.992188 234.25 124.992188 229.507812 C 124.992188 224.769531 132.105469 224.769531 132.105469 229.507812 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 253.648438 140.765625 C 253.648438 145.503906 246.535156 145.503906 246.535156 140.765625 C 246.535156 136.023438 253.648438 136.023438 253.648438 140.765625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 212.515625 158.257812 C 212.515625 163 205.40625 163 205.40625 158.257812 C 205.40625 153.519531 212.515625 153.519531 212.515625 158.257812 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 249.613281 87.851562 C 249.613281 92.589844 242.503906 92.589844 242.503906 87.851562 C 242.503906 83.109375 249.613281 83.109375 249.613281 87.851562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 220.203125 130.664062 C 220.203125 135.402344 213.09375 135.402344 213.09375 130.664062 C 213.09375 125.921875 220.203125 125.921875 220.203125 130.664062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 176.925781 112.863281 C 176.925781 117.601562 169.816406 117.601562 169.816406 112.863281 C 169.816406 108.121094 176.925781 108.121094 176.925781 112.863281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 117.152344 208.253906 C 117.152344 212.992188 110.039062 212.992188 110.039062 208.253906 C 110.039062 203.511719 117.152344 203.511719 117.152344 208.253906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 183.25 193.726562 C 183.25 198.46875 176.136719 198.46875 176.136719 193.726562 C 176.136719 188.988281 183.25 188.988281 183.25 193.726562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 93.21875 159.046875 C 93.21875 163.785156 86.105469 163.785156 86.105469 159.046875 C 86.105469 154.304688 93.21875 154.304688 93.21875 159.046875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 180.347656 174.515625 C 180.347656 179.253906 173.238281 179.253906 173.238281 174.515625 C 173.238281 169.773438 180.347656 169.773438 180.347656 174.515625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 163.988281 83.640625 C 163.988281 88.382812 156.875 88.382812 156.875 83.640625 C 156.875 78.898438 163.988281 78.898438 163.988281 83.640625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 167.480469 180.894531 C 167.480469 185.636719 160.367188 185.636719 160.367188 180.894531 C 160.367188 176.15625 167.480469 176.15625 167.480469 180.894531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 153.359375 309.019531 C 153.359375 313.761719 146.246094 313.761719 146.246094 309.019531 C 146.246094 304.28125 153.359375 304.28125 153.359375 309.019531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 206.863281 149.363281 C 206.863281 154.101562 199.753906 154.101562 199.753906 149.363281 C 199.753906 144.621094 206.863281 144.621094 206.863281 149.363281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 69.476562 243.75 C 69.476562 248.492188 62.367188 248.492188 62.367188 243.75 C 62.367188 239.011719 69.476562 239.011719 69.476562 243.75 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 60.113281 256.574219 C 60.113281 261.316406 53.003906 261.316406 53.003906 256.574219 C 53.003906 251.835938 60.113281 251.835938 60.113281 256.574219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 202.257812 54.6875 C 202.257812 59.429688 195.148438 59.429688 195.148438 54.6875 C 195.148438 49.949219 202.257812 49.949219 202.257812 54.6875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 156.65625 157.863281 C 156.65625 162.605469 149.546875 162.605469 149.546875 157.863281 C 149.546875 153.125 156.65625 153.125 156.65625 157.863281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 149.117188 142.238281 C 149.117188 146.980469 142.007812 146.980469 142.007812 142.238281 C 142.007812 137.5 149.117188 137.5 149.117188 142.238281 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 241.035156 65.421875 C 241.035156 70.164062 233.925781 70.164062 233.925781 65.421875 C 233.925781 60.683594 241.035156 60.683594 241.035156 65.421875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 99.558594 207.289062 C 99.558594 212.027344 92.449219 212.027344 92.449219 207.289062 C 92.449219 202.546875 99.558594 202.546875 99.558594 207.289062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 157.296875 155.90625 C 157.296875 160.648438 150.1875 160.648438 150.1875 155.90625 C 150.1875 151.167969 157.296875 151.167969 157.296875 155.90625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 163.304688 166.660156 C 163.304688 171.402344 156.195312 171.402344 156.195312 166.660156 C 156.195312 161.921875 163.304688 161.921875 163.304688 166.660156 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.164062 201.113281 C 137.164062 205.851562 130.054688 205.851562 130.054688 201.113281 C 130.054688 196.371094 137.164062 196.371094 137.164062 201.113281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 190.074219 155.519531 C 190.074219 160.257812 182.964844 160.257812 182.964844 155.519531 C 182.964844 150.777344 190.074219 150.777344 190.074219 155.519531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 154.425781 134.585938 C 154.425781 139.324219 147.3125 139.324219 147.3125 134.585938 C 147.3125 129.84375 154.425781 129.84375 154.425781 134.585938 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 268.480469 86.640625 C 268.480469 91.382812 261.367188 91.382812 261.367188 86.640625 C 261.367188 81.902344 268.480469 81.902344 268.480469 86.640625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 145.746094 112.53125 C 145.746094 117.269531 138.636719 117.269531 138.636719 112.53125 C 138.636719 107.789062 145.746094 107.789062 145.746094 112.53125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 203.964844 61.800781 C 203.964844 66.542969 196.855469 66.542969 196.855469 61.800781 C 196.855469 57.0625 203.964844 57.0625 203.964844 61.800781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 152.371094 109.894531 C 152.371094 114.636719 145.261719 114.636719 145.261719 109.894531 C 145.261719 105.15625 152.371094 105.15625 152.371094 109.894531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 166.40625 133.152344 C 166.40625 137.894531 159.296875 137.894531 159.296875 133.152344 C 159.296875 128.414062 166.40625 128.414062 166.40625 133.152344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 122.621094 243.75 C 122.621094 248.492188 115.507812 248.492188 115.507812 243.75 C 115.507812 239.011719 122.621094 239.011719 122.621094 243.75 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 209.167969 141.5 C 209.167969 146.242188 202.054688 146.242188 202.054688 141.5 C 202.054688 136.761719 209.167969 136.761719 209.167969 141.5 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 138.402344 125.753906 C 138.402344 130.496094 131.292969 130.496094 131.292969 125.753906 C 131.292969 121.011719 138.402344 121.011719 138.402344 125.753906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 140.109375 208.738281 C 140.109375 213.476562 133 213.476562 133 208.738281 C 133 203.996094 140.109375 203.996094 140.109375 208.738281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 78.054688 276.082031 C 78.054688 280.824219 70.945312 280.824219 70.945312 276.082031 C 70.945312 271.34375 78.054688 271.34375 78.054688 276.082031 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 175.398438 106.3125 C 175.398438 111.054688 168.289062 111.054688 168.289062 106.3125 C 168.289062 101.574219 175.398438 101.574219 175.398438 106.3125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 203.152344 119.910156 C 203.152344 124.652344 196.042969 124.652344 196.042969 119.910156 C 196.042969 115.171875 203.152344 115.171875 203.152344 119.910156 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 201.941406 210.683594 C 201.941406 215.421875 194.832031 215.421875 194.832031 210.683594 C 194.832031 205.941406 201.941406 205.941406 201.941406 210.683594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 99.019531 276.742188 C 99.019531 281.484375 91.910156 281.484375 91.910156 276.742188 C 91.910156 272.003906 99.019531 272.003906 99.019531 276.742188 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 154.515625 226.347656 C 154.515625 231.085938 147.40625 231.085938 147.40625 226.347656 C 147.40625 221.605469 154.515625 221.605469 154.515625 226.347656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 82.214844 289.734375 C 82.214844 294.472656 75.101562 294.472656 75.101562 289.734375 C 75.101562 284.992188 82.214844 284.992188 82.214844 289.734375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 151.933594 147.09375 C 151.933594 151.832031 144.820312 151.832031 144.820312 147.09375 C 144.820312 142.351562 151.933594 142.351562 151.933594 147.09375 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 231.480469 154.351562 C 231.480469 159.09375 224.367188 159.09375 224.367188 154.351562 C 224.367188 149.613281 231.480469 149.613281 231.480469 154.351562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 130.652344 116.867188 C 130.652344 121.609375 123.542969 121.609375 123.542969 116.867188 C 123.542969 112.128906 130.652344 112.128906 130.652344 116.867188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 100.527344 190.117188 C 100.527344 194.859375 93.417969 194.859375 93.417969 190.117188 C 93.417969 185.378906 100.527344 185.378906 100.527344 190.117188 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 249.761719 178.324219 C 249.761719 183.0625 242.652344 183.0625 242.652344 178.324219 C 242.652344 173.582031 249.761719 173.582031 249.761719 178.324219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 128.363281 161.425781 C 128.363281 166.167969 121.253906 166.167969 121.253906 161.425781 C 121.253906 156.6875 128.363281 156.6875 128.363281 161.425781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 97.265625 253 C 97.265625 257.742188 90.152344 257.742188 90.152344 253 C 90.152344 248.261719 97.265625 248.261719 97.265625 253 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 143.867188 174.933594 C 143.867188 179.675781 136.757812 179.675781 136.757812 174.933594 C 136.757812 170.195312 143.867188 170.195312 143.867188 174.933594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 127.933594 150.125 C 127.933594 154.863281 120.820312 154.863281 120.820312 150.125 C 120.820312 145.382812 127.933594 145.382812 127.933594 150.125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 182.4375 202.050781 C 182.4375 206.792969 175.328125 206.792969 175.328125 202.050781 C 175.328125 197.3125 182.4375 197.3125 182.4375 202.050781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 172.789062 83.34375 C 172.789062 88.082031 165.679688 88.082031 165.679688 83.34375 C 165.679688 78.601562 172.789062 78.601562 172.789062 83.34375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 182.183594 126.449219 C 182.183594 131.191406 175.074219 131.191406 175.074219 126.449219 C 175.074219 121.710938 182.183594 121.710938 182.183594 126.449219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 97.542969 260.824219 C 97.542969 265.5625 90.429688 265.5625 90.429688 260.824219 C 90.429688 256.082031 97.542969 256.082031 97.542969 260.824219 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 159.605469 160.234375 C 159.605469 164.972656 152.496094 164.972656 152.496094 160.234375 C 152.496094 155.492188 159.605469 155.492188 159.605469 160.234375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.140625 172.839844 C 137.140625 177.582031 130.027344 177.582031 130.027344 172.839844 C 130.027344 168.101562 137.140625 168.101562 137.140625 172.839844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 179.804688 140.03125 C 179.804688 144.769531 172.695312 144.769531 172.695312 140.03125 C 172.695312 135.289062 179.804688 135.289062 179.804688 140.03125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 107.660156 194.183594 C 107.660156 198.921875 100.546875 198.921875 100.546875 194.183594 C 100.546875 189.441406 107.660156 189.441406 107.660156 194.183594 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 232.738281 161.824219 C 232.738281 166.566406 225.625 166.566406 225.625 161.824219 C 225.625 157.085938 232.738281 157.085938 232.738281 161.824219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 187.34375 130.308594 C 187.34375 135.050781 180.234375 135.050781 180.234375 130.308594 C 180.234375 125.570312 187.34375 125.570312 187.34375 130.308594 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 117 153.964844 C 117 158.707031 109.886719 158.707031 109.886719 153.964844 C 109.886719 149.226562 117 149.226562 117 153.964844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 99.238281 184.367188 C 99.238281 189.109375 92.125 189.109375 92.125 184.367188 C 92.125 179.628906 99.238281 179.628906 99.238281 184.367188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 122.304688 212.644531 C 122.304688 217.386719 115.195312 217.386719 115.195312 212.644531 C 115.195312 207.902344 122.304688 207.902344 122.304688 212.644531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 192.03125 206.808594 C 192.03125 211.546875 184.921875 211.546875 184.921875 206.808594 C 184.921875 202.066406 192.03125 202.066406 192.03125 206.808594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 149.3125 180.464844 C 149.3125 185.207031 142.203125 185.207031 142.203125 180.464844 C 142.203125 175.722656 149.3125 175.722656 149.3125 180.464844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 138.164062 145.964844 C 138.164062 150.703125 131.054688 150.703125 131.054688 145.964844 C 131.054688 141.222656 138.164062 141.222656 138.164062 145.964844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 208.445312 91.816406 C 208.445312 96.554688 201.335938 96.554688 201.335938 91.816406 C 201.335938 87.074219 208.445312 87.074219 208.445312 91.816406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 116.917969 183.058594 C 116.917969 187.800781 109.808594 187.800781 109.808594 183.058594 C 109.808594 178.320312 116.917969 178.320312 116.917969 183.058594 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 186.710938 253 C 186.710938 257.742188 179.601562 257.742188 179.601562 253 C 179.601562 248.261719 186.710938 248.261719 186.710938 253 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 127.515625 199.710938 C 127.515625 204.449219 120.402344 204.449219 120.402344 199.710938 C 120.402344 194.96875 127.515625 194.96875 127.515625 199.710938 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 194.96875 155.519531 C 194.96875 160.257812 187.855469 160.257812 187.855469 155.519531 C 187.855469 150.777344 194.96875 150.777344 194.96875 155.519531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 237.367188 162.625 C 237.367188 167.363281 230.257812 167.363281 230.257812 162.625 C 230.257812 157.882812 237.367188 157.882812 237.367188 162.625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 135.6875 126.796875 C 135.6875 131.539062 128.578125 131.539062 128.578125 126.796875 C 128.578125 122.058594 135.6875 122.058594 135.6875 126.796875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 123.90625 182.191406 C 123.90625 186.933594 116.796875 186.933594 116.796875 182.191406 C 116.796875 177.453125 123.90625 177.453125 123.90625 182.191406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 68.234375 255.378906 C 68.234375 260.117188 61.125 260.117188 61.125 255.378906 C 61.125 250.636719 68.234375 250.636719 68.234375 255.378906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 88.671875 230.039062 C 88.671875 234.78125 81.5625 234.78125 81.5625 230.039062 C 81.5625 225.300781 88.671875 225.300781 88.671875 230.039062 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 199.996094 151.652344 C 199.996094 156.394531 192.882812 156.394531 192.882812 151.652344 C 192.882812 146.914062 199.996094 146.914062 199.996094 151.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 126.644531 178.75 C 126.644531 183.492188 119.535156 183.492188 119.535156 178.75 C 119.535156 174.007812 126.644531 174.007812 126.644531 178.75 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 130.011719 197.851562 C 130.011719 202.59375 122.902344 202.59375 122.902344 197.851562 C 122.902344 193.113281 130.011719 193.113281 130.011719 197.851562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 146.414062 218.632812 C 146.414062 223.375 139.304688 223.375 139.304688 218.632812 C 139.304688 213.894531 146.414062 213.894531 146.414062 218.632812 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 136.011719 127.148438 C 136.011719 131.886719 128.902344 131.886719 128.902344 127.148438 C 128.902344 122.40625 136.011719 122.40625 136.011719 127.148438 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 133.363281 171.175781 C 133.363281 175.917969 126.253906 175.917969 126.253906 171.175781 C 126.253906 166.4375 133.363281 166.4375 133.363281 171.175781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 129.566406 147.847656 C 129.566406 152.585938 122.457031 152.585938 122.457031 147.847656 C 122.457031 143.105469 129.566406 143.105469 129.566406 147.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 106.699219 238.714844 C 106.699219 243.457031 99.585938 243.457031 99.585938 238.714844 C 99.585938 233.976562 106.699219 233.976562 106.699219 238.714844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 176.867188 102.457031 C 176.867188 107.199219 169.753906 107.199219 169.753906 102.457031 C 169.753906 97.71875 176.867188 97.71875 176.867188 102.457031 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 160.90625 155.90625 C 160.90625 160.648438 153.792969 160.648438 153.792969 155.90625 C 153.792969 151.167969 160.90625 151.167969 160.90625 155.90625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 237.074219 132.796875 C 237.074219 137.535156 229.960938 137.535156 229.960938 132.796875 C 229.960938 128.054688 237.074219 128.054688 237.074219 132.796875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 148.113281 198.78125 C 148.113281 203.519531 141.003906 203.519531 141.003906 198.78125 C 141.003906 194.039062 148.113281 194.039062 148.113281 198.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 139.113281 301.375 C 139.113281 306.113281 132.003906 306.113281 132.003906 301.375 C 132.003906 296.632812 139.113281 296.632812 139.113281 301.375 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 253.65625 188.335938 C 253.65625 193.074219 246.542969 193.074219 246.542969 188.335938 C 246.542969 183.59375 253.65625 183.59375 253.65625 188.335938 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 128.972656 196.46875 C 128.972656 201.210938 121.859375 201.210938 121.859375 196.46875 C 121.859375 191.730469 128.972656 191.730469 128.972656 196.46875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 197 91.507812 C 197 96.25 189.886719 96.25 189.886719 91.507812 C 189.886719 86.769531 197 86.769531 197 91.507812 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 126.347656 174.515625 C 126.347656 179.253906 119.238281 179.253906 119.238281 174.515625 C 119.238281 169.773438 126.347656 169.773438 126.347656 174.515625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 113.105469 215.621094 C 113.105469 220.359375 105.996094 220.359375 105.996094 215.621094 C 105.996094 210.878906 113.105469 210.878906 113.105469 215.621094 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 136.589844 262.671875 C 136.589844 267.410156 129.480469 267.410156 129.480469 262.671875 C 129.480469 257.929688 136.589844 257.929688 136.589844 262.671875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 150.433594 190.117188 C 150.433594 194.859375 143.324219 194.859375 143.324219 190.117188 C 143.324219 185.378906 150.433594 185.378906 150.433594 190.117188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 135.847656 156.296875 C 135.847656 161.039062 128.734375 161.039062 128.734375 156.296875 C 128.734375 151.558594 135.847656 151.558594 135.847656 156.296875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 173.253906 153.191406 C 173.253906 157.933594 166.140625 157.933594 166.140625 153.191406 C 166.140625 148.453125 173.253906 148.453125 173.253906 153.191406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 109.226562 180.894531 C 109.226562 185.636719 102.117188 185.636719 102.117188 180.894531 C 102.117188 176.15625 109.226562 176.15625 109.226562 180.894531 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 260.835938 185.683594 C 260.835938 190.421875 253.726562 190.421875 253.726562 185.683594 C 253.726562 180.941406 260.835938 180.941406 260.835938 185.683594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 109.929688 194.636719 C 109.929688 199.378906 102.820312 199.378906 102.820312 194.636719 C 102.820312 189.898438 109.929688 189.898438 109.929688 194.636719 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 168.292969 131.019531 C 168.292969 135.757812 161.183594 135.757812 161.183594 131.019531 C 161.183594 126.277344 168.292969 126.277344 168.292969 131.019531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 79.902344 229.507812 C 79.902344 234.25 72.789062 234.25 72.789062 229.507812 C 72.789062 224.769531 79.902344 224.769531 79.902344 229.507812 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 93.378906 137.113281 C 93.378906 141.851562 86.269531 141.851562 86.269531 137.113281 C 86.269531 132.371094 93.378906 132.371094 93.378906 137.113281 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 182.195312 205.371094 C 182.195312 210.109375 175.085938 210.109375 175.085938 205.371094 C 175.085938 200.628906 182.195312 200.628906 182.195312 205.371094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 93.886719 193.726562 C 93.886719 198.46875 86.777344 198.46875 86.777344 193.726562 C 86.777344 188.988281 93.886719 188.988281 93.886719 193.726562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.160156 133.152344 C 137.160156 137.894531 130.046875 137.894531 130.046875 133.152344 C 130.046875 128.414062 137.160156 128.414062 137.160156 133.152344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 63.300781 243.1875 C 63.300781 247.925781 56.1875 247.925781 56.1875 243.1875 C 56.1875 238.445312 63.300781 238.445312 63.300781 243.1875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 163.242188 135.304688 C 163.242188 140.046875 156.132812 140.046875 156.132812 135.304688 C 156.132812 130.566406 163.242188 130.566406 163.242188 135.304688 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 187.707031 142.980469 C 187.707031 147.71875 180.59375 147.71875 180.59375 142.980469 C 180.59375 138.238281 187.707031 138.238281 187.707031 142.980469 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 175.324219 218.128906 C 175.324219 222.867188 168.214844 222.867188 168.214844 218.128906 C 168.214844 213.386719 175.324219 213.386719 175.324219 218.128906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 76.507812 258.992188 C 76.507812 263.734375 69.398438 263.734375 69.398438 258.992188 C 69.398438 254.253906 76.507812 254.253906 76.507812 258.992188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 98.570312 180.464844 C 98.570312 185.207031 91.460938 185.207031 91.460938 180.464844 C 91.460938 175.722656 98.570312 175.722656 98.570312 180.464844 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 196.246094 159.835938 C 196.246094 164.578125 189.136719 164.578125 189.136719 159.835938 C 189.136719 155.097656 196.246094 155.097656 196.246094 159.835938 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 162.070312 109.242188 C 162.070312 113.980469 154.960938 113.980469 154.960938 109.242188 C 154.960938 104.5 162.070312 104.5 162.070312 109.242188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 153.582031 176.621094 C 153.582031 181.363281 146.472656 181.363281 146.472656 176.621094 C 146.472656 171.882812 153.582031 171.882812 153.582031 176.621094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 210.941406 110.550781 C 210.941406 115.292969 203.832031 115.292969 203.832031 110.550781 C 203.832031 105.8125 210.941406 105.8125 210.941406 110.550781 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 189.265625 207.769531 C 189.265625 212.511719 182.152344 212.511719 182.152344 207.769531 C 182.152344 203.03125 189.265625 203.03125 189.265625 207.769531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 79.085938 189.226562 C 79.085938 193.964844 71.976562 193.964844 71.976562 189.226562 C 71.976562 184.484375 79.085938 184.484375 79.085938 189.226562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 190.394531 155.128906 C 190.394531 159.871094 183.28125 159.871094 183.28125 155.128906 C 183.28125 150.386719 190.394531 150.386719 190.394531 155.128906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 195.726562 179.175781 C 195.726562 183.917969 188.617188 183.917969 188.617188 179.175781 C 188.617188 174.4375 195.726562 174.4375 195.726562 179.175781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 166.394531 146.339844 C 166.394531 151.078125 159.285156 151.078125 159.285156 146.339844 C 159.285156 141.597656 166.394531 141.597656 166.394531 146.339844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 134.460938 208.738281 C 134.460938 213.476562 127.347656 213.476562 127.347656 208.738281 C 127.347656 203.996094 134.460938 203.996094 134.460938 208.738281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 163.332031 217.625 C 163.332031 222.363281 156.222656 222.363281 156.222656 217.625 C 156.222656 212.882812 163.332031 212.882812 163.332031 217.625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 174.523438 105.023438 C 174.523438 109.761719 167.410156 109.761719 167.410156 105.023438 C 167.410156 100.28125 174.523438 100.28125 174.523438 105.023438 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 121.523438 142.609375 C 121.523438 147.351562 114.414062 147.351562 114.414062 142.609375 C 114.414062 137.867188 121.523438 137.867188 121.523438 142.609375 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 156.242188 251.824219 C 156.242188 256.5625 149.128906 256.5625 149.128906 251.824219 C 149.128906 247.082031 156.242188 247.082031 156.242188 251.824219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 143.03125 273.460938 C 143.03125 278.199219 135.921875 278.199219 135.921875 273.460938 C 135.921875 268.71875 143.03125 268.71875 143.03125 273.460938 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 209.875 148.984375 C 209.875 153.722656 202.765625 153.722656 202.765625 148.984375 C 202.765625 144.242188 209.875 144.242188 209.875 148.984375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 182.234375 175.355469 C 182.234375 180.097656 175.121094 180.097656 175.121094 175.355469 C 175.121094 170.617188 182.234375 170.617188 182.234375 175.355469 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 248.570312 119.230469 C 248.570312 123.972656 241.460938 123.972656 241.460938 119.230469 C 241.460938 114.492188 248.570312 114.492188 248.570312 119.230469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.308594 169.527344 C 137.308594 174.265625 130.199219 174.265625 130.199219 169.527344 C 130.199219 164.785156 137.308594 164.785156 137.308594 169.527344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 135.03125 145.964844 C 135.03125 150.703125 127.917969 150.703125 127.917969 145.964844 C 127.917969 141.222656 135.03125 141.222656 135.03125 145.964844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 189.285156 171.59375 C 189.285156 176.332031 182.175781 176.332031 182.175781 171.59375 C 182.175781 166.851562 189.285156 166.851562 189.285156 171.59375 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 190.371094 176.621094 C 190.371094 181.363281 183.261719 181.363281 183.261719 176.621094 C 183.261719 171.882812 190.371094 171.882812 190.371094 176.621094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 131.636719 136.027344 C 131.636719 140.765625 124.527344 140.765625 124.527344 136.027344 C 124.527344 131.285156 131.636719 131.285156 131.636719 136.027344 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 240.988281 225.304688 C 240.988281 230.042969 233.878906 230.042969 233.878906 225.304688 C 233.878906 220.5625 240.988281 220.5625 240.988281 225.304688 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 198.625 181.328125 C 198.625 186.066406 191.515625 186.066406 191.515625 181.328125 C 191.515625 176.585938 198.625 176.585938 198.625 181.328125 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 153.132812 199.246094 C 153.132812 203.984375 146.023438 203.984375 146.023438 199.246094 C 146.023438 194.503906 153.132812 194.503906 153.132812 199.246094 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 185.605469 171.59375 C 185.605469 176.332031 178.496094 176.332031 178.496094 171.59375 C 178.496094 166.851562 185.605469 166.851562 185.605469 171.59375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 121.164062 156.296875 C 121.164062 161.039062 114.054688 161.039062 114.054688 156.296875 C 114.054688 151.558594 121.164062 151.558594 121.164062 156.296875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 147.355469 156.6875 C 147.355469 161.429688 140.246094 161.429688 140.246094 156.6875 C 140.246094 151.949219 147.355469 151.949219 147.355469 156.6875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 122.082031 193.726562 C 122.082031 198.46875 114.972656 198.46875 114.972656 193.726562 C 114.972656 188.988281 122.082031 188.988281 122.082031 193.726562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 116.605469 186.121094 C 116.605469 190.863281 109.496094 190.863281 109.496094 186.121094 C 109.496094 181.382812 116.605469 181.382812 116.605469 186.121094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.480469 218.632812 C 137.480469 223.375 130.371094 223.375 130.371094 218.632812 C 130.371094 213.894531 137.480469 213.894531 137.480469 218.632812 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 164.703125 235.96875 C 164.703125 240.707031 157.59375 240.707031 157.59375 235.96875 C 157.59375 231.226562 164.703125 231.226562 164.703125 235.96875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 145.214844 169.9375 C 145.214844 174.679688 138.105469 174.679688 138.105469 169.9375 C 138.105469 165.195312 145.214844 165.195312 145.214844 169.9375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 162.207031 169.113281 C 162.207031 173.855469 155.09375 173.855469 155.09375 169.113281 C 155.09375 164.375 162.207031 164.375 162.207031 169.113281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 152.121094 149.742188 C 152.121094 154.484375 145.011719 154.484375 145.011719 149.742188 C 145.011719 145.003906 152.121094 145.003906 152.121094 149.742188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 242.46875 79.785156 C 242.46875 84.527344 235.359375 84.527344 235.359375 79.785156 C 235.359375 75.046875 242.46875 75.046875 242.46875 79.785156 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 167.691406 50.128906 C 167.691406 54.867188 160.578125 54.867188 160.578125 50.128906 C 160.578125 45.386719 167.691406 45.386719 167.691406 50.128906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 145.488281 134.226562 C 145.488281 138.96875 138.375 138.96875 138.375 134.226562 C 138.375 129.484375 145.488281 129.484375 145.488281 134.226562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 116.042969 237.0625 C 116.042969 241.804688 108.933594 241.804688 108.933594 237.0625 C 108.933594 232.324219 116.042969 232.324219 116.042969 237.0625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 189.761719 295.464844 C 189.761719 300.207031 182.648438 300.207031 182.648438 295.464844 C 182.648438 290.726562 189.761719 290.726562 189.761719 295.464844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 155.230469 144.09375 C 155.230469 148.835938 148.121094 148.835938 148.121094 144.09375 C 148.121094 139.355469 155.230469 139.355469 155.230469 144.09375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 101.632812 168.292969 C 101.632812 173.035156 94.523438 173.035156 94.523438 168.292969 C 94.523438 163.554688 101.632812 163.554688 101.632812 168.292969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 108.5625 139.296875 C 108.5625 144.039062 101.453125 144.039062 101.453125 139.296875 C 101.453125 134.558594 108.5625 134.558594 108.5625 139.296875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 165.902344 224.78125 C 165.902344 229.523438 158.792969 229.523438 158.792969 224.78125 C 158.792969 220.042969 165.902344 220.042969 165.902344 224.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 139.246094 208.738281 C 139.246094 213.476562 132.136719 213.476562 132.136719 208.738281 C 132.136719 203.996094 139.246094 203.996094 139.246094 208.738281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 167.820312 145.964844 C 167.820312 150.703125 160.710938 150.703125 160.710938 145.964844 C 160.710938 141.222656 167.820312 141.222656 167.820312 145.964844 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 176.132812 212.152344 C 176.132812 216.894531 169.023438 216.894531 169.023438 212.152344 C 169.023438 207.410156 176.132812 207.410156 176.132812 212.152344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 114.976562 179.605469 C 114.976562 184.347656 107.867188 184.347656 107.867188 179.605469 C 107.867188 174.867188 114.976562 174.867188 114.976562 179.605469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 125.023438 157.472656 C 125.023438 162.210938 117.910156 162.210938 117.910156 157.472656 C 117.910156 152.730469 125.023438 152.730469 125.023438 157.472656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 73.753906 320.277344 C 73.753906 325.015625 66.644531 325.015625 66.644531 320.277344 C 66.644531 315.535156 73.753906 315.535156 73.753906 320.277344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 91.496094 213.632812 C 91.496094 218.371094 84.386719 218.371094 84.386719 213.632812 C 84.386719 208.890625 91.496094 208.890625 91.496094 213.632812 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 114.199219 148.226562 C 114.199219 152.964844 107.089844 152.964844 107.089844 148.226562 C 107.089844 143.484375 114.199219 143.484375 114.199219 148.226562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 54.839844 248.90625 C 54.839844 253.644531 47.726562 253.644531 47.726562 248.90625 C 47.726562 244.164062 54.839844 244.164062 54.839844 248.90625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 99.5625 257.175781 C 99.5625 261.917969 92.453125 261.917969 92.453125 257.175781 C 92.453125 252.4375 99.5625 252.4375 99.5625 257.175781 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 202.640625 161.027344 C 202.640625 165.769531 195.53125 165.769531 195.53125 161.027344 C 195.53125 156.289062 202.640625 156.289062 202.640625 161.027344 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 73.453125 272.808594 C 73.453125 277.550781 66.34375 277.550781 66.34375 272.808594 C 66.34375 268.070312 73.453125 268.070312 73.453125 272.808594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 130.003906 166.660156 C 130.003906 171.402344 122.890625 171.402344 122.890625 166.660156 C 122.890625 161.921875 130.003906 161.921875 130.003906 166.660156 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 159.332031 194.183594 C 159.332031 198.921875 152.222656 198.921875 152.222656 194.183594 C 152.222656 189.441406 159.332031 189.441406 159.332031 194.183594 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 173 247.171875 C 173 251.914062 165.886719 251.914062 165.886719 247.171875 C 165.886719 242.433594 173 242.433594 173 247.171875 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 254.546875 112.863281 C 254.546875 117.601562 247.433594 117.601562 247.433594 112.863281 C 247.433594 108.121094 254.546875 108.121094 254.546875 112.863281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 133.746094 148.226562 C 133.746094 152.964844 126.636719 152.964844 126.636719 148.226562 C 126.636719 143.484375 133.746094 143.484375 133.746094 148.226562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 121.53125 164.230469 C 121.53125 168.972656 114.421875 168.972656 114.421875 164.230469 C 114.421875 159.492188 121.53125 159.492188 121.53125 164.230469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 126.617188 195.550781 C 126.617188 200.292969 119.507812 200.292969 119.507812 195.550781 C 119.507812 190.8125 126.617188 190.8125 126.617188 195.550781 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 120.25 159.046875 C 120.25 163.785156 113.140625 163.785156 113.140625 159.046875 C 113.140625 154.304688 120.25 154.304688 120.25 159.046875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 208.792969 20.46875 C 208.792969 25.210938 201.683594 25.210938 201.683594 20.46875 C 201.683594 15.730469 208.792969 15.730469 208.792969 20.46875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 190.929688 165.847656 C 190.929688 170.589844 183.816406 170.589844 183.816406 165.847656 C 183.816406 161.109375 190.929688 161.109375 190.929688 165.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 125.984375 234.878906 C 125.984375 239.617188 118.875 239.617188 118.875 234.878906 C 118.875 230.136719 125.984375 230.136719 125.984375 234.878906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 92.910156 233.253906 C 92.910156 237.992188 85.796875 237.992188 85.796875 233.253906 C 85.796875 228.511719 92.910156 228.511719 92.910156 233.253906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 209.722656 124.023438 C 209.722656 128.761719 202.613281 128.761719 202.613281 124.023438 C 202.613281 119.28125 209.722656 119.28125 209.722656 124.023438 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 159.597656 126.796875 C 159.597656 131.539062 152.488281 131.539062 152.488281 126.796875 C 152.488281 122.058594 159.597656 122.058594 159.597656 126.796875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 134.371094 165.847656 C 134.371094 170.589844 127.261719 170.589844 127.261719 165.847656 C 127.261719 161.109375 134.371094 161.109375 134.371094 165.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 86.164062 254.78125 C 86.164062 259.523438 79.050781 259.523438 79.050781 254.78125 C 79.050781 250.039062 86.164062 250.039062 86.164062 254.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 86.152344 176.199219 C 86.152344 180.941406 79.039062 180.941406 79.039062 176.199219 C 79.039062 171.460938 86.152344 171.460938 86.152344 176.199219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 151.316406 101.503906 C 151.316406 106.242188 144.207031 106.242188 144.207031 101.503906 C 144.207031 96.761719 151.316406 96.761719 151.316406 101.503906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 168.628906 158.652344 C 168.628906 163.390625 161.515625 163.390625 161.515625 158.652344 C 161.515625 153.910156 168.628906 153.910156 168.628906 158.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 124.523438 147.847656 C 124.523438 152.585938 117.414062 152.585938 117.414062 147.847656 C 117.414062 143.105469 124.523438 143.105469 124.523438 147.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 180.523438 136.027344 C 180.523438 140.765625 173.414062 140.765625 173.414062 136.027344 C 173.414062 131.285156 180.523438 131.285156 180.523438 136.027344 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 205.222656 139.664062 C 205.222656 144.402344 198.109375 144.402344 198.109375 139.664062 C 198.109375 134.921875 205.222656 134.921875 205.222656 139.664062 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 171.382812 127.847656 C 171.382812 132.585938 164.273438 132.585938 164.273438 127.847656 C 164.273438 123.105469 171.382812 123.105469 171.382812 127.847656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 136.964844 177.472656 C 136.964844 182.210938 129.851562 182.210938 129.851562 177.472656 C 129.851562 172.730469 136.964844 172.730469 136.964844 177.472656 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 218.789062 139.296875 C 218.789062 144.039062 211.679688 144.039062 211.679688 139.296875 C 211.679688 134.558594 218.789062 134.558594 218.789062 139.296875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 214.5625 142.238281 C 214.5625 146.980469 207.453125 146.980469 207.453125 142.238281 C 207.453125 137.5 214.5625 137.5 214.5625 142.238281 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 112.355469 124.023438 C 112.355469 128.761719 105.242188 128.761719 105.242188 124.023438 C 105.242188 119.28125 112.355469 119.28125 112.355469 124.023438 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 145.960938 158.652344 C 145.960938 163.390625 138.851562 163.390625 138.851562 158.652344 C 138.851562 153.910156 145.960938 153.910156 145.960938 158.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 145.210938 167.476562 C 145.210938 172.214844 138.101562 172.214844 138.101562 167.476562 C 138.101562 162.734375 145.210938 162.734375 145.210938 167.476562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 159.992188 138.933594 C 159.992188 143.671875 152.882812 143.671875 152.882812 138.933594 C 152.882812 134.191406 159.992188 134.191406 159.992188 138.933594 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 203.605469 195.09375 C 203.605469 199.835938 196.496094 199.835938 196.496094 195.09375 C 196.496094 190.355469 203.605469 190.355469 203.605469 195.09375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 109.917969 198.78125 C 109.917969 203.519531 102.804688 203.519531 102.804688 198.78125 C 102.804688 194.039062 109.917969 194.039062 109.917969 198.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 141.996094 155.90625 C 141.996094 160.648438 134.886719 160.648438 134.886719 155.90625 C 134.886719 151.167969 141.996094 151.167969 141.996094 155.90625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 112.605469 190.566406 C 112.605469 195.308594 105.496094 195.308594 105.496094 190.566406 C 105.496094 185.828125 112.605469 185.828125 112.605469 190.566406 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 189.699219 215.621094 C 189.699219 220.359375 182.585938 220.359375 182.585938 215.621094 C 182.585938 210.878906 189.699219 210.878906 189.699219 215.621094 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 193.480469 204.417969 C 193.480469 209.15625 186.371094 209.15625 186.371094 204.417969 C 186.371094 199.675781 193.480469 199.675781 193.480469 204.417969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 111.875 169.9375 C 111.875 174.679688 104.761719 174.679688 104.761719 169.9375 C 104.761719 165.195312 111.875 165.195312 111.875 169.9375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 175.242188 56.042969 C 175.242188 60.785156 168.132812 60.785156 168.132812 56.042969 C 168.132812 51.304688 175.242188 51.304688 175.242188 56.042969 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 181.054688 81.558594 C 181.054688 86.300781 173.941406 86.300781 173.941406 81.558594 C 173.941406 76.820312 181.054688 76.820312 181.054688 81.558594 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 80.199219 192.367188 C 80.199219 197.109375 73.089844 197.109375 73.089844 192.367188 C 73.089844 187.628906 80.199219 187.628906 80.199219 192.367188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 102.800781 170.351562 C 102.800781 175.089844 95.6875 175.089844 95.6875 170.351562 C 95.6875 165.609375 102.800781 165.609375 102.800781 170.351562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 174.839844 148.605469 C 174.839844 153.34375 167.726562 153.34375 167.726562 148.605469 C 167.726562 143.863281 174.839844 143.863281 174.839844 148.605469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 169.824219 137.476562 C 169.824219 142.214844 162.714844 142.214844 162.714844 137.476562 C 162.714844 132.734375 169.824219 132.734375 169.824219 137.476562 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 95.132812 232.714844 C 95.132812 237.453125 88.019531 237.453125 88.019531 232.714844 C 88.019531 227.972656 95.132812 227.972656 95.132812 232.714844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 114.597656 236.515625 C 114.597656 241.253906 107.488281 241.253906 107.488281 236.515625 C 107.488281 231.773438 114.597656 231.773438 114.597656 236.515625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 169.214844 223.746094 C 169.214844 228.488281 162.105469 228.488281 162.105469 223.746094 C 162.105469 219.007812 169.214844 219.007812 169.214844 223.746094 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 160.132812 104.378906 C 160.132812 109.121094 153.023438 109.121094 153.023438 104.378906 C 153.023438 99.640625 160.132812 99.640625 160.132812 104.378906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 214.347656 73.378906 C 214.347656 78.121094 207.238281 78.121094 207.238281 73.378906 C 207.238281 68.640625 214.347656 68.640625 214.347656 73.378906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 85.003906 260.824219 C 85.003906 265.5625 77.894531 265.5625 77.894531 260.824219 C 77.894531 256.082031 85.003906 256.082031 85.003906 260.824219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 128.5625 135.304688 C 128.5625 140.046875 121.453125 140.046875 121.453125 135.304688 C 121.453125 130.566406 128.5625 130.566406 128.5625 135.304688 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 187.765625 226.871094 C 187.765625 231.609375 180.65625 231.609375 180.65625 226.871094 C 180.65625 222.128906 187.765625 222.128906 187.765625 226.871094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 122.300781 183.929688 C 122.300781 188.671875 115.191406 188.671875 115.191406 183.929688 C 115.191406 179.191406 122.300781 179.191406 122.300781 183.929688 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 106.757812 191.015625 C 106.757812 195.757812 99.648438 195.757812 99.648438 191.015625 C 99.648438 186.277344 106.757812 186.277344 106.757812 191.015625 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 227.742188 177.046875 C 227.742188 181.789062 220.632812 181.789062 220.632812 177.046875 C 220.632812 172.304688 227.742188 172.304688 227.742188 177.046875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 231.703125 119.570312 C 231.703125 124.3125 224.59375 124.3125 224.59375 119.570312 C 224.59375 114.832031 231.703125 114.832031 231.703125 119.570312 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 138.582031 224.78125 C 138.582031 229.523438 131.472656 229.523438 131.472656 224.78125 C 131.472656 220.042969 138.582031 220.042969 138.582031 224.78125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 60.214844 247.171875 C 60.214844 251.914062 53.105469 251.914062 53.105469 247.171875 C 53.105469 242.433594 60.214844 242.433594 60.214844 247.171875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.664062 151.652344 C 137.664062 156.394531 130.554688 156.394531 130.554688 151.652344 C 130.554688 146.914062 137.664062 146.914062 137.664062 151.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 262.050781 150.503906 C 262.050781 155.246094 254.941406 155.246094 254.941406 150.503906 C 254.941406 145.765625 262.050781 145.765625 262.050781 150.503906 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 185.574219 57.132812 C 185.574219 61.871094 178.464844 61.871094 178.464844 57.132812 C 178.464844 52.390625 185.574219 52.390625 185.574219 57.132812 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 173.265625 109.242188 C 173.265625 113.980469 166.15625 113.980469 166.15625 109.242188 C 166.15625 104.5 173.265625 104.5 173.265625 109.242188 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 208.800781 132.082031 C 208.800781 136.824219 201.691406 136.824219 201.691406 132.082031 C 201.691406 127.34375 208.800781 127.34375 208.800781 132.082031 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 135.707031 147.09375 C 135.707031 151.832031 128.59375 151.832031 128.59375 147.09375 C 128.59375 142.351562 135.707031 142.351562 135.707031 147.09375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 111.519531 166.660156 C 111.519531 171.402344 104.410156 171.402344 104.410156 166.660156 C 104.410156 161.921875 111.519531 161.921875 111.519531 166.660156 "/> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 212.140625 161.824219 C 212.140625 166.566406 205.03125 166.566406 205.03125 161.824219 C 205.03125 157.085938 212.140625 157.085938 212.140625 161.824219 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 92.59375 218.128906 C 92.59375 222.867188 85.484375 222.867188 85.484375 218.128906 C 85.484375 213.386719 92.59375 213.386719 92.59375 218.128906 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 174.8125 65.703125 C 174.8125 70.445312 167.703125 70.445312 167.703125 65.703125 C 167.703125 60.964844 174.8125 60.964844 174.8125 65.703125 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 156.867188 190.117188 C 156.867188 194.859375 149.757812 194.859375 149.757812 190.117188 C 149.757812 185.378906 156.867188 185.378906 156.867188 190.117188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 116.867188 176.621094 C 116.867188 181.363281 109.757812 181.363281 109.757812 176.621094 C 109.757812 171.882812 116.867188 171.882812 116.867188 176.621094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 121.382812 185.242188 C 121.382812 189.984375 114.273438 189.984375 114.273438 185.242188 C 114.273438 180.503906 121.382812 180.503906 121.382812 185.242188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 183.574219 159.441406 C 183.574219 164.183594 176.464844 164.183594 176.464844 159.441406 C 176.464844 154.703125 183.574219 154.703125 183.574219 159.441406 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 207.789062 155.90625 C 207.789062 160.648438 200.679688 160.648438 200.679688 155.90625 C 200.679688 151.167969 207.789062 151.167969 207.789062 155.90625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 119.371094 215.121094 C 119.371094 219.859375 112.261719 219.859375 112.261719 215.121094 C 112.261719 210.378906 119.371094 210.378906 119.371094 215.121094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 113.527344 205.371094 C 113.527344 210.109375 106.417969 210.109375 106.417969 205.371094 C 106.417969 200.628906 113.527344 200.628906 113.527344 205.371094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 80.511719 190.117188 C 80.511719 194.859375 73.398438 194.859375 73.398438 190.117188 C 73.398438 185.378906 80.511719 185.378906 80.511719 190.117188 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 140.972656 295.464844 C 140.972656 300.207031 133.863281 300.207031 133.863281 295.464844 C 133.863281 290.726562 140.972656 290.726562 140.972656 295.464844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 143.0625 152.421875 C 143.0625 157.164062 135.949219 157.164062 135.949219 152.421875 C 135.949219 147.679688 143.0625 147.679688 143.0625 152.421875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 154.648438 129.605469 C 154.648438 134.34375 147.539062 134.34375 147.539062 129.605469 C 147.539062 124.863281 154.648438 124.863281 154.648438 129.605469 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 198.316406 205.371094 C 198.316406 210.109375 191.203125 210.109375 191.203125 205.371094 C 191.203125 200.628906 198.316406 200.628906 198.316406 205.371094 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 175.988281 132.796875 C 175.988281 137.535156 168.878906 137.535156 168.878906 132.796875 C 168.878906 128.054688 175.988281 128.054688 175.988281 132.796875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 185.300781 174.09375 C 185.300781 178.835938 178.191406 178.835938 178.191406 174.09375 C 178.191406 169.355469 185.300781 169.355469 185.300781 174.09375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 165.214844 114.859375 C 165.214844 119.597656 158.105469 119.597656 158.105469 114.859375 C 158.105469 110.117188 165.214844 110.117188 165.214844 114.859375 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 131.332031 236.515625 C 131.332031 241.253906 124.21875 241.253906 124.21875 236.515625 C 124.21875 231.773438 131.332031 231.773438 131.332031 236.515625 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 184.269531 158.652344 C 184.269531 163.390625 177.160156 163.390625 177.160156 158.652344 C 177.160156 153.910156 184.269531 153.910156 184.269531 158.652344 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 76.761719 212.644531 C 76.761719 217.386719 69.648438 217.386719 69.648438 212.644531 C 69.648438 207.902344 76.761719 207.902344 76.761719 212.644531 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 137.199219 243.1875 C 137.199219 247.925781 130.089844 247.925781 130.089844 243.1875 C 130.089844 238.445312 137.199219 238.445312 137.199219 243.1875 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 59.699219 191.464844 C 59.699219 196.207031 52.589844 196.207031 52.589844 191.464844 C 52.589844 186.726562 59.699219 186.726562 59.699219 191.464844 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 141.410156 21.4375 C 141.410156 26.179688 134.300781 26.179688 134.300781 21.4375 C 134.300781 16.699219 141.410156 16.699219 141.410156 21.4375 "/> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-1" x="18.539062" y="304.414062"/> + <use xlink:href="#glyph0-2" x="23.433203" y="304.414062"/> + <use xlink:href="#glyph0-3" x="28.327344" y="304.414062"/> + <use xlink:href="#glyph0-4" x="30.772266" y="304.414062"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-1" x="18.539062" y="233.363281"/> + <use xlink:href="#glyph0-4" x="23.433203" y="233.363281"/> + <use xlink:href="#glyph0-3" x="28.327344" y="233.363281"/> + <use xlink:href="#glyph0-5" x="30.772266" y="233.363281"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-1" x="18.539062" y="162.316406"/> + <use xlink:href="#glyph0-6" x="23.433203" y="162.316406"/> + <use xlink:href="#glyph0-3" x="28.327344" y="162.316406"/> + <use xlink:href="#glyph0-4" x="30.772266" y="162.316406"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-2" x="18.539062" y="91.269531"/> + <use xlink:href="#glyph0-5" x="23.433203" y="91.269531"/> + <use xlink:href="#glyph0-3" x="28.327344" y="91.269531"/> + <use xlink:href="#glyph0-5" x="30.772266" y="91.269531"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-2" x="18.539062" y="20.21875"/> + <use xlink:href="#glyph0-2" x="23.433203" y="20.21875"/> + <use xlink:href="#glyph0-3" x="28.327344" y="20.21875"/> + <use xlink:href="#glyph0-4" x="30.772266" y="20.21875"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-7" x="42.320312" y="346.511719"/> + <use xlink:href="#glyph0-3" x="47.214453" y="346.511719"/> + <use xlink:href="#glyph0-4" x="49.659375" y="346.511719"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-4" x="82.824219" y="346.511719"/> + <use xlink:href="#glyph0-3" x="87.718359" y="346.511719"/> + <use xlink:href="#glyph0-5" x="90.163281" y="346.511719"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-4" x="123.328125" y="346.511719"/> + <use xlink:href="#glyph0-3" x="128.222266" y="346.511719"/> + <use xlink:href="#glyph0-4" x="130.667188" y="346.511719"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-8" x="163.832031" y="346.511719"/> + <use xlink:href="#glyph0-3" x="168.726172" y="346.511719"/> + <use xlink:href="#glyph0-5" x="171.171094" y="346.511719"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-8" x="204.335938" y="346.511719"/> + <use xlink:href="#glyph0-3" x="209.230078" y="346.511719"/> + <use xlink:href="#glyph0-4" x="211.675" y="346.511719"/> +</g> +<g style="fill:rgb(30.196078%,30.196078%,30.196078%);fill-opacity:1;"> + <use xlink:href="#glyph0-6" x="244.839844" y="346.511719"/> + <use xlink:href="#glyph0-3" x="249.733984" y="346.511719"/> + <use xlink:href="#glyph0-5" x="252.178906" y="346.511719"/> +</g> +<g style="fill:rgb(0%,0%,0%);fill-opacity:1;"> + <use xlink:href="#glyph1-1" x="150.460938" y="359.085938"/> + <use xlink:href="#glyph1-2" x="153.51709" y="359.085938"/> + <use xlink:href="#glyph1-3" x="159.634766" y="359.085938"/> +</g> +<g style="fill:rgb(0%,0%,0%);fill-opacity:1;"> + <use xlink:href="#glyph2-1" x="13.371094" y="185.351562"/> + <use xlink:href="#glyph2-2" x="13.371094" y="178.014648"/> + <use xlink:href="#glyph2-3" x="13.371094" y="170.677734"/> + <use xlink:href="#glyph2-4" x="13.371094" y="162.121582"/> +</g> +<g style="fill:rgb(0%,0%,0%);fill-opacity:1;"> + <use xlink:href="#glyph1-4" x="292.042969" y="154.296875"/> + <use xlink:href="#glyph1-5" x="299.986816" y="154.296875"/> + <use xlink:href="#glyph1-2" x="302.430664" y="154.296875"/> + <use xlink:href="#glyph1-6" x="308.54834" y="154.296875"/> + <use xlink:href="#glyph1-6" x="314.04834" y="154.296875"/> +</g> +<path style="fill-rule:nonzero;fill:rgb(97.254902%,46.27451%,42.745098%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,46.27451%,42.745098%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 304.238281 169.636719 C 304.238281 174.375 297.128906 174.375 297.128906 169.636719 C 297.128906 164.894531 304.238281 164.894531 304.238281 169.636719 "/> +<path style="fill-rule:nonzero;fill:rgb(0%,74.901961%,76.862745%);fill-opacity:0.501961;stroke-width:0.708661;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,74.901961%,76.862745%);stroke-opacity:0.501961;stroke-miterlimit:10;" d="M 304.238281 186.914062 C 304.238281 191.65625 297.128906 191.65625 297.128906 186.914062 C 297.128906 182.175781 304.238281 182.175781 304.238281 186.914062 "/> +<g style="fill:rgb(0%,0%,0%);fill-opacity:1;"> + <use xlink:href="#glyph0-9" x="314.804688" y="172.789062"/> + <use xlink:href="#glyph0-10" x="317.249609" y="172.789062"/> + <use xlink:href="#glyph0-11" x="324.580078" y="172.789062"/> + <use xlink:href="#glyph0-12" x="329.474219" y="172.789062"/> + <use xlink:href="#glyph0-13" x="334.368359" y="172.789062"/> + <use xlink:href="#glyph0-14" x="336.323437" y="172.789062"/> + <use xlink:href="#glyph0-15" x="339.253906" y="172.789062"/> + <use xlink:href="#glyph0-16" x="344.148047" y="172.789062"/> +</g> +<g style="fill:rgb(0%,0%,0%);fill-opacity:1;"> + <use xlink:href="#glyph0-17" x="314.804688" y="190.070312"/> + <use xlink:href="#glyph0-18" x="321.159766" y="190.070312"/> + <use xlink:href="#glyph0-19" x="326.053906" y="190.070312"/> + <use xlink:href="#glyph0-20" x="330.948047" y="190.070312"/> + <use xlink:href="#glyph0-14" x="333.392969" y="190.070312"/> + <use xlink:href="#glyph0-18" x="336.323437" y="190.070312"/> + <use xlink:href="#glyph0-21" x="341.217578" y="190.070312"/> +</g> +</g> +</svg> diff --git a/public/styles.css b/public/styles.css new file mode 100644 index 0000000..2ddf50c --- /dev/null +++ b/public/styles.css @@ -0,0 +1 @@ +/* css styles */ diff --git a/slides/setup.R b/slides/setup.R new file mode 100644 index 0000000..131aee9 --- /dev/null +++ b/slides/setup.R @@ -0,0 +1,29 @@ +hexes <- function(..., size = 64) { + x <- c(...) + x <- sort(unique(x)) + right <- (seq_along(x) - 1) * size + + res <- glue::glue( + '{.absolute top=-20 right=<right> width="<size>" height="<size * 1.16>"}', + .open = "<", .close = ">" + ) + + paste0(res, collapse = " ") +} + +knitr::opts_chunk$set( + digits = 3, + comment = "#>", + dev = 'svglite' +) + +library(countdown) +library(ggplot2) +theme_set(theme_minimal()) +options(cli.width = 70) + +train_color <- "#1a162d" +test_color <- "#cd4173" +data_color <- "#767381" +assess_color <- "#84cae1" +splits_pal <- c(data_color, train_color, test_color) diff --git a/slides/slides.qmd b/slides/slides.qmd new file mode 100644 index 0000000..cb88c0f --- /dev/null +++ b/slides/slides.qmd @@ -0,0 +1,168 @@ +--- +title: "Intégration de Données avec des Méthodes à Noyaux" +subtitle: "Café Méthodo : mardi 13 décembre" +author: "Vincent Guillemot" +format: + revealjs: + slide-number: true + theme: [default, tidymodels.scss] + width: 1600 + height: 900 +knitr: + opts_chunk: + echo: true + collapse: true + comment: "#>" +--- + +```{r} +#| include: false +#| file: setup.R +``` + +# Course website + +::: {.r-fit-text} +<https://hfrick.github.io/2022-AI-and-health/> +::: + +# + +:::{.r-stack} +[`r icons::fontawesome("github")` @hfrick](https://github.com/hfrick) +[`r icons::fontawesome("twitter")` @hfcfrick](https://twitter.com/hfcfcrick) +[`r icons::fontawesome("link")` frick.ws](https://frick.ws) +::: + + + +## Our goals for this workshop + +- Introduce tidymodels and its general philosophy on modeling. +- Help you become proficient with the core packages for modeling. +- Point you to places to learn more and get help. + +## Why tidymodels? + +There are several other modeling frameworks in R that try to: + +- create a uniform, [cohesive]{.pkg}, and unsurprising set of modeling APIs + +Examples are [caret]{.pkg}, [mlr3]{.pkg}, and others. + +- [caret]{.pkg} is more favorable for people who prefer base R/traditional interfaces. +- [mlr3]{.pkg} is more pythonic and also has many features. +- [tidymodels]{.pkg} would probably be preferable to those who place importance on a tidy *R* interface, a large number of features, and the idea that the interfaces should enable the "pit of success". + + +## The tidymodels package + +There are a lot of tidymodels packages but about 90% of the work is done by 5 packages. ([rsample]{.pkg}, [recipes]{.pkg}, [parsnip]{.pkg}, [tune]{.pkg}, and [yardstick]{.pkg}) + +The best way to get started with tidymodels is to use the [tidymodels]{.pkg} meta-package. It loads the core packages plus some tidyverse packages. + +Some helpful links: + +- List of [all tidymodels functions](https://www.tidymodels.org/find/#search-all-of-tidymodels) +- List of [all parsnip models](https://www.tidymodels.org/find/parsnip/) +- List of [all recipe steps](https://www.tidymodels.org/find/recipes/) + +:::{.notes} +click on the search button on tidymodels.org for all those lists +::: + + +## The tidymodels package + +```{r, message=TRUE} +library(tidymodels) +``` + +## Managing name conflicts + +```{r, message=TRUE} +tidymodels_prefer(quiet = FALSE) +``` + +## Alzheimer's disease data + +Data from a clinical trial of individuals with well-characterized cognitive impairment, and age-matched control participants. + +```{r} +# install.packages("modeldata") +library(modeldata) +data("ad_data") +alz <- ad_data + +glimpse(alz) +``` + + +## Alzheimer's disease data + +::: columns +::: {.column width="50%"} + +- 1 categorical outcome: `Class` +- `r ncol(alz) - 1` predictors +- 126 protein measurements +- also: `age`, `male`, `Genotype` + +::: +::: {.column width="50%"} + +```{r} +#| echo: false +#| out-width: '90%' +#| fig-width: 5 +#| fig-height: 5.1 +#| fig-align: 'center' +#| dev: 'svg' +#| dev-args: list(bg = "transparent") +ggplot(alz, aes(x = tau, + y = VEGF, + colour = Class)) + + geom_point(alpha = .5, size = 3) #+ scale_color_manual(values = c("#1a162d", "#CA225E")) +``` + +::: +::: + + +## Your turn {transition="slide-in"} + +<!-- {.absolute top="0" right="0" width="150" height="150"} --> +{.absolute top="0" right="0" height="25%"} + +::: columns +::: {.column width="70%"} +*Explore the data.* + +```{r} +#| eval: false +library(tidymodels) +tidymodels_prefer() + +data("ad_data", package = "modeldata") +alz <- ad_data +``` +::: +::: + +```{r} +#| echo: false +countdown(minutes = 10, id = "explore-data") +``` + + +## Schedule for today + +- A minimal model +- A better workflow +- A tuned model + +:::{.notes} +- get through the fundamentals +- make our model better +- let the computer make our model better +::: diff --git a/slides/tidymodels.scss b/slides/tidymodels.scss new file mode 100644 index 0000000..77f05a8 --- /dev/null +++ b/slides/tidymodels.scss @@ -0,0 +1,25 @@ +/*-- scss:defaults --*/ + +// https://quarto.org/docs/presentations/revealjs/themes.html#saas-variables +// https://github.com/twbs/bootstrap-sass/blob/master/assets/stylesheets/bootstrap/_variables.scss + +//@import url('https://fonts.googleapis.com/css2?family=Zilla+Slab:wght@300&display=swap'); +//@import url('https://fonts.googleapis.com/css2?family=Jost:ital@0;1&display=swap'); +//@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,500;1,500&display=swap'); + +// Our colors +$cranberry: #CA225E; +$charcoal: #1a162d; + +// fonts +//$font-family-sans-serif: 'Jost', sans-serif !default; +//$font-family-serif: 'Zilla Slab', serif !default; + +// colors +$body-bg: white !default; +$body-color: $charcoal !default; +$link-color: $cranberry !default; + +// headings +//$presentation-heading-font: 'DM Sans', sans-serif !default; +$presentation-heading-color: $charcoal !default; diff --git a/styles.css b/styles.css new file mode 100644 index 0000000..2ddf50c --- /dev/null +++ b/styles.css @@ -0,0 +1 @@ +/* css styles */ -- GitLab